/* BASIC css start */
/* =========================================================
   2026 TAVALON
   MOBILE GIFT CURATION
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap');


/* =========================================================
   COMMON
========================================================= */

#giftCuration {
    width: 100%;
    min-width: 320px;
    max-width: 850px;

    margin: 0 auto;
    padding: 0;

    position: relative;

    overflow: hidden;

    background: #f8f4ec;

    color: #16130f;

    font-family: 'Noto Sans KR', sans-serif;
}


#giftCuration * {
    box-sizing: border-box;
}


#giftCuration button {
    margin: 0;
    padding: 0;

    border: 0;
    outline: 0;

    background: none;

    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;
}


#giftCuration a {
    color: inherit;
    text-decoration: none;
}


#giftCuration .curation_inner {
    width: 100%;

    position: relative;
}


/* =========================================================
   SCREEN
========================================================= */

#giftCuration .curation_screen {
    display: none;

    width: 100%;

    position: relative;
}


#giftCuration .curation_screen.active {
    display: block;

    animation: giftCurationMobileFade 0.4s ease both;
}


@keyframes giftCurationMobileFade {

    0% {
        opacity: 0;
        transform: translateY(5px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }

}


/* =========================================================
   INTRO
========================================================= */

#giftCuration #curationIntro {
    width: 100%;
}


#giftCuration .intro_visual {
    width: 100%;

    min-height: 620px;
    height: calc(100vh - 60px);

    position: relative;

    display: flex;
    align-items: center;

    overflow: hidden;

    background-color: #f3eee6;

    background-image:
        url('/design/tavalon/han/curation/tavalon_curation_main.jpg');

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}




/* =========================================================
   INTRO OVERLAY
========================================================= */

#giftCuration .intro_overlay {
    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    z-index: 1;

    background:
        linear-gradient(
            0deg,
            rgba(255,255,255,0.98) 0%,
            rgba(255,255,255,0.93) 25%,
            rgba(255,255,255,0.62) 58%,
            rgba(255,255,255,0.16) 100%
        );

    pointer-events: none;
}


/* =========================================================
   INTRO TEXT
========================================================= */

#giftCuration .intro_txt {
    width: 100%;

    padding: 20px 6%;

    position: relative;
    z-index: 2;

    transform: translateY(-80px);

    color: #16130f;
}


/* LABEL */

#giftCuration .intro_label {
    margin: 0 0 18px;

    font-family: 'Montserrat', sans-serif;

    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;

    letter-spacing: 0.2em;

    color: #16130f;
}


/* TITLE */

#giftCuration .intro_txt h1 {
    margin: 0;

    font-family: 'Noto Sans KR', sans-serif;

    font-size: 38px;
    line-height: 1.28;
    font-weight: 400;

    letter-spacing: -0.045em;

    color: #16130f;
}


/* KOREAN DESCRIPTION */

#giftCuration .intro_sub {
    margin: 26px 0 0;

    font-family: 'Noto Sans KR', sans-serif;

    font-size: 14px;
    line-height: 1.8;
    font-weight: 400;

    letter-spacing: -0.02em;

    color: #403b36;
}


/* ENGLISH DESCRIPTION */

#giftCuration .intro_sub_en {
    margin: 10px 0 0;

    font-family: 'Montserrat', sans-serif;

    font-size: 11px;
    line-height: 1.65;
    font-weight: 400;

    letter-spacing: 0.02em;

    color: #746c64;
}


/* =========================================================
   START BUTTON
========================================================= */

#giftCuration .curation_start_btn {
    width: 100% !important;
    height: 54px !important;

    margin-top: 34px !important;
    padding: 0 !important;

    border: 1px solid #16130f !important;

    background: #16130f !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 12px !important;
    line-height: 52px !important;
    font-weight: 600 !important;

    letter-spacing: 0.16em !important;

    color: #fff !important;
    -webkit-text-fill-color: #fff !important;

    text-align: center !important;
    text-indent: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* =========================================================
   QUESTION BACKGROUND
========================================================= */

#giftCuration #curationQ1,
#giftCuration #curationQ2,
#giftCuration #curationQ3,
#giftCuration #curationQ4 {
    width: 100%;

    min-height: calc(100vh - 60px);

    position: relative;

    background-color: #f3eee6;

    background-image:
        url('/design/tavalon/han/curation/tavalon_curation_main.jpg');

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}


/* QUESTION OVERLAY */

#giftCuration #curationQ1:before,
#giftCuration #curationQ2:before,
#giftCuration #curationQ3:before,
#giftCuration #curationQ4:before {
    content: '';

    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    z-index: 1;

    background: rgba(255,255,255,0.88);

    pointer-events: none;
}


/* =========================================================
   QUESTION WRAP
========================================================= */

#giftCuration .question_wrap {
    width: 100%;

    margin: 0;

    padding: 42px 6% 45px;

    position: relative;
    z-index: 2;
}


