/*
Theme Name: Flatsome Child
Description: Child theme Flatsome cho dự án Evergreen Estate.
Author: UX Themes
Template: flatsome
Version: 1.0.14
*/

@font-face {
    font-family: '1FTV Glowstore';
    src: url('font/1FTV-Glowstore.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaLight.TTF') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaLightOblique.TTF') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaBook.TTF') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaBookOblique.TTF') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaRegular.TTF') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaObliqueTTF.TTF') format('truetype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaBold.TTF') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaBoldOblique.TTF') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaHeavy.TTF') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaHeavyOblique.TTF') format('truetype');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaExtraBold.TTF') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFU Futura';
    src: url('font/SFUFuturaExtraBoldOblique.TTF') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

/* ===== LOCAL FONT DEFINITIONS ===== */

:root {
    --brown-900: #110b09;
    /* Deep near-black brown background */
    --brown-800: #1a110d;
    /* Intermediate dark brown */
    --brown-700: #211713;
    /* Section dark brown */
    --brown-600: #402d1d;
    /* Soft warm brown */
    --tan: #c9ac8c;
    /* Primary gold accent */
    --tan-light: #e4cdc4;
    /* Secondary soft gold text */
    --cream: #E4CDC4;
    /* Primary body light text */
    --cream-2: #f2eee5;
    /* Background light color */
    --gold: #aa856c;
    /* Deep gold */
    --ink: #110b09;
    --grey: #a1a1a1;
    --white: #ffffff;
    --display: '1FTV Glowstore', 'Cormorant Garamond', Georgia, serif;
    --sans: 'SFU Futura', Arial, sans-serif;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--sans);
    background: var(--brown-700);
    color: var(--cream);
    font-size: 16px;
    line-height: 1.6;
    /* overflow-x: hidden; */
}

#main, #wrapper {
    background: var(--brown-700);
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* ===================================================================
   PRELOADER — màn chào "Evergreen" vẽ nét rồi tô, kèm thanh tiến trình
   =================================================================== */

.preloader {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: var(--brown-900);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Khóa cuộn khi đang preload */

body.is-loading {
    overflow: hidden;
    height: 100vh;
}

/* Nền có quầng sáng ấm tỏa nhẹ ở giữa cho sang */

.preloader::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 50% at 50% 50%, rgba(201, 172, 140, 0.14), transparent 70%);
    z-index: 0;
    opacity: 0;
    animation: pl-glow 1.4s ease forwards;
}

.preloader-inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 22px;
    padding: 0 24px;
}

/* Chữ Evergreen */

.preloader-word {
    width: min(560px, 82vw);
    height: auto;
    overflow: visible;
}

/* Lớp chữ nền: vẽ nét nhanh rồi tô kem */

.preloader-text {
    font-family: var(--display);
    font-style: italic;
    font-weight: 400;
    font-size: 118px;
    fill: var(--cream);
    stroke: var(--tan);
    stroke-width: 1.1px;
    stroke-dasharray: 1100;
    stroke-dashoffset: 1100;
    fill-opacity: 0;
    animation: pl-draw 0.5s cubic-bezier(0.7, 0, 0.2, 1) forwards,
    pl-fill 0.28s ease forwards 0.32s;
}

/* Lớp chữ ánh kim quét qua (shimmer) */

.preloader-shine {
    font-family: var(--display);
    font-style: italic;
    font-weight: 400;
    font-size: 118px;
    fill: url(#shineGrad);
    opacity: 0;
    /* dải sáng hẹp di chuyển ngang qua chữ */
    -webkit-mask-image: linear-gradient(100deg, transparent 38%, #000 50%, transparent 62%);
    mask-image: linear-gradient(100deg, transparent 38%, #000 50%, transparent 62%);
    -webkit-mask-size: 280% 100%;
    mask-size: 280% 100%;
    -webkit-mask-position: 130% 0;
    mask-position: 130% 0;
    animation: pl-shine-show 0.01s linear forwards 0.5s,
    pl-shine 0.5s ease-out forwards 0.5s;
}

/* Đường kẻ mảnh nở ra dưới chữ */

.preloader-rule {
    width: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--tan), transparent);
    opacity: 0;
    animation: pl-rule 0.4s cubic-bezier(0.7, 0, 0.2, 1) forwards 0.38s;
}

/* Màn mở kiểu wipe lên trên — dứt khoát, sang */

.preloader.is-done .preloader-inner {
    opacity: 0;
    transform: translateY(-18px) scale(0.985);
    transition: opacity 0.45s ease, transform 0.55s cubic-bezier(0.7, 0, 0.2, 1);
}

.preloader.is-done {
    transform: translateY(-100%);
    transition: transform 0.55s cubic-bezier(0.76, 0, 0.24, 1) 0.08s;
}

/* Ẩn hẳn sau khi wipe xong */

.preloader.is-hidden {
    visibility: hidden;
    pointer-events: none;
}

.header-bg-color{
    background: transparent;
}

#logo{
    width: auto!important;
    margin-right: 20px;
}

.header-main .nav > li > a{
    font-size: 14px;
    font-weight: 400;
    color: var(--cream);
    opacity: .85;
    transition: all .3s ease;
    position: relative;
    padding: 6px 0;
    white-space: nowrap;
}

.header-main .nav > li > a:after{
    content: '';
    position: absolute;
    left: 50%;
    bottom: 3px;
    width: 0;
    height: 1px;
    background: var(--tan);
    transition: all .3s ease;
    transform: translateX(-50%);
}

.nav>li{
    margin: 0 12px;
}

.header-main .nav > li.current-menu-item > a{
    opacity: 1;
    color: var(--tan);
}

.header-main .nav > li > a:hover:after, .header-main .nav > li.current-menu-item > a:after{
    width: 100%;
}

.header-main .nav > li > a:hover{
    opacity: 1;
    color: var(--tan);
}

.nav-dropdown-has-arrow li.current-dropdown.has-dropdown:after, .nav-dropdown-has-arrow li.current-dropdown.has-dropdown:before{
    display: none;
}

.absolute-footer{
    display: none;
}

/* Tôn trọng người dùng tắt hiệu ứng chuyển động */

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

ul {
    list-style: none;
}

/* Common layout classes */

.wrap {
    max-width: 1110px;
    margin: 0 auto;
}

.eyebrow {
    font-family: var(--sans);
    font-size: 12px;
    letter-spacing: .32em;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--tan);
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 15px;
}

.eyebrow::before {
    content: '';
    width: 30px;
    height: 1px;
    background: var(--tan);
}

.h-sec {
    font-family: var(--display);
    font-weight: 500;
    font-size: clamp(34px, 4.2vw, 52px);
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: .02em;
    color: var(--cream);
}

.outline-text {
    font-family: var(--display);
    font-weight: 300;
    color: transparent;
    -webkit-text-stroke: 1px rgba(249, 241, 221, 0.4);
    text-transform: uppercase;
}

.btn-outline-gold {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--sans);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 500;
    padding: 14px 32px;
    border: 1px solid var(--tan);
    color: var(--tan);
    background: transparent;
    cursor: pointer;
    transition: all .35s ease;
}

.btn-outline-gold:hover {
    background: var(--tan);
    color: var(--brown-900);
    transform: translateY(-2px);
}

/* Scroll reveal styling */

.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .8s ease, transform .8s ease;
}

.reveal.in {
    opacity: 1;
    transform: none;
}

/* Floating Contact Sidebar */

.sidebar-contact {
    position: fixed;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 1000;
}

.sidebar-item {
    width: 46px;
    height: 46px;
    background: rgba(26, 17, 13, 0.82);
    border: 1px solid rgba(201, 172, 140, 0.35);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--tan);
    transition: all 0.3s ease;
    backdrop-filter: blur(8px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.sidebar-item:hover {
    background: var(--tan);
    color: var(--brown-900);
    transform: scale(1.08) translateY(-2px);
    border-color: var(--tan);
}

/* ====== HERO ====== */

.hero {
    position: relative;
    height: 100vh;
    min-height: 720px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
}

.hero-bg {
    position: absolute;
    inset: 0;
    z-index: -2;
}

.hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: slowzoom 3s ease-out forwards;
}

.hero-content {
    max-width: 1000px;
    padding: 0 20px;
    margin-top: 50px;
}

.hero-logo-wrap {
    margin-bottom: 20px;
    animation: rise 1.2s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.hero-logo-img {
    height: 120px;
    width: auto;
    display: block;
    margin: 0 auto;
}

.hero-cursive {
    font-family: var(--display);
    font-weight: 400;
    font-style: italic;
    font-size: clamp(52px, 7.5vw, 100px);
    line-height: 1.1;
    color: var(--cream);
    text-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
    animation: rise 1.2s .15s cubic-bezier(0.16, 1, 0.3, 1) both;
    margin-bottom: 12px;
}

.hero-subtitle {
    font-family: var(--sans);
    font-size: clamp(12px, 1.5vw, 15px);
    letter-spacing: .45em;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--tan-light);
    margin-bottom: 30px;
    animation: rise 1.2s .3s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.hero-divider {
    width: 70px;
    height: 1px;
    background: var(--tan);
    margin: 0 auto 30px;
    animation: rise 1.2s .4s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.hero-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    font-family: var(--sans);
    font-size: 13px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--cream);
    opacity: 0.9;
    animation: rise 1.2s .5s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.hero-links span {
    position: relative;
}

.hero-links span:not(:last-child)::after {
    content: '|';
    position: absolute;
    right: -15px;
    color: rgba(201, 172, 140, 0.5);
}

/* Scroll mouse hint */

.scroll-hint-new {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    animation: rise 1.2s .7s cubic-bezier(0.16, 1, 0.3, 1) both;
    color: #fff;
    cursor: pointer;
    z-index: 99;
}

.mouse-icon {
    width: 24px;
    height: 38px;
    border: 1px solid #fff;
    border-radius: 12px;
    position: relative;
    opacity: 0.8;
}

.mouse-wheel {
    width: 3px;
    height: 7px;
    background: #fff;
    border-radius: 2px;
    position: absolute;
    top: 6px;
    left: 50%;
    transform: translateX(-50%);
    animation: scrollwheel 2s infinite ease-in-out;
}

.arrow-down-svg {
    opacity: 0.7;
    animation: arrowbounce 2s infinite ease-in-out;
}

/* ====== LEGACY ====== */

.legacy {
    position: relative;
    padding: 175px 0!important;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--brown-900);
}

.legacy .col-inner {
    display: flex;
    justify-content: center;
}

.legacy-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.legacy-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    filter: none;
}

.legacy::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(17, 11, 9, 0.25);
    z-index: 1;
}

.legacy-card h2{
    font-family: var(--display);
    font-weight: 500;
    font-size: clamp(28px, 3.8vw, 48px);
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--cream);
    margin-bottom: 30px;
}

.legacy .wrap {
    position: relative;
    z-index: 2;
    width: 100%;
    display: flex;
    justify-content: center;
}

.legacy-card {
    background: linear-gradient(180deg, rgb(255 255 255 / 20%) 0%, rgba(52, 47, 44, 1) 100%);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    padding: 120px 87px;
    max-width: 1065px;
    text-align: left;
    box-shadow: 0px 1px 4px 1px rgb(199 199 199 / 80%);
}

.legacy-title {
    font-family: var(--display);
    font-weight: 500;
    font-size: clamp(28px, 3.8vw, 48px);
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--cream);
    margin-bottom: 30px;
}

.legacy-card p {
    font-size: 15.4px;
    color: var(--tan-light);
    line-height: 1.5;
    margin-bottom: 24px;
}

.legacy-card p:last-of-type {
    margin-top: 40px;
    margin-bottom: 0;
}

.legacy-signature {
    display: flex;
    justify-content: flex-start;
}

.legacy-sig-img {
    height: 55px;
    width: auto;
    display: block;
    margin: 0;
}

/* ====== INTRO (GIỚI THIỆU VỀ EVERGREEN) ====== */

.intro {
    padding: 130px 0!important;
}

.intro .col{
    flex-basis: 100%;
    max-width: 100%;
    padding: 0;
}

.intro-new-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.25fr 1fr;
    column-gap: 60px;
    align-items: stretch;
    max-width: 1274px!important;
}

.intro-col-left .col-inner{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

.intro-eyebrow {
    display: none;
}

.intro-large-title h2{
    font-family: var(--display);
    font-size: clamp(32px, 3.5vw, 42px);
    line-height: 1.2;
    font-weight: 400;
    color: var(--cream);
    text-transform: uppercase;
    letter-spacing: .04em;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}

.intro-large-title span:first-child {
    font-weight: 300;
}

.intro-col-center {
    position: relative;
}

.intro-img-frame {
    position: relative;
    border: none;
    padding: 0;
    background: transparent;
}

.intro-img-frame img {
    width: 100%;
    aspect-ratio: 3/4.2;
    object-fit: cover;
    transition: all 0.5s ease;
}

.intro-col-right .col-inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: 30px;
}

