/* BASIC css start */
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@100..700&family=Lato:wght@100..900&family=Noto+Serif+KR:wght@200..900&display=swap');

/* ==========================================================================
   [AOS ÃÖÀûÈ­ ºôµå] ±âº» ·¹ÀÌ¾Æ¿ô ¸®¼Â ¹× ºê¶ó¿ìÀú °¡¼Ó Ã³¸®
   ========================================================================== */
#wrap { 
    width: 100%; 
    overflow-x: hidden; 
}
#contentWrapper {
    width: 100%;
}
#contentWrap {
    width: 100%;
    padding: 0;
}
#content {
    width: 100%;
    overflow: hidden;
}

.about-page-wrapper {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    overflow: visible;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

.about-page-wrapper * { 
    box-sizing: border-box; 
}
.right_fixed { display: none; }

/* AOS ¿¬»ê ºÎÇÏ ¹æÁö¿ë °¡¼Ó ¼±¾ð */
.about-page-wrapper [data-aos] {
    will-change: transform, opacity;
    backface-visibility: hidden;
    perspective: 1000px;
}

/* ==========================================================================
   1. »ó´Ü ²Ë Âù È÷¾î·Î ¿µ¿ª ·¹ÀÌ¾Æ¿ô (¼öÁ÷ Æ¨±è ¹«ºÎÇÏ °íÁ¤ ±¸Á¶)
   ========================================================================== */
.about-hero {
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 0;   
}

.about-hero__img-box {
    position: relative;  
    width: 100%;
    overflow: hidden;    
    background-color: #000;
    height: 100vh;       
}

.about-hero__img-box img {
    width: 100%;
    display: block;
    height: 100%;      
    object-fit: cover;
    transform: translateZ(0); 
}

/* YÃà ¼¼·Î °è»êÀ» Á¦¿ÜÇÏ°í XÃà Á¤·Ä¸¸ »ç¿ëÇÏ¿© »ó´Ü Çì·Î Æ¨±è Á¦·ÎÈ­ ±¸Çö */
.about-hero__overlay-box {
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%); 
    text-align: center;
    color: #fff;
    width: 90%;
    max-width: 100%;
    padding: 0;
    z-index: 10;
    line-height: 1.6;
}

.about-hero__title {
    font-family: 'Josefin Sans', sans-serif;
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.01rem;
    line-height: 1.2;
}

.about-hero-subtitle { 
    font-family: 'Josefin Sans', sans-serif; 
    display: block; 
    font-size: 12px; 
    font-weight: 400; 
    letter-spacing: -0.01rem; 
}

.about-hero__desc {
    font-size: 0.85rem;
    padding: 20px 0px 0px 0px;
    line-height: 1.6;
    word-break: keep-all;
    letter-spacing: initial;
    margin: 0 auto;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}

/* ==========================================================================
   2. ºê·£µå ½ºÅä¸® Ä«µå À¯´Ö (½ºÀ§Æ¼½ºÇ¬ & ¸á¸®ºñÄ¡ °³º° ¿µ¿ª)
   ========================================================================== */
.about-brand-group { padding: 0 1.25rem; }
.about-brand-title {    
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 50px 0px 10px 0px;
    text-align: center; 
}
.about-brand-subtitle { text-align: center; }
.about-brand-desc { font-size: 0.85rem; letter-spacing: -0.01rem; word-break: keep-all; line-height: 1.6; }

.brand-story-section {
    width: 100%;
    margin: 50px 0 0 0;
}