/* =========================================================
   QUESTION HEAD
========================================================= */

#giftCuration .question_head {
    width: 100%;

    text-align: left;
}


#giftCuration .question_step {
    margin-bottom: 14px;

    display: flex;
    align-items: baseline;

    gap: 8px;
}


#giftCuration .question_step span {
    font-family: 'Montserrat', sans-serif;

    font-size: 10px;
    line-height: 1.4;
    font-weight: 500;

    letter-spacing: 0.2em;

    color: #837c74;
}


#giftCuration .question_step strong {
    font-family: 'Montserrat', sans-serif;

    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;

    letter-spacing: 0.03em;

    color: #16130f;
}


#giftCuration .question_head h2 {
    margin: 0;

    font-family: 'Noto Sans KR', sans-serif;

    font-size: 29px;
    line-height: 1.45;
    font-weight: 400;

    letter-spacing: -0.045em;

    color: #16130f;

    word-break: keep-all;
}


#giftCuration .question_head > p {
    margin: 10px 0 0;

    font-family: 'Montserrat', sans-serif;

    font-size: 10px;
    line-height: 1.6;
    font-weight: 400;

    color: #777069;
}


/* =========================================================
   OPTIONS
========================================================= */

#giftCuration .question_options {
    width: 100%;

    margin: 28px 0 0;

    display: flex;
    flex-direction: column;

    gap: 8px;
}


/* =========================================================
   OPTION
========================================================= */

#giftCuration .curation_option {
    width: 100% !important;
    min-height: 78px !important;

    margin: 0 !important;
    padding: 16px 17px !important;

    display: flex !important;
    align-items: center !important;

    border: 1px solid rgba(22,19,15,0.16) !important;

    background: rgba(255,255,255,0.76) !important;

    color: #16130f !important;
    -webkit-text-fill-color: #16130f !important;

    text-align: left !important;
    text-indent: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;

    overflow: visible !important;

    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);

    transition:
        background 0.2s ease,
        border-color 0.2s ease;
}


/* =========================================================
   OPTION NUMBER
========================================================= */

#giftCuration .curation_option .option_num {
    width: 40px !important;
    flex: 0 0 40px !important;

    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 10px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;

    letter-spacing: 0.05em !important;

    color: #918a82 !important;
    -webkit-text-fill-color: #918a82 !important;

    text-align: left !important;
}


/* =========================================================
   OPTION TEXT
========================================================= */

#giftCuration .curation_option .option_txt {
    flex: 1 !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: left !important;
}


#giftCuration .curation_option .option_txt strong {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    font-family: 'Noto Sans KR', sans-serif !important;

    font-size: 14px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;

    letter-spacing: -0.025em !important;

    color: #16130f !important;
    -webkit-text-fill-color: #16130f !important;

    word-break: keep-all;
}


#giftCuration .curation_option .option_txt em {
    display: block !important;

    margin: 4px 0 0 !important;
    padding: 0 !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 9px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;

    font-style: normal !important;

    letter-spacing: 0.01em !important;

    color: #7f7870 !important;
    -webkit-text-fill-color: #7f7870 !important;
}


/* =========================================================
   SELECTED
========================================================= */

#giftCuration .curation_option.selected {
    border-color: #16130f !important;

    background: #16130f !important;

    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}


#giftCuration .curation_option.selected .option_num {
    color: rgba(255,255,255,0.5) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.5) !important;
}


#giftCuration .curation_option.selected .option_txt strong {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}


#giftCuration .curation_option.selected .option_txt em {
    color: rgba(255,255,255,0.62) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.62) !important;
}


/* =========================================================
   PROGRESS
========================================================= */

#giftCuration .question_progress {
    width: 100%;

    margin-top: 28px;

    display: flex;
    align-items: center;

    gap: 5px;
}


#giftCuration .question_progress span {
    height: 2px;

    display: block;
    flex: 1;

    background: rgba(22,19,15,0.16);
}


#giftCuration .question_progress span.active {
    background: #16130f;
}


/* =========================================================
   PREVIOUS
========================================================= */

#giftCuration .question_nav {
    margin-top: 12px;

    text-align: left;
}


#giftCuration .question_prev {
    width: auto !important;
    height: auto !important;

    display: inline-block !important;

    margin: 0 !important;
    padding: 8px 0 !important;

    background: transparent !important;

    font-family: 'Noto Sans KR', sans-serif !important;

    font-size: 11px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;

    letter-spacing: -0.02em !important;

    color: #16130f !important;
    -webkit-text-fill-color: #16130f !important;

    opacity: 0.52 !important;

    text-indent: 0 !important;
}


/* =========================================================
   RESULT
========================================================= */

#giftCuration #curationResult {
    width: 100%;

    background: #f8f4ec;
}


#giftCuration .result_wrap {
    width: 100%;

    margin: 0;
    padding: 0;
}