.intro-text p {
    font-size: 16px;
    color: var(--tan-light);
    line-height: 1.5;
    margin-bottom: 24px;
    text-align: justify;
}

.intro-text p:last-child {
    margin-bottom: 0;
}

.intro-sub-img {
    border: none;
    padding: 0;
    background: transparent;
    align-self: flex-end;
    width: 100%;
    max-width: 240px;
}

.intro-sub-img img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
}

/* ====== LOCATION MAP ====== */

.location-map {
    width: 100%;
    overflow: hidden;
}

.location-map img {
    width: 100%;
    height: auto;
    display: block;
}

/* ====== VALUES & BANNER (MỘT CHUẨN SỐNG MỚI) ====== */

.values {
    padding: 116px 0!important;
}

.values .row.row-collapse{
    max-width: 1280px;
}

.values .wrap {
    max-width: 1280px;
    padding: 0;
}

.values-head {
    text-align: center;
    max-width: 1000px;
    margin: 0 auto 120px;
}

.values-head .eyebrow {
    display: none;
}

.values-head h2 {
    font-family: var(--display);
    font-size: clamp(32px, 4.2vw, 40px);
    text-transform: uppercase;
    font-weight: 400;
    color: var(--cream);
    margin-bottom: 12px;
    letter-spacing: .02em;
    line-height: 1.2;
}

.values-subdesc {
    color: var(--tan-light);
    font-family: var(
            --sans);
    font-size: clamp(14px, 1.8vw, 16px);
    line-height: 1.5;
    font-weight: 400;
}

/* Tabs Slider */

.values-tabs-row {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    margin-bottom: 46px;
    border-bottom: none;
    margin-right: -12px;
    margin-left: -12px;
}

.value-tab {
    padding: 20px 12px;
    text-align: left;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: self-start;
    gap: 12px;
    position: relative;
    opacity: 0.5;
}

.value-tab::after {
    display: none;
}

.value-tab:hover {
    opacity: 0.85;
}

.value-tab.active {
    opacity: 1;
}

.value-tab .v-num {
    font-family: var(--display);
    font-size: clamp(24px, 2.5vw, 40px);
    font-weight: 300;
    color: var(--cream);
    line-height: 1;
    transition: color 0.3s ease;
}

.value-tab .v-title {
    font-family: var(--sans);
    font-size: 16px;
    color: var(--cream);
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.3s ease;
}

.value-tab.active .v-title {
    color: var(--tan);
}

/* Active Value Detail */

.value-content-panel {
    max-width: 900px;
    margin: 0 auto 60px;
    text-align: center;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.value-active-title {
    font-family: var(--sans);
    font-size: clamp(20px, 2.5vw, 26px);
    color: var(--cream);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 20px;
    font-weight: 400;
}

.value-active-desc {
    font-size: 16px;
    color: rgba(249, 241, 221, 0.7);
    line-height: 1.5;
    max-width: 800px;
    margin: 0 auto;
    transition: opacity 0.3s ease;
}

.value-dots {
    display: flex;
    gap: 14px;
    margin-top: 32px;
    justify-content: center;
}

/* ── Shared dot style — áp cho mọi pagination trong site ── */

.v-dot,
.swiper-gallery-pagination .swiper-pagination-bullet,
.swiper-experts-pagination .swiper-pagination-bullet,
.swiper-sus-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgb(255 255 255);
    opacity: 1;
    cursor: pointer;
    transition: background 0.3s ease, box-shadow 0.3s ease;
    flex-shrink: 0;
    margin: 0;
}

.v-dot.active,
.swiper-gallery-pagination .swiper-pagination-bullet-active,
.swiper-experts-pagination .swiper-pagination-bullet-active,
.swiper-sus-pagination .swiper-pagination-bullet-active {
    background: var(--white);
    box-shadow: 0 0 0 4px var(--brown-900), 0 0 0 5.5px #F2C94C;
}

/* Value large banner overlay */

.values-banner {
    position: relative;
    width: 1271px;
    max-width: 100%;
    height: 667px;
    aspect-ratio: 1271 / 667;
    margin: 0 auto;
    overflow: hidden;
}

.values-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-overlay {
    position: absolute;
    inset: 0;
    background: rgba(17, 11, 9, 0.45);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    text-align: center;
}

.banner-logo-img {
    height: 90px;
    width: auto;
    display: block;
}

.banner-title {
    font-family: var(--display);
    font-size: clamp(32px, 5vw, 64px);
    font-style: italic;
    color: var(--tan);
    font-weight: 400;
}

/* ====== DẤU ẤN ĐƯỢC GHI NHẬN ====== */

.dau-an-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    margin-top: 170px;
}

.dau-an-wrap .col{
    flex-basis: 100%;
    max-width: 100%;
}

.dau-an-img-col {
    position: relative;
    overflow: hidden;
}

.dau-an-img-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.dau-an-text-col {
    max-width: 518px!important;
    padding: 0;
    margin-left: 125px;
}

.dau-an-title {
    font-family: var(--display);
    font-size: clamp(32px, 3.2vw, 40px);
    font-weight: 500;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--cream);
    margin-bottom: 4px;
}

.dau-an-lead {
    font-family: var(--sans);
    font-size: 14px;
    text-transform: uppercase;
    color: #7C6959;
    line-height: 1.8;
    margin-bottom: 32px;
}

.dau-an-body p {
    font-size: 16px;
    color: var(--tan-light);
    line-height: 1.5;
    margin-bottom: 20px;
    text-align: justify;
}

.dau-an-body p:last-child {
    margin-bottom: 0;
}

/* ====== MASTERPLAN (PLAN) ====== */

.plan {
    position: relative;
    padding: 130px 0;
    background: var(--brown-900);
    overflow: hidden;
}

.plan-head {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px;
}

.plan-head .eyebrow {
    justify-content: center;
}

.plan-head .eyebrow::after {
    content: '';
    width: 30px;
    height: 1px;
    background: var(--tan);
}

.plan-head h2 {
    margin-top: 20px;
}

.plan-figure {
    position: relative;
    border: 1px solid rgba(201, 172, 140, 0.35);
    padding: 10px;
    background: rgba(26, 17, 13, 0.3);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
}

.plan-figure img {
    width: 100%;
    display: block;
}

.poi {
    position: absolute;
    transform: translate(-50%, -50%);
}

.poi .dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--tan);
    border: 3px solid var(--white);
    box-shadow: 0 0 0 0 rgba(201, 172, 140, 0.8);
    animation: pulse 2.4s infinite;
    cursor: pointer;
    display: block;
}

.poi .label {
    position: absolute;
    left: 50%;
    bottom: 26px;
    transform: translateX(-50%);
    white-space: nowrap;
    background: rgba(17, 11, 9, 0.95);
    border: 1px solid rgba(201, 172, 140, 0.3);
    color: var(--cream);
    font-size: 11px;
    letter-spacing: .08em;
    padding: 7px 14px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease;
    text-transform: uppercase;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

.poi:hover .label {
    opacity: 1;
    bottom: 32px;
}

.amenities {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 30px;
    justify-content: center;
    margin-top: 50px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.amenity {
    font-size: 13px;
    letter-spacing: .05em;
    color: rgba(249, 241, 221, 0.85);
    display: flex;
    align-items: center;
    gap: 10px;
}

.amenity i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--tan);
    display: inline-block;
}

/* ====== PRODUCT TYPES (Những không gian sống) ====== */

.types {
    padding: 130px 0;
    background: var(--brown-800);
    border-top: 1px solid rgba(201, 172, 140, 0.1);
    border-bottom: 1px solid rgba(201, 172, 140, 0.1);
}

.types-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 60px;
    gap: 30px;
    flex-wrap: wrap;
}

.types-head h2 {
    margin-top: 15px;
    max-width: 600px;
}

.types-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.type-card {
    position: relative;
    height: 440px;
    overflow: hidden;
    cursor: pointer;
    border: 1px solid rgba(201, 172, 140, 0.15);
}

.type-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .9s cubic-bezier(0.16, 1, 0.3, 1);
}

.type-card:hover img {
    transform: scale(1.06);
}

.type-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17, 11, 9, 0) 40%, rgba(17, 11, 9, 0.9) 100%);
    z-index: 1;
}

.type-card .cap {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    padding: 34px;
    width: 100%;
}

.type-card .cap h3 {
    font-family: var(--display);
    font-size: 26px;
    font-weight: 500;
    color: var(--white);
    text-transform: uppercase;
    letter-spacing: .02em;
}

.type-card .cap span {
    font-size: 11.5px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--tan);
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    transform: translateY(10px);
    opacity: 0;
    transition: all .4s ease;
}

.type-card:hover .cap span {
    transform: none;
    opacity: 1;
}

.type-card.tall {
    grid-row: span 2;
    height: auto;
}

/* ====== LEED GLOBAL STANDARDS SECTION ====== */

.leed-section {
    padding: 130px 0;
    background: var(--cream-2);
    color: var(--ink);
}

.leed-grid {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 70px;
    align-items: center;
}

.leed-img-col {
    border: 1px solid rgba(170, 133, 108, 0.3);
    padding: 12px;
    background: var(--white);
    box-shadow: 0 20px 45px rgba(64, 45, 29, 0.12);
}

.leed-img-col img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.leed-eyebrow {
    font-family: var(--sans);
    font-size: 12px;
    letter-spacing: .32em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--gold);
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.leed-eyebrow::before {
    content: '';
    width: 30px;
    height: 1px;
    background: var(--gold);
}

.leed-title {
    font-family: var(--display);
    font-weight: 500;
    font-size: clamp(30px, 3.6vw, 46px);
    line-height: 1.15;
    text-transform: uppercase;
    color: var(--brown-900);
    margin-bottom: 22px;
}

.leed-subtitle {
    font-family: var(--sans);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    color: var(--gold);
    margin-bottom: 25px;
}

.leed-info-col p {
    font-size: 15px;
    color: #4c443c;
    line-height: 1.8;
    margin-bottom: 20px;
    text-align: justify;
}

.leed-info-col p:last-child {
    margin-bottom: 0;
}

/* ====== GALLERY (THƯ VIỆN ẢNH) ====== */

.gallery {
    position: relative;
    padding: 242px 0 160px;
    overflow: hidden;
}

.gallery-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.gallery-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(17, 11, 9, 0.68);
}

/* Outer wrap — kiểm soát max-width duy nhất */

.gallery-inner {
    position: relative;
    z-index: 2;
    max-width: 1213px;
    margin: 0 auto;
}

/* Swiper wrapper */

.gallery-swiper-wrap {
    position: relative;
    margin-bottom: 80px;
}

.gallery-swiper {
    overflow: hidden;
}

.gallery-swiper .swiper-wrapper {
    align-items: center;
}

.gallery-swiper .swiper-slide {
    height: 340px;
    overflow: hidden;
    cursor: pointer;
    transition: transform .4s ease;
}

.gallery-swiper .swiper-slide a {
    display: block;
    width: 100%;
    height: 100%;
}

.gallery-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s ease;
}

.gallery-swiper .swiper-slide:hover img {
    transform: scale(1.05);
}

/* Prev / Next arrows — ngoài swiper, hai bên wrap */

.gallery-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(201, 172, 140, 0.4);
    background: rgba(17, 11, 9, 0.7);
    color: var(--tan);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .3s ease;
    backdrop-filter: blur(6px);
    margin: 0;
    line-height: normal;
}

.gallery-arrow i{
    font-size: 17px;
    top: 0;
}

.gallery-arrow:hover {
    background: var(--tan);
    color: var(--brown-900);
    border-color: var(--tan);
}

.gallery-arrow--prev {
    left: -22px;
}

.gallery-arrow--next {
    right: -22px;
}

/* Footer */

.gallery-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Swiper custom pagination (dots) */

.swiper-gallery-pagination {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-shrink: 0;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    width: auto;
}

.gallery-outline-title {
    font-family: var(--display), Georgia, serif;
    font-size: clamp(36px, 4.5vw, 48px);
    font-weight: 400;
    text-transform: uppercase;
    color: var(--cream);
    line-height: 1;
    white-space: nowrap;
    margin: 0;
    display: inline-flex;
    width: auto;
}

/* ====== NEWS ACCORDION ====== */