.brand-story-card {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.brand-story-card__paragraph {      
    font-size: 0.85rem;
    padding: 0px 0px 0px 0px;
    line-height: 1.6;
    word-break: keep-all;
    letter-spacing: -0.02rem;
}

.brand-story-card__img-box {
    text-align: center;
    margin: 0 auto;
    width: 40%;
}

.brand-story-card__img-box img {
    padding: 0rem 0rem 0.8rem 0rem;
    width: 100%;
    max-width: 100%;
    background-color: #fff;
    object-fit: contain;
}

.brand-story-card__content-box {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 1.8rem;
}

.brand-story-card__text-wrapper {
    text-align: justify;
    font-size: 0.72rem;
    line-height: 1.4rem;
    word-break: keep-all;
}

.brand-story-card__title {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 20px 0px 10px 0px;
    margin: 0;
}

.text-highlight {
    font-weight: 500;
    color: #c1935e;
}

/* ==========================================================================
   3. °øÅë °¡·Î¹èÄ¡ ¼½¼Ç ºí·Ï ¹× ÀÌ¹ÌÁö ¹Ú½º (½Ã±×´ÏÃ³, °¡Ä¡, Æ÷Àå µî)
   ========================================================================== */
.brand-feature-block {
    padding: 4.3rem 1.25rem 0rem 1.25rem;
}

.brand-feature-block__img-box {
    width: 100%;
    position: relative;
}

.brand-feature-block__img-box img {
    width: 100%;
    display: block;
    height: auto;
}

.brand-feature-block__title {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 30px 0px 0px 0px;
    margin: 0;
}

.brand-feature-block__desc-wrapper {
    font-size: 0.7rem;
    line-height: 1.3rem;
    word-break: keep-all;
}

.brand-feature-block__desc { text-align: justify; padding: 10px 0px 30px 0px; font-size: 0.85rem; line-height: 1.6; word-break: keep-all; letter-spacing: -0.02rem; }
.about-diamond__desc { text-align: justify; padding: 0.8rem 1.25rem 0rem 1.25rem; font-size: 0.85rem; line-height: 1.6; word-break: keep-all; letter-spacing: -0.02rem; }

.brand-feature-block__desc-accent {
    display: block;
    padding: 10px 0px;
}

/* ºí·¢ ¹öÆ° ½Ã½ºÅÛ ±Ô°Ý */
.brand-link-button {
    display: block;
    text-align: center;
    background-color: #111;
    color: #fff;
    padding: 15px 0px;    
    font-weight: 400;
    font-size: 13px;
    max-width: 200px;
    text-decoration: none;
}

.brand-link-button--center {
    margin: 0.5rem auto 0.5rem auto;
}

/* ¼¼ºÎ ÇÙ½É °¡Ä¡ ¼­ºê ÄÄÆ÷³ÍÆ® */
.brand-value-item {
    text-align: justify;
}

.brand-value-item__title {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
    padding: 20px 0px 2px 0px;
    margin: 0;
}

.brand-value-item__desc {
    font-size: 0.7rem;
    line-height: 1.3rem;
    word-break: keep-all;
    margin: 0;
}

/* ==========================================================================
   4. ´ÙÀÌ¾Æ¸óµå ¹× ÆÛ½º³Î ¼­ºê ÄÄÆ÷³ÍÆ® ±¸¿ª °ø°£ »çÀü ¹æ¾î
   ========================================================================== */
.about-diamond-info {
    width: 100%;
}

.about-diamond-info__banner {
    padding: 4.3rem 1.25rem 0rem 1.25rem;
}

.about-diamond-info__banner:nth-child(2) {
    padding: 0rem 1.25rem 0rem 1.25rem;
}

.about-diamond-info__banner img {
    width: 100%;
    display: block;
    height: auto;
}



.about-diamond-info__title {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 1.9rem 1.25rem 0rem 1.25rem;
    margin: 0;
}

.about-diamond-info__intro { text-align: justify; }
.about-diamond-grade { padding: 1.0rem 1.25rem 0rem 1.25rem; width: 100%; }

.about-diamond-grade__range {
    font-family: Lato, "Noto Sans KR", sans-serif;
    font-weight: bold;
    padding: 10px 0px 0px 0px;
    font-size: 11px;
    margin: 0;
}

.about-diamond-grade__detail {
    font-size: 0.7rem;
    line-height: 1.3rem;
    word-break: keep-all;
    text-align: justify;
    margin: 0 0 5px 0;
}

/* ´ÙÀÌ¾Æ¸óµå µî±Þ ¾È³» Ç¥ Æû ·¹ÀÌ¾Æ¿ô */
.about-diamond-tables {
    text-align: center;
    line-height: 22px;
    padding: 0rem 1.25rem;
}

.about-diamond-tables__criterion {
    font-family: 'Josefin Sans', sans-serif;
    letter-spacing: 0.2em;
    text-align: left;
    margin: 20px 0px 2px 0px;
    font-size: 12px;
}

.about-diamond-tables__wrapper {
    margin: 0px 0px 0px 0px;
}

.about-diamond-tables table {
    border: 1px solid #3b3b3b;
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 10px;
    line-height: 12px;
}

.about-diamond-tables table td {
    border: 1px solid #E1E1E3;
    padding: 7px 0px;
}

.table-cell-highlight {
    background: #efe9df;
    color: #524233;
}

.about-diamond-tables__caption {
    padding-top: 20px;
    font-size: 11px;
}

/* ÆÛ½º³Î ¼­ºñ½º (ÀÎ±×·¹ÀÌºù & Åº»ý¼®) ¿µ¿ª */
.about-personalization-section {
    width: 100%;
}

.about-personalization-section__banner {
    padding: 4.3rem 1.25rem 0rem 1.25rem;
}

.about-personalization-section__banner img {
    width: 100%;
    display: block;
    height: auto;
}

.about-personalization-section__title {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 1.9rem 1.25rem 0rem 1.25rem;
    margin: 0;
}

.about-personalization-section__desc { text-align: justify; padding: 0.7rem 1.25rem 1.0rem 1.25rem; font-size: 0.85rem; line-height: 1.6; word-break: keep-all; letter-spacing: -0.02rem; }

.birthstone-grid-tables {
    text-align: center;
    line-height: 10px;
    padding: 1.5rem 1.25rem 0.5rem 1.25rem;
}

.birthstone-grid-tables table {
    margin: 0px 0px 25px 0px;
    width: 100%;
    text-align: center;
    border-collapse: collapse;
}

.birthstone-grid-tables table td {
    font-family: 'Josefin Sans', sans-serif;
    padding: 5px 0px 0px 0px;
    width: 25%;
    font-size: 11px;
}

.birthstone-grid-tables__month {
    color: #c39562;
}

.birthstone-grid-tables table td img {
    width: 20px;
    margin: 0px 0px 5px 0px;
}

.section-dark {
    background: #fff;
}

/* ==========================================================================
   5. ÇÏ´Ü »ó´ã¿¹¾à ¾È³» ¹× °íÁ¤ ¹Ù Àü¿ë ½ºÅ¸ÀÏ ½Ã½ºÅÛ
   ========================================================================== */
body .shop-fixed-bottom-bar { 
    position: fixed; 
    bottom: -120px; /* ´ë±â Áß ¿Ïº® Àº´Ð */
    left: 0; 
    width: 100%; 
    padding: 12px 16px; 
    padding-bottom: calc(12px + env(safe-area-inset-bottom));
    box-sizing: border-box; 
    z-index: 99999; 
    display: flex; 
    gap: 10px; 
    background: #fff; 
    border-top: 1px solid #eaeaea; 
    transition: bottom 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); /* ÅÙ¼Ç ½½¶óÀÌµå ÀÎ */
}

