/* BASIC css start */
/* DAVINCI SELECTION - BRAND STORY */

html,
body {
    margin: 0;
    padding: 0;
}

.ds-brand,
.ds-brand * {
    box-sizing: border-box;
}

.ds-brand {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #f7f4ee;
    color: #3f3b37;
    text-align: center;
}

.ds-intro {
    width: 100%;
    min-height: calc(100vh - 150px);
    padding: 34px 30px 32px;

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

    background: #f7f4ee;
}

/* DAVINCI SELECTION */
.ds-eyebrow {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    letter-spacing: 4px;
    line-height: 1.3;
    color: #6e6256;
}

.ds-eyebrow span {
    display: block;
    margin-top: 7px;
    font-family: Arial, sans-serif;
    font-size: 8px;
    letter-spacing: 4px;
    color: #9b9187;
}

/* DIVIDER */
.ds-line {
    width: 38px;
    height: 1px;
    margin: 18px auto;
    background: #c8b9a6;
}

/* MAIN MESSAGE */
.ds-intro h1 {
    margin: 0;
    padding: 0;

    font-family: "Noto Serif KR", "Batang", serif;
    font-size: 28px;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 1.5px;

    color: #45413d;
}

/* STORY */
.ds-story {
    margin-top: 17px;
    font-family: "Noto Serif KR", "Batang", serif;
    font-size: 13px;
    line-height: 1.8;
    color: #66605a;
}

.ds-story p {
    margin: 0 0 13px;
}

.ds-story p:last-child {
    margin-bottom: 0;
}

.ds-story strong {
    font-weight: 600;
    color: #4b4641;
}

/* CATEGORIES */
.ds-categories {
    margin-top: 22px;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 10px;
    letter-spacing: 2.3px;
    color: #655e57;
}

.ds-categories i {
    display: block;
    width: 1px;
    height: 15px;
    background: #bcae9c;
}

.ds-line-bottom {
    margin-top: 20px;
    margin-bottom: 17px;
}

/* SLOGAN */
.ds-slogan {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    letter-spacing: 5px;
    color: #554f49;
}

/* SIGNATURE */
.ds-signature {
    margin-top: 14px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 8px;
    line-height: 1.7;
    letter-spacing: 3px;
    color: #8b8178;
}

.ds-signature span {
    display: block;
}


/* MOBILE */
@media screen and (max-width: 768px) {

    .ds-intro {
        min-height: auto;
        padding: 55px 24px 60px;
    }

    .ds-eyebrow {
        font-size: 15px;
        letter-spacing: 3px;
    }

    .ds-eyebrow span {
        font-size: 7px;
        letter-spacing: 2.5px;
    }

    .ds-line {
        margin: 18px auto;
    }

    .ds-intro h1 {
        font-size: 23px;
        line-height: 1.6;
        letter-spacing: 1px;
    }

    .ds-story {
        margin-top: 22px;
        font-size: 13px;
        line-height: 1.9;
    }

    .ds-story p {
        margin-bottom: 18px;
    }

    .ds-categories {
        margin-top: 25px;
        gap: 8px;
        font-size: 8px;
        letter-spacing: 0.7px;
    }

    .ds-categories i {
        height: 12px;
    }

    .ds-slogan {
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 3px;
    }

    .ds-signature {
        margin-top: 16px;
        font-size: 7px;
        letter-spacing: 2px;
    }
}
/* PC - BRAND STORY ONE SCREEN */
@media screen and (min-width: 769px) {

    .ds-intro {
        min-height: 0;
        height: auto;
        padding: 24px 30px 22px;
    }

    .ds-eyebrow {
        font-size: 16px;
        line-height: 1.2;
    }

    .ds-eyebrow span {
        margin-top: 4px;
        font-size: 7px;
    }

    .ds-line {
        margin: 12px auto;
    }

    .ds-intro h1 {
        font-size: 25px;
        line-height: 1.4;
    }

    .ds-story {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.6;
    }

    .ds-story p {
        margin-bottom: 8px;
    }

    .ds-categories {
        margin-top: 14px;
    }

    .ds-line-bottom {
        margin-top: 13px;
        margin-bottom: 12px;
    }

    .ds-slogan {
        font-size: 16px;
    }

    .ds-signature {
        margin-top: 9px;
    }
}
/* BRAND STORY TYPOGRAPHY BALANCE */

.ds-intro h1 {
    font-size: 21px;
    line-height: 1.45;
    font-weight: 400;
    letter-spacing: -0.3px;
    color: #3f3b37;
}

.ds-story {
    font-size: 13px;
    line-height: 1.75;
    font-weight: 400;
    color: #4a4641;
}

.ds-story strong {
    font-weight: 500;
    color: #36322f;
}

.ds-eyebrow {
    color: #4b4640;
}

.ds-categories,
.ds-slogan,
.ds-signature {
    color: #403b36;
}
/* ========================================
   BRAND STORY - 2 COLUMN LAYOUT FIX
======================================== */

.ds-brand {
    background: #f7f5f0;
}

.ds-brand .ds-section-inner {
    width: 86%;
    max-width: 1400px;
    margin: 0 auto;

    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: space-between;

    gap: 8%;
}


/* 01. BRAND INTRO */

.ds-intro {
    padding: 100px 0 120px;
}

.ds-intro-copy-wrap {
    width: 42%;
    box-sizing: border-box;
}

.ds-intro-image {
    width: 50%;
    height: 380px;
    background: #ebe8e1;
    box-sizing: border-box;
}


/* 02 + 03 COMMON */

.ds-feature {
    padding: 80px 0 120px;
}