.news {
}

/* Header section: tiêu đề + nút "Xem tất cả" — CHỈ hiện trên mobile (≤768px) */
.news-head {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 28px;
}
.news-head-title {
    font-family: var(--display), Georgia, serif;
    font-size: clamp(32px, 3vw, 40px);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--cream, #E4CDC4);
    margin: 0;
}
.news-head-all {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: none;
    font-size: 15px;
    color: var(--white, #fff);
    background: transparent;
    border: 1px solid #fff;
    border-radius: 30px;
    padding: 10px 24px;
    text-decoration: none;
    transition: background .3s ease, color .3s ease, border-color .3s ease;
}
.news-head-all:hover {
    background: var(--tan);
    border-color: var(--tan);
    color: var(--brown-900) !important;
}

/* Swiper wrapper: desktop KHÔNG init Swiper nên .news-swiper chỉ là div thường.
   Cho phép accordion flex chạy như cũ. Ẩn pagination trên desktop. */
.news-swiper {
    width: 100%;
}
.news-pagination-dots {
    display: none;
}

/* Accordion strip */

.short-code-news>p{
    display: none;
}

.news-accordion {
    display: flex;
    height: 620px;
    overflow: hidden;
}

.na-item {
    position: relative;
    flex: 1;
    overflow: hidden;
    cursor: pointer;
    transition: flex .6s cubic-bezier(0.4, 0, 0.2, 1);
}

.na-item.active {
    flex: 3.2;
}

.na-item img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
    display: block;
}

.na-item:hover img,
.na-item.active img {
    transform: scale(1.04);
}

/* Overlay gradient */

.na-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(17, 11, 9, 0.92) 0%, rgba(17, 11, 9, 0.3) 55%, transparent 100%);
    transition: background .4s ease;
    z-index: 1;
}

.na-item:not(.active) .na-overlay {
    background: rgba(17, 11, 9, 0.6);
}

/* Content at bottom */

.na-body {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    padding: 0 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 142px;
}

.na-tag {
    display: inline-flex;
    font-size: 12px;
    line-height: 20px;
    text-transform: uppercase;
    color: var(--white);
    background: #000000B2;
    border: 0;
    border-radius: 30px;
    padding: 7px 18px;
    margin-bottom: 25px;
    backdrop-filter: blur(4px);
    width: auto;
    text-decoration: none;
    transition: all 0.3s ease;
}
a.na-tag:hover {
    background: var(--tan);
    color: var(--brown-900) !important;
}

.na-title {
    font-family: var(--sans), Georgia, serif;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 700;
    color: var(--cream);
    text-transform: uppercase;
    line-height: 1.5;
    margin-bottom: 14px;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 32px;
}

/* desc & button hidden on collapsed */

.na-desc,
.na-more {
    /* opacity: 0; */
    /* visibility: hidden; */
    /* transform: translateY(10px); */
    transition: opacity .35s ease .1s, transform .35s ease .1s, visibility 0s ease .45s;
    pointer-events: none;
}

.na-item.active .na-desc,
.na-item.active .na-more {
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
    transition: opacity .35s ease .1s, transform .35s ease .1s, visibility 0s ease 0s;
}

.na-desc {
    font-size: 16px;
    color: #fff;
    line-height: 1.5;
    margin-bottom: 20px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 48px;
}

.na-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    letter-spacing: .14em;
    color: var(--white);
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 30px;
    padding: 7px 20px;
    transition: background .3s ease, opacity .35s ease .1s, transform .35s ease .1s;
}

.na-more:hover {
    background: var(--tan);
    border-color: var(--tan);
    color: var(--brown-900);
}

/* ====== CONTACT (LIÊN HỆ) ====== */

.contact {
}

.contact-split-container {
    display: flex;
    min-height: 640px;
}

.contact-visual-col {
    width: 50%;
    position: relative;
    overflow: hidden;
    /* border-right: 1px solid rgba(201, 172, 140, 0.15); */
}

.contact-visual-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contact-visual-col::after {
    content: '';
    position: absolute;
    inset: 0;
}

.contact .contact-form-col {
    width: 50%;
    display: flex;
    align-items: center;
    padding: 80px 10% !important;
}

.contact-form-wrapper {
    width: 100%;
}

.contact-form-title {
    font-family: var(--display);
    font-size: clamp(36px, 3.2vw, 42px);
    text-transform: uppercase;
    font-weight: 500;
    color: var(--cream);
    margin-bottom: 12px;
    line-height: 1.2;
}

.contact-form-subtitle {
    font-size: 16px;
    color: var(--cream);
    margin-bottom: 44px;
}

.form-new .field-new {
    margin-bottom: 32px;
    position: relative;
}

.form-new input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(249, 241, 221, 0.25);
    color: var(--cream);
    font-family: var(--sans);
    font-size: 14px;
    padding: 10px 0;
    outline: none;
    transition: border-color .3s ease;
}

.form-new input::placeholder {
    color: rgba(249, 241, 221, 0.45);
    font-size: 14px;
}

.form-new input:focus {
    border-color: rgba(249, 241, 221, 0.7);
}

.form-submit-row {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}

.btn-pill-submit {
    background: #AA856C;
    color: #fff;
    border: none;
    border-radius: 30px;
    font-family: var(--sans);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .1em;
    padding: 12px 28px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-pill-submit:hover {
    background: #AA856C;
    transform: translateY(-2px);
}

/* ====== FOOTER ====== */

.footer {
    color: rgba(249, 241, 221, 0.6);
    padding: 80px 0 0!important;
}

.footer-wrap-new {
    display: flex;
    flex-direction: column;
}

.footer-branding {
    display: flex;
    justify-content: center;
    margin-bottom: 70px;
}

.footer-logo-img {
    height: 120px;
    width: auto;
    display: block;
}

.footer-main-new {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;
}

.footer-col-new h4 {
    font-family: var(--sans);
    font-size: 16px;
    font-weight: 700;
    color: var(--tan-light);
    letter-spacing: 0.1em;
    margin-bottom: 20px;
    line-height: 1.5;
}

.footer-col-new p {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 14px;
    color: var(--tan-light);
}

.footer-col-new .mst {
    font-size: 13px;
    color: var(--tan-light);
}

.footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 16px;
}

.col-inner .footer-contact-list li {
    font-size: 16px;
    color: var(--tan-light);
    line-height: 1.6;
    margin-left: 0;
}

.footer-links-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-links-list > li > a {
    font-size: 16px;
    color: var(--tan-light);
    transition: color 0.3s ease;
    display: block;
}

.footer-links-list > li > a:hover {
    color: var(--cream);
}

.footer-links-parent {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 0;
}

.footer-links-sub {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 4px;
}

.footer-links-sub li{
    margin-bottom: 0;
}

.footer-links-sub li{
    margin-left: 0;
}

.footer-links-sub a {
    font-size: 16px;
    color: var(--tan-light);
    transition: color 0.3s ease;
    display: block;
}

.footer-links-sub a:hover {
    color: var(--cream);
}

.footer-bottom-new {
    border-top: 1px solid rgba(201, 172, 140, 0.1);
    padding: 28px 0;
    text-align: center;
    font-size: 12px;
    letter-spacing: .05em;
    color: rgba(249, 241, 221, 0.3);
}

.footer-bottom-new p{
    margin-bottom: 0;
}

/* ====== RESPONSIVE ====== */

/* ===================================================================
   RESPONSIVE TINH CHỈNH — bổ sung sau khi kiểm tra thực tế
   =================================================================== */

/* ---- TABLET ngang & nhỏ (≤900px) ---- */

/* ---- TABLET (≤1024px) — tinh chỉnh thêm cho các media query sẵn có ---- */

/* ---- MOBILE (≤600px) — tinh chỉnh bổ sung ---- */

/* ---- MOBILE NHỎ (≤380px) ---- */

/* ===================================================================
   MỘT CHUẨN MỰC SỐNG MỚI GIỮA THIÊN NHIÊN PAGE STYLES
   =================================================================== */

/* --- HERO SECTION --- */

.values-hero {
    position: relative;
    height: 100vh;
    min-height: 720px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--brown-900);
}

.values-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.values-hero .img {max-width: 980px;margin: 0 auto;}

.values-hero-bg::after {
}

.values-hero-content {
    position: relative;
    z-index: 3;
    text-align: center;
    max-width: 980px;
}

.values-hero-title-img {
    max-width: min(980px, 90vw);
    margin: 0 auto;
}

.values-hero-title-img img {
    width: 100%;
    height: auto;
    filter: drop-shadow(0 4px 15px rgba(0, 0, 0, 0.5));
}

/* --- COMMON SECTION STYLES --- */

.values-sec-title {
    font-family: var(--display);
    font-weight: 400;
    font-size: clamp(28px, 4vw, 40px);
    line-height: 1.25;
    text-transform: uppercase;
    color: var(--cream);
    margin-bottom: 18px;
}

.values-sec-title.center {
    text-align: center;
}

.values-sec-subtitle {
    font-family: var(--sans);
    font-size: 16px;
    letter-spacing: 0.05em;
    text-transform: none;
    color: var(--tan);
    margin-bottom: 32px;
    font-weight: 700;
}

.values-sec-desc p {
    font-size: 16px;
    line-height: 1.5;
    color: rgba(249, 241, 221, 0.85);
    margin-bottom: 20px;
}

.values-sec-desc p:last-child {
    margin-bottom: 0;
}

/* --- GP.INVEST SECTION --- */

.values-invest {
    padding: 120px 0!important;
}

.values-invest .col{
    /* flex-basis: 100%; */
    /* max-width: 100%; */
}

.values-invest-container {
    /* display: flex; */
    /* grid-template-columns: 1fr 1fr; */
    /* align-items: self-start; */
    width: 100%;
    max-width: 1280px !important;
}

.values-invest-media {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.values-invest-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.video-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--brown-900);
}

.video-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.video-wrapper:hover img {
    transform: scale(1.03);
}

.video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: transparent;
    border: 3px solid #ffffff;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
    transition: all 0.3s ease;
    z-index: 10;
    animation: pulse-play 2s infinite;
}

.video-play-btn svg {
    width: 30px;
    height: 30px;
    fill: #ffffff;
    transform: translateX(3px);
    transition: all 0.3s ease;
}

.video-play-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: var(--tan);
    transform: translate(-50%, -50%) scale(1.05);
}

.video-play-btn:hover svg {
    fill: var(--tan);
}

.values-invest-text {
}

.values-invest-text.txt-cdt{
    display: flex;
    padding-left: 124px!important;
    align-items: center;
}

.values-invest-sig {
    margin-top: 30px;
}

.values-invest-sig img {
    height: 48px;
    width: auto;
    opacity: 0.85;
}

.off-canvas-left .mfp-content, .off-canvas-right .mfp-content{
    background: #211713;
}

.mfp-close{
    opacity: 1!important;
}

.nav-sidebar.nav-vertical>li+li{
    border: 0;
}

.off-canvas .nav-vertical>li>a{
    color: var(--cream);
    font-weight: 400;
    letter-spacing: normal;
    font-size: 16px;
    padding-bottom: 12px;
    padding-top: 12px;
}

.nav-vertical>li>ul li a{
    padding-left: 24px!important;
    color: var(--cream);
    padding-bottom: 12px!important;
    padding-top: 12px!important;
}

/* --- BẢN SẮC TINH HOA --- */

.values-identity {
    /* padding: 120px 0!important; */
}

.values-identity .col{
    flex-basis: 100%;
    max-width: 100%;
}

.values-identity-container {
    display: grid;
    grid-template-columns: 0.94fr 1.06fr;
    column-gap: 80px;
    align-items: center;
    max-width: 1280px!important;
    padding: 0;
}

.identity-grid .col-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 16px;
    row-gap: 25px;
    align-items: start;
}

.identity-item {
    display: flex;
    flex-direction: column;
    cursor: pointer;
}

.identity-img-wrapper {
    position: relative;
    overflow: hidden;
}

.identity-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.identity-item:hover .identity-img-wrapper img {
    transform: scale(1.05);
}

.identity-caption {
    font-family: var(--sans);
    font-weight: 700;
    font-size: 16px;
    line-height: 1.4;
    color: var(--cream);
    margin-top: 16px;
    transition: color 0.3s ease;
}

.identity-item:hover .identity-caption {
    color: var(--tan);
}

/* Stagger layout for columns */

.item-1 .identity-img-wrapper {
    aspect-ratio: 3.5 / 5;
}

.item-2 .identity-img-wrapper {
    aspect-ratio: 3.5 / 5;
}