/* ÀÚ¹Ù½ºÅ©¸³Æ® ¸ÅÄª ³ëÃâ À¯µµ */
body .shop-fixed-bottom-bar.show {
    bottom: 0 !important;
}

body .shop-fixed-bottom-bar a { 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    height: 54px; 
    font-size: 0.8rem; 
    text-decoration: none; 
    font-weight: 500; 
}
body .shop-fixed-bottom-bar .shop-btn-talk { 
    width: 80px; 
    flex-shrink: 0; 
    color: #3A1D1D; 
    background-color: #f4f0ea; 
}
body .shop-fixed-bottom-bar .shop-btn-naver { 
    flex-grow: 1; 
    color: #fff; 
    background: #000; 
}

.visit_btn_wrap, .kakao_btn_wrap { text-align:center; }
.what_title { font-family: 'Noto Serif KR', serif !important; font-size: 1.6rem; text-align: center; font-weight: 600; line-height: 1.3; padding: 50px 0px 0px 0px; border-top: 1px solid #c7c7c7; margin: 50px 0px 0px 0px; }
.what_detail { font-size: 0.85rem; text-align: center; line-height: 1.6; letter-spacing: initial; padding: 20px 10px 35px 10px; word-break: keep-all; }
.what_title_warp { margin: 0px 0px 100px 0px; }
.visit_btn { min-width: 160px; width: 100%; max-width: 280px; text-align: center; padding: 12px 20px; display: inline-block; font-size: 13px; border: 1px solid #111111; position: relative; overflow: hidden; background-color: #111111; color: #ffffff; z-index: 1; transition: color 0.4s ease, border-color 0.4s ease; cursor: pointer; text-decoration: none; box-sizing: border-box; }        
.kakao_info { letter-spacing: 0.02em; font-size: 0.85rem; text-align: center; line-height: 1.5; padding: 50px 0px 20px 0px; border-top: 1px solid #c7c7c7; margin-top: 50px;  }
.kakao_btn { position: relative; display: inline-block; text-align: center; padding-bottom: 4px; color: #111; letter-spacing: 0.02em; font-size: 0.85rem; }
.kakao_btn::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #c7a97b; transform: scaleX(1); transform-origin: left; transition: transform 0.35s ease; }
.kakao-link:hover .kakao_btn::after { transform: scaleX(0); }

.private-btn-wrap.center-align {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 10px 0 0 0;
}
.boutique-private-btn {
    min-width: 160px; 
    width: 100%;
    max-width: 280px;
    text-align: center; 
    padding: 12px 20px; 
    display: inline-block; 
    font-size: 13px; 
    border: 1px solid #111111; 
    position: relative; 
    overflow: hidden; 
    background-color: #111111; 
    color: #ffffff; 
    z-index: 1; 
    transition: color 0.4s ease, border-color 0.4s ease; 
    cursor: pointer;
    text-decoration: none;
    box-sizing: border-box;
}
.boutique-private-btn::before {
    content: ""; 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background-color: #ffffff; 
    z-index: -1; 
    transform: scaleY(0); 
    transform-origin: bottom; 
    transition: transform 0.4s ease; 
}
.boutique-private-btn:hover { 
    color: #111111; 
    border-color: #111111;
}
.boutique-private-btn:hover::before { transform: scaleY(1); }

/* ==========================================================================
   µ¥½ºÅ©Å¾ È¯°æ Àü¿ë °íÇØ»óµµ ¹ÝÀÀÇü ¹Ìµð¾îÄõ¸® ºôµå
   ========================================================================== */
@media (min-width: 769px) {
    .about-hero__img-box img {
        height: 100vh; 
    }
    .about-hero__title { font-size: 3.2rem; }
    .about-hero__desc { font-size: 1.2rem; }
    .brand-story-card__text-wrapper,
    .brand-feature-block__desc,
    .brand-value-item__desc,
    .about-diamond-grade__detail,
    .about-personalization-section__desc {
        font-size: 0.95rem;
        line-height: 1.8;
    }
    .brand-story-card__img-box img { padding: 0rem 15rem 2.0rem 15rem; }
    body .shop-fixed-bottom-bar { display: none !important; } /* PC À¥ºä¿¡¼­´Â Ç²ÅÍ °íÁ¤¹Ù ÀÚµ¿ ¼Ò¸ê ¼û±è */
}
/* BASIC css end */