.ds-feature-image {
    width: 52%;
    height: 380px;
    background: #ebe8e1;
    box-sizing: border-box;
}

.ds-feature-copy {
    width: 40%;
    box-sizing: border-box;
}


/* 03. DAVINCI CURATION
   HTML 순서 그대로 글 왼쪽 / 사진 오른쪽 */

.ds-feature-reverse .ds-section-inner {
    flex-direction: row !important;
}


/* IMAGE SETTING */
.ds-intro-image,
.ds-image-hotel,
.ds-image-curation {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

/* FOOTER 바로 위까지 아이보리 연결 */

.ds-brand {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


/* MOBILE */

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

    .ds-brand .ds-section-inner {
        width: 88%;
        display: block !important;
    }

    .ds-intro,
    .ds-feature {
        padding: 60px 0;
    }

    .ds-intro-copy-wrap,
    .ds-intro-image,
    .ds-feature-copy,
    .ds-feature-image {
        width: 100% !important;
    }

    .ds-intro-image,
    .ds-feature-image {
        height: 360px;
        margin-top: 40px;
    }

    .ds-feature-copy {
        margin-top: 40px;
    }
}
/* 제목과 본문 사이 여백 조정 */
.ds-intro-copy {
    margin-top: 30px !important;
}

.ds-feature-copy > p {
    margin-top: 30px !important;
}
/* ===== BRAND STORY 최종 미세조정 ===== */

/* 1. 첫 화면 메인 제목 조금 더 또렷하게 */
.ds-intro h1 {
    font-weight: 600 !important;
}

/* 2. 첫 화면 본문 문단 사이 간격 */
.ds-intro-copy p {
    margin: 0 0 28px 0 !important;
}

.ds-intro-copy p:last-child {
    margin-bottom: 0 !important;
}

/* 3. '여성 호텔 전문경영인' 강조 컬러 */
.ds-intro-copy strong {
    color: #9a7b55 !important;
    font-weight: 600 !important;
}

/* 4. 마지막 섹션 아래 여백 제거 - 풋터에 바로 연결 */
.ds-brand {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.ds-feature:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.ds-feature:last-child .ds-feature-inner {
    margin-bottom: 0 !important;
}

/* 개별페이지와 풋터 사이 기본 여백 제거 */
#content,
#contents {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
/* 마지막 DAVINCI CURATION 영역 하단 여백 제거 */
.ds-brand .ds-feature:last-child {
    min-height: 0 !important;
    height: auto !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.ds-brand .ds-feature:last-child .ds-feature-inner {
    min-height: 0 !important;
    height: auto !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
/* ===== DAVINCI BRAND STORY 최종 PC 배치 ===== */
@media screen and (min-width: 769px) {

    /* 모든 섹션 기본 정렬 */
    .ds-brand .ds-section-inner {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    /* 1. BRAND STORY
       왼쪽 텍스트 / 오른쪽 침실 이미지 */
    .ds-intro .ds-section-inner {
        flex-direction: row !important;
    }

    /* 2. FROM HOTEL EXPERIENCE
       왼쪽 이미지 / 오른쪽 텍스트 */
    .ds-feature:not(.ds-feature-reverse) .ds-section-inner {
        flex-direction: row-reverse !important;
    }

    /* 3. DAVINCI CURATION
       왼쪽 텍스트 / 오른쪽 거실 이미지 */
    .ds-feature-reverse .ds-section-inner {
        flex-direction: row !important;
    }

    /* 2·3번 이미지와 텍스트 비율 통일 */
    .ds-feature .ds-feature-image {
        width: 52% !important;
        flex: 0 0 52% !important;
        height: 380px !important;
        overflow: hidden !important;
    }

    .ds-feature .ds-feature-image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .ds-feature .ds-feature-copy {
        width: 40% !important;
        flex: 0 0 40% !important;
    }
}
/* BRAND STORY 제목과 본문 간격 */
.ds-intro-copy-wrap h2 {
    margin-bottom: 28px !important;
}
/* BRAND STORY 텍스트 전체 위치 살짝 위로 */
.ds-intro-copy-wrap {
    transform: translateY(-18px) !important;
}
/* 1. BRAND STORY 이미지 크기 조정 */
.ds-intro .ds-intro-image {
    width: 52% !important;
    height: 380px !important;
    overflow: hidden !important;
}

.ds-intro .ds-intro-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}
/* ===== 2. FROM HOTEL EXPERIENCE 최종 정리 ===== */
/* ===== 2번 FROM HOTEL EXPERIENCE 최종 ===== */

/* 2번 이미지 박스만 */
.ds-image-hotel {
    width: 52% !important;
    height: 380px !important;
    overflow: hidden !important;
}

/* 2번 사진을 박스에 꽉 채우기 */
.ds-image-hotel img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* 2번 제목과 본문 간격 */
.ds-image-hotel + * {
    box-sizing: border-box;
}
/* 2번 텍스트 위치 살짝 위로 */
.ds-feature:not(.ds-feature-reverse) .ds-feature-copy {
    transform: translateY(-20px) !important;
}
/* ===== BRAND STORY MOBILE IMAGE ===== */
@media (max-width: 768px) {

  .ds-mobile-img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }

  .ds-pc-img {
    display: none !important;
  }
}

@media (min-width: 769px) {

  .ds-mobile-img {
    display: none !important;
  }

  .ds-pc-img {
    display: block !important;
  }
}
.ds-intro .ds-intro-image,
.ds-feature .ds-feature-image {
    width: 100% !important;
    height: auto !important;
}

.ds-intro .ds-intro-image img,
.ds-feature .ds-feature-image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* BASIC css end */