.item-3 .identity-img-wrapper {
    aspect-ratio: 16 / 9;
}

.item-3 {
    grid-column: 1 / span 2;
}

/* --- CHUYÊN GIA HÀNG ĐẦU --- */

.values-experts {
    padding: 120px 0 80px!important;
}

.values-experts-header {
    margin-bottom: 60px;
}

.values-experts-swiper-container {
    position: relative;
    width: 100%;
}

.experts-swiper-overflow-clip {
    overflow: hidden;
    width: 100%;
}

.experts-swiper {
    width: 100%;
    padding: 0 40px !important;
    overflow: visible !important;
    box-sizing: border-box;
}

.experts-swiper .swiper-wrapper {
    align-items: stretch !important;
}

.experts-swiper .swiper-slide {
    height: auto;
    display: flex;
    flex-direction: column;
}

.expert-card {
    background: transparent;
    border: none;
    border-radius: 0;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.expert-card-img {
    width: 100%;
    aspect-ratio: 416 / 245;
    overflow: hidden;
    position: relative;
}

.expert-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    display: block;
}

.expert-card-info {
    padding: 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #251C18;
}

.expert-name-block {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.expert-name {
    font-family: var(--sans);
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    line-height: 1.25;
    margin-bottom: 32px;
}

.expert-name .expert-dash {
    font-weight: 300;
    color: rgba(249, 241, 221, 0.5);
    margin-left: 2px;
}

.expert-role {
    font-family: var(--sans);
    font-size: 16px;
    font-weight: 400;
    color: rgba(249, 241, 221, 0.6);
    line-height: 1.5;
    margin: 0;
}

.expert-desc {
    font-size: 16px;
    line-height: 1.5;
    color: rgba(249, 241, 221, 0.7);
    margin: 0;
}

.expert-card:hover .expert-card-img img {
    transform: scale(1.04);
}

.swiper-experts-pagination {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 40px !important;
    gap: 8px !important;
    z-index: 10 !important;
    width: auto !important;
}

/* --- RESPONSIVE --- */

/* ===================================================================
   ĐẠI NGÀN TUYỆT SẮC — page specific
   Reuses .values-hero, .values-sec-title/-subtitle/-desc, .reveal,
   .wrap, .btn-outline-gold, .scroll-hint-new from the shared library.
   =================================================================== */

/* Hero: brighten the lush forest banner a touch more than default */

.dn-hero .values-hero-bg img {
    opacity: 0.85;
    filter: brightness(0.92);
}

.dn-hero-title {
    max-width: min(980px, 88vw);
}

/* --- NHỮNG GIÁ TRỊ ĐƯỢC KIẾN TẠO ĐỂ TRƯỜNG TỒN --- */

.dn-values {
    padding: 100px 0!important;
}

/* Hàng tiêu đề trái + nội dung phải */

.dn-values-head {
    display: grid;
    grid-template-columns: 1fr 1.18fr;
    column-gap: 90px;
    align-items: start;
    max-width: 1032px!important;
    margin-bottom: 90px;
}

.dn-values-title {
    margin-bottom: 0;
}

.dn-values-desc {
    max-width: 600px;
    padding-top: 6px;
}

/* Hàng 2 ảnh villa cạnh nhau */

.dn-values-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 35px;
    max-width: 1280px;
}

.dn-values-img {
    overflow: hidden;
    aspect-ratio: 16 / 11;
}

.dn-values-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}

.dn-values-img:hover img {
    transform: scale(1.05);
}

/* --- THIÊN NHIÊN NGUYÊN BẢN (gallery lớn) --- */

.dn-nature {
    padding: 120px 0;
}

.dn-nature-head {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 60px;
    align-items: end;
    margin-bottom: 56px;
}

.dn-nature-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto auto;
    gap: 16px;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 50px;
}

.dn-nature-item {
    position: relative;
    overflow: hidden;
}

.dn-nature-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}

.dn-nature-item:hover img {
    transform: scale(1.05);
}

.dn-n-1 {
    grid-row: 1 / span 2;
}

.dn-n-2 {
    aspect-ratio: 16 / 10;
}

.dn-n-3 {
    aspect-ratio: 16 / 10;
}

.dn-nature-caption {
    position: absolute;
    left: 24px;
    bottom: 22px;
    right: 24px;
    font-family: var(--sans);
    font-weight: 700;
    font-size: 15px;
    line-height: 1.4;
    color: var(--cream);
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6);
    z-index: 2;
}

.dn-nature-item::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgba(17, 11, 9, 0.78) 100%);
    z-index: 1;
}

/* --- GIAO THÔNG / TIỆN ÍCH --- */

.dn-feature {
    padding: 0 0 120px;
}

.dn-feature-container {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 80px;
    align-items: center;
    max-width: 1280px;
}

.dn-feature-media {
    overflow: hidden;
    aspect-ratio: 16 / 11;
}

.dn-feature-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}

.dn-feature-media:hover img {
    transform: scale(1.04);
}

.dn-feature-text {
    max-width: 480px;
}

/* --- CTA BANNER (link sang Một chuẩn mực) --- */

.dn-cta {
    position: relative;
    min-height: 520px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.dn-cta-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.dn-cta-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dn-cta-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(17, 11, 9, 0.55) 0%, rgba(17, 11, 9, 0.78) 100%);
}

.dn-cta-content {
    position: relative;
    z-index: 3;
    text-align: center;
}

.dn-cta-desc {
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.6;
    color: rgba(249, 241, 221, 0.85);
    max-width: 560px;
    margin: 0 auto 32px;
}

.dn-cta-btn {
    background: rgba(201, 172, 140, 0.08);
}

.top-divider {
    display: none;
}

.flickity-prev-next-button .arrow, .flickity-prev-next-button svg{
    fill: #fff;
    border-color: #fff;
}

.flickity-prev-next-button{
    top: 28%;
}

.flickity-page-dots .dot.is-selected{
    background: #fff;
    box-shadow: 0 0 0 4px var(--brown-900), 0 0 0 5.5px #F2C94C;
}
.nav-dots-small .flickity-page-dots .dot, .row-slider .flickity-page-dots .dot{
    background: #fff;
    opacity: 1;
}

.flickity-page-dots .dot{
    margin: 0 10px;
}

.row-slider .flickity-page-dots{
    bottom: -24px;
    left: 0;
    right: auto;
}

/* --- RESPONSIVE --- */

/* ===================================================================
   CHỨNG CHỈ LEED SECTION
   =================================================================== */

.dn-leed {
    position: relative;
    padding: 136px 0!important;
    min-height: 90vh;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    background: var(--brown-900);
}

.dn-leed .section-content{
    min-height: calc(90vh - 160px);
}

.dn-leed .section-bg img, .values-hero .section-bg img{
    object-fit: cover;
    filter: brightness(0.9);
}

.dn-leed .section-bg:before, .values-hero .section-bg:before{
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(17, 11, 9, 0.35) 0%, rgba(17, 11, 9, 0.7) 100%);
}

.dn-leed-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.dn-leed-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.5;
    filter: brightness(0.65);
}

.dn-leed-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(17, 11, 9, 0.35) 0%, rgba(17, 11, 9, 0.7) 100%);
}

.dn-leed-content {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: calc(90vh - 160px);
}

.dn-leed-title {
    font-family: var(--display);
    font-weight: 300;
    font-size: clamp(22px, 3.2vw, 40px);
    line-height: 1.4;
    text-transform: uppercase;
    color: var(--cream);
    max-width: 950px;
}

.dn-leed-stats {
    display: grid;
    grid-template-columns: 1fr 1fr 1.2fr;
    align-items: flex-start;
    width: 100%;
}

.dn-leed-stat-col {
}

.dn-leed-stat-col.has-divider {
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    padding-left: 45px;
}

.dn-leed-stat-label {
    font-family: var(--sans);
    font-size: clamp(20px, 1.4vw, 17px);
    text-transform: none; /* Keep capitalization like 'Quy Mô' */
    color: var(--cream);
    margin-bottom: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.dn-leed-stat-val {
    font-family: var(--display);
    font-size: clamp(38px, 4.6vw, 60px);
    font-weight: 300;
    line-height: 1.1;
    color: var(--cream);
    letter-spacing: 0.02em;
}

/* Responsive styles for LEED */

/* ===================================================================
   TABS & ALTERNATING ROWS FOR ĐẠI NGÀN TUYỆT SẮC
   =================================================================== */

/* --- TABS SECTION --- */

.dn-sustainable {
    padding: 80px 0 0!important;
}

.dn-sus-intro-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 40px;
    align-items: center;
    max-width: 1286px!important;
    margin-bottom: 135px;
}

.dn-sus-intro-media {
    overflow: hidden;
}

.dn-sus-intro-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.dn-sus-intro-media:hover img {
    transform: scale(1.03);
}

.dn-sus-intro-text {
    max-width: 580px;
}

/* Tabs container styling */

.dn-sus-tabs-container{
    max-width: 1280px!important;
    margin: 0 auto 50px;
    /* padding: 0 50px; */
}

.news-grid-row{
    max-width: 1280px!important;
}

.dn-sus-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 80px;
    border-bottom: none;
    padding-bottom: 0;
}

.dn-sus-tab {
    font-family: var(--sans);
    font-size: 14px;
    text-transform: none;
    font-weight: 500;
    color: #F2CCA1;
    background: #16120E80;
    border: 0;
    padding: 10px 24px;
    border-radius: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 160px;
    line-height: normal;
}

.dn-sus-tab:hover {
    color: var(--cream);
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.15);
}

.dn-sus-tab.active {
    background: #7C695980;
    color: #F2CCA1;
}

/* Swiper Outer Container for Tabs */

.dn-sus-swiper {
    width: 100%;
    position: relative;
    overflow: hidden;
    padding-bottom: 60px;
}

/* Tab Panel Layout — .dn-sus-panel giờ là [row_inner] Flatsome (2 cột tự chia).
   Bỏ grid cũ, chỉ canh giữa dọc + khoảng cách 2 cột. */
.dn-sus-panel {
    align-items: start;
}

.dn-sustainable .dn-sus-panel{
    align-items: center;
    max-width: 100%;
}

.dn-sus-panel .col{
    padding-bottom: 0;
    display: flex;
}

/* Cột ảnh (col_inner.dn-sus-panel-media) */
.dn-sus-panel-media {
    overflow: hidden;
}
.dn-sus-panel-media .col-inner { padding: 0; }
.dn-sus-panel-media .img,
.dn-sus-panel-media .img-inner { height: 100%; }
.dn-sus-panel-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Cột text (col_inner.dn-sus-panel-text) — căn giữa dọc, lùi vào trong */
.dn-sus-panel-text .col-inner {
    padding: 0 0 0 40px;
}

.dn-sustainable .dn-sus-panel-text:first-child .col-inner{
    padding: 0;
}

.dn-sus-panel-title {
    font-family: var(--display);
    font-size: clamp(28px, 3vw, 24px);
    line-height: 1.2;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--cream);
    margin-bottom: 28px;
}

.dn-sustainable .dn-sus-panel-title{
    font-size: clamp(24px, 3vw, 24px);
    font-weight: bold;
    font-family: var(--sans);
    letter-spacing: normal;
}

.dn-sus-panel-desc {
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.7;
    color: rgba(249, 241, 221, 0.75);
    margin-bottom: 0;
    max-width: 520px;
}

/* Dots dưới phần text (slider của từng tab) — CHỈ layout.
   Style chấm (trắng + ring vàng) dùng chung .v-dot gốc ở trên. */
.dn-sus-slider-dots {
    justify-content: flex-start;
    margin-top: 36px;
    padding-left: 0;
}

@media (max-width: 991px) {
    .dn-sus-panel-text .col-inner,
    .dn-sus-slider-dots { padding-left: 0; }
    .dn-sus-slider-dots { justify-content: center; }
}

/* --- ALTERNATING ROWS SECTION --- */

.dn-nature-rows {
    padding: 0;
    background: var(--brown-800);
}

.dn-nat-row {
    display: flex;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    margin: 0;
    padding: 0;
    background: var(--brown-800);
}

.dn-nat-row-media {
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.dn-nat-row-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.dn-nat-row-media:hover img {
    transform: scale(1.02);
}

.dn-nat-row-text .col-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 80px 10%;
    height: 100%;
    background: #251C18; /* var(--brown-800) */
}

.dn-nat-row-title {
    font-family: var(--display);
    font-size: clamp(31px, 2.5vw, 24px);
    font-weight: 400;
    color: var(--cream);
    margin-bottom: 16px;
    line-height: 1.35;
    text-transform: uppercase;
    max-width: 416px;
}