/* =========================================================
   RESULT BANNER
========================================================= */

#giftCuration .result_product_banner {
    width: 100%;

    min-height: 620px;
    height: calc(100vh - 60px);

    position: relative;

    display: flex;
    align-items: center;

    overflow: hidden;

    background-color: #ede8df;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}


/* =========================================================
   RESULT IMAGE OVERLAY
========================================================= */

#giftCuration .result_product_banner.has_image:before {
    content: '';

    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    z-index: 1;

    background:
        linear-gradient(
            0deg,
            rgba(255,255,255,0.99) 0%,
            rgba(255,255,255,0.94) 30%,
            rgba(255,255,255,0.70) 57%,
            rgba(255,255,255,0.16) 100%
        );

    pointer-events: none;
}


/* =========================================================
   RESULT DEFAULT IMAGE
========================================================= */

#giftCuration .result_product_banner.no_image {
    background-color: #f3eee6;

    background-image:
        url('/design/tavalon/han/curation/tavalon_curation_main.jpg') !important;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}


#giftCuration .result_product_banner.no_image:before {
    content: '';

    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    z-index: 1;

    background:
        linear-gradient(
            0deg,
            rgba(255,255,255,0.99) 0%,
            rgba(255,255,255,0.94) 32%,
            rgba(255,255,255,0.70) 60%,
            rgba(255,255,255,0.20) 100%
        );

    pointer-events: none;
}


/* =========================================================
   RESULT CONTENT
========================================================= */

#giftCuration .result_banner_content {
    width: 100%;

    margin: 0;
    padding: 38px 6% 40px;

    position: relative;
    z-index: 2;

    transform: translateY(-60px);

    color: #16130f;
}


#giftCuration .result_banner_label {
    margin: 0 0 14px;

    font-family: 'Montserrat', sans-serif;

    font-size: 10px;
    line-height: 1.4;
    font-weight: 600;

    letter-spacing: 0.18em;

    color: #615b55;
}


#giftCuration .result_banner_title {
    margin: 0;

    font-family: 'Noto Sans KR', sans-serif;

    font-size: 34px;
    line-height: 1.35;
    font-weight: 500;

    letter-spacing: -0.045em;

    color: #16130f;

    word-break: keep-all;
}


#giftCuration .result_banner_en {
    margin: 9px 0 0;

    font-family: 'Montserrat', sans-serif;

    font-size: 10px;
    line-height: 1.5;
    font-weight: 500;

    letter-spacing: 0.06em;

    color: #615b55;
}


#giftCuration .result_banner_desc {
    width: 100%;

    margin: 24px 0 0;

    font-family: 'Noto Sans KR', sans-serif;

    font-size: 13px;
    line-height: 1.8;
    font-weight: 400;

    letter-spacing: -0.02em;

    word-break: keep-all;

    color: #403b36;
}


/* =========================================================
   RESULT BUTTONS
========================================================= */

#giftCuration .result_banner_buttons {
    width: 100%;

    margin-top: 30px;

    display: flex;
    flex-direction: column;

    gap: 7px;
}


/* BUY */

#giftCuration .curation_buy_btn {
    width: 100% !important;
    height: 53px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid #16130f !important;

    background: #16130f !important;

    font-family: 'Noto Sans KR', sans-serif !important;

    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 500 !important;

    color: #fff !important;
    -webkit-text-fill-color: #fff !important;

    text-indent: 0 !important;
}


/* PREV / RETRY */

#giftCuration .result_prev_btn,
#giftCuration .curation_retry_btn {
    width: 100% !important;
    height: 53px !important;

    border: 1px solid rgba(22,19,15,0.55) !important;

    background: rgba(255,255,255,0.40) !important;

    font-family: 'Noto Sans KR', sans-serif !important;

    font-size: 12px !important;
    line-height: 51px !important;
    font-weight: 400 !important;

    color: #16130f !important;
    -webkit-text-fill-color: #16130f !important;

    text-indent: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media screen and (max-width: 374px) {

    #giftCuration .intro_visual {
        min-height: 580px;
    }


    #giftCuration .intro_txt h1 {
        font-size: 34px;
    }


    #giftCuration .question_head h2 {
        font-size: 26px;
    }


    #giftCuration .question_wrap {
        padding: 35px 5% 40px;
    }


    #giftCuration .question_options {
        margin-top: 24px;
    }


    #giftCuration .curation_option {
        padding: 14px 15px !important;
    }


    #giftCuration .curation_option .option_num {
        width: 35px !important;
        flex: 0 0 35px !important;
    }


    #giftCuration .curation_option .option_txt strong {
        font-size: 13px !important;
    }


    #giftCuration .question_progress {
        margin-top: 24px;
    }


    #giftCuration .result_product_banner {
        min-height: 580px;
    }


    #giftCuration .result_banner_title {
        font-size: 31px;
    }

}
/* BASIC css end */

