/*
* LUMIÈRE HANOI SEASONS GARDEN — landing clone
* Palette: forest green + champagne gold + warm cream
*/
@import url('https://fonts.googleapis.com/css2?family=Bai+Jamjuree:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');
:root{
    --th-green-mid:   #1e3229;
    --th-gold:        #b89355;   /* champagne accent */
    --th-gold-light:  #d8c39a;
    --th-cream:       #fbf6ef;
    --th-cream-2:     #f3ece0;
    --th-line:        #ded3c1;
    --th-text:        #2c2c2c;
    --th-muted:       #6b6b6b;
    --th-color-bg-second: #f3ece0;
    --th-color-text-desc:       #b89355;
    --th-color-text-desc-bg:    #ffbd59;
    --th-color-text-desc2:    #7d1101;
    --th-red:         #d9382b;   /* hotline */
    --th-font-hilight:'Playfair Display', serif;
    /*--th-font-display:'Playfair Display', serif;*/
    --th-font-display:'Bai Jamjuree',sans-serif;
    --th-font-serif:  'Cormorant Garamond', serif;
    --th-font-body:   'Be Vietnam Pro', system-ui, sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--th-font-body);color:var(--th-text);background:var(--th-cream);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.nav-open{overflow:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
@media(max-width:600px){
    .container{padding:0 16px}
}
@media(max-width:900px){
    .single-content p iframe,
    .single-content iframe{
        width: 100% !important;
        max-width: 100% !important;
        height: 56vw !important;
        max-height: 420px !important;
    }
    .mp-fig{
        height: 260px;
    }
}

/* Utility placeholder image blocks (swap background-image for real assets) */
.ph{position:relative;overflow:hidden;background:linear-gradient(135deg,#3a4a43,#26332d);color:rgba(255,255,255,.55);
    display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--th-font-serif);
    font-size:15px;letter-spacing:.15em;text-transform:uppercase;border-radius:3px;overflow:hidden;}
.ph.light{background:linear-gradient(135deg,#efe7d8,#e2d6c0);color:rgba(90,74,48,.55)}
.ph::after{content:"";position:absolute;inset:0;background:
    repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 12px,transparent 12px 24px)}
/* Real image inside frame: fill edge to edge (images narrower than the frame left dark bars) */
.ph > img{width:100%;height:auto;position:relative;z-index:1}
.ph:has(> img)::after{display:none}

/* Section rhythm & headings */
.sec{padding:70px 0}
.sec-head{text-align:center;margin-bottom:38px}
.sec-eyebrow{font-family:var(--th-font-body);font-size:11px;letter-spacing:.35em;color:var(--th-gold);
    text-transform:uppercase;margin-bottom:14px;font-weight:600}
.sec-title{font-family:var(--th-font-display);font-weight:600;font-size:30px;line-height:1.25;color:var(--th-color-main)}
.sec-title span{color:var(--th-gold)}
.sec-rule{width:64px;height:2px;background:var(--th-gold);margin:18px auto 0}
.on-dark .sec-title{color:#fff}
.on-dark .sec-eyebrow{color:var(--th-gold-light)}

/* ============ HEADER ============ */
.site-header{position:sticky;top:0;width:100%;z-index:100;transition:all .35s ease; background:var(--th-color-main);}
.site-header.solid{background:var(--th-color-main);box-shadow:0 6px 24px rgba(0,0,0,.28)}
.admin-bar .site-header{top:32px}
@media screen and (max-width:782px){
    /* WP admin bar becomes position:absolute below 782px, so it scrolls away — no offset needed */
    .admin-bar .site-header{top:0}
}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:84px}
.single-du-an-logo{height:64px;}
.single-du-an-logo a{display:block;height:100%;}
.single-du-an-logo a img{height:100%;}
.main-nav{display:flex;align-items:center;gap:26px}
.main-nav a{color:#f4efe6;font-size:15px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
    position:relative;padding:6px 0;transition:color .25s}
.main-nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1.5px;background:var(--th-gold);transition:width .3s}
.main-nav a:hover,
.main-nav a.active{color:var(--th-gold-light)}
.main-nav a:hover::after,
.main-nav a.active::after{width:100%}
/* Hotline: same look as homepage "Đăng ký tư vấn" button */
.main-nav a.nav-phone{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 22px;
    border-radius:40px;color:#fff;font-weight:700;font-size:15px;letter-spacing:.03em;
    background-color:#FF6202;background-image:linear-gradient(180deg,#FF6202 0%,#D46D01 100%);
    box-shadow:0 6px 18px rgba(255,98,2,.4);animation:swing-shake 2s ease-in-out infinite}
.main-nav a.nav-phone::after{display:none}
.main-nav a.nav-phone:hover{color:#fff;background-image:linear-gradient(180deg,#ff7a26 0%,#e07a05 100%)}
.nav-phone svg{width:16px;height:16px}
@keyframes swing-shake{
    0%{transform:rotate(0deg)}
    10%{transform:rotate(3deg)}
    20%{transform:rotate(-3deg)}
    30%{transform:rotate(2deg)}
    40%{transform:rotate(-2deg)}
    50%,100%{transform:rotate(0deg)}
}
/* Back to homepage */
.main-nav a.nav-home{display:inline-flex;align-items:center;gap:7px}
.main-nav a.nav-home i{font-size:14px}
.header-home-mobile{display:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--th-gold);color:var(--th-gold-light);
    align-items:center;justify-content:center;font-size:16px;margin-left:auto;margin-right:12px;transition:all .25s}
.header-home-mobile:hover{background:var(--th-gold);color:var(--th-color-main)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:6px}
.nav-toggle span{width:24px;height:2px;background:#fff;display:block;transition:transform .3s,opacity .3s}
.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-overlay{position:fixed;inset:0;background:rgba(13,20,17,.55);z-index:95;
    opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.nav-overlay.show{opacity:1;visibility:visible}
.thumb-cover{overflow:hidden;}
.thumb-cover img{width:100% !important;height:100% !important;object-fit:cover !important;}

/* ============ HERO ============ */
.hero{position:relative;min-height:calc(100vh - 84px);display:flex;align-items:center;justify-content:center;
    text-align:center;color:#fff;overflow:hidden}
.logged-in.admin-bar .hero{min-height:calc(100vh - (32px + 84px));}
@supports (height:100dvh){
    /* Dùng dvh để tránh giật layout khi thanh địa chỉ trình duyệt mobile ẩn/hiện */
    .hero{min-height:calc(100dvh - 84px)}
    .logged-in.admin-bar .hero{min-height:calc(100dvh - (32px + 84px));}
}
.hero-bg{position:absolute;inset:0;background:
    linear-gradient(180deg,rgba(13,45,32,.55) 0%,rgba(13,45,32,.25) 45%,rgba(13,45,32,.85) 100%),
    linear-gradient(120deg,#294034,#12261c);}
.hero-bg::before{content:"";position:absolute;inset:0;opacity:.5;
    background:radial-gradient(120% 80% at 50% 12%,rgba(184,147,85,.25),transparent 60%)}
.hero-scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.7);
    font-size:10px;letter-spacing:.3em;text-transform:uppercase;text-align:center}
.hero-scroll i{display:block;width:1px;height:38px;background:rgba(255,255,255,.5);margin:10px auto 0;animation:scrolldn 1.8s infinite}
@keyframes scrolldn{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}
    51%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ============ CHINH SACH ============ */
.sgl-da-block-item .container{
	padding-top: 60px;
	padding-bottom: 60px;
}
.sgl-da-block-item-head{
	line-height: 1.5;
	font-family: var(--th-font-display);
}
.block-head-line-bottom{
    position: relative;
    padding-bottom: 20px;
}
.block-head-line-bottom:after{
    position: absolute;
    content: '';
    width: 80px;
    height: 2px;
    bottom: 0px;
    left: 0px;
    background-color: var(--th-color-text-desc);
}
.block-head-line-bottom.block-text-center:after{
    left: calc(50% - 40px);
}
.sgl-da-block-title-small{
    font-size: 11px !important;
    letter-spacing: 4px !important;
    font-weight: 600 !important;
    color: var(--th-color-text-desc);
    margin-bottom: 10px;
}
.sgl-da-block-title{
	font-size: 38px;
	font-weight: 00;
	color: var(--th-color-main);
}
.sgl-da-block-title.white{
	color: #fff;
}
.sgl-da-block-title span{
    color: var(--th-color-text-desc);
}
.sgl-da-block-desc{
	font-size: 26px;
	color: var(--th-color-text-desc);
	font-weight: 600;
}
.sgl-da-block-desc-bg{
    color: var(--th-color-text-desc-bg);
}
.sgl-da-block-desc2{
    color: var(--th-color-text-desc2);
}
.block-text-center{
    text-align: center;
}
.block-text-same *{
    font-size: 38px;
    font-weight: 700;
}
.sgl-da-block-item-content{
	margin-top: 30px;
}
/* ============ BANG GIA ============ */
.block-item-bg-main{
    background-color: var(--th-color-main);
}
.sgl-da-bg .container{
    padding-top: 0px;
}
.sgl-da-bg-content{
    color: #fff;
}
.sgl-da-bg-form{
    margin-top: 30px;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 20px;
    padding: 30px 25px;
    padding-bottom: 10px;
}
.sgl-da-bg-form-title{
    font-size: 27px;
    line-height: 1.5;
    font-weight: 700;
    color: #fff;
    text-align: center;
    font-family: var(--th-font-display);
}
.sgl-da-bg-form-desc{
    text-align: center;
}
.sgl-da-bg-form-note{
    text-align: center;
    color: #eee;
    font-style: italic;
}
.sgl-da-bg-form-field{
    margin-top: 10px;
}

/**/
.single-content-bg{
    color: #e9e4d8;
}
.single-content p{
    padding: 8px 0;
    
}
.single-content p[style="padding-left: 40px;"]{
    padding-left: 0px !important;
    text-indent: 20px !important;
}
.single-content p:first-child{
    padding-top: 0px;
}
.single-content p:last-child{
    padding-bottom: 0px;
}
.content-table-wrap{
    display: block;
    overflow-x: auto;
}
.single-content table,
.single-pro-des table{
    width: 100% !important;
    margin: 10px 0;
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
    table-layout: fixed;
    line-height: 1.5;
}
/*.single-content table thead,
.single-content table tbody,
.single-content table tr{
    white-space: nowrap;
    display: block !important;
}
.single-content table tr td:last-child,
.single-content table tr th:last-child{
    width: 1%;
    white-space: nowrap;
}*/
.single-pro-des table{
    margin: 0px;
    margin-top: 15px;
    background-color: #fff;
}
.single-content table tr.firstRow, 
.single-content table tr.tip{
    color: #fff;
    font-weight: 700;
    background-color: var(--th-color-main);
}
.single-content table tr th,
.single-content table tr td,
.single-pro-des table tr td{
    padding: 10px 15px;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}
.single-pro-des table tr td{
    padding-top: 6px;
    padding-bottom: 6px;
}
.single-content table tr td[colspan="3"]{
    color: #fff;
    background-color: #518aaa;
    letter-spacing: 1px;
}
.single-content a{
    color: var(--th-color-link);
    font-weight: 700;
}
.single-content a:hover{
    text-decoration: underline;
    color: var(--th-color-link-hover);
}
.single-content img{
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0px auto;
    /*border: 1px solid #ddd;
    padding: 5px;
    box-sizing: border-box;*/
}
.single-content figure{
    margin: 0px !important;
    padding: 0px 0px !important;
}
.single-content figure:first-child{
    padding-top: 0px !important;
}
.single-content figure:last-child{
    padding-bottom: 0px !important;
}
.single-content-pro img{
    display: block !important;
    width: 100% !important;
}
.single-content>h1,
.single-content>h2,
.single-content>h3,
.single-content>h4{
    line-height: 1.5;
    color: #000;
}
.single-content-bg>h1,
.single-content-bg>h2,
.single-content-bg>h3,
.single-content-bg>h4{
    color: var(--th-color-text-desc);
}
.single-content>h1{
    font-size: 32px;
    font-weight: 700;
    padding: 8px 0;
}
.single-content>h2{
    font-size: 28px;
    font-weight: 700;
    padding: 8px 0;
}
.single-content>h3{
    font-size: 22px;
    padding: 8px 0;
}
.single-content ul,
.single-content ol{
    padding: 8px 0;
}
.single-content ol{
    padding-left: 30px;
}
.single-content ul li{
    position: relative;
    padding-left: 40px;
}
.single-content ul li:nth-child(n+2),
.single-content ol li:nth-child(n+2){
    margin-top: 5px;
}
.single-content ul li:before{
    position: absolute;
    content: '';
    top: 10px;
    left: 22px;
    width: 5px;
    height: 5px;
    border-radius: 100%;
    background-color: #333;
}
.single-content ul li:before{
    background-color: #e9e4d8;
}
.single-content ul ul li:before{
    width: 4px;
    height: 4px;
    background-color: transparent;
    border: 1px solid #333;
}
.single-content ol li::marker{
    font-weight: 700;
}
.single-content p iframe,
.single-content iframe{
    display: block !important;
    width: 790px !important;
    max-width: 790px !important;
    height: 420px !important;
}
.single-content-pro p iframe,
.single-content-pro iframe{
    width: 100% !important;
    max-width: 100% !important;
    height: 420px !important;
}
.single-content .wp-caption{
    width: 100% !important;
    max-width: 100% !important;
    text-align: center;
    margin: 10px auto;
}
.single-content-pro .wp-caption{
    width: 100% !important;
}
.single-content p.wp-caption-text{
    padding-top: 5px;
    text-align: center;
    padding-bottom: 8px;
    line-height: 1.5;
}
.single-content p.wp-caption-text *{
    color: #666;
    font-size: 15px;
    font-weight: 500;
    font-style: normal;
}
.single-content .wp-video{
    margin: 10px auto !important;
    max-width: 100% !important;
}

/* ============ OVERVIEW ============ */
.block-item-bg-second{
    background-color: var(--th-color-bg-second);
}
.sgl-da-col2-item{
    width: calc((100% - 50px) / 2);
}
.sgl-da-overview-thumb img,
.sgl-da-local-thumb img{
    width: 100%;
}

.overview{background:var(--th-cream-2)}
.split{display:flex;gap:50px;align-items:center}
.split .col-img{flex:0 0 46%}
.split .col-txt{flex:1}
.ov-fig{height:520px;border-radius:3px}
.ov-title{font-family:var(--th-font-display);font-size:26px;color:var(--th-color-main);font-weight:600;margin-bottom:8px}
.ov-title span{color:var(--th-gold)}
.ov-title-rule{width:52px;height:2px;background:var(--th-gold);margin:16px 0 24px}
.spec-list li{display:flex;padding:11px 0;border-bottom:1px dashed var(--th-line);font-size:14px}
.spec-list li:last-child{border-bottom:0}
.spec-list .k{flex:0 0 150px;color:var(--th-gold);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.03em;padding-top:2px}
.spec-list .v{flex:1;color:#3a3a3a;font-weight:500}

/* ============ LOCATION ============ */
.location{background:var(--th-color-main);color:#fff}
.loc-title{font-family:var(--th-font-display);font-size:26px;font-weight:600;margin-bottom:6px}
.loc-title span{color:var(--th-gold-light)}
.loc-title-rule{width:52px;height:2px;background:var(--th-gold);margin:16px 0 22px}
.sgl-du-an-local-content{color:#e9e4d8;}
.sgl-du-an-local-content li{position:relative;padding:10px 0 10px 30px;font-size:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.sgl-du-an-local-content li:last-child{border-bottom:0}
.sgl-du-an-local-content li::before{content:"";position:absolute;left:0!important;top:14px!important;width:12px!important;height:12px!important;border:2px solid var(--th-color-text-desc)!important;background-color:transparent!important;
    border-radius:50%}
.loc-map{height:440px;border-radius:3px}

/* ============ GARDEN BANNER ============ */
.garden{position:relative;color:#fff;text-align:center;overflow:hidden;background-color: rgba(0, 0, 0, .1);}
.garden .container{position:relative;z-index:2}
.garden-title{font-family:var(--th-font-hilight);font-style:italic;font-size:40px;font-weight:500;line-height:1.3;color:#fdf6e4;margin-left: auto;margin-right: auto;}
.garden-title span{color:var(--th-gold-light)}

/* ============ GREEN LIVING ============ */
.sgl-da-kgs-content{
    margin-top: 30px;
}
.cols-3{
  display:flex;
  flex-wrap:wrap;
  gap:30px 34px;              /* row-gap 30px | column-gap 34px */
}
.cols-3 > *{
  flex:0 0 calc((100% - 68px) / 3);  /* 3 cột, trừ 2 gap × 34px = 68px */
  box-sizing:border-box;
}
.c-item h4{font-family:var(--th-font-display);font-size:18px;color:var(--th-color-main);margin-bottom:10px;
    padding-bottom:12px;border-bottom:1px solid var(--th-line);position:relative}
.c-item h4::before{content:"";position:absolute;bottom:-1px;left:0;width:40px;height:2px;background:var(--th-gold)}
.c-item p{font-size:13.5px;color:#555}

/* ============ AMENITIES ============ */
.sgl-da-ti-content{margin-top:30px;}
.sgl-da-ti-content ul{columns:2;column-gap:40px;max-width:820px;margin:0 auto 44px}
.sgl-da-ti-content li{position:relative;padding:9px 0 9px 26px;font-size:14px;break-inside:avoid;color:#3a3a3a}
.sgl-da-ti-content li::before{content:"✦"!important;position:absolute;left:0!important;top:9px!important;color:var(--th-color-text-desc)!important;font-size:12px!important;background-color:transparent!important;}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery .g{height:180px;border-radius:3px}
.gallery .g.wide{grid-column:span 2}
.gallery .g.tall{grid-row:span 2;height:auto}

/* ============ MASTER PLAN ============ */
.masterplan{background:var(--th-color-main);color:#fff}
.mp-fig{height:520px;border-radius:3px;max-width:960px;margin:0 auto}

/* ============ FLOOR PLAN ============ */
.floorplan{background:var(--th-cream)}
.fp-tabs{display:flex;justify-content:center;gap:0;margin-bottom:30px}
.fp-tab{background:transparent;border:2px solid var(--th-gold);color:var(--th-color-main);font-family:var(--th-font-body);
    padding:11px 34px;cursor:pointer;font-size:17px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    transition:all .25s}
.fp-tab:first-child{border-radius:2px 0 0 2px}
.fp-tab:last-child{border-radius:0 2px 2px 0;border-left:0}
.fp-tab.active{background:var(--th-gold);color:#fff}
.fp-panel{display:none}
.fp-panel.active{display:block}
.fp-fig{margin:0 auto}
.fp-caption{text-align:center;margin-top:16px;font-size:16px;letter-spacing:.2em;
    text-transform:uppercase;color:var(--th-muted)}

/* ============ APARTMENTS ============ */
.sgl-da-lhch-content li{padding-left:20px !important;}
.sgl-da-lhch-content li::before{content:"›"!important;position:absolute;left:2px!important;top:-1px!important;color:var(--th-color-text-desc)!important;font-weight:700;background-color:transparent!important;}
.apt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:30px;}
/* Product category tabs */
.apt-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:35px}
.apt-tab{background:transparent;border:2px solid var(--th-gold);color:#fff;font-family:var(--th-font-body);
    padding:10px 30px;border-radius:40px;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.06em;
    text-transform:uppercase;transition:all .25s}
.apt-tab:hover{border-color:var(--th-gold-light);color:var(--th-gold-light)}
.apt-tab.active{background:var(--th-gold);border-color:var(--th-gold);color:var(--th-color-main)}
.apt-panel{display:none}
.apt-panel.active{display:block;animation:aptFade .4s ease}
.apt-empty{text-align:center;color:#fff;margin-top:30px}
@keyframes aptFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.apt-card{border-radius:8px;overflow:hidden;color:#fff;
    transition:transform .3s,box-shadow .3s;background-color:rgba(255, 255, 255, .2);border:2px solid rgba(255, 255, 255, .5);padding:15px;padding-bottom: 100px;position:relative;}
.apt-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(13,45,32,.35)}
.apt-card-title{
    text-align: center;
    font-weight: 700;
    line-height: 1.5;
    font-size: 26px;
    font-family: var(--th-font-display);
    color: var(--th-color-text-desc);
}
.apt-card-thumb{
    height: 255px;
}
.apt-card-content{
    background-color: rgba(255, 255, 255, .8);border-radius: 8px;
}
.apt-card-content ul li{
    padding-left: 25px;
}
.apt-card-content ul li:before{
    background-color: #333;
    top: 8px;
    left: 12px;
}
.apt-card .area{font-size:13px;color:#333;}
.apt-card-btn{display:block;text-align:center;background:var(--th-red);color:#fff;padding:9px;border-radius:10px;
    font-size:14px;font-weight:700;letter-spacing:0em;text-transform:uppercase;transition:background .25s;
    position: absolute;
    left: 15px;
    bottom: 15px;
    right: 15px;
    line-height:1.4;
}
.apt-card-btn:hover{background:#b52a1f}

/* ============ POPUP: TẢI BẢNG GIÁ CĂN HỘ ============ */
.apt-popup{
    background:#fff;
    max-width:600px !important;
    width:90vw;
    padding:38px 36px 32px !important;
    border-radius:14px;
    text-align:left;
    box-sizing:border-box;
}
.apt-popup-head{text-align:center;margin-bottom:6px}
.bg-price-title{
    font-family:var(--th-font-display);
    font-weight:700;
    font-size:24px;
    line-height:1.3;
    letter-spacing:.01em;
    text-transform:uppercase;
    color:var(--th-text);
    margin-bottom:8px;
}
.bg-price-date{
    font-family:var(--th-font-body);
    font-weight:700;
    font-size:15px;
    color:var(--th-red);
}
.apt-popup-note{margin:18px 0 22px;padding-top:16px;border-top:1px dashed var(--th-line)}
.apt-popup-note p{margin:0 0 10px;color:var(--th-red);font-weight:700;font-size:14px}
.apt-popup-note ul{list-style:none;margin:0;padding:0}
.apt-popup-note li{position:relative;padding:6px 0 6px 28px;font-size:14px;font-weight:600;color:var(--th-text)}
.apt-popup-note li:before{
    content:"\f1c3";
    font-family:"Font Awesome 5 Pro";
    font-weight:900;
    position:absolute;left:0;top:6px;
    color:#1d6f42;font-size:16px;
}
.apt-popup-form p{margin:0}
.apt-popup-row{display:flex;gap:14px;margin-bottom:14px}
.apt-popup-field{flex:1;min-width:0}
.apt-popup-field-full{flex:1 1 100%}
.apt-popup-field-btn{flex:0 0 150px}
.apt-popup-form input[type="text"],
.apt-popup-form input[type="tel"]{
    width:100%;border:1px solid var(--th-line);border-radius:8px;
    padding:12px 14px;font-size:14px;color:var(--th-text);
    background:#fff;outline:none;transition:border-color .2s;
}
.apt-popup-form input[type="text"]:focus,
.apt-popup-form input[type="tel"]:focus{border-color:var(--th-gold)}
.apt-popup-form input[type="submit"]{
    width:100%;height:100%;min-height:46px;
    background:var(--th-red);color:#fff;border:none;border-radius:8px;
    font-weight:800;font-size:15px;letter-spacing:.02em;cursor:pointer;transition:background .2s;
}
.apt-popup-form input[type="submit"]:hover{background:#b52a1f}
.apt-popup-checklist-label p{margin:0 0 10px;font-weight:700;font-size:14px;color:var(--th-text)}
.apt-popup-checklist{background:var(--th-color-bg-second);border-radius:10px;padding:14px 16px}
.apt-popup-checklist .wpcf7-form-control-wrap{display:block}
.apt-popup-checklist .wpcf7-form-control.wpcf7-checkbox{
    display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;
}
.apt-popup-checklist .wpcf7-list-item{margin:0}
.apt-popup-checklist .wpcf7-list-item label{
    display:flex;align-items:center;gap:8px;cursor:pointer;
    font-size:14px;font-weight:500;color:var(--th-text);
}
.apt-popup-checklist input[type="checkbox"]{
    width:16px;height:16px;flex:0 0 16px;cursor:pointer;accent-color:var(--th-red);
}
.apt-popup-form .wpcf7-not-valid-tip{font-size:12px;margin-top:4px}
.apt-popup-form .wpcf7-response-output{margin:16px 0 0;border-radius:8px;font-size:13px}
@media (max-width:600px){
    .apt-popup{padding:26px 20px 24px}
    .apt-popup-row{flex-direction:column;gap:10px}
    .apt-popup-field-btn{flex:1 1 100%}
    .apt-popup-checklist .wpcf7-form-control.wpcf7-checkbox{grid-template-columns:1fr}
}

/* ============ 360 ============ */
.sgl-da-360-iframe{
    height: 800px;
    border-radius: 5px;
    overflow: hidden;
}

/* ============ PROGRESS ============ */
.sgl-da-td-iframe{
    height: 680px;
    border-radius: 5px;
    overflow: hidden;
}

/* ============ POTENTIAL ============ */
.potential{background:var(--th-green-mid);color:#fff}
.pot-title{font-family:var(--th-font-display);font-size:26px;font-weight:600;text-align:center;margin-bottom:8px;line-height:1.35}
.pot-title span{color:var(--th-gold-light)}
.pot-rule{width:64px;height:2px;background:var(--th-gold);margin:18px auto 40px}
.pot-fig{height:420px;border-radius:3px}
.sgl-da-dt-content li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid rgba(0,0,0,.1);font-size:14px}
.sgl-da-dt-content li:last-child{border-bottom:0}
.sgl-da-dt-content li::before{content:"↗";position:absolute;left:0;top:8px;color:var(--th-color-text-desc);font-size:16px}

/* ============ FOOTER ============ */
.site-footer{background:var(--th-color-main);color:#e7e2d6;padding:56px 0 0}
.footer-brand{text-align:center;margin-bottom:30px}
.footer-brand .brand-name{font-size:24px;color:#fff}
.footer-brand .brand-sub{color:var(--th-gold-light)}
.footer-company{text-align:center;font-family:var(--th-font-display);font-size:16px;color:var(--th-gold-light);
    letter-spacing:.04em;margin-bottom:20px;font-weight:700;}
.footer-contact{text-align:center;font-size:13.5px;line-height:2;color:#cfc9bb;max-width:700px;margin:0 auto 30px}
.footer-contact strong{color:#fff;font-weight:600}
.footer-disc{border-top:1px solid rgba(255,255,255,.12);padding:22px 0;font-size:11.5px;color:#9ba49c;
    max-width:920px;margin:0 auto;line-height:1.9;text-align:justify}
.footer-bar{background:var(--th-color-main);text-align:center;padding:16px;font-size:12px;color:#8f978f}

/* ============ FLOATING CONTACT (plugin Button Contact VR) ============ */
#button-contact-vr{z-index:90!important;left:calc(0px + env(safe-area-inset-left));bottom:calc(0px + env(safe-area-inset-bottom))}
#button-contact-vr .phone-vr-circle-fill{box-sizing:border-box;width:64px;height:64px;top:13px;left:13px}
#button-contact-vr .phone-vr-img-circle{box-sizing:border-box;border:0;width:40px;height:40px;top:25px;left:25px}
#button-contact-vr .phone-vr-img-circle a{display:block;width:100%;height:100%}
#button-contact-vr .phone-vr-img-circle img{display:block;margin:0}

/* ============ BACK TO TOP ============ */
.back-to-top{
    position:fixed;right:16px;bottom:20px;z-index:90;
    right:calc(16px + env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));
    width:48px;height:48px;border-radius:50%;
    background:var(--th-color-main);color:var(--th-gold);
    border:1px solid var(--th-gold);
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);
    opacity:0;visibility:hidden;transform:translateY(12px);
    transition:opacity .3s,transform .3s,visibility .3s,background .25s,color .25s;
}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--th-gold);color:var(--th-color-main)}
.back-to-top svg{width:20px;height:20px}
@media(max-width:600px){
    .back-to-top{width:42px;height:42px;right:14px;bottom:16px;
        right:calc(14px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom))}
    .back-to-top svg{width:18px;height:18px}
}

/* ============ RESPONSIVE ============ */
@media(max-width:960px){
    .main-nav{position:fixed;top:84px;right:0;width:270px;height:calc(100vh - 84px);background:var(--th-color-main);
        flex-direction:column;align-items:flex-start;gap:0;padding:20px;transform:translateX(100%);transition:transform .35s;
        overflow-y:auto}
    .main-nav.open{transform:translateX(0)}
    .main-nav a{width:100%;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}
    .main-nav a.nav-phone{margin-top:14px;padding:0 22px;border-bottom:0}
    .header-home-mobile{display:flex}
    .nav-toggle{display:flex}
    .apt-tab{padding:9px 20px;font-size:14px}
    .site-header{background:var(--th-color-main)}
    .split{flex-direction:column;gap:30px}
    .split .col-img{flex:0 0 auto;width:100%}
    .ov-fig,.loc-map{height:340px}
    .sgl-da-col2-item{width:100%;float:none;margin-bottom:30px}
    .sgl-da-col2-item-right{margin-bottom:0}
    .sgl-da-ti-content ul{columns:1}
    .fp-tabs{flex-wrap:wrap;gap:10px}
    .fp-tab{padding:10px 22px;font-size:15px;border-radius:20px}
    .fp-tab:first-child,.fp-tab:last-child{border-radius:20px;border-left:2px solid var(--th-gold)}
    .cols-3{flex-direction:column;gap:26px}
    .apt-info{flex-direction:column;gap:18px}
    .apt-grid{grid-template-columns:repeat(2,1fr)}
    .gallery{grid-template-columns:repeat(2,1fr)}
    .gallery .g.wide,.gallery .g.tall{grid-column:auto;grid-row:auto;height:180px}
    .hero-title .big{font-size:46px}
    .garden-title{font-size:30px}
}
@media(max-width:560px){
    .sec{padding:52px 0}
    .sec-title,.intro-title,.ov-title,.loc-title,.pot-title{font-size:22px}
    .hero-title{font-size:20px}.hero-title .big{font-size:38px}
    .garden-title{font-size:24px}
    .apt-grid{grid-template-columns:1fr}
    .amen-list{columns:1}
    .footer-disc{text-align:left}
}


/* ===== Hàng input ===== */
.bg-price-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:22px;
}
.bg-field{flex:1 1 0;min-width:180px}
.bg-field-btn{flex:0 0 320px;position:relative}

.bg-price-box .wpcf7-form-control-wrap{display:block;width:100%}

/* Input & select gạch chân */
.bg-price-box input[type="text"],
.bg-price-box input[type="tel"],
.bg-price-box select{
  width:100%;
  background:transparent;
  border:none;
  border-bottom:3px solid #f6a01a;
  border-radius:0;
  color:#fff;
  font-size:16px;
  font-weight:600;
  padding:10px 4px 12px;
  outline:none;
  box-shadow:none;
  -webkit-appearance:none;
  appearance:none;
}
.bg-price-box input::placeholder{color:#d9e2de;font-weight:600;opacity:1}
.bg-price-box input:focus,
.bg-price-box select:focus{border-bottom-color:#fff}

/* Mũi tên cho select */
.bg-field-select{position:relative}
.bg-field-select:after{
  content:"";
  position:absolute;
  right:10px;top:50%;
  width:0;height:0;
  margin-top:-5px;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-top:6px solid #fff;
  pointer-events:none;
}
.bg-price-box select option{color:#111;background:#fff}

/* ===== Nút submit ===== */
.bg-price-box input[type="submit"]{
  width:100%;
  background:#e01b1b;
  border:none;
  border-radius:10px;
  color:#fff;
  font-size:19px;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:4px;
  padding:20px 20px 20px 56px;
  cursor:pointer;
  transition:.25s;
  box-shadow:0 4px 14px rgba(224,27,27,.35);
}
.bg-price-box input[type="submit"]:hover{
  background:#c41414;
  transform:translateY(-2px);
}
.bg-btn-ico{
  position:absolute;
  left:22px;top:50%;
  transform:translateY(-50%);
  width:24px;height:24px;
  color:#fff;
  pointer-events:none;
  z-index:2;
}
.bg-btn-ico svg{width:100%;height:100%;display:block}

/* Thông báo CF7 */
.bg-price-box .wpcf7-not-valid-tip{color:#ffd6d6;font-size:12px;margin-top:4px}
.bg-price-box .wpcf7-response-output{
  color:#fff;border-color:#f6a01a!important;
  margin:18px 0 0;border-radius:8px;
}
.bg-price-box .wpcf7-spinner{background-color:#f6a01a}

/* ===== Responsive ===== */
@media (max-width:991px){
  .bg-price-title{font-size:24px}
  .bg-price-date{font-size:21px}
  .bg-field{flex:1 1 45%}
  .bg-field-btn{flex:1 1 100%}
}
@media (max-width:600px){
  .bg-price-box{padding:22px 18px 26px;border-radius:16px}
  .bg-price-title{font-size:20px}
  .bg-price-date{font-size:17px}
  .bg-price-note{font-size:13px}
  .bg-price-row{gap:16px}
  .bg-field{flex:1 1 100%}
  .bg-price-box input[type="submit"]{font-size:17px;padding:16px 16px 16px 50px}
}