.dn-nat-row-subtitle {
    font-family: var(--sans);
    font-size: 14.5px;
    font-weight: 700;
    color: #E4CDC4;
    margin-bottom: 24px;
    letter-spacing: 0.02em;
    max-width: 480px;
}

.dn-nat-row-desc {
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.5;
    color: #7C6959;
    max-width: 525px;
    margin: 0 auto;
}

/* Reverse Row Layout */

.dn-nat-row.reverse .dn-nat-row-media {
    order: 2;
}

.dn-nat-row.reverse .dn-nat-row-text {
    order: 1;
}

/* --- RESPONSIVE MEDIA QUERIES --- */

/* ===================================================================
   BIỆT THỰ ĐỈNH ĐỒI — page specific
   Reuses .values-hero*, .values-sec-title/-subtitle/-desc, .reveal,
   .wrap, .btn-outline-gold, .scroll-hint-new.
   =================================================================== */

/* --- INTRO: tiêu đề trái + body phải --- */

.bt-intro {
    padding: 120px 0 70px!important;
}

.bt-intro-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    col-gap: 50px;
    align-items: start;
    max-width: 1033px!important;
}

.bt-intro-head .values-sec-subtitle {
    margin-bottom: 0;
}

.bt-intro-body {
    max-width: 620px;
    padding-top: 6px;
}

/* --- 3 IMAGE CARD đặc quyền (dưới bt-intro): ảnh dọc + text overlay đáy --- */

.bt-privilege {
    padding: 0 0 75px !important;
}

.bt-privilege-row {
}

.dq-card {
    position: relative;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 4px;
}

/* Ảnh card: phủ kín, tỷ lệ dọc. */
.dq-card .dq-card-img {
    margin: 0;
    height: 100%;
}

.dq-card .dq-card-img,
.dq-card .dq-card-img .img-inner,
.dq-card .dq-card-img img {
    height: 100%;
}

.dq-card .dq-card-img img {
    width: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 3 / 4;
    transition: transform 0.7s ease;
}

.dq-card:hover .dq-card-img img {
    transform: scale(1.05);
}

/* Overlay gradient tối + text trắng, neo đáy ảnh. */
.dq-card-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 36px 40px 84px;
    background: linear-gradient(180deg, rgba(17,11,9,0) 0%, rgba(17,11,9,0.55) 55%, rgba(17,11,9,0.85) 100%);
    pointer-events: none;
    height: 250px;
}

.dq-card-title {
    font-family: var(--sans);
    color: var(--cream);
    font-size: clamp(18px, 2vw, 18px);
    font-weight: bold;
    line-height: 24px;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.dq-card-desc {
    font-family: var(--sans);
    color: #fff;
    font-size: 16px;
    line-height: 24px;
    margin: 0;
    opacity: 0.92;
}

/* --- THÔNG TIN PHÂN KHU: ảnh trái + spec phải --- */

.bt-info {
    padding: 0 0 126px!important;
}

.bt-info-grid {
    display: grid;
    grid-template-columns: 750px auto;
    column-gap: 40px;
    max-width: 1280px!important;
}

.bt-info-img {
    overflow: hidden;
}

.bt-info-img img {
    width: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}

.bt-info-img:hover img {
    transform: scale(1.04);
}

.bt-info-text .values-sec-title {
    font-size: clamp(16px, 2.6vw, 16px);
    margin-bottom: 24px;
    font-weight: bold;
}

/* Danh sách thông số */

.bt-spec-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.bt-spec-list li {
    position: relative;
    padding-left: 24px;
    font-size: 16px;
    line-height: 1.6;
    margin: 0!important;
    color: rgba(249, 241, 221, 0.82);
}

.bt-spec-list li::before {
    content: '';
    position: absolute;
    left: 4px;
    top: 9px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--tan);
}

.bt-spec-list li strong {
    color: var(--cream);
    font-weight: 700;
}

/* --- MẶT BẰNG TIỆN ÍCH --- */

.bt-map {
    padding: 0 0 100px;
}

.bt-map .wrap {
    max-width: 100%;
}

.bt-map img {
    width: 100%;
    height: auto;
    display: block;
}

/* --- VỊ THẾ ĐỘC BẢN: tái sử dụng UI tab .dn-sus-* (giống trang Đại Ngàn) --- */

/* Ghi đè padding lớn của .dn-sustainable cho phù hợp trang này */

.bt-vithe.dn-sustainable {
    padding: 20px 0 120px;
}

/* Trang villa: mỗi tab chỉ 1 panel nên ẩn cụm dots tùy chỉnh */

.bt-vithe .dn-sus-dots-custom {
    display: none;
}

/* --- BIỆT THỰ ĐỈNH ĐỒI (bottom): hàng 1 ảnh+text, hàng 2 banner --- */

.bt-bottom {
    padding: 0;
}

/* Hàng 1: ảnh trái + thông số phải */

.bt-bottom-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: stretch;
    max-width: 100%;
}

.bt-bottom-img {
    overflow: hidden;
}

.bt-bottom-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

section .row .bt-bottom-text .col-inner {
    background: var(--brown-700);
    padding: 64px 80px!important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.bt-bottom-text .values-sec-title {
    font-size: clamp(26px, 3.4vw, 40px);
    margin-bottom: 32px;
}

/* Hàng 2: banner full-width */

.bt-bottom-banner img {
    width: 100%;
    height: auto;
    display: block;
}

.nav-line-bottom>li>a:before, .nav-line-grow>li>a:before, .nav-line>li>a:before{
    display: none;
}



/* --- RESPONSIVE --- */

/* ===================================================================
   RESPONSIVE MEDIA QUERIES (Grouped & Ordered)
   =================================================================== */

@media (min-width: 992px) {
    .item-2 {
        margin-top: 50px;
    }
}

@media (max-width: 1271px) {
    .values-banner {
        height: auto;
    }
}

@media (max-width: 1024px) {
    .dau-an-wrap {
        grid-template-columns: 1fr;
    }

    .dau-an-img-col {
        aspect-ratio: 16 / 9;
    }

    .dau-an-text-col {
        margin-top: 30px;
        padding: 60px 40px;
        max-width: 100%!important;
    }

    .gallery-inner {
        padding: 50px 40px 40px;
        overflow: hidden;
    }

    .news-accordion {
        height: 500px;
    }

    .na-body {
        padding: 24px 18px;
    }

    .wrap {
        padding: 0 30px;
    }

    .menu {
        display: none;
    }

    .burger {
        display: flex;
    }

    .intro-new-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .intro-col-left {
        position: relative;
        top: 0;
    }

    .intro-col-center {
        max-width: 550px;
        margin: 0 auto;
    }

    .intro-col-right {
        max-width: 650px;
        margin: 0 auto;
    }

    .intro .col{
    padding: 24px;
}

    .values-tabs-row {
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
        border-bottom: none;
    }

    .value-tab {
        border: 1px solid rgba(201, 172, 140, 0.15);
        background: rgba(26, 17, 13, 0.3);
    }

    .value-tab::after {
        display: none;
    }

    .value-tab.active {
        border-color: var(--tan);
        background: rgba(26, 17, 13, 0.6);
    }

    .plan-figure {
        overflow-x: auto;
    }

    .plan-figure img {
        min-width: 800px;
    }

    .types-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .type-card.tall {
        grid-row: auto;
        height: 440px;
    }

    .leed-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .leed-img-col {
        max-width: 600px;
        margin: 0 auto;
    }

    .gallery-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .gallery-col {
        height: 380px;
    }

    .news-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .contact-split-container {
        /* flex-direction: column; */
    }

    .contact-visual-col {
        width: 100%;
        /* height: 360px; */
    }

    .contact-form-col {
        width: 100%;
        padding: 60px 40px;
        justify-content: center;
    }

    .contact .contact-form-col{
    width: 100%;
    padding: 58px 20px !important;
}

    .contact-form-wrapper {
        max-width: 100%;
    }

    .footer-main-new {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* Legacy card: padding cố định 120/87 quá lớn -> co lại */
    .legacy {
        padding: 110px 0;
    }

    .legacy-card {
        padding: 60px 44px;
    }

    .legacy-title {
        margin-bottom: 24px;
    }

    /* Intro: tiêu đề nằm ngang trên cùng cho gọn */
    .intro {
        padding: 90px 0!important;
    }

    .intro-large-title {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0 12px;
        justify-content: center;
        text-align: center;
    }

    .intro-col-left {
        justify-content: center;
        align-items: center;
    }

    .intro-sub-img {
        max-width: 320px;
        align-self: center;
    }

    .intro-text p {
        text-align: left;
        font-size: 14px;
    }

    /* Dấu ấn: bỏ margin-left cố định 125px */
    .dau-an-wrap {
        margin-top: 90px;
    }

    .dau-an-text-col {
        margin-left: 0;
        max-width: 100%;
    }

    .dau-an-body p {
        text-align: left;
    }

    /* Values spacing gọn lại */
    .values {
        padding: 90px 16px!important;
    }

    .values-head {
        margin-bottom: 60px;
    }

    .value-content-panel {
        margin-bottom: 40px;
    }

    /* Section padding chung */
    .plan,
    .types,
    .leed-section {
        padding: 90px 0;
    }

    .gallery {
        padding: 120px 16px 90px;
    }

    .gallery-arrow{}

    .gallery-arrow--prev{
    left: 0;
}

    .gallery-arrow--next{
    right: 0px;
}
}

/* ==== TABLET LANDSCAPE 1024px: gom lưới nhiều cột của các trang con về 1 cột ==== */
/* Vá "vùng chết" 992-1024px cho các trang: Giá trị, Đại ngàn, Biệt thự, Đặc quyền */
@media (max-width: 1024px) {
    /* Trang Giá trị (values) */
    .values-invest-container {
        grid-template-columns: 1fr;
    }

    .values-invest-media {
        aspect-ratio: 16 / 9;
    }

    .row-collapse>.col.values-invest-text {
        max-width: 100%;
        margin-left: 0;
        padding: 40px 16px 0 16px!important;
    }

    .values-identity-container {
        grid-template-columns: 1fr;
        gap: 50px;
        padding: 0 16px;
    }

    .values-experts{
    padding: 35px 0 80px !important;
}

    /* Trang Đại ngàn (dn-*) */
    .dn-values-head {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .dn-values-desc {
        max-width: 100%;
    }

    .dn-feature-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .dn-feature-text {
        max-width: 100%;
    }

    .dn-nature-head {
        grid-template-columns: 1fr;
        gap: 24px;
        align-items: start;
    }

    .dn-nature-grid {
        grid-template-columns: 1fr;
        padding: 0 24px;
    }

    .dn-n-1 {
        grid-row: auto;
        aspect-ratio: 16 / 10;
    }

    .dn-leed-stats {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .dn-sus-intro-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .dn-sus-panel {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .dn-nat-row {
        grid-template-columns: 1fr;
    }

    .dn-nat-row-media {
        aspect-ratio: 16 / 10;
    }

    .dn-nat-row.reverse .dn-nat-row-media {
        order: 1;
    }

    .dn-nat-row.reverse .dn-nat-row-text {
        order: 2;
    }

    /* Trang Biệt thự / Đặc quyền (bt-*) */
    .bt-intro-grid,
    .bt-info-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .bt-intro-body {
        max-width: 100%;
    }

    .bt-info-img {
        aspect-ratio: 16 / 10;
    }

    .bt-bottom-grid {
        grid-template-columns: 1fr;
    }

    .bt-bottom-img {
        aspect-ratio: 16 / 11;
    }

    /* 3 image card "đặc quyền": giữ 3 cột nhưng thu gọn text overlay cho vừa */
    .dq-card-overlay {
        padding: 26px 20px 24px;
    }

    .dq-card-desc {
        font-size: 14px;
        line-height: 1.6;
    }
}

@media (max-width: 991px) {
    .values-invest-container {
        grid-template-columns: 1fr;
    }

    .values-invest-media {
        aspect-ratio: 16 / 9;
    }

    .values-invest-text {
        max-width: 100%;
        margin-left: 0;
        padding: 40px 24px 0 24px;
    }

    .values-identity-container {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .identity-grid {
        gap: 20px;
    }

    .item-1 .identity-img-wrapper,
    .item-2 .identity-img-wrapper {
        aspect-ratio: 3.5 / 5;
    }

    .item-3 .identity-img-wrapper {
        aspect-ratio: 16 / 9;
    }

    .experts-swiper {
        padding: 0 24px !important;
    }

    .values-hero {
        height: 70vh;
    }

    .values-invest, .values-identity, .values-experts {
        padding: 80px 0 70px;
    }

    .video-play-btn {
        width: 120px;
        height: 120px;
        border-width: 6px;
    }

    .video-play-btn svg {
        width: 44px;
        height: 44px;
        transform: translateX(4px);
    }

    .dn-values,
    .dn-nature {
        padding: 80px 0;
    }

    .dn-feature {
        padding: 0 0 80px;
    }

    .dn-values-head {
        grid-template-columns: 1fr;
        gap: 28px;
        margin-bottom: 44px;
    }

    .dn-values-desc {
        max-width: 100%;
    }

    .dn-feature-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .dn-feature-text {
        max-width: 100%;
    }

    .dn-values-grid {
        gap: 24px;
    }

    .dn-nature-head {
        grid-template-columns: 1fr;
        gap: 24px;
        align-items: start;
    }

    .dn-nature-grid {
        grid-template-columns: 1fr;
        padding: 0 24px;
    }

    .dn-n-1 {
        grid-row: auto;
        aspect-ratio: 16 / 10;
    }

    .dn-leed {
        padding: 90px 0 80px;
        min-height: auto;
    }

    .dn-leed-content {
        min-height: auto;
        justify-content: flex-start;
        gap: 40px;
        padding: 0 30px;
    }

    .dn-leed-title {
        margin-bottom: 0;
    }

    .dn-leed-stat-col.has-divider {
        padding-left: 30px;
    }

    .dn-sus-intro-grid {
        grid-template-columns: 1fr;
        gap: 40px;
        margin-bottom: 60px;
    }

    .dn-sus-panel {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .dn-sus-dots-custom {
        justify-content: center;
    }

    .dn-nat-row {
        grid-template-columns: 1fr;
    }

    .dn-nat-row-media {
        aspect-ratio: 16 / 10;
    }

    .dn-nat-row.reverse .dn-nat-row-media {
        order: 1;
    }

    .dn-nat-row.reverse .dn-nat-row-text {
        order: 2;
    }

    .dn-nat-row-text {
        padding: 60px 24px;
    }

    .bt-intro {
        padding: 80px 0;
    }

    .bt-info,
    .bt-map {
        padding: 0 0 80px;
    }

    .bt-vithe.dn-sustainable {
        padding: 10px 0 80px;
    }

    .bt-intro-grid,
    .bt-info-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .bt-intro-body {
        max-width: 100%;
        padding: 0 10px;
    }

    .bt-info-img {
        aspect-ratio: 16 / 10;
    }

    .bt-bottom {
        padding: 0 0 80px;
    }

    .bt-bottom-grid {
        grid-template-columns: 1fr;
    }

    .bt-bottom-img {
        aspect-ratio: 16 / 11;
    }

    .bt-bottom-text {
        padding: 40px 28px;
    }
}

@media (max-width: 900px) {
    /* News: accordion ngang bị nén quá hẹp -> chuyển sang xếp dọc, mỗi tin 1 hàng */
    .news-accordion {
        flex-direction: column;
        height: auto;
    }

    .na-item,
    .na-item.active {
        flex: none;
        height: 300px;
        width: 100%;
    }

    .na-body {
        margin-bottom: 0;
        padding: 28px 26px;
    }

    /* mọi tin đều hiện đủ nội dung khi đã xếp dọc */
    .na-desc,
    .na-more {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
    }

    .na-title {
        height: auto;
        -webkit-line-clamp: 2;
    }

    .na-desc {
        height: auto;
    }
}

@media (max-width: 768px) {
    .bt-privilege {
        padding: 0 0 70px !important;
    }
    .dq-card {
        margin-bottom: 16px;
    }
    .dq-card .dq-card-img img {
        aspect-ratio: unset;
        height: calc(100vh - 70px);
    }
    .dq-card-overlay {
        padding: 28px 22px 26px;
        height: calc(100vh - 70px);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    /* --- Privilege slider (JS thêm class .privilege-swiper vào row) --- */
    .bt-privilege-row.privilege-swiper {
        overflow: visible;
    }
    .bt-privilege-row.privilege-swiper .swiper-wrapper {
        display: flex;
        flex-direction: row;
    }
    /* mỗi card: slide 88% để lộ hé card kế; bỏ margin của layout dọc */
    .bt-privilege-row.privilege-swiper .dq-card {
        flex: 0 0 auto;
        width: 88%;
        margin-bottom: 0;
        margin-right: 0!important;
    }
    /* dots */
    .privilege-pagination-dots {
        display: flex;
        justify-content: center;
        gap: 8px;
        margin-top: 22px;
    }
    .swiper-privilege-pagination .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        background: rgba(228, 205, 196, 0.4);
        opacity: 1;
        transition: all .3s ease;
    }
    .swiper-privilege-pagination .swiper-pagination-bullet-active {
        background: var(--tan, #C6A77D);
        width: 22px;
        border-radius: 4px;
    }

    .identity-grid {
        grid-template-columns: 1fr;
        row-gap: 30px;
    }

    .item-3 {
        grid-column: 1;
    }

    .item-1 .identity-img-wrapper,
    .item-2 .identity-img-wrapper,
    .item-3 .identity-img-wrapper {
        aspect-ratio: 16 / 9;
    }

    .experts-swiper {
        padding: 0 16px !important;
    }

    .values-hero {
        height: 60vh;
        min-height: 480px;
    }

    .video-play-btn {
        width: 80px;
        height: 80px;
        border-width: 4px;
    }

    .video-play-btn svg {
        width: 28px;
        height: 28px;
        transform: translateX(3px);
    }

    .dn-values-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .dn-cta {
        min-height: 420px;
    }

    .dn-leed-content {
        padding: 0 20px;
    }

    .dn-leed-stats {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .dn-leed-stat-col.has-divider {
        border-left: none;
        padding-left: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
        padding-top: 24px;
        width: 100%;
    }

    .dn-sustainable {
        padding: 80px 0;
    }

    .dn-sus-tabs-nav {
        gap: 8px;
        margin-bottom: 30px;
    }

    .dn-sus-tab {
        padding: 8px 16px;
        font-size: 12px;
    }

    .dn-sus-panel-title {
        font-size: 20px;
    }
}

@media (max-width: 600px) {
    .preloader-text,
    .preloader-shine {
        font-size: 88px;
    }

    .dau-an-text-col {
        padding: 50px 20px;
    }

    .gallery-inner {
        padding: 0 32px 30px;
    }

    .gallery-footer {
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }

    .gallery-swiper .swiper-slide {
        height: 200px;
    }

    .news-accordion {
        flex-direction: column;
        height: auto;
    }

    .na-item {
        height: 220px;
        flex: none;
    }

    .na-item.active {
        height: 420px;
        flex: none;
    }

    .na-desc {
        -webkit-line-clamp: 2;
    }

    .wrap {
        padding: 0 20px;
        gap: 120px;
    }

    .values-tabs-row {
        grid-template-columns: repeat(2, 1fr);
    }

    .types-grid,
    .gallery-row,
    .news-grid {
        grid-template-columns: 1fr;
    }

    .gallery-col {
        height: 320px;
    }

    .values-banner {
       
    }

    .sidebar-contact {
        right: 12px;
    }

    .sidebar-item {
        width: 40px;
        height: 40px;
    }

    .contact-visual-col {
        height: 100vh;
    }

    .contact .contact-form-col{
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
}
    .contact-form-title{
}

    .footer-col-new h4{
    font-size: 14px;
    line-height: 28px;
}
    .footer-col-new h4 br{
    display: none;
}

    .contact-visual-col *{
    height: 100%;
}

    .footer-col-new p{
    font-size: 14px;
}

    .col-inner ul.footer-links-list>li{
    margin-left: 0;
}

    .footer-links-list > li > a{
    font-size: 14px;
}

    .footer-bottom-new{
    padding: 20px 0;
    font-size: 11px;
    letter-spacing: 0;
}

    .contact-visual-col::after{
        background: rgba(17, 11, 9, 0.8);
    }

    .nav:not(.nav-slide) .active>.children{
    padding-bottom: 0;
}

    .values-head h2 br{
    display: none;
}

    .contact-form-col {
        padding: 50px 20px;
    }

    .dn-leed{
    padding: 130px 0 80px!important;
}
    .dn-leed-title{
    font-size: 32px;
}
    .dn-leed-title br{
    display: none;
}
    .dn-leed .section-content{
    min-height: 125vh;
}

    .dn-leed-stat-label{
}
    .row-collapse>.col.dn-sus-intro-text{
    order: -1;
    padding: 0 20px!important;
}
    
    /* HERO: banner có chữ in sẵn -> hiện trọn ảnh (contain) để không mất chữ.
         Nền nâu đậm lấp phần trên/dưới cho liền mạch với header. */
    .hero {
        min-height: 0;
        height: 100vh;
        background: var(--brown-900);
        padding-top: 76px; /* chừa chỗ cho header cố định */
    }

    .hero-bg {
        position: relative;
        inset: auto;
        z-index: 0;
    }

    .hero-bg img {
        object-fit: contain;
        object-position: center center;
        height: auto;
        width: 100%;
    }

    /* ẩn nút cuộn chuột trên mobile (ảnh contain đã đủ ngữ cảnh) */
    .scroll-hint-new {
        display: none;
    }

    /* Legacy card gọn cho điện thoại */
    .legacy {
        padding: 70px 0!important;
    }

    .legacy-card {
        padding: 40px 24px;
    }

    .legacy-card p {
        font-size: 14.5px;
    }

    .legacy-sig-img {
        height: 44px;
    }

    /* Intro */
    .intro {
        padding: 38px 0!important;
    }

    .intro-new-grid {
        gap: 0;
    }

    /* Values */
    .values {
        padding: 64px 0px!important;
    }

    .values-head {
        margin-bottom: 44px;
    }

    .value-tab {
        padding: 16px 12px;
        gap: 8px;
    }

    .value-tab .v-title {
        font-size: 14px;
    }

    .value-content-panel {
        min-height: 0;
    }

    /* Dấu ấn */

    .news{
    padding: 80px 20px;
}

    .values .row.row-collapse:first-child .col{
    padding: 0 16px!important;
}

    .dau-an-text{
    padding: 0 16px;
}
    
    .dau-an-wrap {
        margin-top: 60px;
    }

    .dau-an-wrap:last-child .dau-an-img-col{
    order: -1;
}

    .dau-an-title{
    margin-bottom: 32px;
}

    .dau-an-img-col {
        width: 100%;
        aspect-ratio: unset;
    }

    .gallery-outline-title{
    margin-bottom: 80px;
}

    /* Section padding chung cho mobile */
    .plan,
    .types,
    .leed-section {
        padding: 64px 0;
    }

    .gallery {
        padding: 80px 16px 64px;
    }

    /* Plan figure: cho cuộn ngang xem bản đồ */
    .plan-figure img {
        min-width: 640px;
    }

    /* News dọc: chiều cao vừa phải */
    .na-item,
    .na-item.active {
        height: 260px;
    }

    /* Contact */
    .contact-split-container {
        min-height: 0;
    }

    /* Footer */
    .footer {
        padding: 60px 0 0;
    }

    .footer-branding {
        margin-bottom: 48px;
    }

    .footer-logo-img {
        height: 78px;
    }

    .footer-main-new {
        gap: 36px;
        margin-bottom: 44px;
    }

    /* Hero */
    .values-hero {
        height: 55vh;
        min-height: 380px;
    }

    .values-hero-title-img {
        max-width: 92vw;
    }

    /* Section spacing */
    .values-invest,
    .values-identity,
    .values-experts {
        padding: 60px 0 50px;
    }

    .values-experts-header {
        margin-bottom: 36px;
    }

    /* Section titles */
    .values-sec-title {
        font-size: clamp(32px, 4vw, 30px);
        margin-bottom: 32px;
    }

    .values-sec-title br{
    display: none;
}

    .values-sec-subtitle {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .values-sec-desc p {
    font-size: 14px;
    }

    /* GP.Invest – stack media above text */
    .values-invest-container {
        grid-template-columns: 1fr;
    }

    .values-invest-media {
        aspect-ratio: unset;
    }

    .values-invest-text {
        max-width: 100%;
        margin-left: 0;
        padding: 28px 20px 0;
    }

    .values-invest-sig img {
        height: 36px;
    }

    .video-play-btn {
        width: 52px;
        height: 52px;
        border-width: 3px;
    }

    .video-play-btn svg {
        width: 22px;
        height: 22px;
        transform: translateX(2px);
    }

    /* Bản sắc tinh hoa */
    .values-identity-container {
        grid-template-columns: 1fr;
        gap: 36px;
        padding: 0 20px;
    }

    .identity-grid {
        grid-template-columns: 1fr;
        row-gap: 24px;
    }

    .item-1 .identity-img-wrapper,
    .item-2 .identity-img-wrapper,
    .item-3 .identity-img-wrapper {
        aspect-ratio: 4 / 3;
    }

    .identity-caption {
        font-size: 14px;
        margin-top: 10px;
    }

    /* Experts swiper */
    .experts-swiper {
        padding: 0 12px !important;
    }

    .expert-card-info {
        padding: 18px 16px;
        gap: 8px;
    }

    .expert-name {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .expert-role {
        font-size: 13px;
    }

    .expert-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .swiper-experts-pagination {
        margin-top: 28px !important;
    }

    .dn-values,
    .dn-nature {
        padding: 68px 20px!important;
    }

    .dn-feature {
        padding: 0 0 60px;
    }

    .dn-feature-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .dn-nature-grid {
        padding: 0 16px;
    }

    .dn-nature-caption {
        left: 16px;
        right: 16px;
        bottom: 16px;
        font-size: 14px;
    }

    .bt-intro {
        padding: 100px 10px 70px!important;
    }

    .bt-info,
    .bt-map,
    .bt-bottom {
        padding: 0 0 60px!important;
    }

    .bt-vithe.dn-sustainable {
        padding: 10px 0 60px;
    }

    .bt-bottom-text {
        padding: 32px 20px;
    }

    .bt-spec-list li {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    /* Hero */
    .values-hero {
        height: 50vh;
        min-height: 320px;
    }

    /* Section spacing tighter */
    .values-invest,
    .values-identity,
    .values-experts {
        padding: 48px 0 40px;
    }

    /* Invest */
    .values-invest-text {
        padding: 24px 16px 0;
    }

    /* Identity */
    .values-identity-container {
        padding: 0 16px;
        gap: 28px;
    }

    .identity-grid {
        row-gap: 20px;
    }

    /* Expert card text */
    .expert-card-info {
        padding: 14px 14px;
    }

    .expert-name {
        font-size: 15px;
        margin-bottom: 16px;
    }

    .expert-role {
        font-size: 12px;
    }

    .expert-desc {
        font-size: 13px;
    }
}

@media (max-width: 380px) {
    .values-tabs-row {
        grid-template-columns: 1fr;
    }

    .value-tab {
        flex-direction: row;
        align-items: center;
        gap: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .preloader-text {
        animation: none;
        fill-opacity: 1;
        stroke-dashoffset: 0;
        stroke-width: 0.3px;
    }

    .preloader-shine,
    .preloader::before {
        display: none;
    }

    .preloader-rule {
        width: min(320px, 64vw);
        opacity: 1;
        animation: none;
    }
}

/* ===================================================================
   KEYFRAMES & ANIMATIONS (Moved to the end)
   =================================================================== */

@keyframes pl-glow {
    to {
        opacity: 1;
    }
}

@keyframes pl-draw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes pl-fill {
    to {
        fill-opacity: 1;
        stroke-width: 0.3px;
    }
}

@keyframes pl-shine-show {
    to {
        opacity: 1;
    }
}

@keyframes pl-shine {
    from {
        -webkit-mask-position: 130% 0;
        mask-position: 130% 0;
    }
    to {
        -webkit-mask-position: -130% 0;
        mask-position: -130% 0;
    }
}

@keyframes pl-rule {
    from {
        width: 0;
        opacity: 0;
    }
    to {
        width: min(320px, 64vw);
        opacity: 1;
    }
}

@keyframes slowzoom {
    from {
        transform: scale(1.1);
    }

    to {
        transform: scale(1);
    }
}

@keyframes scrollwheel {
    0% {
        opacity: 0;
        transform: translate(-50%, 0);
    }

    30% {
        opacity: 1;
    }

    80% {
        opacity: 0;
        transform: translate(-50%, 12px);
    }

    100% {
        opacity: 0;
    }
}

@keyframes arrowbounce {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(4px);
    }
}

@keyframes rise {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(201, 172, 140, 0.7);
    }

    70% {
        box-shadow: 0 0 0 16px rgba(201, 172, 140, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(201, 172, 140, 0);
    }
}

@keyframes pulse-play {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
    }
    70% {
        box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}

/* ===================================================================
   TAB FLATSOME (.dn-sus-tabs) — thay cho tab HTML cũ.
   Flatsome tabgroup render: .tabbed-content.dn-sus-tabs > ul.nav (nav tab)
   + .tab-panels > .panel. Mỗi panel chứa [row_inner].dn-sus-panel.
   =================================================================== */
.tabbed-content > ul.nav {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-bottom: 80px;
    border: 0;
}
.tabbed-content > ul.nav li { margin: 0; }
.tabbed-content > ul.nav li a {
    font-family: var(--sans);
    font-size: 14px;
    text-transform: none;
    font-weight: 500;
    color: #F2CCA1;
    background: #16120E80;
    border: 0;
    padding: 9px 24px;
    border-radius: 16px;
    min-width: 160px;
    text-align: center;
    justify-content: center;
    transition: all 0.3s ease;
    margin: 0;
}
.tabbed-content > ul.nav li a:hover {
    color: var(--cream);
    background: rgba(255, 255, 255, 0.06);
}
.tabbed-content > ul.nav li.active a {
    background: #7C695980;
    color: #F2CCA1;
}

/* Panel = [row_inner] 2 cột (ảnh trái + text phải). Flatsome row tự chia,
   chỉ cần khoảng cách + canh giữa dọc. */
.dn-sus-tabs .dn-sus-panel {
    align-items: center;
    margin-bottom: 40px;
}
.dn-sus-tabs .dn-sus-panel:last-child { margin-bottom: 0; }
.dn-sus-tabs .dn-sus-panel-media .img-inner,
.dn-sus-tabs .dn-sus-panel-media img { width: 100%; }

/* ===================================================================
   SLIDER trong mỗi tab (.dn-sus-tabs .panel): các .dn-sus-panel là slide
   chồng lên nhau, chỉ hiện 1 cái .is-active. Có dots điều hướng.
   =================================================================== */
.dn-sus-tabs .tab-panels .panel {
    position: relative;
}
/* container slide: cho phép xếp chồng */
.dn-sus-tabs .panel .dn-sus-panel {
    display: none !important;
    margin-bottom: 0 !important;
    align-items: start;
}
.dn-sus-tabs .panel .dn-sus-panel.is-active {
    display: flex !important;
    animation: dnSusFade .5s ease;
}
@keyframes dnSusFade {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Dots điều hướng (JS chèn vào cuối mỗi .panel) — base style.
   Vị trí/màu chi tiết xem khối .dn-sus-slider-dots ở trên (căn trái, ring vàng). */
.dn-sus-slider-dots {
    display: flex;
    gap: 14px;
}
.dn-sus-slider-dots .v-dot {
    border-radius: 50%;
    cursor: pointer;
    transition: all .3s ease;
    border: 0;
    padding: 0;
    min-height: auto;
    line-height: normal;
    letter-spacing: normal;
    min-width: auto;
}

/* ===================================================================
   NEWS ARCHIVE PAGE — Custom Styles for Hero & 3-Column Grid
   =================================================================== */

.news-hero {
    position: relative;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brown-900);
}

.news-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.news-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17,11,9,0.15) 0%, rgba(33,23,19,0.65) 100%);
    z-index: 2;
}

.news-hero-content {
    position: relative;
    z-index: 3;
    display: flex;
    justify-content: center;
    width: 100%;
}

.news-hero-wrapper {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    max-width: min(980px, 90vw);
    width: 100%;
    position: relative;
}

.news-hero-signature {
    width: 100%;
    height: auto;
}

.news-hero-title {
    font-family: var(--sans);
    font-size: clamp(16px, 2.5vw, 24px);
    font-weight: 700;
    letter-spacing: 4px;
    color: var(--white);
    margin: 0;
    text-transform: uppercase;
    width: 100%;
    text-align: right;
    position: absolute;
    top: 67%;
    width: 67%;
}

.news-listing {
    background-color: var(--brown-700);
    padding: 72px 0 120px;
}

.news-listing-row {
    max-width: 1290px;
    margin: 0 auto;
}

/* Grid & Cards */
.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 80px 16px;
    width: 100%;
    margin-bottom: 60px;
}

.news-card {
    display: flex;
    flex-direction: column;
    background: transparent;
    overflow: hidden;
}

.news-card-image-wrapper {
    position: relative;
    aspect-ratio: 3/4;
    overflow: hidden;
    margin-bottom: 24px;
    background: var(--brown-900);
}

.news-card-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s cubic-bezier(0.25, 1, 0.5, 1);
}

.news-card:hover .news-card-image-wrapper img {
    transform: scale(1.05);
}

.news-card-content {
    display: flex;
    flex-direction: column;
}

.news-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 8px;
    text-transform: uppercase;
}

.news-card-tag {
    display: inline-block;
    padding: 8px 16px;
    background: #000000B2;
    border: 1px solid rgba(201, 172, 140, 0.22);
    border-radius: 20px;
    font-family: var(--sans);
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    color: #fff;
    letter-spacing: 0.5px;
    text-decoration: none;
    transition: all 0.3s ease;
}
a.news-card-tag:hover {
    background: var(--tan);
    color: var(--brown-900) !important;
    border-color: var(--tan);
}

.news-card-date {
    font-family: var(--sans);
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    opacity: 0.75;
    letter-spacing: 0.5px;
}

h2.news-card-title {
    font-family: var(--sans);
    font-size: 18px;
    line-height: 25px;
    font-weight: 700;
    color: var(--white);
    margin: 0 0 12px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

h2.news-card-title a {
    color: inherit;
    text-decoration: none;
    color: var(--cream);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-card:hover h2.news-card-title {
    color: var(--tan);
}

.news-card-excerpt {
    font-family: var(--sans);
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    color: #fff;
    opacity: 0.85;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-grid-empty {
    grid-column: 1 / -1;
    text-align: center;
    font-family: var(--sans);
    color: var(--tan-light);
    padding: 60px 0;
    font-size: 16px;
}

/* Pagination */
.news-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 60px;
    width: 100%;
}

.news-pagination a, 
.news-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(201, 172, 140, 0.22);
    border-radius: 50%;
    color: var(--cream);
    text-decoration: none;
    font-family: var(--sans);
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    background: transparent;
}

.news-pagination .current {
    background: var(--tan);
    border-color: var(--tan);
    color: var(--brown-900);
    font-weight: 700;
}

.news-pagination a:hover {
    background: rgba(201, 172, 140, 0.12);
    border-color: var(--tan);
    color: var(--tan);
}

.news-pagination .dots {
    border-color: transparent;
    cursor: default;
}

.news-pagination a i {
    font-size: 12px;
}

/* Responsive Gaps */
@media (max-width: 991px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 24px;
    }
    .news-listing {
        padding: 80px 0 90px;
    }
}

@media (max-width: 767px) {
    .news-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .news-hero {
        height: 35vh;
        min-height: 280px;
    }
    .news-listing {
        padding: 60px 0 70px;
    }
}

@media (max-width: 560px) {
    .news-hero {
        height: 100vh;
        min-height: 280px;
    }
    .news-listing {
        padding: 60px 20px 70px;
    }

    .news-hero-title{
    width: 70%;
    font-size: 14px;
    letter-spacing: 1px;
    text-align: right;
}
    .legacy-card h2{}
    .legacy-card h2 br{
    display: none;
}
    .intro-col-left{
}
    .intro-col-left .col-inner{
    align-items: start;
}
    .intro-large-title{
    text-align: left;
}
    .intro-col-center{
    padding-right: 0!important;
}
    .intro-sub-img{
    margin-top: 50px;
    max-width: 195px;
    align-self: end;
}
}

/* News Tabs */
.news-tabs-container {
    display: flex;
    justify-content: center;
    margin-bottom: 80px;
    width: 100%;
}

.news-tabs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-start;
    overflow-y: hidden;
    flex-wrap: nowrap;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.news-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--sans);
    font-size: 14px;
    text-transform: none;
    font-weight: 500;
    color: #F2CCA1;
    background: #16120E80;
    border: 0;
    padding: 9px 24px;
    border-radius: 16px;
    min-width: 160px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    margin: 0;
    cursor: pointer;
    white-space: nowrap;
}

.news-tab:hover {
    color: var(--cream);
    background: rgba(255, 255, 255, 0.06);
}

.news-tab.active {
    background: #7C695980;
    color: #F2CCA1;
    font-weight: 500;
}

@media (max-width: 767px) {
    .news-tabs-container {
        margin-bottom: 0;
    }
    .news-tabs {
        gap: 8px;
    }
    .news-tab {
        padding: 9px 16px;
        font-size: 13px;
        min-width: 102px;
    }
}

/* ===================================================================
   SINGLE POST DETAIL PAGE — Custom Styles for Reading View & related
   =================================================================== */

.single-post-section {
    background-color: var(--brown-700);
    padding: 100px 0 120px;
}

.single-post-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Breadcrumbs */
.post-breadcrumbs {
    font-family: var(--sans);
    font-size: 12px;
    color: var(--tan-light);
    margin-bottom: 50px;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.post-breadcrumbs a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.post-breadcrumbs a:hover {
    color: var(--tan);
}

.post-breadcrumbs .sep {
    opacity: 0.5;
    color: var(--tan-light);
}

.post-breadcrumbs .current-post {
    color: var(--white);
    opacity: 0.7;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 320px;
}

/* Main Content Area */
.single-post-content-area {
    max-width: 1055px;
    margin: 0 auto 100px auto;
}

.single-post-header {
    margin-bottom: 40px;
}

/* Hàng title + nút share */
.single-post-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.single-post-title {
    font-family: var(--display);
    font-size: clamp(32px, 5vw, 40px);
    font-weight: 400;
    color: var(--cream);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex: 1;
}

/* Nút chia sẻ hình tròn */
.single-post-share {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #03030366;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    margin: 0;
    font-size: 20px;
}

.single-post-share:hover {
    background: var(--tan);
    border-color: var(--tan);
    color: var(--brown-700);
}

.single-post-meta {
    display: flex;
    align-items: center;
    gap: 24px;
    font-family: var(--sans);
    font-size: 12px;
    font-weight: 400;
    color: var(--tan);
    margin-top: 20px;
    letter-spacing: 0.4px;
}

/* Pill category */
.single-post-cat-pill {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 999px;
    background: #000000B2;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.6px;
    text-decoration: none;
    transition: background 0.3s ease, border-color 0.3s ease;
}

.single-post-cat-pill:hover {
    background: var(--tan);
    border-color: var(--tan);
    color: var(--brown-700);
}

.single-post-date {
    color: #fff;
}

/* Typography inside single-post-body */
.single-post-body {
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
    color: var(--cream);
    opacity: 0.95;
}

.single-post-body p {
    margin: 0 0 26px 0;
}

.single-post-body h2 {
    font-family: var(--sans);
    font-size: clamp(20px, 3.5vw, 26px);
    font-weight: 700;
    color: var(--white);
    margin: 48px 0 20px 0;
    text-transform: uppercase;
    line-height: 1.3;
}

.single-post-body h3 {
    font-family: var(--sans);
    font-size: clamp(18px, 3vw, 22px);
    font-weight: 700;
    color: var(--white);
    margin: 36px 0 16px 0;
    text-transform: uppercase;
    line-height: 1.3;
}

.single-post-body img {
    max-width: 100%;
    height: auto;
    margin: 36px auto;
    border-radius: 8px;
    display: block;
}

.single-post-body .single-post-figure {
    margin: 40px 0;
}

.single-post-body .single-post-figure img {
    width: 100%;
    margin: 0;
}

.single-post-body ul, 
.single-post-body ol {
    margin: 0 0 26px 24px;
    padding: 0;
}

.single-post-body li {
    margin-bottom: 8px;
}

.single-post-body blockquote {
    border-left: 3px solid var(--tan);
    padding: 12px 0 12px 28px;
    margin: 36px 0;
    font-style: italic;
    color: var(--white);
    background: rgba(201, 172, 140, 0.04);
}

/* Related Posts block */
.related-posts-container {
    margin-top: 120px;
}

.related-posts-heading {
    font-family: var(--display);
    font-size: clamp(20px, 3vw, 40px);
    color: var(--cream);
    font-weight: 400;
    text-align: center;
    margin-bottom: 50px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

@media (max-width: 991px) {
    .single-post-section {
        padding: 90px 20px 80px!important;
    }
    .related-posts-container {
        padding-top: 60px;
        margin-top: 60px;
    }
}

@media (max-width: 767px) {
    .single-post-content-area {
        margin-bottom: 60px;
    }
    .single-post-header {
        margin-bottom: 32px;
        padding-bottom: 24px;
    }
    .post-breadcrumbs {
        margin-bottom: 30px;
    }
    .related-posts-heading {
        margin-bottom: 35px;
    }
}

/* =========================================================================
 * Trang Thư viện ảnh — lưới card album ([eg_gallery_grid])
 * ========================================================================= */
.gallery-grid-section {
    background: var(--brown-700);
    padding: 65px 0 100px;
}

.gallery-grid-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
}

.gallery-grid-head {
    text-align: center;
    margin-bottom: 48px;
}

.gallery-grid-title {
    font-family: var(--display);
    color: var(--cream);
    font-size: 40px;
    line-height: 1.5;
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
}

/* Lưới card album đều hàng */
.album-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px 16px;
}

.album-grid[data-columns="2"] {
    grid-template-columns: repeat(2, 1fr);
}

.album-grid[data-columns="4"] {
    grid-template-columns: repeat(4, 1fr);
}

.album-card {
    display: block;
    width: 100%;
    text-align: left;
    text-decoration: none;
    color: inherit;
    /* reset button */
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
}

.album-card:focus-visible .album-card-thumb {
    outline: 2px solid var(--tan);
    outline-offset: 3px;
}

.album-card.is-loading {
    cursor: progress;
}

.album-card.is-loading .album-card-thumb::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    background: rgba(17, 11, 9, 0.45);
}

.album-card.is-loading .album-card-thumb::after {
    content: "";
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    width: 34px;
    height: 34px;
    margin: -17px 0 0 -17px;
    border-radius: 50%;
    border: 3px solid rgba(228, 205, 196, 0.35);
    border-top-color: var(--cream);
    opacity: 1;
    animation: eg-spin 0.7s linear infinite;
}

@keyframes eg-spin {
    to {
        transform: rotate(360deg);
    }
}

.album-card-thumb {
    position: relative;
    width: 100%;
    aspect-ratio: 415 / 282;
    overflow: hidden;
    background: var(--brown-800);
}

.album-card-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.album-card-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17, 11, 9, 0) 45%, rgba(17, 11, 9, 0.5) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.album-card:hover .album-card-thumb img {
    transform: scale(1.06);
}

.album-card:hover .album-card-thumb::after {
    opacity: 1;
}

.album-card-count {
    position: absolute;
    right: 16px;
    top: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 32px;
    border-radius: 999px;
    background: #16120E80;
    color: var(--cream);
    font-family: var(--sans);
    font-size: 12px;
    letter-spacing: 0.04em;
    backdrop-filter: blur(4px);
}

.album-card-title {
    font-family: var(--sans);
    color: var(--cream);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    margin: 24px 0 0;
    transition: color 0.3s ease;
    text-transform: uppercase;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.album-card:hover .album-card-title {
    color: var(--tan);
}

.gallery-grid-empty {
    color: var(--cream);
    text-align: center;
    padding: 60px 20px;
}

@media (max-width: 1024px) {
    .gallery-grid-section {
        padding: 90px 0 70px;
    }
    .gallery-grid-title {
        font-size: 42px;
    }
    .album-grid,
    .album-grid[data-columns="4"] {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px 20px;
    }
    .album-card-title {
        font-size: 21px;
    }
}

@media (max-width: 560px) {
    .gallery-grid-section {
        padding: 70px 0 50px;
    }
    .gallery-grid-head {
        margin-bottom: 36px;
    }
    .gallery-grid-title {
        font-size: 32px;
    }
    .album-grid,
    .album-grid[data-columns="2"],
    .album-grid[data-columns="4"] {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}


/* ===================================================================
   FIX GLightbox — chống 2 khung ảnh chồng nhau.
   Rule global `img{display:block;max-width:100%;height:auto}` + layout
   site làm .gslide mất định vị => các slide đè lên nhau. Reset lại đúng
   chuẩn GLightbox, chỉ trong phạm vi lightbox.
   =================================================================== */
.glightbox-container .gslider {
    display: flex !important;
    align-items: center;
}
.glightbox-container .gslide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    opacity: 0;
    pointer-events: none;
}
.glightbox-container .gslide.current {
    opacity: 1;
    pointer-events: auto;
}
.glightbox-container .gslide-media,
.glightbox-container .gslide-image {
    display: flex;
    align-items: center;
    justify-content: center;
}
.glightbox-container .gslide-media img {
    display: block !important;
    height: auto !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 90vh !important;
}

/* ===================================================================
   NEWS SLIDER MOBILE (≤500px) — mỗi tin 1 slide đầy đủ (ảnh + nội dung),
   swipe ngang + dots. Desktop giữ nguyên accordion.
   =================================================================== */
@media (max-width: 500px) {
    /* Header: chỉ hiện trên mobile, tiêu đề + nút Xem tất cả trên 1 hàng */
    .news-head {
        display: flex;
        margin-bottom: 48px;
    }
    .news-head-all {
        padding: 6px 24px;
        font-size: 16px;
        gap: 8px;
    }

    /* Swiper active: cho phép slide tràn khỏi mép để thấy hé slide kế */
    .news .news-swiper {
        overflow: visible;
    }

    /* accordion -> track ngang của Swiper */
    .news-accordion {
        display: flex;
        flex-direction: row;
        height: auto;
        overflow: visible;
    }

    /* mỗi tin là 1 slide: slide 1 đầy đủ, hé lộ ~12% slide kế (peek).
       slidesPerView:'auto' của Swiper đọc width này để tính. */
    .news .na-item,
    .news .na-item.active {
        flex: 0 0 auto;
        width: 96%;
        height: 614px;
        overflow: hidden;
    }

    .news .na-body {
        margin-bottom: 0;
        padding: 24px 22px;
    }

    /* mọi slide hiện đủ desc + nút (không phụ thuộc .active) */
    .news .na-desc,
    .news .na-more {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
    }
    .news .na-title {
        height: auto;
        -webkit-line-clamp: 2;
    }
    .news .na-desc {
        height: auto;
        -webkit-line-clamp: 3;
        font-size: 14px;
    }

    /* dots */
    .news-pagination-dots {
        display: flex;
        justify-content: center;
        gap: 8px;
        margin-top: 22px;
    }
    .swiper-news-pagination .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        background: rgba(228, 205, 196, 0.4);
        opacity: 1;
        transition: all .3s ease;
    }
    .swiper-news-pagination .swiper-pagination-bullet-active {
        background: var(--tan, #C6A77D);
        width: 22px;
        border-radius: 4px;
    }

        .tabbed-content > ul.nav li a{
    min-width: 134px;
    display: block;
    white-space: nowrap;
}
    .tabbed-content > ul.nav{
    padding-bottom: 30px;
    margin-bottom: 36px;
    justify-content: flex-start;
    overflow-y: hidden;
    flex-wrap: nowrap;
}
    .dn-sus-tabs .panel .dn-sus-panel{
    margin-left: 0;
    margin-right: 0;
}
    .tab-panels{
}
    .dn-sus-panel .col{
    padding: 0;
}
    .dn-sus-tabs-container>.col{
    padding: 0 16px 30px;
}
    .dn-sus-panel-text{
    order: -1;
}
    .dn-sustainable .dn-sus-panel-title{
    font-weight: 400;
}
    .dn-sus-panel-desc{
    font-size: 14px;
    line-height: 24px;
}
    .dn-nat-row-title{}
    .dn-nat-row-title br{}
    .dn-nat-row-text .col-inner{
    padding: 80px 20px;
}
    .dn-nat-row-subtitle{
    font-size: 16px;
}
    .bt-intro .values-sec-title{
    margin-bottom: 0;
}
    .dn-sustainable .dn-sus-panel{
    margin-left: 0!important;
    margin-right: 0!important;
}
    .bt-intro-head{
    padding: 0 10px 0;
}
    .bt-intro-head .values-sec-subtitle{
    font-weight: 400;
    margin-top: 10px;
}
    .row-collapse>.col.bt-info-text{
    padding: 0 15px 0px!important;
}
    section .row .bt-bottom-text .col-inner{
    padding: 64px 20px !important;
}
    .single-post-title-row{
    flex-wrap: wrap;
    animation: flex-end;
    flex-direction: column;
    position: relative;
}
    .single-post-title{
    width: 100%;
}
    .single-post-share{
    order: -1;
    margin-left: auto;
}
    .single-post-cat-pill{
    position: absolute;
    top: 10px;
}
}
