/*
Theme Name: Bắc Ninh Property Simple
Author: OpenAI
Description: Theme bất động sản Bắc Ninh tối giản, dễ quản trị một người.
Version: 2.17.42
Text Domain: bnp-simple
*/
:root{--green:#075846;--green2:#0a6b56;--gold:#e6aa37;--ink:#17211e;--muted:#66736e;--cream:#f7f5ee;--line:#e6e8e5;--white:#fff;--shadow:0 12px 34px rgba(16,43,35,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(1180px,calc(100% - 36px));margin:auto}.topbar{background:#063e34;color:#fff;font-size:14px}.topbar .container{height:38px;display:flex;align-items:center;justify-content:space-between}.site-header{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}.header-inner{height:78px;display:flex;align-items:center;gap:26px}.brand{font-size:25px;font-weight:900;letter-spacing:.4px;color:var(--green)}.brand span{color:var(--gold)}.main-nav{margin-left:auto}.main-nav>ul{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}.main-nav li{position:relative}.main-nav a{display:block;padding:14px 12px;font-weight:700;font-size:14px}.main-nav>ul>li:hover>a{color:var(--green)}.sub-menu{position:absolute;top:100%;left:0;min-width:245px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px!important;display:none!important;list-style:none}.sub-menu li a{padding:10px 12px;border-radius:8px;font-weight:600}.sub-menu li a:hover{background:#f1f6f4;color:var(--green)}.menu-item-has-children:hover>.sub-menu{display:block!important}.header-phone{background:var(--green);color:#fff;padding:11px 17px;border-radius:999px;font-weight:800;white-space:nowrap}.menu-toggle{display:none;border:0;background:var(--green);color:#fff;border-radius:9px;padding:9px 12px;font-size:20px}.hero{min-height:610px;display:flex;align-items:center;background-size:cover;background-position:center;position:relative;color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,34,29,.88) 0%,rgba(2,34,29,.58) 47%,rgba(2,34,29,.15) 100%)}.hero .container{position:relative;z-index:1}.hero-copy{max-width:690px}.eyebrow{color:#ffd98c;font-weight:900;letter-spacing:2px;text-transform:uppercase;font-size:14px}.hero h1{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:64px;line-height:1.02;margin:16px 0 20px}.hero p{font-size:19px;max-width:620px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 22px;font-weight:800;cursor:pointer}.btn-gold{background:var(--gold);color:#162019}.btn-green{background:var(--green);color:#fff}.btn-outline{border:1px solid var(--green);color:var(--green);background:#fff}.section{padding:72px 0}.section.alt{background:var(--cream)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.section-head small{font-weight:900;color:var(--green);letter-spacing:1.5px}.section-head h2{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:39px;margin:5px 0 0}.section-head p{max-width:480px;color:var(--muted);margin:0}.project-carousel,.listing-row,.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 7px 22px rgba(20,50,42,.06);scroll-snap-align:start}.card-media{aspect-ratio:16/10;background:#e8eeeb;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover}.card-body{padding:18px}.card h3{font-size:19px;line-height:1.35;margin:7px 0 8px}.card p,.meta{font-size:14px;color:var(--muted)}.tag{display:inline-block;font-size:11px;font-weight:900;color:var(--green);background:#eaf4f0;border-radius:999px;padding:5px 9px;text-transform:uppercase}.readmore{color:var(--green);font-weight:800;font-size:14px}.transfer-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.transfer-col{background:#fff;border-radius:18px;padding:22px;border:1px solid var(--line)}.transfer-title{background:var(--green);color:#fff;margin:-22px -22px 20px;padding:13px 22px;border-radius:18px 18px 0 0;text-align:center;font-weight:900}.mini-list{display:grid;gap:14px}.mini-card{display:grid;grid-template-columns:135px 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden}.mini-card img,.mini-placeholder{width:100%;height:120px;object-fit:cover;background:#e8eeeb}.mini-card .copy{padding:13px}.mini-card h3{font-size:16px;margin:0 0 5px}.news-grid{grid-template-columns:repeat(3,1fr)}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.contact-note h2{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:40px;margin:8px 0}.contact-photo{width:130px;height:130px;border-radius:50%;background:#edf1ef;display:grid;place-items:center;color:var(--muted);margin-bottom:20px}.lead-form{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:28px;border-radius:18px}.lead-form h3{margin-top:0}.lead-form input,.lead-form textarea,.lead-form select{width:100%;border:1px solid #dfe4e1;border-radius:10px;padding:13px 14px;margin:0 0 12px;font:inherit}.lead-form textarea{min-height:100px}.footer{background:#062f28;color:#d9e5e1;padding:46px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer h3{color:#fff}.footer a{display:block;margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:28px;padding-top:20px;font-size:13px}.float-phone{position:fixed;right:20px;bottom:20px;background:var(--green);color:#fff;padding:13px 18px;border-radius:999px;font-weight:900;box-shadow:var(--shadow);z-index:40}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.page-hero{background:var(--green);color:#fff;padding:70px 0}.page-hero h1{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:48px;margin:0}.content{padding:60px 0}.content article{max-width:850px;margin:auto}.content h2{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:32px}.notice{padding:12px 15px;border-radius:10px;background:#eaf4f0;color:#075846;margin-bottom:20px}
@media(max-width:960px){.main-nav,.header-phone{display:none}.menu-toggle{display:block;margin-left:auto}.main-nav.open{display:block;position:absolute;top:78px;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:12px 18px;max-height:75vh;overflow:auto}.main-nav.open>ul{display:block}.main-nav.open .sub-menu{position:static;display:block!important;box-shadow:none;border:0;padding-left:18px!important}.hero h1{font-size:50px}.project-carousel{grid-template-columns:repeat(4,290px)}.transfer-grid,.contact-wrap{grid-template-columns:1fr}.news-grid{grid-template-columns:repeat(3,290px)}.archive-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.topbar .container span:first-child{display:none}.topbar .container{justify-content:center}.header-inner{height:68px}.brand{font-size:20px}.hero{min-height:560px}.hero h1{font-size:42px}.hero p{font-size:17px}.section{padding:54px 0}.section-head{display:block}.section-head h2{font-size:32px}.mini-card{grid-template-columns:110px 1fr}.footer-grid,.archive-grid{grid-template-columns:1fr}.float-phone{right:12px;bottom:12px}.page-hero h1{font-size:38px}}

/* ===== Simple 2.1: refined desktop header, hero and responsive navigation ===== */
.header-inner.container{width:min(1460px,calc(100% - 48px))}
.header-inner{height:72px;gap:18px}
.brand{font-size:22px;line-height:1;white-space:nowrap;flex:0 0 auto}
.main-nav{margin-left:auto;min-width:0}
.main-nav>ul{gap:2px;white-space:nowrap}
.main-nav a{padding:12px 10px;font-size:13px;line-height:1.2}
.header-phone{padding:10px 15px;font-size:14px;flex:0 0 auto}
.hero{min-height:560px}
.hero-copy{max-width:650px}
.hero h1{font-size:60px;margin:13px 0 16px}
.hero p{font-size:18px;line-height:1.7;max-width:590px}
.hero:before{background:linear-gradient(90deg,rgba(2,34,29,.9) 0%,rgba(2,34,29,.62) 43%,rgba(2,34,29,.12) 78%,rgba(2,34,29,.06) 100%)}
.actions{margin-top:24px}
.section{padding:64px 0}
.card{transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,50,42,.10)}

@media(max-width:1280px){
 .header-inner.container{width:min(1180px,calc(100% - 32px))}
 .brand{font-size:19px}
 .main-nav a{font-size:12px;padding:12px 7px}
 .header-phone{font-size:13px;padding:9px 12px}
}
@media(max-width:1080px){
 .main-nav,.header-phone{display:none}
 .menu-toggle{display:block;margin-left:auto}
 .main-nav.open{display:block;position:absolute;top:72px;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:10px 20px 18px;max-height:calc(100vh - 110px);overflow:auto;box-shadow:0 18px 30px rgba(0,0,0,.08)}
 .main-nav.open>ul{display:block;white-space:normal}
 .main-nav.open a{font-size:14px;padding:12px 8px}
 .main-nav.open .sub-menu{position:static;display:block!important;box-shadow:none;border:0;padding:0 0 5px 18px!important;min-width:0}
 .main-nav.open .sub-menu a{font-weight:600;color:#40504b;padding:8px}
 .hero h1{font-size:50px}
 .project-carousel{grid-template-columns:repeat(4,290px)}
 .transfer-grid,.contact-wrap{grid-template-columns:1fr}
 .news-grid{grid-template-columns:repeat(3,290px)}
 .archive-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 .header-inner.container{width:calc(100% - 28px)}
 .header-inner{height:64px}
 .brand{font-size:18px}
 .main-nav.open{top:64px}
 .hero{min-height:520px;background-position:60% center}
 .hero h1{font-size:40px}
 .hero p{font-size:16px;line-height:1.65}
 .eyebrow{font-size:12px;letter-spacing:1.5px}
 .btn{padding:12px 18px}
 .section{padding:50px 0}
 .section-head{display:block}
 .section-head h2{font-size:32px}
 .mini-card{grid-template-columns:110px 1fr}
 .footer-grid,.archive-grid{grid-template-columns:1fr}
 .float-phone{right:12px;bottom:12px;padding:11px 14px;font-size:13px}
 .page-hero h1{font-size:38px}
}


/* ===== Simple 2.2: complete homepage ===== */
.projects-section{background:#fff}.carousel-shell{position:relative}.carousel-btn{position:absolute;top:42%;z-index:4;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--green);font-size:30px;line-height:1;box-shadow:0 8px 24px rgba(0,0,0,.10);cursor:pointer}.carousel-btn.prev{left:-21px}.carousel-btn.next{right:-21px}.project-carousel{scrollbar-width:none}.project-carousel::-webkit-scrollbar{display:none}.project-card .card-media{aspect-ratio:16/9}.project-card .card-body{min-height:205px;display:flex;flex-direction:column}.project-card .readmore{margin-top:auto}.project-card .readmore b{font-size:18px}.section-head.centered{display:block;text-align:center}.section-head.centered p{margin:8px auto 0}.market-section{border-top:1px solid #eee8dc;border-bottom:1px solid #eee8dc}.transfer-col{box-shadow:0 8px 28px rgba(20,50,42,.06)}.transfer-title{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left}.transfer-title span{font-size:12px;font-weight:500;opacity:.82}.mini-placeholder{display:grid;place-items:center}.mini-placeholder span{font-size:13px;font-weight:900;color:#8ba098}.mini-type{display:block;font-size:10px;font-weight:900;color:var(--green);letter-spacing:.7px;margin-bottom:2px}.view-all{display:block;margin-top:18px;text-align:right;color:var(--green);font-weight:800;font-size:14px}.empty-listing{min-height:180px;border:1px dashed #ccd8d3;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;color:var(--muted);background:#fbfcfb}.empty-listing strong{color:var(--ink);font-size:18px}.empty-listing p{margin:5px 0 12px}.empty-listing a{color:var(--green);font-weight:800}.news-card .card-body{min-height:230px;display:flex;flex-direction:column}.news-card .readmore{margin-top:auto}.news-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#e9f2ef,#f6f1e5)}.news-placeholder span{font-weight:900;color:var(--green);letter-spacing:2px}.news-empty{grid-column:1/-1;border:1px dashed #ccd8d3;border-radius:16px;padding:34px;text-align:center;background:#fbfcfb}.news-empty strong{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:24px}.news-empty p{color:var(--muted);margin-bottom:0}.contact-section{background:linear-gradient(135deg,#f7f5ee 0%,#eef5f2 100%)}.contact-note small,.form-kicker{font-weight:900;color:var(--green);letter-spacing:1.5px}.contact-note h2{max-width:520px}.contact-actions{display:grid;gap:10px;margin-top:24px}.contact-phone,.contact-email{display:flex;flex-direction:column;width:max-content;max-width:100%;padding:11px 18px;border-radius:12px;background:#fff;border:1px solid var(--line)}.contact-phone span,.contact-email span{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:1px}.contact-phone strong{font-size:23px;color:var(--green)}.contact-email strong{font-size:15px}.form-side{max-width:520px;width:100%;justify-self:end}.form-side .lead-form{margin-top:8px}.form-side .lead-form h3{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:27px}.privacy-note{font-size:12px;color:var(--muted);text-align:center;margin:10px 0 0}.lead-form button{width:100%;font-size:15px}.hero p{max-width:650px}
@media(max-width:1240px){.carousel-btn.prev{left:6px}.carousel-btn.next{right:6px}.carousel-btn{top:38%}}
@media(max-width:960px){.carousel-btn{display:none}.transfer-title{display:block}.transfer-title span{display:block;margin-top:2px}.form-side{justify-self:stretch;max-width:none}}
@media(max-width:620px){.project-card .card-body{min-height:190px}.transfer-col{padding:16px}.transfer-title{margin:-16px -16px 16px;padding:12px 16px}.mini-card{grid-template-columns:96px 1fr}.mini-card img,.mini-placeholder{height:118px}.contact-note h2{font-size:34px}.contact-phone strong{font-size:20px}}

/* ===== Simple 2.3: professional project detail pages ===== */
.project-hero{min-height:560px;background:linear-gradient(120deg,#063e34,#0b6956);background-size:cover;background-position:center;position:relative;color:#fff;display:flex;align-items:center}.project-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,34,29,.92),rgba(2,34,29,.58) 50%,rgba(2,34,29,.18))}.project-hero-inner{position:relative;z-index:1;padding-top:55px;padding-bottom:55px}.project-hero h1{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:64px;line-height:1.05;margin:14px 0 18px;max-width:850px}.project-hero p{font-size:19px;max-width:720px;line-height:1.7}.project-call{background:#fff;color:var(--green)}.project-subnav{position:sticky;top:72px;z-index:35;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 6px 20px rgba(20,50,42,.05)}.project-subnav .container{display:flex;overflow-x:auto;scrollbar-width:none}.project-subnav .container::-webkit-scrollbar{display:none}.project-subnav a{padding:15px 17px;white-space:nowrap;font-size:14px;font-weight:800;color:#46534f}.project-subnav a:hover{color:var(--green)}.project-section{padding:72px 0;scroll-margin-top:130px}.project-alt{background:var(--cream)}.project-kicker{font-size:12px;color:var(--green);font-weight:900;letter-spacing:1.7px}.project-section h2{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:40px;line-height:1.2;margin:7px 0 22px}.project-two{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:55px;align-items:start}.project-rich,.project-text,.project-feature-box{font-size:17px;color:#40504b}.project-rich h2{font-size:28px}.project-rich>h2:first-child{display:none}.project-rich img{border-radius:16px;margin:22px 0}.project-quick,.price-cta{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:var(--shadow);position:sticky;top:145px}.project-quick strong,.price-cta strong{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;font-size:24px}.project-quick p,.price-cta p{color:var(--muted)}.project-quick .btn{width:100%;margin:8px 0}.quick-phone{display:block;text-align:center;color:var(--green);font-size:21px;font-weight:900;margin-top:10px}.project-feature-box{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;min-height:145px}.project-section:not(.project-alt) .project-feature-box{background:#fbfcfb}.legal-box{border-left:4px solid var(--gold)}.project-lead{background:linear-gradient(135deg,#f6f2e6,#e9f3ef)}.project-lead .lead-form{margin:0}.project-lead h2{max-width:600px}.project-lead p{font-size:17px}.project-detail ul{padding-left:22px}.project-detail li{margin:7px 0}
@media(max-width:1080px){.project-subnav{top:72px}.project-hero h1{font-size:52px}.project-two{grid-template-columns:1fr;gap:30px}.project-quick,.price-cta{position:static}.project-section{scroll-margin-top:125px}}
@media(max-width:620px){.project-hero{min-height:500px;background-position:60% center}.project-hero-inner{padding-top:42px;padding-bottom:42px}.project-hero h1{font-size:41px}.project-hero p{font-size:16px}.project-subnav{top:64px}.project-subnav a{padding:12px 13px;font-size:12px}.project-section{padding:50px 0;scroll-margin-top:112px}.project-section h2{font-size:32px}.project-feature-box{padding:20px}.project-quick,.price-cta{padding:20px}.contact-wrap{gap:24px}.contact-section .form-side{margin-top:0}}

/* Simple 2.3.1 - Vietnamese typography refinement */
body,button,input,textarea,select{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6,.brand,.main-nav a,.btn,.header-phone,.float-phone{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif}
.hero h1,.project-hero h1{font-weight:800;letter-spacing:-1.8px;line-height:1.08}
.section-head h2,.contact-note h2,.project-section h2,.page-hero h1{font-weight:800;letter-spacing:-.8px;line-height:1.22}
.card h3,.lead-form h3,.project-quick strong,.price-cta strong{font-weight:750;letter-spacing:-.25px}
body{font-size:16px;line-height:1.7}.main-nav a{letter-spacing:-.15px}.eyebrow,.project-kicker{letter-spacing:1.5px}.btn{letter-spacing:-.15px}
@media(max-width:700px){.hero h1,.project-hero h1{font-size:38px;letter-spacing:-1.1px;line-height:1.12}.section-head h2,.contact-note h2,.project-section h2{font-size:30px;letter-spacing:-.6px}.hero p,.project-hero p{line-height:1.65}.brand{letter-spacing:0}}
\n\n/* ===== Simple 2.3.2: hard typography reset + cache-safe release ===== */\n:root{--bn-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif}\nhtml body,body *,body *::before,body *::after{font-family:var(--bn-font)}\nbody{font-weight:400;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}\nh1,h2,h3,h4,h5,h6,.section-head h2,.contact-note h2,.page-hero h1,.project-section h2,.hero h1,.project-hero h1,.news-empty strong,.form-side .lead-form h3,.project-quick strong,.price-cta strong{font-family:var(--bn-font)!important;font-style:normal!important;font-weight:800!important}\n.eyebrow,.project-kicker,.section-head small,.contact-note small,.form-kicker,.transfer-title,.tag,.mini-type,.brand,.main-nav a,.btn,.header-phone,.float-phone,.readmore,.view-all,.empty-listing a{font-family:var(--bn-font)!important;font-style:normal!important}\n.eyebrow,.project-kicker,.section-head small,.contact-note small,.form-kicker{font-weight:800!important;letter-spacing:1.35px}\n.transfer-title,.brand,.main-nav a,.btn,.header-phone,.float-phone,.readmore,.view-all,.empty-listing a{font-weight:700!important}\n.section-head h2,.contact-note h2,.page-hero h1,.project-section h2{letter-spacing:-.65px!important;line-height:1.2!important}\n.hero h1,.project-hero h1{letter-spacing:-1.4px!important;line-height:1.08!important}\n.empty-listing strong{font-family:var(--bn-font)!important;font-weight:700!important;letter-spacing:-.2px}\n@media(max-width:700px){.hero h1,.project-hero h1{letter-spacing:-.8px!important}.section-head h2,.contact-note h2,.project-section h2{letter-spacing:-.4px!important}}\n

/* ===== Simple 2.3.3: clean centered homepage section headings ===== */
.home .section-head{display:block!important;text-align:center!important;margin-bottom:34px!important}
.home .section-head>div{width:100%}
.home .section-head small{display:none!important}
.home .section-head h2{margin:0 auto!important;text-align:center!important;text-transform:uppercase!important;font-size:38px!important;font-weight:800!important;letter-spacing:.2px!important;line-height:1.25!important}
.home .section-head p{margin:12px auto 0!important;max-width:680px!important;text-align:center!important}
@media(max-width:700px){.home .section-head h2{font-size:28px!important;line-height:1.3!important}.home .section-head p{font-size:14px!important;margin-top:9px!important}}


/* ===== Simple 2.3.4: unified homepage section titles ===== */
body .projects-section .section-head,
body .market-section .section-head,
body .news-section .section-head{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin:0 0 34px!important;
}
body .projects-section .section-head h2,
body .market-section .section-head h2,
body .news-section .section-head h2{
  display:block!important;
  width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
  text-transform:uppercase!important;
  font-family:var(--bn-font)!important;
  font-size:38px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.1px!important;
}
body .projects-section .section-head small,
body .market-section .section-head small,
body .news-section .section-head small,
body .projects-section .section-head p,
body .market-section .section-head p,
body .news-section .section-head p{display:none!important}
@media(max-width:700px){
 body .projects-section .section-head h2,
 body .market-section .section-head h2,
 body .news-section .section-head h2{font-size:28px!important;line-height:1.28!important}
}
\n\n/* ===== Simple 2.4: complete project landing pages ===== */
.project-detail .project-kicker{display:block;text-align:center;margin-bottom:8px}
.project-detail .project-section> .container>h2,.project-detail .project-media-grid>div>h2{text-align:center;text-transform:uppercase;font-weight:800;letter-spacing:.1px}
.project-media-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:48px;align-items:center}
.project-visual{margin:0;border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.project-visual img{display:block;width:100%;height:auto;max-height:500px;object-fit:cover}
.project-visual-empty{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--muted)}
.project-visual-empty strong{color:var(--ink);font-size:20px;margin-bottom:6px}
.product-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 22px}
.product-type{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 18px;min-height:125px;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:0 8px 24px rgba(20,50,42,.05)}
.product-type strong{font-size:18px;color:var(--green);margin-bottom:8px}.product-type span{font-size:13px;color:var(--muted)}
.project-news{background:#fff}.project-news-note{max-width:820px;margin:0 auto;text-align:center;padding:24px;border:1px dashed #c9d8d2;border-radius:16px;color:var(--muted);background:#fbfcfb}
.project-detail #tong-quan .project-kicker,.project-detail #tong-quan h2{text-align:left;text-transform:none}
.project-detail #bang-gia .project-kicker,.project-detail #bang-gia h2{text-align:left;text-transform:none}
.project-detail #nhan-tai-lieu .project-kicker,.project-detail #nhan-tai-lieu h2{text-align:left;text-transform:none}
@media(max-width:960px){.project-media-grid{grid-template-columns:1fr}.product-type-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.product-type-grid{grid-template-columns:1fr 1fr;gap:10px}.product-type{padding:18px 10px;min-height:110px}.product-type strong{font-size:15px}.project-visual-empty{min-height:220px}.project-detail .project-section> .container>h2,.project-detail .project-media-grid>div>h2{font-size:28px}}

/* ===== Simple 2.4.1: refined King Park / project landing UI ===== */
.project-detail .project-section{padding:64px 0}
.project-detail .project-title-block{text-align:center;margin:0 auto 34px}
.project-detail .project-title-block .project-kicker{display:none}
.project-detail .project-title-block h2{margin:0 auto!important;text-align:center!important;text-transform:uppercase!important;font-size:38px!important;font-weight:800!important;line-height:1.2!important;letter-spacing:.05px!important}
.project-detail .project-section>.container>.project-kicker,
.project-detail .project-media-grid>div>.project-kicker{display:none!important}
.project-detail .project-section>.container>h2,
.project-detail .project-media-grid>div>h2{margin:0 auto 28px!important;text-align:center!important;text-transform:uppercase!important;font-size:38px!important;font-weight:800!important;line-height:1.2!important;letter-spacing:.05px!important}
.project-detail .project-media-grid>div>h2{margin-bottom:18px!important}
.project-detail .project-media-grid>div>.project-text{text-align:left}
.overview-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:42px;align-items:start}
.overview-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:26px}
.overview-card{position:relative;display:flex;flex-direction:column;min-height:132px;padding:20px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(20,50,42,.05);transition:.2s ease}
.overview-card:hover{transform:translateY(-3px);border-color:#b9d3ca;box-shadow:0 12px 28px rgba(20,50,42,.09)}
.overview-card span{font-size:12px;font-weight:800;color:var(--gold);letter-spacing:1px}
.overview-card strong{margin-top:auto;font-size:15px;color:var(--green)}
.overview-card small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.overview-section .project-rich{padding:24px 26px;border:1px solid var(--line);border-radius:16px;background:#fbfcfb}
.overview-section .project-rich:empty:before{content:"Thông tin tổng quan dự án đang được cập nhật.";color:var(--muted)}
.project-quick,.price-cta{border-top:4px solid var(--green);box-shadow:0 10px 30px rgba(20,50,42,.08)}
.project-quick strong,.price-cta strong{font-size:21px!important}
.project-quick .quick-phone{padding-top:8px;border-top:1px solid var(--line)}
.project-media-grid{gap:38px}
.project-visual{border-radius:18px;box-shadow:0 10px 30px rgba(20,50,42,.08)}
.project-visual-empty{background:linear-gradient(135deg,#f9fbfa,#eef4f1);border-style:dashed;box-shadow:none}
.project-visual-empty:before{content:"⌖";display:grid;place-items:center;width:54px;height:54px;margin-bottom:14px;border-radius:50%;background:#e6f1ed;color:var(--green);font-size:25px;font-weight:800}
#mat-bang .project-visual-empty:before{content:"▦"}
.project-feature-box{max-width:1040px;margin:0 auto;border-radius:16px;box-shadow:0 6px 20px rgba(20,50,42,.04)}
.product-type-grid{max-width:1040px;margin:0 auto 18px;gap:14px}
.product-type{position:relative;overflow:hidden;min-height:150px;padding:28px 18px;border-radius:16px;box-shadow:0 8px 24px rgba(20,50,42,.06);transition:.2s ease}
.product-type:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--green)}
.product-type:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(20,50,42,.1)}
.product-type strong{font-size:17px;margin-bottom:9px}
.product-type span{line-height:1.55}
#bang-gia .project-two{align-items:center}
#bang-gia .project-two>div:first-child>h2{margin:0 0 18px!important;text-align:left!important;font-size:36px!important}
#bang-gia .project-kicker{display:block!important;text-align:left!important;margin-bottom:5px}
.price-cta{position:static}
.legal-box{border-left:0;border-top:4px solid var(--gold);background:#fffdf8!important}
.project-news-note{padding:28px 30px;border-style:solid;background:#fbfcfb}
.project-lead{background:linear-gradient(135deg,#f7f3e8 0%,#eaf3ef 100%)}
.project-lead .project-two{align-items:center}
#nhan-tai-lieu .project-kicker{display:block!important;text-align:left!important;margin-bottom:5px}
#nhan-tai-lieu h2{margin:0 0 16px!important;text-align:left!important;text-transform:none!important;font-size:36px!important}
.project-lead .lead-form{box-shadow:0 14px 38px rgba(20,50,42,.11)}
.project-hero:not([style]){background:radial-gradient(circle at 75% 35%,rgba(20,130,104,.42),transparent 34%),linear-gradient(120deg,#043b31,#075846 55%,#0a6b56)}
@media(max-width:1080px){
 .overview-layout{grid-template-columns:1fr}
 .overview-cards{grid-template-columns:repeat(4,1fr)}
 .project-detail .project-section>.container>h2,.project-detail .project-media-grid>div>h2,.project-detail .project-title-block h2{font-size:34px!important}
}
@media(max-width:700px){
 .project-detail .project-section{padding:46px 0}
 .project-detail .project-section>.container>h2,.project-detail .project-media-grid>div>h2,.project-detail .project-title-block h2{font-size:27px!important;line-height:1.25!important;margin-bottom:22px!important}
 .overview-cards{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:16px}
 .overview-card{min-height:112px;padding:15px 13px}
 .overview-card strong{font-size:14px}.overview-card small{font-size:10px}
 .overview-section .project-rich{padding:18px}
 .project-media-grid{gap:22px}
 .project-media-grid>div>.project-text{text-align:center}
 .project-visual{border-radius:14px}.project-visual-empty{min-height:200px}
 .product-type-grid{gap:9px}.product-type{min-height:122px;padding:20px 10px}.product-type strong{font-size:14px}.product-type span{font-size:11px}
 #bang-gia .project-two>div:first-child>h2,#nhan-tai-lieu h2{font-size:28px!important;text-align:center!important}
 #bang-gia .project-kicker,#nhan-tai-lieu .project-kicker{text-align:center!important}
 #bang-gia .project-text,#nhan-tai-lieu .project-two>div:first-child{text-align:center}
 .project-news-note{padding:20px 16px}
}


/* ===== Simple 2.5: Landing Page Builder ===== */
.lp-project-hero{min-height:420px;display:flex;align-items:center;background:linear-gradient(135deg,#063e34,#08715b);background-size:cover;background-position:center;position:relative;color:#fff}
.lp-project-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,42,35,.9),rgba(3,42,35,.56) 55%,rgba(3,42,35,.18))}
.lp-project-hero-inner{position:relative;z-index:1;padding-top:62px;padding-bottom:62px}
.lp-project-hero h1{font-size:54px;line-height:1.08;margin:12px 0 14px;font-weight:850;max-width:850px}
.lp-project-hero p{font-size:18px;max-width:700px;margin:0;line-height:1.7}
.lp-project{background:#fff}
.lp-project-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:start;padding-top:54px;padding-bottom:70px}
.lp-builder-content{min-width:0;font-size:17px;line-height:1.8;color:#26332f}
.lp-builder-content>*:first-child{margin-top:0}
.lp-builder-content h2{font-size:34px;line-height:1.25;margin:48px 0 18px;font-weight:850;color:#17211e}
.lp-builder-content h3{font-size:25px;line-height:1.3;margin:34px 0 14px;font-weight:800}
.lp-builder-content p{margin:0 0 20px}
.lp-builder-content figure{margin:28px 0}
.lp-builder-content img{border-radius:14px;width:auto;max-width:100%;height:auto}
.lp-builder-content .wp-block-image img{width:100%}
.lp-builder-content .wp-block-gallery{margin:28px 0}
.lp-builder-content .wp-block-gallery img{border-radius:10px}
.lp-builder-content .wp-block-columns{gap:22px;margin:30px 0}
.lp-builder-content .wp-block-column{min-width:0}
.lp-builder-content .wp-block-cover{border-radius:16px;overflow:hidden;margin:30px 0}
.lp-builder-content .wp-block-table{overflow-x:auto}
.lp-builder-content .wp-block-button__link{background:var(--green);border-radius:999px;font-weight:800;padding:12px 22px}
.lp-sidebar{min-width:0}
.lp-sticky-form{position:sticky;top:96px;border:1px solid var(--line);border-radius:18px;background:#f8f6ef;padding:22px;box-shadow:var(--shadow)}
.lp-form-kicker{display:block;color:var(--green);font-size:11px;font-weight:900;letter-spacing:1.5px;text-align:center}
.lp-sticky-form>h2,.lp-mobile-lead h2{text-align:center;font-size:22px;line-height:1.25;margin:8px 0 10px;font-weight:850}
.lp-sticky-form>p{text-align:center;font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 16px}
.lp-sticky-form .lead-form{padding:18px;box-shadow:none;border-radius:14px}
.lp-sticky-form .lead-form h3{display:none}
.lp-sticky-form .lead-form textarea{min-height:78px}
.lp-sticky-form .lead-form .btn{width:100%}
.lp-sidebar-phone{display:block;text-align:center;margin-top:14px;color:var(--green);font-size:20px;font-weight:900}
.lp-mobile-lead{display:none;background:var(--cream);padding:48px 0}
.lp-mobile-lead-inner{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.lp-mobile-lead .lead-form h3{display:none}
@media(max-width:960px){
 .lp-project-hero{min-height:360px}.lp-project-hero h1{font-size:43px}
 .lp-project-grid{display:block;padding-top:36px;padding-bottom:45px}.lp-sidebar{display:none}
 .lp-mobile-lead{display:block}.lp-mobile-lead-inner{grid-template-columns:1fr;gap:18px}.lp-mobile-lead h2{text-align:left;font-size:27px}.lp-mobile-lead .lp-form-kicker{text-align:left}
 .lp-builder-content h2{font-size:30px;margin-top:38px}
}
@media(max-width:620px){
 .lp-project-hero{min-height:320px}.lp-project-hero-inner{padding-top:42px;padding-bottom:42px}.lp-project-hero h1{font-size:35px}.lp-project-hero p{font-size:15px}
 .lp-project-grid{padding-top:28px}.lp-builder-content{font-size:16px;line-height:1.75}.lp-builder-content h2{font-size:26px}.lp-builder-content h3{font-size:21px}.lp-builder-content .wp-block-columns{gap:14px}
 .lp-mobile-lead{padding:38px 0}.lp-mobile-lead .lead-form{padding:20px}
}

/* Simple 2.5.1 — ready-made King Park landing */
.lp-builder-content>.wp-block-heading{text-align:center;font-weight:800;letter-spacing:.015em;margin-top:52px;margin-bottom:22px}
.lp-builder-content>.wp-block-heading:first-child{margin-top:0}
.lp-builder-content .wp-block-table{margin:24px 0 38px}
.lp-builder-content .wp-block-table table{border-collapse:collapse;width:100%;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(16,43,35,.07)}
.lp-builder-content .wp-block-table td{padding:14px 16px;border:1px solid #e8ece9}
.lp-builder-content .wp-block-columns{gap:16px;margin:22px 0}
.lp-builder-content .wp-block-column{padding:22px;border:1px solid #e5ebe8;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(16,43,35,.06)}
.lp-builder-content .wp-block-column h3{font-size:17px;color:var(--green);margin-top:0}
.lp-builder-content .bnps-note{padding:14px 16px;border-left:4px solid var(--gold);background:#fbf8ef;border-radius:8px}
.lp-builder-content .bnps-cta .wp-block-button__link{background:var(--gold);color:#10251f;font-weight:800;border-radius:10px;padding:13px 24px}
@media(max-width:782px){.lp-builder-content>.wp-block-heading{margin-top:38px;font-size:25px}.lp-builder-content .wp-block-column{padding:18px}.lp-builder-content .wp-block-table{overflow-x:auto}}

/* Simple 2.5.2 — project lead form behavior */
@media (min-width: 901px){
  .lp-project-grid{align-items:start}
  .lp-sidebar{display:block;align-self:stretch}
  .lp-sticky-form{
    position:-webkit-sticky;
    position:sticky;
    top:92px;
    z-index:5;
  }
  .lp-mobile-lead{display:none!important}
}
@media (max-width: 900px){
  .lp-project-grid{display:block}
  .lp-sidebar{display:none!important}
  .lp-mobile-lead{display:block!important}
  .lp-mobile-lead .lp-form-kicker{display:none}
}

/* Simple 2.5.3 - justified project landing copy */
.lp-builder-content > p,
.lp-builder-content > .wp-block-group p,
.lp-builder-content > .wp-block-columns .wp-block-column > p{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}
.lp-builder-content .has-text-align-left{text-align:left!important}
.lp-builder-content .has-text-align-center{text-align:center!important}
.lp-builder-content .has-text-align-right{text-align:right!important}
.lp-builder-content .bnps-no-justify{text-align:left!important}
.lp-builder-content .wp-block-button,.lp-builder-content .wp-block-buttons,.lp-builder-content figcaption,.lp-builder-content table,.lp-builder-content th,.lp-builder-content td{text-align:initial}

/* Simple 2.5.4 — header refresh + project scroll popup */
.topbar{display:none!important}
.brand{display:flex;gap:6px;align-items:center;font-size:22px!important}
.brand .brand-gold{color:var(--gold)!important}
.brand .brand-green{color:var(--green)!important}
.header-info-btn{flex:0 0 auto;background:var(--gold);color:#10251f;padding:10px 14px;border-radius:999px;font-weight:800;font-size:13px;white-space:nowrap}
.header-contact-stack{display:flex;flex-direction:column;align-items:center;gap:5px;flex:0 0 auto}
.header-zalo{display:flex;align-items:center;justify-content:center;min-width:64px;padding:4px 10px;border-radius:999px;background:#0877d1;color:#fff;font-weight:900;font-size:12px}
.header-contact-stack .header-phone{padding:8px 13px;font-size:13px}
.project-scroll-popup{position:fixed;inset:0;background:rgba(8,28,23,.55);z-index:9999;display:none;align-items:center;justify-content:center;padding:18px}
.project-scroll-popup.is-open{display:flex}
.project-popup-card{position:relative;width:min(430px,100%);background:#f8f6ef;border:1px solid #e2e2dc;border-radius:22px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.24);text-align:center}
.project-popup-card h2{font-size:27px;line-height:1.15;margin:5px 25px 10px}
.project-popup-card>p{color:var(--muted);margin:0 0 16px}
.project-popup-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer;color:#50605a}
.project-popup-card .lead-form{text-align:left}
.project-popup-card .lead-form h3{display:none}
.project-popup-phone{display:inline-block;margin-top:15px;color:var(--green);font-size:20px;font-weight:900}
@media(max-width:1280px){.header-info-btn{display:none}.header-contact-stack .header-zalo{display:none}}
@media(max-width:900px){
 .brand{font-size:18px!important;gap:4px}
 .header-contact-stack{display:none}
}

/* Simple 2.5.5 — floating Zalo/call + bottom-left information CTA */
.header-info-btn,.header-contact-stack{display:none!important}
.float-phone{display:none!important}
.float-contact-icons{position:fixed;right:22px;bottom:22px;z-index:90;display:flex;flex-direction:column;gap:16px;align-items:center}
.float-zalo,.float-call{position:relative;width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.18);font-weight:900}
.float-zalo{background:#4ba8ef}
.float-zalo:before{content:"";position:absolute;width:38px;height:38px;border-radius:50%;background:#168de2}
.zalo-mark{position:relative;z-index:2;font-size:12px;font-weight:900;font-style:italic;color:#fff}
.float-call{background:#ef6868}
.float-call:before{content:"";position:absolute;width:40px;height:40px;border-radius:50%;background:#e52f35}
.float-call span{position:relative;z-index:2;font-size:24px;transform:rotate(-8deg)}
.pulse-ring:after{content:"";position:absolute;inset:-5px;border:3px solid currentColor;border-radius:50%;opacity:.35;animation:bnpsPulse 1.45s ease-out infinite}
@keyframes bnpsPulse{0%{transform:scale(.86);opacity:.55}70%,100%{transform:scale(1.24);opacity:0}}
.float-info-btn{position:fixed;left:20px;bottom:20px;z-index:89;background:var(--gold);color:#10251f;padding:13px 19px;border-radius:999px;font-weight:900;box-shadow:var(--shadow)}
@media(max-width:700px){
 .float-contact-icons{right:13px;bottom:76px;gap:12px}
 .float-zalo,.float-call{width:52px;height:52px}
 .float-zalo:before{width:33px;height:33px}
 .float-call:before{width:34px;height:34px}
 .float-call span{font-size:20px}
 .float-info-btn{left:12px;bottom:12px;padding:11px 14px;font-size:13px}
}

/* Simple 2.5.6 — refined floating call icon, CTA pulse, larger navigation */
.main-nav>ul>li>a{font-size:15px!important;font-weight:800}
.float-call:before{width:40px;height:40px}
.float-call .phone-handset{font-size:0;position:relative;width:22px;height:22px;display:block;transform:rotate(-42deg)}
.float-call .phone-handset:before{content:"";position:absolute;left:7px;top:2px;width:8px;height:18px;border:4px solid #fff;border-top-color:transparent;border-bottom-color:transparent;border-radius:8px}
.float-call .phone-handset:after{content:"";position:absolute;left:2px;top:0;width:18px;height:22px;border-top:5px solid #fff;border-bottom:5px solid #fff;border-radius:10px}
.float-info-btn{animation:bnpsInfoPulse 1.55s ease-in-out infinite}
.float-info-btn:after{content:"";position:absolute;inset:-5px;border:3px solid var(--gold);border-radius:999px;animation:bnpsPulse 1.55s ease-out infinite;pointer-events:none}
@keyframes bnpsInfoPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@media(min-width:1281px){.main-nav>ul{gap:27px}}

/* Simple 2.5.7 — exact user-provided call icon */
.float-call{background:transparent!important;box-shadow:none!important;overflow:visible}
.float-call:before{display:none!important}
.float-call .phone-call-img{display:block;width:62px;height:62px;object-fit:contain;border-radius:50%;position:relative;z-index:2}
.float-call .phone-handset{display:none!important}
@media(max-width:700px){.float-call .phone-call-img{width:52px;height:52px}}

/* Simple 2.5.8 — user supplied ringing-phone icon */
.float-call .phone-call-img{border-radius:50%;object-fit:cover}

/* Simple 2.5.9 — elegant scroll reveal motion */
@media (prefers-reduced-motion:no-preference){
  .bn-reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}
  .bn-reveal.bn-from-left{transform:translateX(-46px)}
  .bn-reveal.bn-from-right{transform:translateX(46px)}
  .bn-reveal.bn-zoom{transform:scale(.94)}
  .bn-reveal.bn-visible{opacity:1;transform:none}
  .bn-delay-1{transition-delay:.08s}.bn-delay-2{transition-delay:.16s}.bn-delay-3{transition-delay:.24s}
  .hero .eyebrow,.hero h1,.hero p,.hero .hero-actions{opacity:0;animation:bnHeroIn .8s ease forwards}
  .hero h1{animation-delay:.12s}.hero p{animation-delay:.24s}.hero .hero-actions{animation-delay:.36s}
  @keyframes bnHeroIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
  .float-zalo,.float-call{animation:bnFloatAttention 2.4s ease-in-out infinite}
  .float-call{animation-delay:.55s}
  @keyframes bnFloatAttention{0%,72%,100%{transform:scale(1)}78%{transform:scale(1.10)}84%{transform:scale(.97)}90%{transform:scale(1.06)}}
}

/* Simple 2.6.0 — balanced contact section */
.contact-section .contact-title{display:block;text-align:center;font-size:15px;font-weight:800;letter-spacing:0;text-transform:uppercase;margin:0 0 24px;color:var(--green)}
.contact-section .contact-note h2{font-size:34px;line-height:1.2;white-space:nowrap;margin:0 0 22px}
.contact-section .contact-actions{display:flex;align-items:flex-start}
.contact-section .contact-email{display:none!important}
.contact-section .form-kicker{display:none!important}
.contact-section .form-side{padding-top:0}
.contact-section .lead-form h3{text-align:center;font-size:28px;line-height:1.2;margin:0 0 28px}
.contact-section .contact-wrap{align-items:center}
.contact-section .contact-note,.contact-section .form-side{min-width:0}
@media(min-width:901px){
 .contact-section .contact-wrap{grid-template-columns:1fr 1fr;gap:70px}
 .contact-section .contact-note h2{font-size:34px}
}
@media(max-width:1100px){
 .contact-section .contact-note h2{font-size:29px;white-space:normal}
}
@media(max-width:900px){
 .contact-section .contact-title{text-align:center}
 .contact-section .contact-note h2{font-size:28px;text-align:center;white-space:normal}
 .contact-section .lead-form h3{font-size:25px}
}
/* 2.6.1: Contact section heading matches market news heading */
.contact-section .contact-title{display:block!important;width:100%;font-size:38px!important;font-weight:800!important;letter-spacing:.2px!important;line-height:1.25!important;color:var(--ink)!important;text-align:center!important;margin:0 0 25px!important}
@media(max-width:700px){.contact-section .contact-title{font-size:30px!important}}

/* Simple 2.6.2 — project lead headings on one line */
@media(min-width:901px){
 .project-popup-card>h2{font-size:27px!important;line-height:1.15!important;white-space:nowrap!important}
 .project-sidebar .lead-form h3,.project-side .lead-form h3,.project-sticky .lead-form h3,.single-du_an aside .lead-form h3{font-size:23px!important;line-height:1.15!important;white-space:nowrap!important}
}
.project-popup-phone{display:none!important}

/* Simple 2.6.3 — precisely center popup heading */
.project-popup-card>h2{
  display:block!important;
  width:100%!important;
  margin:0 auto 14px!important;
  padding:0 34px!important;
  box-sizing:border-box!important;
  text-align:center!important;
}
@media(min-width:901px){
 .project-popup-card>h2{
   font-size:27px!important;
   line-height:1.15!important;
   white-space:nowrap!important;
 }
}

/* Simple 2.6.4 — sticky project form heading: one line and centered */
@media(min-width:901px){
 .project-sidebar .lead-form h3,
 .project-side .lead-form h3,
 .project-sticky .lead-form h3,
 .single-du_an aside .lead-form h3,
 .project-sidebar h2,
 .project-side h2{
   display:block!important;
   width:100%!important;
   box-sizing:border-box!important;
   margin-left:auto!important;
   margin-right:auto!important;
   padding-left:0!important;
   padding-right:0!important;
   text-align:center!important;
   font-size:19px!important;
   line-height:1.2!important;
   white-space:nowrap!important;
 }
}

/* Simple 2.6.5 — exact desktop project sidebar correction */
@media(min-width:901px){
 .lp-sidebar .lp-sticky-form>h2{
   display:block!important;
   width:100%!important;
   box-sizing:border-box!important;
   margin:0 auto 18px!important;
   padding:0!important;
   text-align:center!important;
   font-size:18px!important;
   line-height:1.2!important;
   white-space:nowrap!important;
   letter-spacing:0!important;
 }
}
.lp-sidebar-phone{display:none!important}

/* Simple 2.6.6 — true geometric centering for project popup title */
.project-popup-card{position:relative!important}
.project-popup-card>h2{
  display:block!important;
  position:relative!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:calc(100% - 24px)!important;
  max-width:none!important;
  margin:0 0 14px!important;
  padding:0!important;
  box-sizing:border-box!important;
  text-align:center!important;
  text-indent:0!important;
}
.project-popup-close{
  position:absolute!important;
  top:14px!important;
  right:16px!important;
  z-index:5!important;
}
@media(min-width:901px){
 .project-popup-card>h2{
   font-size:25px!important;
   line-height:1.15!important;
   white-space:nowrap!important;
 }
}

/* Simple 2.6.7 — mobile footer-aligned floating actions + single-line section headings */
@media(max-width:900px){
  /* Keep both action groups symmetrically at the bottom of the viewport. */
  .float-contact-icons{
    position:fixed!important;
    right:12px!important;
    bottom:12px!important;
    flex-direction:row!important;
    gap:9px!important;
    align-items:center!important;
    z-index:90!important;
  }
  .float-zalo,.float-call{width:50px!important;height:50px!important}
  .float-call .phone-call-img{width:50px!important;height:50px!important}
  .float-info-btn{
    position:fixed!important;
    left:12px!important;
    bottom:12px!important;
    padding:11px 14px!important;
    font-size:12px!important;
    line-height:1!important;
    z-index:89!important;
  }

  /* Home section titles: one line on phones, including all corresponding headings below. */
  .section-head h2{
    font-size:clamp(20px,5.2vw,25px)!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    letter-spacing:-.35px!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
@media(max-width:380px){
  .section-head h2{font-size:18px!important;letter-spacing:-.5px!important}
  .float-zalo,.float-call{width:46px!important;height:46px!important}
  .float-call .phone-call-img{width:46px!important;height:46px!important}
}

/* Simple 2.6.8 — mobile correction:
   keep Zalo/call vertically stacked as before, only move the stack lower;
   shrink home section titles enough to stay on one line. */
@media(max-width:900px){
  .float-contact-icons{
    position:fixed!important;
    right:12px!important;
    bottom:10px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    align-items:center!important;
    z-index:90!important;
  }
  .float-zalo,.float-call{width:48px!important;height:48px!important}
  .float-call .phone-call-img{width:48px!important;height:48px!important}
  .section-head h2{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding:0 4px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:clamp(16px,4.25vw,20px)!important;
    line-height:1.15!important;
    letter-spacing:-.45px!important;
  }
}
@media(max-width:420px){
 .section-head h2{font-size:16px!important;letter-spacing:-.55px!important}
 .float-zalo,.float-call{width:46px!important;height:46px!important}
 .float-call .phone-call-img{width:46px!important;height:46px!important}
}
@media(max-width:360px){
 .section-head h2{font-size:14.5px!important;letter-spacing:-.65px!important}
}

/* Simple 2.6.9 — definitive mobile/tablet title overflow fix */
@media(max-width:900px){
  body.home .section-head,
  body.home .section-head h2{
    max-width:100vw!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.home .section-head h2{
    display:block!important;
    width:100%!important;
    padding:0 12px!important;
    margin:0 auto!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:18px!important;
    line-height:1.15!important;
    letter-spacing:-.6px!important;
    overflow:visible!important;
  }
}
@media(max-width:600px){
  body.home .section-head h2{font-size:15px!important;letter-spacing:-.7px!important;padding:0 8px!important}
}
@media(max-width:430px){
  body.home .section-head h2{font-size:13px!important;letter-spacing:-.75px!important;padding:0 6px!important}
}
@media(max-width:360px){
  body.home .section-head h2{font-size:12px!important;letter-spacing:-.8px!important}
}
/* Preserve original vertical floating contact stack, only anchored lower. */
@media(max-width:900px){
 .float-contact-icons{right:10px!important;bottom:10px!important;flex-direction:column!important;gap:8px!important}
}

/* Simple 2.7.0 — mobile title fine-tuning and contact spacing */
@media(max-width:900px){
  body.home .section-head h2{
    font-size:clamp(17px,4.7vw,22px)!important;
    letter-spacing:-.55px!important;
    padding:0 8px!important;
  }
  .float-contact-icons{
    gap:15px!important;
  }
}
@media(max-width:600px){
  body.home .section-head h2{font-size:17px!important;letter-spacing:-.6px!important}
}
@media(max-width:430px){
  body.home .section-head h2{font-size:15.5px!important;letter-spacing:-.65px!important;padding:0 5px!important}
  .float-contact-icons{gap:14px!important}
}
@media(max-width:360px){
  body.home .section-head h2{font-size:14px!important;letter-spacing:-.7px!important}
}

/* Simple 2.7.1 — slightly larger unified mobile section headings */
@media(max-width:900px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    font-size:clamp(18px,5vw,23px)!important;
    line-height:1.15!important;
    letter-spacing:-.55px!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
}
@media(max-width:600px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{font-size:18px!important}
}
@media(max-width:430px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{font-size:16.5px!important;letter-spacing:-.65px!important}
}
@media(max-width:360px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{font-size:15px!important}
}

/* Simple 2.7.2 — mobile thank-you heading 3px smaller */
@media(max-width:900px){
  body.home .contact-section .contact-note h2{
    font-size:25px!important;
  }
}

/* Simple 2.7.3 — unify mobile home section headings with thank-you heading */
@media(max-width:900px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    font-size:25px!important;
    line-height:1.15!important;
    font-weight:800!important;
    text-align:center!important;
    white-space:nowrap!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:4px!important;
    padding-right:4px!important;
    letter-spacing:-1.15px!important;
  }
}
/* Preserve one-line fit on narrower phones while keeping headings visually close to 25px. */
@media(max-width:430px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    font-size:clamp(18px,5.45vw,25px)!important;
    letter-spacing:-1px!important;
  }
}
@media(max-width:360px){
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    font-size:18px!important;
    letter-spacing:-1px!important;
  }
}

/* Simple 2.7.4 — prevent Vietnamese diacritics from being clipped on mobile headings */
@media(max-width:900px){
  body.home .section-head{
    overflow:visible!important;
  }
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    overflow:visible!important;
    line-height:1.32!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }
}

/* Simple 2.7.5 — mobile project-page typography aligned with homepage */
@media(max-width:900px){
  body.single-du_an .lp-builder-content{
    font-size:16px!important;
    line-height:1.7!important;
  }
  body.single-du_an .lp-builder-content p,
  body.single-du_an .lp-builder-content li{
    font-size:16px!important;
    line-height:1.7!important;
    letter-spacing:0!important;
    word-spacing:0!important;
    text-align:left!important;
  }
  body.single-du_an .lp-builder-content h2{
    font-size:25px!important;
    line-height:1.32!important;
    font-weight:800!important;
    text-align:center!important;
    letter-spacing:-.6px!important;
    overflow:visible!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.single-du_an .lp-builder-content h3{
    font-size:20px!important;
    line-height:1.35!important;
    font-weight:800!important;
    letter-spacing:-.3px!important;
  }
  body.single-du_an .lp-builder-content strong{font-weight:700!important}
}
@media(max-width:430px){
  body.single-du_an .lp-builder-content h2{font-size:23px!important}
  body.single-du_an .lp-builder-content h3{font-size:19px!important}
  body.single-du_an .lp-builder-content,
  body.single-du_an .lp-builder-content p,
  body.single-du_an .lp-builder-content li{font-size:15.5px!important;line-height:1.68!important}
}

/* Simple 2.7.6 — project mobile: justified copy + balanced floating contacts */
@media(max-width:900px){
  body.single-du_an .lp-builder-content p,
  body.single-du_an .lp-builder-content li{
    text-align:justify!important;
    text-justify:inter-word!important;
    hyphens:none!important;
  }
  body.single-du_an .lp-builder-content h2,
  body.single-du_an .lp-builder-content h3{
    text-align:center!important;
  }
  body.single-du_an .float-contact-icons{
    right:12px!important;
    bottom:18px!important;
    gap:16px!important;
  }
}
@media(max-width:430px){
  body.single-du_an .float-contact-icons{
    right:10px!important;
    bottom:16px!important;
    gap:18px!important;
  }
}

/* Simple 2.7.7 — keep all mobile floating actions visible while scrolling project pages */
@media(max-width:900px){
  body.single-du_an .float-info-btn{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    bottom:14px!important;
    z-index:9998!important;
    visibility:visible!important;
    opacity:1!important;
  }
  body.single-du_an .float-contact-icons{
    display:flex!important;
    position:fixed!important;
    right:10px!important;
    bottom:14px!important;
    z-index:9999!important;
    flex-direction:column!important;
    gap:18px!important;
    visibility:visible!important;
    opacity:1!important;
  }
  body.single-du_an .float-zalo,
  body.single-du_an .float-call{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* Simple 2.7.9 — hard stop horizontal page drift on mobile */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}
@media(max-width:900px){
  body.single-du_an,
  body.single-du_an #page,
  body.single-du_an .site,
  body.single-du_an main,
  body.single-du_an .project-layout,
  body.single-du_an .project-main,
  body.single-du_an .lp-builder-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }
  body.single-du_an .lp-builder-content > *,
  body.single-du_an .wp-block-group,
  body.single-du_an .wp-block-columns,
  body.single-du_an .wp-block-column{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.single-du_an img,
  body.single-du_an video,
  body.single-du_an iframe,
  body.single-du_an table{
    max-width:100%!important;
  }
  body.single-du_an img{height:auto!important}
  body.single-du_an p,
  body.single-du_an li,
  body.single-du_an h1,
  body.single-du_an h2,
  body.single-du_an h3{
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  body.single-du_an .float-info-btn,
  body.single-du_an .float-contact-icons{
    max-width:calc(100vw - 20px)!important;
  }
}


/* Simple 2.10 — clean native mobile scrolling for project pages */
@media(max-width:900px){
 html{width:100%;max-width:100%;overflow-x:hidden!important;scroll-behavior:auto!important;-webkit-text-size-adjust:100%}
 body.single-du_an{width:100%!important;max-width:100%!important;min-height:100%!important;margin:0!important;overflow-x:hidden!important}
 body.single-du_an #page,body.single-du_an .site,body.single-du_an main,body.single-du_an .project-layout,body.single-du_an .project-main,body.single-du_an .lp-builder-content{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 body.single-du_an .lp-builder-content>*,body.single-du_an .wp-block-group,body.single-du_an .wp-block-columns,body.single-du_an .wp-block-column{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 body.single-du_an .lp-builder-content .bn-reveal{opacity:1!important;transform:none!important;transition:none!important;transition-delay:0s!important;animation:none!important}
 body.single-du_an .float-zalo,body.single-du_an .float-call{animation:none!important;will-change:auto!important}
 body.single-du_an img,body.single-du_an video,body.single-du_an iframe{max-width:100%!important;height:auto}
}

/* Simple 2.10 — homepage mobile project rail:
   horizontal gesture stays inside the project rail; vertical page scroll remains native. */
@media(max-width:900px){
  body.home .projects-carousel,
  body.home .projects-track,
  body.home .project-carousel,
  body.home .project-track{
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:18px;
    -webkit-overflow-scrolling:touch;
  }
  body.home .projects-carousel > *,
  body.home .projects-track > *,
  body.home .project-carousel > *,
  body.home .project-track > *,
  body.home .project-card{
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }

  /* Homepage text blocks: balanced justified copy on mobile. */
  body.home .project-card p,
  body.home .transfer-card p,
  body.home .news-card p,
  body.home .contact-copy p{
    text-align:justify!important;
    text-justify:inter-word;
    hyphens:auto;
  }
}

/* Simple 2.10 — keep project rail visually stable during vertical page swipes */
@media(max-width:900px){
  body.home .projects-carousel,
  body.home .projects-track,
  body.home .project-carousel,
  body.home .project-track{
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
  }
}

/* Simple 2.10 — carousel stays in its visual frame while swiping projects */
@media(max-width:900px){
 body.home .project-carousel.js-carousel{
   overscroll-behavior-x:contain;
   scroll-snap-type:x mandatory;
   -webkit-overflow-scrolling:touch;
 }
 body.home .project-carousel.js-carousel .project-card{
   scroll-snap-align:start;
   scroll-snap-stop:always;
 }
}

/* Simple 2.10 — horizontal carousel remains active; vertical swipe belongs to page */
@media(max-width:900px){
 body.home .project-carousel.js-carousel{
   touch-action:pan-x pan-y;
   overscroll-behavior-x:contain;
   scroll-snap-type:x mandatory;
 }
 body.home .project-carousel.js-carousel .project-card{
   scroll-snap-align:start;
   scroll-snap-stop:always;
 }
}


/* Simple 2.10 — Contact thank-you copy: justify on desktop + mobile */
.contact-copy p,
.contact-section .contact-copy p,
.home-contact .contact-copy p,
.contact-left p {
    text-align: justify !important;
    text-justify: inter-word;
    hyphens: none;
}

@media (max-width: 900px) {
    .contact-copy p,
    .contact-section .contact-copy p,
    .home-contact .contact-copy p,
    .contact-left p {
        text-align: justify !important;
        text-justify: inter-word;
        width: 100%;
        max-width: 100%;
    }
}


/* Simple 2.10 — correct selector for homepage Contact copy.
   The paragraphs are direct children of .contact-note, not .contact-copy. */
body.home .contact-section .contact-note > p {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: none !important;
}

@media (max-width: 900px) {
    body.home .contact-section .contact-note > p {
        width: 100% !important;
        max-width: 100% !important;
        text-align: justify !important;
        text-align-last: left !important;
        text-justify: inter-word !important;
    }
}

/* Simple 2.10 — keep project card/image intact while vertically swiping page */
@media(max-width:900px){
 body.home .project-carousel.js-carousel{
   touch-action:pan-y!important;
   overscroll-behavior-x:none!important;
   overflow-y:hidden!important;
 }
 body.home .project-carousel.js-carousel .project-card,
 body.home .project-carousel.js-carousel .card,
 body.home .project-carousel.js-carousel .card-media,
 body.home .project-carousel.js-carousel .card-media img{
   transform:none!important;
   translate:none!important;
 }
}


/* Simple 2.10 — native mobile carousel:
   horizontal swipe moves carousel; vertical swipe scrolls page.
   No JS preventDefault, so both directions remain responsive. */
@media (max-width:900px){
  body.home .project-carousel.js-carousel{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:x mandatory!important;
    scroll-behavior:smooth;
  }

  body.home .project-carousel.js-carousel .project-card,
  body.home .project-carousel.js-carousel .card{
    flex:0 0 auto!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always;
    transform:none!important;
    translate:none!important;
  }

  body.home .project-carousel.js-carousel .card-media,
  body.home .project-carousel.js-carousel .card-media img{
    transform:none!important;
    translate:none!important;
  }
}


/* Simple 2.10 — desktop typography: lighter section titles and project names only */
@media (min-width: 901px) {
    body.home .section-title,
    body.home .section-heading,
    body.home section > h2,
    body.home .contact-section h2 {
        font-weight: 600 !important;
    }

    body.home .project-carousel .project-card h3,
    body.home .project-carousel .card h3,
    body.home .project-carousel .project-title,
    body.home .project-carousel .card-title {
        font-weight: 600 !important;
    }
}


/* Simple 2.10 — desktop: make marked homepage headings slightly lighter */
@media (min-width: 901px) {
    /* Hero project name */
    body.home .hero h1,
    body.home .hero-title,
    body.home .hero-content h1 {
        font-weight: 500 !important;
    }

    /* Homepage section headings: Projects / Transfer-Rent / News / Contact */
    body.home .section-title,
    body.home .section-heading,
    body.home section > h2,
    body.home .contact-section h2 {
        font-weight: 500 !important;
    }

    /* Keep project card names lighter as requested previously */
    body.home .project-carousel .project-card h3,
    body.home .project-carousel .card h3,
    body.home .project-carousel .project-title,
    body.home .project-carousel .card-title {
        font-weight: 500 !important;
    }
}


/* Simple 2.10 — homepage four main headings: same visual weight as hero title */
@media (min-width: 901px) {
  body.home main .section-title,
  body.home main .section-heading,
  body.home main section > h2,
  body.home main .contact-section h2,
  body.home .home-section > .container > h2,
  body.home .projects-section h2,
  body.home .transfer-section h2,
  body.home .news-section h2,
  body.home .contact-section h2 {
      font-weight: 400 !important;
      font-family: Arial, Helvetica, sans-serif !important;
      font-synthesis: none !important;
  }
}


/* Simple 2.10 — exact heading selectors, synchronized with Vinhomes King Park */
@media (min-width:901px){

  /* HOME: the 4 headings visible in the user's screenshot */
  body.home .section-head h2,
  body.home .contact-section .contact-title{
    font-weight:500!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-synthesis:none!important;
  }

  /* PROJECT SUBPAGES: section headings use the same visual weight */
  body.single-du_an .lp-builder-content h2,
  body.single-du_an .lp-builder-content h3,
  body.single-du_an .project-main h2,
  body.single-du_an .project-main h3{
    font-weight:500!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-synthesis:none!important;
  }

  /* Other inner pages */
  body:not(.home):not(.single-du_an) main h1,
  body:not(.home):not(.single-du_an) main h2,
  body:not(.home):not(.single-du_an) main h3{
    font-weight:500!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-synthesis:none!important;
  }
}


/* ===== Simple 2.10: Transfer/Rental + News subpages ===== */
.subpage-hero{padding:64px 0;background:linear-gradient(135deg,#f7f3e9,#eef6f1);border-bottom:1px solid #e3e7e4;text-align:center}
.subpage-hero.compact{padding:46px 0}.subpage-kicker{display:block;color:#b98922;font-size:14px;font-weight:700;letter-spacing:.12em;margin-bottom:10px}
.subpage-hero h1{margin:0 auto;max-width:1050px;font-size:42px;line-height:1.16;font-weight:500;color:#15221e}
.subpage-hero p{max-width:760px;margin:16px auto 0;color:#66736e;font-size:17px;line-height:1.7}
.subpage-content{padding:52px 0 72px}.listing-tabs{display:flex;justify-content:center;gap:12px;margin-bottom:44px}
.listing-tabs a{padding:12px 22px;border:1px solid #0a6855;border-radius:999px;color:#0a6855;font-weight:600}
.listing-tabs a:hover{background:#0a6855;color:#fff}.listing-section{scroll-margin-top:110px;margin-bottom:64px}
.subpage-section-head{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #dfe6e2;padding-bottom:14px;margin-bottom:24px}
.subpage-section-head h2{margin:0;font-size:30px;font-weight:500}.subpage-section-head span{color:#75817d}
.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.listing-card{border:1px solid #dfe5e2;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 26px rgba(24,50,42,.06)}
.listing-media{display:block;aspect-ratio:16/10;background:#eef2ef;overflow:hidden}.listing-media img{width:100%;height:100%;object-fit:cover}
.listing-placeholder,.news-placeholder{height:100%;display:flex;align-items:center;justify-content:center;background:#eef3ee;color:#0a6855;font-weight:700}
.listing-body{padding:20px}.listing-type{font-size:12px;font-weight:700;color:#0a6855;letter-spacing:.06em;margin-bottom:8px}
.listing-body h3{font-size:22px;line-height:1.35;font-weight:500;margin:0 0 12px}.listing-body h3 a{color:#17231f}
.listing-body p{color:#68746f;line-height:1.7}.listing-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.listing-facts span{background:#f6f8f6;border-radius:10px;padding:9px 10px;font-size:13px}.listing-facts b{display:block;font-size:11px;color:#7b8581;margin-bottom:3px}
.listing-status{display:inline-block;background:#fff5d9;color:#7a5b12;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}
.empty-panel{text-align:center;border:1px dashed #bfcac5;border-radius:18px;padding:42px 24px;background:#fafbf9}.empty-panel h3{font-weight:500;font-size:24px;margin:0 0 8px}.empty-panel p{margin:0;color:#6c7773}
.subpage-cta{display:grid;grid-template-columns:1fr 430px;gap:44px;align-items:center;background:#f7f3e9;border-radius:24px;padding:38px;margin-top:28px}.subpage-cta h2{font-weight:500;font-size:30px;margin:0 0 10px}
.news-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.news-page-card{border:1px solid #e0e5e2;border-radius:18px;overflow:hidden;background:#fff}
.news-page-card.news-featured{grid-column:span 2;grid-row:span 2}.news-page-media{display:block;aspect-ratio:16/9;overflow:hidden}.news-page-media img{width:100%;height:100%;object-fit:cover}
.news-page-body{padding:20px}.news-date,.article-date{color:#78837f;font-size:13px}.news-page-body h2{font-size:21px;line-height:1.4;font-weight:500;margin:7px 0 10px}.news-featured .news-page-body h2{font-size:30px}
.news-page-body p{color:#66736e;line-height:1.7}.pagination{text-align:center;margin-top:38px}.pagination .page-numbers{display:inline-block;padding:8px 12px;margin:3px;border:1px solid #d8dfdb;border-radius:8px}
.listing-single,.article-single{padding:50px 0}.listing-single-layout,.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:42px}
.listing-single-image,.article-cover{border-radius:18px;overflow:hidden;margin-bottom:28px}.listing-single-image img,.article-cover img{width:100%;height:auto;display:block}
.listing-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px}.listing-summary>div{padding:15px;border:1px solid #e0e5e2;border-radius:12px}.listing-summary span{display:block;color:#74807b;font-size:12px;margin-bottom:4px}.listing-summary strong{font-weight:600}
.listing-copy,.article-body{font-size:17px;line-height:1.85}.listing-copy p,.article-body p{text-align:justify;text-justify:inter-word}
.sticky-lead{position:sticky;top:100px;background:#f8f5ed;border:1px solid #e2e4df;border-radius:20px;padding:22px}.sticky-lead>h2{text-align:center;font-size:24px;font-weight:500;margin:0 0 8px}.sticky-lead>p{text-align:center;color:#697570}
.listing-phone{display:block;text-align:center;margin-top:14px;font-size:20px;font-weight:700;color:#0a6855}
.article-date{margin-top:12px}
@media(max-width:900px){
 .subpage-hero{padding:38px 20px}.subpage-hero.compact{padding:32px 20px}.subpage-hero h1{font-size:clamp(24px,7vw,32px);line-height:1.25}
 .subpage-hero p{font-size:15px}.subpage-content{padding:34px 0 54px}.listing-tabs{gap:8px;margin-bottom:30px}.listing-tabs a{padding:10px 13px;font-size:12px}
 .subpage-section-head h2{font-size:24px}.listing-grid,.news-page-grid{grid-template-columns:1fr}.news-page-card.news-featured{grid-column:auto;grid-row:auto}
 .news-featured .news-page-body h2,.news-page-body h2{font-size:21px}.subpage-cta{grid-template-columns:1fr;padding:22px;gap:20px}
 .listing-single-layout,.article-layout{grid-template-columns:1fr}.listing-contact,.article-side{display:block}.sticky-lead{position:static}
 .listing-summary{grid-template-columns:1fr 1fr}.listing-copy,.article-body{font-size:16px;line-height:1.8}
}
@media(max-width:480px){.listing-summary{grid-template-columns:1fr}.subpage-section-head span{display:none}}


/* ===== Simple 2.11.2: subpage navigation + balanced tabs ===== */
.subpage-kicker{font-size:18px!important;font-weight:600!important;letter-spacing:.14em!important;line-height:1.35!important}
.listing-tabs{align-items:stretch!important}
.listing-tabs a{width:220px!important;min-width:220px!important;text-align:center!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important}
@media(max-width:700px){.subpage-kicker{font-size:15px!important}.listing-tabs{width:100%;gap:10px!important}.listing-tabs a{width:calc(50% - 5px)!important;min-width:0!important;padding:10px 8px!important}}
\n/* Simple 2.11.3 - compact 4x2 news layout */
body.home .news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;overflow:visible;scroll-snap-type:none}
body.home .news-card{border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
body.home .news-card .card-media{display:block;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#eef2ef}
body.home .news-card .card-media img{width:100%;height:100%;object-fit:cover}
body.home .news-card .card-body{min-height:0;padding:12px 0 0;display:block}
body.home .news-card .meta{font-size:12px;margin-bottom:5px}
body.home .news-card h3{font-size:17px;line-height:1.4;font-weight:500;margin:0}
body.home .news-card p,body.home .news-card .readmore{display:none}
.news-more-wrap{text-align:center;margin-top:34px}
.news-more-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);border-radius:999px;padding:12px 24px;color:var(--green);font-size:14px;font-weight:600;background:#fff}
.news-more-btn:hover{background:var(--green);color:#fff}

body.page .news-page-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 22px}
body.page .news-page-card,body.page .news-page-card.news-featured{grid-column:auto;grid-row:auto;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
body.page .news-page-media{display:block;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#eef2ef}
body.page .news-page-media img{width:100%;height:100%;object-fit:cover}
body.page .news-page-body{padding:12px 0 0}
body.page .news-page-body .news-date{font-size:12px;margin-bottom:5px}
body.page .news-page-body h2,body.page .news-featured .news-page-body h2{font-size:18px;line-height:1.42;font-weight:500;margin:0}
body.page .news-page-body p,body.page .news-page-body .readmore{display:none}
@media(max-width:900px){
 body.home .news-grid,body.page .news-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
 body.home .news-card h3,body.page .news-page-body h2,body.page .news-featured .news-page-body h2{font-size:15px;line-height:1.4}
 body.home .news-card .card-body,body.page .news-page-body{padding-top:9px}
 .news-more-wrap{margin-top:28px}
}

/* Simple 2.11.4 - lighter homepage listing/news titles */
body.home .mini-card h3,
body.home .mini-card h3 a,
body.home .news-card h3,
body.home .news-card h3 a{
  font-weight:400!important;
}


/* Simple 2.11.5 — consultation popup on every page, desktop + mobile */
.project-scroll-popup.is-open{display:flex!important}
@media(max-width:900px){
 .project-scroll-popup{padding:12px!important;align-items:center!important;justify-content:center!important}
 .project-popup-card{width:min(430px,calc(100vw - 24px))!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;padding:22px 18px!important;border-radius:18px!important}
 .project-popup-card>h2{font-size:22px!important;white-space:normal!important;padding-right:24px!important}
}

/* ===== Simple 2.11.6 — keep mobile header pinned on every page ===== */
@media (max-width:900px){
  html,body{overflow-x:hidden!important;max-width:100%!important}
  .site-header{
    position:sticky!important;
    position:-webkit-sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:9999!important;
    transform:none!important;
    -webkit-transform:none!important;
  }
  body.admin-bar .site-header{top:0!important}
}

/* ===== Simple 2.11.7 — true fixed mobile header on all pages ===== */
@media (max-width:900px){
  html,body{overflow-x:hidden!important;max-width:100%!important}
  body{padding-top:64px!important}
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:2147483000!important;
    margin:0!important;
    transform:none!important;
    -webkit-transform:none!important;
  }
  .site-header .header-inner{height:64px!important}
  .main-nav.open{position:fixed!important;top:64px!important;left:0!important;right:0!important;z-index:2147482999!important}
  body.admin-bar{padding-top:64px!important}
  body.admin-bar .site-header{top:0!important}
}


/* ===== Simple 2.11.8 — robust pinned header for phone/tablet viewport ===== */
@media (max-width:1024px){
  html{overflow-x:hidden!important}
  body{padding-top:64px!important;overflow-x:hidden!important}
  header.site-header,
  body.home header.site-header,
  body.single-du_an header.site-header,
  body.single-tin_dang header.site-header,
  body.single-post header.site-header,
  body.archive header.site-header,
  body.page header.site-header{
    display:block!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:auto!important;
    width:100vw!important;
    max-width:100vw!important;
    height:64px!important;
    margin:0!important;
    z-index:2147483640!important;
    background:#fff!important;
    transform:translate3d(0,0,0)!important;
    -webkit-transform:translate3d(0,0,0)!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    will-change:transform!important;
  }
  header.site-header .header-inner{height:64px!important;min-height:64px!important}
  header.site-header .main-nav.open{
    position:fixed!important;
    top:64px!important;
    left:0!important;
    right:0!important;
    width:100vw!important;
    z-index:2147483639!important;
  }
  body.admin-bar{padding-top:64px!important}
  body.admin-bar header.site-header{top:0!important}
}


/* ===== Simple 2.11.9: clean home news grid ===== */
body.home .news-section{overflow:hidden}
body.home .news-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto;overflow:visible!important}
body.home .news-view-all{margin-top:24px;text-align:right}
@media(max-width:700px){
 body.home .news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
 body.home .news-view-all{margin-top:22px;font-size:14px}
}

/* ===== Simple 2.11.12 — refine project hero typography ===== */
.single-du_an .lp-project-hero .eyebrow{
  font-size:15px!important;
  font-weight:700!important;
  letter-spacing:1.5px!important;
}
.single-du_an .lp-project-hero h1{
  font-weight:650!important;
  letter-spacing:-1.15px!important;
}
@media(max-width:700px){
  .single-du_an .lp-project-hero .eyebrow{font-size:14px!important;letter-spacing:1.25px!important}
  .single-du_an .lp-project-hero h1{font-weight:650!important;letter-spacing:-.7px!important}
}

/* ===== Simple 2.11.13 — project hero typography: larger label, lighter project name ===== */
.single-du_an .lp-project-hero .eyebrow{
  font-size:17px!important;
  font-weight:700!important;
  letter-spacing:1.6px!important;
}
.single-du_an .lp-project-hero h1{
  font-weight:500!important;
  letter-spacing:-1px!important;
}
@media(max-width:700px){
  .single-du_an .lp-project-hero .eyebrow{
    font-size:15px!important;
    font-weight:700!important;
    letter-spacing:1.35px!important;
  }
  .single-du_an .lp-project-hero h1{
    font-weight:500!important;
    letter-spacing:-.55px!important;
  }
}


/* ===== Simple 2.12.2: King Park SEO landing polish ===== */
.single-du_an .project-content > h2.wp-block-heading{margin-top:54px;margin-bottom:22px;line-height:1.18;letter-spacing:.01em}
.single-du_an .project-content > h3.wp-block-heading{margin-top:34px;margin-bottom:14px;line-height:1.3}
.single-du_an .project-content .wp-block-image{margin-top:24px;margin-bottom:28px}
.single-du_an .project-content .wp-block-image img{border-radius:14px}
.single-du_an .project-content .wp-element-caption{font-size:13px;line-height:1.55;opacity:.72;text-align:center;margin-top:8px}
.single-du_an .project-content .wp-block-table{margin-top:24px;margin-bottom:32px}
.single-du_an .project-content .wp-block-list{margin-top:16px;margin-bottom:26px}
@media(max-width:782px){
 .single-du_an .project-content > h2.wp-block-heading{margin-top:38px;margin-bottom:16px;font-size:28px!important}
 .single-du_an .project-content > h3.wp-block-heading{margin-top:26px;margin-bottom:10px;font-size:22px!important}
 .single-du_an .project-content .wp-block-image img{border-radius:10px}
}

/* ===== Simple 2.12.3: Vinhomes King Park landing page ===== */
.bnps-kingpark .lp-builder-content{--kp-green:#006b55;--kp-gold:#edae2c;--kp-ink:#14211d;--kp-soft:#f7f5ee}
.bnps-kingpark .lp-builder-content>h2{margin:58px auto 22px!important;max-width:920px;font-weight:400!important;font-size:34px!important;line-height:1.18!important;letter-spacing:-.45px!important;text-align:center!important}
.bnps-kingpark .lp-builder-content>h2:first-child{margin-top:12px!important}
.bnps-kingpark .lp-builder-content>p{max-width:100%;line-height:1.78}
.bnps-kingpark .lp-builder-content .wp-block-table{overflow:hidden;border-radius:16px;box-shadow:0 12px 34px rgba(18,45,37,.08);border:1px solid #e8e5dc;margin:26px 0 40px}
.bnps-kingpark .lp-builder-content .wp-block-table td{padding:16px 18px;border-color:#ece9e0}
.bnps-kingpark .lp-builder-content .wp-block-table tr:nth-child(odd){background:#f7f6f2}
.bnps-kingpark .lp-builder-content .wp-block-image{margin:28px 0 38px}
.bnps-kingpark .lp-builder-content .wp-block-image img{width:100%;border-radius:18px;box-shadow:0 16px 40px rgba(20,33,29,.12)}
.bnps-kingpark .lp-builder-content .wp-element-caption{font-size:13px;opacity:.7;text-align:center;margin-top:10px}
.bnps-kingpark .kp-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0 46px}
.bnps-kingpark .kp-product-card{position:relative;background:#fff;border:1px solid #e8e5dc;border-radius:18px;padding:26px 26px 22px;box-shadow:0 10px 28px rgba(20,33,29,.06);overflow:hidden}
.bnps-kingpark .kp-product-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:var(--kp-gold)}
.bnps-kingpark .kp-product-card h3{margin:0 0 12px!important;font-size:23px!important;font-weight:600!important;text-align:left!important;color:var(--kp-green)}
.bnps-kingpark .kp-product-card p{margin:0!important;font-size:16px;line-height:1.72}
.bnps-kingpark .kp-highlight-box{background:linear-gradient(135deg,#faf7ec,#f3f7f3);border:1px solid #e5dfcb;border-radius:20px;padding:28px 30px;margin:24px 0 44px;box-shadow:0 12px 32px rgba(20,33,29,.07)}
.bnps-kingpark .kp-highlight-box h3{color:var(--kp-green);font-size:22px!important;margin:18px 0 8px!important}
.bnps-kingpark .kp-timeline{list-style:none!important;padding:4px 0 4px 30px!important;margin:24px 0 38px!important;border-left:2px solid #dfb34d}
.bnps-kingpark .kp-timeline li{position:relative;padding:0 0 22px 12px!important;margin:0!important}
.bnps-kingpark .kp-timeline li:before{content:"";position:absolute;left:-39px;top:9px;width:12px;height:12px;border-radius:50%;background:var(--kp-green);box-shadow:0 0 0 5px #edf5f2}
.bnps-kingpark .kp-faq-grid{display:grid;gap:12px;margin:26px 0 46px}
.bnps-kingpark .kp-faq-card{background:#fff;border:1px solid #e7e4dc;border-radius:15px;padding:20px 24px;box-shadow:0 7px 20px rgba(20,33,29,.045)}
.bnps-kingpark .kp-faq-card h3{font-size:20px!important;font-weight:600!important;text-align:left!important;margin:0 0 8px!important;color:var(--kp-ink)}
.bnps-kingpark .kp-faq-card p{margin:0!important;line-height:1.65}
.bnps-kingpark .kp-cta-title{color:var(--kp-green)}
.bnps-kingpark .lp-sidebar .lp-sticky-form{border-radius:20px;box-shadow:0 14px 40px rgba(20,33,29,.10)}
@media(max-width:900px){
 .bnps-kingpark .lp-builder-content>h2{font-size:25px!important;margin-top:40px!important;line-height:1.28!important}
 .bnps-kingpark .kp-product-grid{grid-template-columns:1fr;gap:12px}
 .bnps-kingpark .kp-product-card{padding:21px 20px 18px}
 .bnps-kingpark .kp-product-card h3,.bnps-kingpark .kp-faq-card h3{text-align:left!important;font-size:19px!important}
 .bnps-kingpark .kp-highlight-box{padding:22px 20px;border-radius:16px}
 .bnps-kingpark .kp-faq-card{padding:18px 18px}
 .bnps-kingpark .lp-builder-content .wp-block-table{border-radius:12px;overflow-x:auto}
 .bnps-kingpark .lp-builder-content .wp-block-table td{padding:12px 11px;min-width:145px}
}


/* ===== Simple 2.12.4: King Park visual finishing ===== */
.bnps-kingpark .kp-product-card{min-height:220px;display:flex;flex-direction:column;justify-content:flex-start}
/* 2.17.42: Show Gutenberg images inside King Park product cards. */
.bnps-kingpark .kp-product-card .wp-block-image{display:block!important;margin:14px 0 18px!important;width:100%;max-width:100%}
.bnps-kingpark .kp-product-card .wp-block-image img{display:block;width:100%;height:auto;max-height:240px;object-fit:cover;border-radius:12px;box-shadow:none}
.bnps-kingpark .kp-product-card .wp-block-image figcaption{font-size:12px;line-height:1.5;margin:7px 0 0;text-align:left}
@media(max-width:900px){.bnps-kingpark .kp-product-card .wp-block-image img{max-height:210px}}
.bnps-kingpark .kp-product-card:after{content:"";display:block;width:46px;height:4px;border-radius:9px;background:linear-gradient(90deg,var(--kp-gold),var(--kp-green));margin-top:auto;padding-top:0}
.bnps-kingpark .kp-product-card h3{padding-right:10px}
.bnps-kingpark .kp-product-card p{margin-bottom:16px!important}
.bnps-kingpark .kp-visual-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0 44px}
.bnps-kingpark .kp-visual-item{min-height:138px;border-radius:18px;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #e5e1d7;box-shadow:0 10px 28px rgba(20,33,29,.06);background:linear-gradient(145deg,#f4f8f5,#fbf6e8)}
.bnps-kingpark .kp-visual-item:nth-child(2){background:linear-gradient(145deg,#fbf7eb,#f3f8f5)}
.bnps-kingpark .kp-visual-item strong{font-size:18px;color:var(--kp-green);margin-bottom:5px}
.bnps-kingpark .kp-visual-item span{font-size:13px;line-height:1.55;color:#66716d}
.bnps-kingpark .kp-final-cta{margin:38px 0 18px;padding:34px 34px;border-radius:22px;background:linear-gradient(135deg,#075f4e,#00755d);color:#fff;box-shadow:0 18px 44px rgba(0,92,72,.18);text-align:center}
.bnps-kingpark .kp-final-cta h2{color:#fff!important;margin:0 0 12px!important;font-size:30px!important;font-weight:500!important}
.bnps-kingpark .kp-final-cta p{max-width:720px!important;margin:0 auto 18px!important;color:#eaf4f1;line-height:1.7}
.bnps-kingpark .kp-final-cta a{display:inline-flex;align-items:center;justify-content:center;background:var(--kp-gold);color:#14211d!important;font-weight:800;text-decoration:none;border-radius:999px;padding:13px 24px}
.bnps-kingpark .kp-faq-grid{margin-bottom:24px}
.bnps-kingpark .kp-faq-card{transition:.2s ease}
.bnps-kingpark .kp-faq-card:hover{transform:translateY(-2px);box-shadow:0 11px 26px rgba(20,33,29,.07)}
.bnps-kingpark .kp-section-note{font-size:13px!important;color:#6c7773;line-height:1.6!important;border-left:3px solid var(--kp-gold);padding-left:12px;margin-top:-18px!important;margin-bottom:28px!important}
@media(max-width:900px){
 .bnps-kingpark .kp-product-card{min-height:0}
 .bnps-kingpark .kp-visual-strip{grid-template-columns:1fr;gap:10px;margin:20px 0 32px}
 .bnps-kingpark .kp-visual-item{min-height:112px;padding:18px;border-radius:15px}
 .bnps-kingpark .kp-final-cta{padding:28px 18px;border-radius:18px;margin-top:28px}
 .bnps-kingpark .kp-final-cta h2{font-size:24px!important;line-height:1.28!important}
}


/* ===== Simple 2.13.0: SEO content cluster ===== */
.bnps-related-seo{margin:46px 0 16px;padding:28px 30px;border:1px solid #e6e2d8;border-radius:18px;background:#fbfaf6}
.bnps-related-seo h2{margin:0 0 10px!important;font-size:27px!important;font-weight:500!important}
.bnps-related-seo p{margin:0 0 14px!important;color:#59645f}
.bnps-related-seo a{display:inline-block;color:var(--green);font-weight:800;text-decoration:none}
.bnps-related-seo a:hover{text-decoration:underline}
.article-body .seo-factbox{background:#f7f5ee;border-left:4px solid var(--gold);padding:20px 22px;border-radius:0 14px 14px 0;margin:26px 0}
.article-body .seo-factbox p{margin:6px 0}
.article-body .seo-source-note{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:34px}
.article-body .seo-cta{background:linear-gradient(135deg,#075f4e,#08745d);color:#fff;padding:28px;border-radius:18px;margin:36px 0}
.article-body .seo-cta h2{color:#fff;margin-top:0!important}
.article-body .seo-cta a{display:inline-block;background:var(--gold);color:#17211e!important;padding:11px 20px;border-radius:999px;font-weight:800;text-decoration:none}
@media(max-width:700px){.bnps-related-seo{padding:22px 18px}.bnps-related-seo h2{font-size:23px!important}.article-body .seo-cta{padding:23px 19px}}


/* ===== Simple 2.13.1: SEO cluster article #2 ===== */
.bnps-seo-links{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.article-body .seo-plan-note{margin:26px 0;padding:18px 20px;border:1px solid #e6e2d8;border-radius:14px;background:#fffdf7;line-height:1.7}
.article-body .wp-block-list{padding-left:24px;margin:18px 0 28px}
.article-body .wp-block-list li{margin:8px 0;line-height:1.7}
.bnps-article-cluster{margin-top:30px}
@media(max-width:700px){.article-body .seo-plan-note{padding:16px}.bnps-seo-links{gap:12px}}

/* ===== Simple 2.13.2: SEO article #3 - Legal ===== */


/* ===== Simple 2.13.3: SEO article #4 - Progress + visual system ===== */
.article-body .seo-illustration{margin:26px 0 30px}
.article-body .seo-illustration img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 12px 30px rgba(20,33,29,.08)}
.article-body .seo-illustration figcaption{font-size:13px;line-height:1.55;color:var(--muted);text-align:center;margin-top:9px}
.article-body .seo-timeline{margin:28px 0;display:grid;gap:12px}
.article-body .seo-timeline-item{position:relative;padding:18px 20px 18px 24px;border:1px solid #e6e2d8;border-radius:14px;background:#fff}
.article-body .seo-timeline-item:before{content:"";position:absolute;left:0;top:17px;bottom:17px;width:4px;background:var(--gold);border-radius:0 4px 4px 0}
.article-body .seo-timeline-item strong{color:var(--green)}
@media(max-width:700px){.article-body .seo-illustration img{border-radius:14px}.article-body .seo-timeline-item{padding:16px 16px 16px 20px}}

/* ===== Simple 2.13.4: Price SEO visual ===== */
.seo-price-status{margin:28px 0;padding:26px 28px;border-radius:18px;background:#f8f5ec;border:1px solid #e8dfca;border-left:4px solid #efad22;box-shadow:0 12px 30px rgba(0,0,0,.05)}
.seo-price-status span{display:block;font-size:12px;letter-spacing:.14em;color:#777;margin-bottom:7px}.seo-price-status strong{display:block;font-size:30px;color:#006b58;margin-bottom:8px}.seo-price-status p{margin:0 0 16px}.seo-price-status a{display:inline-block;background:#006b58;color:#fff!important;padding:11px 20px;border-radius:999px;font-weight:700;text-decoration:none}
.seo-product-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.seo-product-price-grid>div{padding:22px;border:1px solid #e6dfd2;border-left:4px solid #efad22;border-radius:16px;background:#fff}.seo-product-price-grid strong{display:block;font-size:21px;color:#006b58}.seo-product-price-grid span{display:inline-block;margin:10px 0 5px;padding:5px 10px;border-radius:999px;background:#f8f2df;font-weight:700}.seo-product-price-grid p{margin:7px 0 0}
@media(max-width:700px){.seo-product-price-grid{grid-template-columns:1fr}.seo-price-status{padding:20px}.seo-price-status strong{font-size:25px}}

/* 2.13.5 villa SEO visual */
.seo-illustration img{width:100%;height:auto;display:block;border-radius:18px}.seo-illustration figcaption{text-align:center;font-size:12px;color:var(--muted);margin-top:8px}


/* 2.13.9.1 - clean Vinhomes King Park internal-link directory */
.bnps-kp-deep-links{margin:34px 0 10px!important;padding:30px 34px!important;background:#fff!important;border:1px solid #e9e3d8!important;border-radius:18px!important;color:#17211e!important;box-shadow:0 10px 30px rgba(7,88,70,.07)!important}
.bnps-kp-deep-links h2{margin:0 0 7px!important;color:#075846!important;font-size:27px!important;line-height:1.25!important;text-align:left!important;font-weight:600!important}
.bnps-kp-deep-links>p{margin:0 0 18px!important;color:#68736f!important;text-align:left!important}
.bnps-kp-link-list{margin:0!important;padding:0!important;list-style:none!important}
.bnps-kp-link-list li{margin:0!important;padding:0!important}
.bnps-kp-link-list a{display:block!important;position:relative!important;padding:13px 26px 13px 0!important;margin:0!important;background:transparent!important;border:0!important;border-bottom:1px solid #e7d7af!important;border-radius:0!important;color:#17211e!important;font-weight:650!important;text-decoration:none!important;line-height:1.45!important;box-shadow:none!important;width:100%!important;max-width:none!important;text-align:left!important}
.bnps-kp-link-list a:after{content:"→";position:absolute;right:2px;color:#c68a16;font-weight:700}
.bnps-kp-link-list a:hover{color:#075846!important;border-bottom-color:#e6aa37!important}
.bnps-kp-link-list li:last-child a{border-bottom-color:#e7d7af!important}
.single-du_an .bnps-article-cluster{display:none!important}
@media(max-width:767px){.bnps-kp-deep-links{padding:22px 20px!important;margin:26px 0 8px!important}.bnps-kp-deep-links h2{font-size:22px!important}.bnps-kp-link-list a{padding:12px 24px 12px 0!important;font-size:15px!important}}

/* 2.13.9.2 - definitive legacy deep-link cleanup */
.bnps-kp-deep-links h2{display:block!important;visibility:visible!important;opacity:1!important;color:#075846!important;-webkit-text-fill-color:#075846!important;text-shadow:none!important}
.bnps-kp-deep-links>p{display:block!important;visibility:visible!important;opacity:1!important;color:#68736f!important;-webkit-text-fill-color:#68736f!important}

/* 2.14.0 - Vinhomes King Park SEO cluster */
.bnps-cluster-strip{margin:28px 0 36px;padding:24px 28px;background:#f7f5ee;border-left:3px solid #e6aa37;border-radius:0 14px 14px 0}
.bnps-cluster-strip h2{margin:0 0 6px!important;font-size:24px!important;color:#075846!important;text-align:left!important}
.bnps-cluster-strip p{margin:0 0 13px!important;color:#66736e}
.bnps-cluster-strip a{color:#075846;font-weight:750;text-decoration:underline;text-decoration-color:#e6aa37;text-underline-offset:5px}
.bnps-cluster-strip .cluster-more{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:13px}
.bnps-cluster-strip .cluster-more a{font-size:14px}
.news-cluster-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 22px}
.news-cluster-head h2{margin:0;font-size:32px;font-weight:500;color:#17211e}
.news-cluster-head p{margin:5px 0 0;color:#66736e}
.news-cluster-head a{color:#075846;font-weight:800;text-decoration:underline;text-decoration-color:#e6aa37;text-underline-offset:5px}
.news-cluster-section{margin-bottom:60px}
.news-market-section{padding-top:8px}
.news-market-section>.news-cluster-head{border-top:1px solid #e6e8e5;padding-top:34px}
@media(max-width:620px){.bnps-cluster-strip{padding:20px}.bnps-cluster-strip .cluster-more{display:grid;gap:10px}.news-cluster-head{display:block}.news-cluster-head h2{font-size:26px}.news-cluster-head>a{display:inline-block;margin-top:8px}}


/* ===== 2.14.2: News visual polish + robust image fallback ===== */
.news-page-media{
  display:block;
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:12px;
  background:linear-gradient(135deg,#eef3ef,#f7f4e9);
}
.news-page-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block;
}
.bnps-news-fallback{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  padding:18px;text-align:center;background:linear-gradient(135deg,#075846,#0b705c);
  color:#fff;
}
.bnps-news-fallback span{display:block}
.bnps-news-fallback strong{display:block;font-size:18px;line-height:1.25;margin-bottom:5px}
.bnps-news-fallback small{display:block;color:#f1c35a;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.news-page-card{display:flex;flex-direction:column;height:100%}
.news-page-body{display:flex;flex-direction:column;flex:1}
.news-page-body h2{line-height:1.28}
.news-page-body .readmore{margin-top:auto}
.news-cluster-section .news-page-grid,
.news-market-section .news-page-grid{align-items:stretch}

@media(max-width:620px){
  .news-page-grid{gap:24px 18px!important}
  .news-page-card{min-width:0}
  .news-page-media{border-radius:8px}
  .news-page-body h2{font-size:17px!important;line-height:1.32!important;margin-top:6px!important}
  .news-date{font-size:12px!important}
  .bnps-news-fallback{padding:10px}
  .bnps-news-fallback strong{font-size:14px}
  .bnps-news-fallback small{font-size:10px}
  .news-cluster-head{margin-bottom:18px}
}


/* ===== Simple 2.14.7: Masterplan SEO depth ===== */
.bnps-2147-plan-depth{margin:34px 0 12px;padding:28px;border:1px solid #e4e8e3;border-radius:14px;background:#fff}
.bnps-2147-plan-depth h2{margin:0 0 14px;color:#185b3a}
.bnps-2147-plan-depth h3{margin-top:24px}
.bnps-2147-plan-depth ul{padding-left:20px}
.bnps-2147-plan-depth .bnps-2147-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px}
.bnps-2147-plan-depth .bnps-2147-links a{color:#185b3a;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-2147-plan-depth{padding:20px 16px;margin-top:26px}.bnps-2147-plan-depth .bnps-2147-links{display:block}.bnps-2147-plan-depth .bnps-2147-links a{display:block;margin:9px 0}}


/* ===== Simple 2.14.8: Location satellite SEO depth ===== */
.bnps-2148-location-depth{margin:34px 0 12px;padding:28px;border:1px solid #e4e8e3;border-radius:14px;background:#fff}
.bnps-2148-location-depth h2{margin:0 0 14px;color:#185b3a}
.bnps-2148-location-depth h3{margin-top:24px}
.bnps-2148-location-depth ul{padding-left:20px}
.bnps-2148-location-depth .bnps-2148-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px}
.bnps-2148-location-depth .bnps-2148-links a{color:#185b3a;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-2148-location-depth{padding:20px 16px;margin-top:26px}.bnps-2148-location-depth .bnps-2148-links{display:block}.bnps-2148-location-depth .bnps-2148-links a{display:block;margin:9px 0}}

/* ===== Simple 2.14.9: legal satellite depth ===== */
.bnps-2149-legal-depth{margin:34px 0 12px;padding:28px;border:1px solid #e4e8e3;border-radius:14px;background:#fff}
.bnps-2149-legal-depth h2{margin:0 0 14px;color:#185b3a}.bnps-2149-legal-depth h3{margin-top:26px}.bnps-2149-legal-depth ul{padding-left:20px}
.bnps-2149-legal-timeline{margin:20px 0;border-left:3px solid #c9a24a;padding-left:20px}.bnps-2149-legal-step{margin:0 0 18px}.bnps-2149-legal-step strong{display:block;color:#185b3a;margin-bottom:4px}
.bnps-2149-note{margin:22px 0;padding:16px 18px;background:#f6f8f5;border-left:4px solid #185b3a;border-radius:8px}.bnps-2149-sources{margin-top:22px;padding-top:18px;border-top:1px solid #e4e8e3}.bnps-2149-sources a,.bnps-2149-links a{color:#185b3a;text-decoration:underline;text-underline-offset:3px}.bnps-2149-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px}
@media(max-width:767px){.bnps-2149-legal-depth{padding:20px 16px;margin-top:26px}.bnps-2149-links{display:block}.bnps-2149-links a{display:block;margin:9px 0}}


/* ===== Simple 2.14.10: pillar authority layer ===== */
.bnps-21410-pillar-depth{margin:38px 0 16px;padding:30px;border:1px solid #e4e8e3;border-radius:14px;background:#fff}
.bnps-21410-pillar-depth h2{margin:0 0 14px;color:#185b3a}.bnps-21410-pillar-depth h3{margin:28px 0 10px}
.bnps-21410-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.bnps-21410-facts>div{padding:16px 18px;border:1px solid #e7e9e5;border-radius:10px;background:#f8f8f5}.bnps-21410-facts strong{display:block;color:#185b3a;margin-bottom:5px}.bnps-21410-facts span{display:block;line-height:1.6}
.bnps-21410-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px}.bnps-21410-links a{color:#185b3a;text-decoration:underline;text-underline-offset:3px}
.bnps-21410-note{margin-top:24px;padding:16px 18px;background:#f6f3ea;border-left:4px solid #c9a24a;border-radius:8px;line-height:1.7}
@media(max-width:767px){.bnps-21410-pillar-depth{padding:20px 16px;margin-top:28px}.bnps-21410-facts{grid-template-columns:1fr}.bnps-21410-links{display:block}.bnps-21410-links a{display:block;margin:9px 0}}

/* ===== Simple 2.14.10.1: pillar depth visual hotfix ===== */
.single-du_an .bnps-21410-pillar-depth,
.bnps-project-content .bnps-21410-pillar-depth,
.bnps-21410-pillar-depth{
  margin:38px 0 16px !important;
  padding:30px !important;
  border:1px solid #e4e8e3 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#26332d !important;
  box-shadow:none !important;
}
.bnps-21410-pillar-depth h2,
.bnps-21410-pillar-depth h3,
.bnps-21410-pillar-depth strong{color:#075f46 !important}
.bnps-21410-pillar-depth p,
.bnps-21410-pillar-depth span,
.bnps-21410-pillar-depth li{color:#4c5a54 !important;opacity:1 !important}
.bnps-21410-facts>div{
  padding:16px 18px !important;
  border:1px solid #e1e5e1 !important;
  border-radius:10px !important;
  background:#f8f8f5 !important;
  color:#26332d !important;
  box-shadow:none !important;
}
.bnps-21410-facts strong{color:#075f46 !important}
.bnps-21410-facts span{color:#59645f !important}
.bnps-21410-links{display:flex !important;flex-wrap:wrap !important;gap:10px 22px !important;margin-top:18px !important}
.bnps-21410-links a,
.single-du_an .bnps-21410-links a,
.bnps-project-content .bnps-21410-links a{
  display:inline !important;
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#075f46 !important;
  font-weight:600 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:4px !important;
}
.bnps-21410-links a:hover{color:#9b7218 !important;background:transparent !important}
.bnps-21410-note{
  margin-top:24px !important;
  padding:16px 18px !important;
  background:#f7f4ec !important;
  border:0 !important;
  border-left:4px solid #c9a24a !important;
  border-radius:8px !important;
  color:#394740 !important;
}
.bnps-21410-note strong{color:#075f46 !important}
@media(max-width:767px){
 .bnps-21410-pillar-depth{padding:20px 16px !important;margin-top:28px !important}
 .bnps-21410-facts{grid-template-columns:1fr !important}
 .bnps-21410-links{display:block !important}
 .bnps-21410-links a{display:block !important;margin:10px 0 !important}
}


/* ===== Simple 2.14.10.2: tighten pillar transition spacing ===== */
body.single-du_an .bnps-21410-pillar-depth{
  margin-top:18px !important;
  padding-top:18px !important;
}
body.single-du_an .bnps-21410-pillar-depth > h2#bnps-21410-pillar-title{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 0 12px !important;
  padding:0 !important;
  color:#075f46 !important;
  -webkit-text-fill-color:#075f46 !important;
  text-shadow:none !important;
  line-height:1.3 !important;
}
body.single-du_an .bnps-21410-pillar-depth > p:first-of-type{
  margin-top:0 !important;
}
@media(max-width:767px){
  body.single-du_an .bnps-21410-pillar-depth{
    margin-top:16px !important;
    padding-top:16px !important;
  }
}

/* ===== Simple 2.14.11: progress satellite depth ===== */
.bnps-21411-progress-depth{margin-top:36px;padding-top:28px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21411-progress-depth h2,.bnps-21411-progress-depth h3{color:#116530}
.bnps-21411-progress-depth h2{font-size:30px;line-height:1.25;margin:0 0 16px}
.bnps-21411-progress-depth h3{font-size:22px;margin:28px 0 12px}
.bnps-21411-progress-depth p,.bnps-21411-progress-depth li{line-height:1.75}
.bnps-21411-progress-timeline{display:grid;gap:12px;margin:18px 0 26px}
.bnps-21411-progress-step{background:#f7faf8;border:1px solid #dfe9e2;border-left:4px solid #1b6b3a;border-radius:10px;padding:16px 18px}
.bnps-21411-progress-step strong,.bnps-21411-progress-step span{display:block}
.bnps-21411-progress-step strong{color:#174d2d;margin-bottom:6px}
.bnps-21411-note{background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;padding:16px 18px;line-height:1.7}
.bnps-21411-sources{margin-top:24px;padding:16px 18px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}
.bnps-21411-sources ul{margin-bottom:0}
.bnps-21411-progress-depth a{color:#146c3a;text-decoration:underline;text-underline-offset:3px}
.bnps-21411-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:22px}
.bnps-21411-links a{font-weight:650}
@media(max-width:767px){.bnps-21411-progress-depth{margin-top:28px;padding-top:22px}.bnps-21411-progress-depth h2{font-size:25px}.bnps-21411-progress-depth h3{font-size:20px}.bnps-21411-progress-step{padding:14px 15px}}


/* ===== Simple 2.14.12: masterplan authority layer ===== */
.bnps-21412-plan-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21412-plan-authority h2,.bnps-21412-plan-authority h3{color:#116530}
.bnps-21412-plan-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21412-plan-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21412-plan-authority p,.bnps-21412-plan-authority span{line-height:1.75}
.bnps-21412-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21412-plan-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21412-plan-grid strong,.bnps-21412-plan-grid span{display:block}.bnps-21412-plan-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21412-plan-note{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21412-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21412-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21412-plan-authority{margin-top:28px;padding-top:22px}.bnps-21412-plan-authority h2{font-size:25px}.bnps-21412-plan-authority h3{font-size:20px}.bnps-21412-plan-grid{grid-template-columns:1fr}.bnps-21412-plan-grid>div{padding:14px 15px}}

/* ===== Simple 2.14.13: price authority layer ===== */
.bnps-21413-price-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21413-price-authority h2,.bnps-21413-price-authority h3{color:#116530}
.bnps-21413-price-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21413-price-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21413-price-authority p,.bnps-21413-price-authority span{line-height:1.75}
.bnps-21413-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21413-price-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21413-price-grid strong,.bnps-21413-price-grid span{display:block}.bnps-21413-price-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21413-price-status{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21413-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21413-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21413-price-authority{margin-top:28px;padding-top:22px}.bnps-21413-price-authority h2{font-size:25px}.bnps-21413-price-authority h3{font-size:20px}.bnps-21413-price-grid{grid-template-columns:1fr}.bnps-21413-price-grid>div{padding:14px 15px}}

/* ===== Simple 2.14.14: villa authority layer ===== */
.bnps-21414-villa-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21414-villa-authority h2,.bnps-21414-villa-authority h3{color:#116530}
.bnps-21414-villa-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21414-villa-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21414-villa-authority p,.bnps-21414-villa-authority span{line-height:1.75}
.bnps-21414-villa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21414-villa-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21414-villa-grid strong,.bnps-21414-villa-grid span{display:block}.bnps-21414-villa-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21414-villa-status{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21414-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21414-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21414-villa-authority{margin-top:28px;padding-top:22px}.bnps-21414-villa-authority h2{font-size:25px}.bnps-21414-villa-authority h3{font-size:20px}.bnps-21414-villa-grid{grid-template-columns:1fr}.bnps-21414-villa-grid>div{padding:14px 15px}}

/* 2.14.15 — Liền kề Vinhomes King Park authority layer */
.bnps-21415-lienke-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21415-lienke-authority h2,.bnps-21415-lienke-authority h3{color:#116530}
.bnps-21415-lienke-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21415-lienke-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21415-lienke-authority p,.bnps-21415-lienke-authority span{line-height:1.75}
.bnps-21415-lienke-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21415-lienke-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21415-lienke-grid strong,.bnps-21415-lienke-grid span{display:block}.bnps-21415-lienke-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21415-lienke-status{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21415-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21415-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21415-lienke-authority{margin-top:28px;padding-top:22px}.bnps-21415-lienke-authority h2{font-size:25px}.bnps-21415-lienke-authority h3{font-size:20px}.bnps-21415-lienke-grid{grid-template-columns:1fr}.bnps-21415-lienke-grid>div{padding:14px 15px}}

/* ===== Simple 2.14.16: shophouse satellite authority ===== */
.bnps-21416-shophouse-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21416-shophouse-authority h2,.bnps-21416-shophouse-authority h3{color:#116530}
.bnps-21416-shophouse-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21416-shophouse-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21416-shophouse-authority p,.bnps-21416-shophouse-authority span{line-height:1.75}
.bnps-21416-shophouse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21416-shophouse-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21416-shophouse-grid strong,.bnps-21416-shophouse-grid span{display:block}.bnps-21416-shophouse-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21416-shophouse-status{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21416-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21416-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21416-shophouse-authority{margin-top:28px;padding-top:22px}.bnps-21416-shophouse-authority h2{font-size:25px}.bnps-21416-shophouse-authority h3{font-size:20px}.bnps-21416-shophouse-grid{grid-template-columns:1fr}.bnps-21416-shophouse-grid>div{padding:14px 15px}}


/* ===== Simple 2.14.17: apartment satellite authority ===== */
.bnps-21417-apartment-authority{margin-top:34px;padding-top:26px;border-top:1px solid #e5e7eb;color:#374151}
.bnps-21417-apartment-authority h2,.bnps-21417-apartment-authority h3{color:#116530}
.bnps-21417-apartment-authority h2{font-size:30px;line-height:1.28;margin:0 0 15px}
.bnps-21417-apartment-authority h3{font-size:22px;margin:28px 0 10px}
.bnps-21417-apartment-authority p,.bnps-21417-apartment-authority span{line-height:1.75}
.bnps-21417-apartment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.bnps-21417-apartment-grid>div{padding:15px 17px;background:#f7faf8;border:1px solid #dfe9e2;border-radius:10px}
.bnps-21417-apartment-grid strong,.bnps-21417-apartment-grid span{display:block}.bnps-21417-apartment-grid strong{color:#174d2d;margin-bottom:5px}
.bnps-21417-apartment-status{margin:18px 0;padding:16px 18px;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px;line-height:1.7}
.bnps-21417-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}
.bnps-21417-links a{color:#146c3a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.bnps-21417-apartment-authority{margin-top:28px;padding-top:22px}.bnps-21417-apartment-authority h2{font-size:25px}.bnps-21417-apartment-authority h3{font-size:20px}.bnps-21417-apartment-grid{grid-template-columns:1fr}.bnps-21417-apartment-grid>div{padding:14px 15px}}


/* ===== Simple 2.14.18: compact King Park cluster navigation ===== */
.bnps-cluster-strip{margin-top:30px!important;padding:22px 24px!important}
.bnps-cluster-strip h2{font-size:22px!important;font-weight:600!important}
.bnps-cluster-strip p{margin-bottom:10px!important}
.bnps-cluster-strip .bnps-cluster-pillar{display:inline-block;margin-bottom:4px}
.bnps-cluster-strip .cluster-more{gap:7px 18px!important;margin-top:10px!important}
.bnps-cluster-strip .cluster-more a{font-size:14px!important;font-weight:650!important}
@media(max-width:700px){.bnps-cluster-strip{padding:19px 18px!important}.bnps-cluster-strip h2{font-size:20px!important}.bnps-cluster-strip .cluster-more{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px!important}}

/* ===== Simple 2.15.0: Cát Tường Smart City ===== */
.bnps-cat-tuong .lp-builder-content h2{color:#116530}
.bnps-project-lead{font-size:18px;line-height:1.8}
.cts-factbox{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 30px}
.cts-factbox>div{padding:16px 18px;border:1px solid #dfe9e2;border-radius:10px;background:#f7faf8}
.cts-factbox span,.cts-factbox strong{display:block}.cts-factbox span{font-size:12px;letter-spacing:.06em;color:#6b7280;margin-bottom:5px}.cts-factbox strong{color:#174d2d;line-height:1.45}
.cts-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.cts-price-grid>div{padding:18px 14px;text-align:center;background:#fffaf0;border:1px solid #ead7a3;border-radius:10px}.cts-price-grid span,.cts-price-grid strong{display:block}.cts-price-grid span{font-size:14px;color:#6b7280;margin-bottom:5px}.cts-price-grid strong{font-size:19px;color:#174d2d}
.cts-note{margin:18px 0;padding:16px 18px;background:#fffaf0;border-left:4px solid #c7a34b;border-radius:8px;line-height:1.7}
.cts-source{font-size:14px!important;color:#6b7280!important;font-style:italic}.cts-cta{margin-top:34px}
@media(max-width:767px){.cts-factbox,.cts-price-grid{grid-template-columns:1fr}.bnps-project-lead{font-size:16px}.cts-price-grid>div{text-align:left}.cts-factbox>div{padding:14px 15px}}

/* ===== Simple 2.15.1: Cát Tường Smart City imagery ===== */
.cts-project-image{margin:24px 0 32px;border-radius:18px;overflow:hidden;background:#f4f4f1;box-shadow:0 10px 28px rgba(20,55,35,.10)}
.cts-project-image img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover}
.cts-project-image figcaption{padding:10px 14px;font-size:13px;line-height:1.55;color:#667067;background:#f8faf8}
.cts-hero-image{margin-top:0}
.cts-hero-image img{aspect-ratio:16/9;object-fit:cover}
@media(max-width:767px){.cts-project-image{margin:18px 0 24px;border-radius:12px}.cts-project-image figcaption{font-size:12px}.cts-hero-image img{aspect-ratio:4/3}}


/* ===== Simple 2.15.3: Cát Tường local imagery polish ===== */
.bnps-cat-tuong .lp-project-hero{background-size:cover;background-position:center;position:relative}
.bnps-cat-tuong .lp-project-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,52,42,.88),rgba(4,98,74,.55))}
.bnps-cat-tuong .lp-project-hero-inner{position:relative;z-index:1}
.bnps-cat-tuong .cts-project-image img{width:100%;aspect-ratio:16/9;object-fit:cover}

/* ===== Simple 2.17.0: unified premium project visual system ===== */
.bnps-royal-mansion .lp-builder-content,.bnps-cat-tuong .lp-builder-content{font-size:16px;line-height:1.82}
.bnps-royal-mansion .lp-builder-content h2,.bnps-cat-tuong .lp-builder-content h2{font-weight:500;letter-spacing:.02em;margin-top:44px;margin-bottom:18px}
.bnps-royal-mansion .lp-builder-content h2{color:#0c6259}
.bnps-2170-figure{border-radius:16px;box-shadow:0 14px 36px rgba(15,52,42,.11);border:1px solid rgba(19,92,65,.08)}
.bnps-2170-figure img{max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;background:#f7f7f4}
.bnps-2170-hero{margin-top:0!important;border-radius:18px}
.bnps-2170-hero img{width:100%;aspect-ratio:16/9!important;object-fit:cover!important}
.bnps-2170-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 34px}
.bnps-2170-gallery figure{margin:0;border-radius:14px;overflow:hidden;background:#f5f6f3;border:1px solid #e4e9e4;box-shadow:0 8px 24px rgba(18,54,38,.08)}
.bnps-2170-gallery img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}
.bnps-2170-gallery figure:hover img{transform:scale(1.015)}
.bnps-royal-mansion .cts-factbox>div{background:#f7faf8;border-color:#dce8e3}
.bnps-royal-mansion .cts-factbox strong{color:#0c6259}
.bnps-royal-mansion .seo-cta,.bnps-cat-tuong .seo-cta{border-radius:18px;overflow:hidden}
@media(max-width:767px){
 .bnps-royal-mansion .lp-builder-content h2,.bnps-cat-tuong .lp-builder-content h2{margin-top:34px;font-size:25px}
 .bnps-2170-gallery{grid-template-columns:1fr 1fr;gap:9px;margin:16px 0 26px}
 .bnps-2170-gallery figure{border-radius:10px}
 .bnps-2170-gallery img{aspect-ratio:1/1;object-fit:cover}
 .bnps-2170-hero{border-radius:12px}.bnps-2170-hero img{aspect-ratio:4/3!important}
}

/* ===== Simple 2.17.2: Royal Mansion floorplans — full image, no crop ===== */
.bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"]{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  margin:22px 0 38px;
}
.bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"] figure{
  margin:0;
  width:100%;
  overflow:visible;
  border-radius:14px;
  background:#fff;
  border:1px solid #e4e9e4;
  box-shadow:0 8px 24px rgba(18,54,38,.08);
  padding:12px;
}
.bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"] img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
  object-fit:contain;
  transform:none;
  margin:0 auto;
}
.bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"] figure:hover img{transform:none}
@media(max-width:767px){
 .bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"]{grid-template-columns:1fr;gap:16px;margin:16px 0 28px}
 .bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"] figure{padding:6px;border-radius:10px}
 .bnps-royal-mansion .bnps-2170-gallery[aria-label="Mặt bằng căn hộ Royal Mansion"] img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
}

/* === 2.17.3: Lightbox ảnh nội dung dự án / bài viết === */
.bnps-lightbox-image{cursor:zoom-in}
.bnps-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(5,10,8,.94);display:none;align-items:center;justify-content:center;padding:58px 58px 72px;touch-action:none}
.bnps-lightbox.is-open{display:flex}
body.bnps-lightbox-open{overflow:hidden}
.bnps-lightbox-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.bnps-lightbox-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:center center;transition:transform .15s ease;user-select:none;-webkit-user-drag:none}
.bnps-lightbox-stage.is-zoomed img{max-width:none;max-height:none;cursor:grab}
.bnps-lb-close{position:absolute;right:14px;top:10px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:34px;line-height:40px;cursor:pointer;z-index:3}
.bnps-lightbox-toolbar{position:absolute;left:50%;top:12px;transform:translateX(-50%);display:flex;align-items:center;gap:14px;color:#fff;z-index:3}
.bnps-lightbox-toolbar button,.bnps-lightbox-zoom button{border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;min-width:42px;height:40px;padding:0 13px;font-size:20px;cursor:pointer}
.bnps-lb-count{font-size:14px;min-width:52px;text-align:center}
.bnps-lightbox-zoom{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.bnps-lightbox-zoom .bnps-lb-reset{font-size:13px;min-width:64px}
@media(max-width:767px){
 .bnps-lightbox{padding:54px 6px 66px}
 .bnps-lb-close{right:8px;top:7px;width:40px;height:40px;font-size:30px}
 .bnps-lightbox-toolbar{top:8px;gap:7px}
 .bnps-lightbox-toolbar button{min-width:38px;height:38px;padding:0 10px}
 .bnps-lightbox-stage img{max-width:100%;max-height:100%}
 .bnps-lightbox-zoom{bottom:10px}
}


/* ===== Simple 2.17.5: unified project headings + mobile lightbox close ===== */
/* Keep every current/future project page in the same heading system as Royal Mansion / Cat Tuong. */
body.single-du_an .lp-builder-content > h2,
body.single-du_an .lp-builder-content h2.wp-block-heading{
  color:#0c6259!important;
  font-size:34px!important;
  line-height:1.25!important;
  font-weight:500!important;
  letter-spacing:.02em!important;
  text-align:left!important;
  margin-top:44px!important;
  margin-bottom:18px!important;
}
body.single-du_an .lp-builder-content > h3,
body.single-du_an .lp-builder-content h3.wp-block-heading{
  color:#0c6259!important;
  font-weight:500!important;
}
/* Explicitly neutralize the older King Park centered heading treatment. */
body.single-du_an.bnps-kingpark .lp-builder-content > h2{
  max-width:none!important;
  text-align:left!important;
  color:#0c6259!important;
  font-size:34px!important;
  font-weight:500!important;
  letter-spacing:.02em!important;
}
/* Close button must remain visible above mobile browser safe areas and all lightbox controls. */
.bnps-lb-close{
  z-index:1000002!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:1!important;
  visibility:visible!important;
  background:rgba(0,0,0,.72)!important;
  border:2px solid rgba(255,255,255,.92)!important;
  box-shadow:0 3px 16px rgba(0,0,0,.35)!important;
}
@media(max-width:900px){
  body.single-du_an .lp-builder-content > h2,
  body.single-du_an .lp-builder-content h2.wp-block-heading,
  body.single-du_an.bnps-kingpark .lp-builder-content > h2{
    color:#0c6259!important;
    font-size:25px!important;
    line-height:1.32!important;
    font-weight:500!important;
    letter-spacing:.02em!important;
    text-align:center!important;
    margin-top:34px!important;
    margin-bottom:18px!important;
  }
  .bnps-lb-close{
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top, 0px))!important;
    right:calc(10px + env(safe-area-inset-right, 0px))!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    font-size:34px!important;
    line-height:1!important;
  }
  .bnps-lightbox-toolbar{top:calc(12px + env(safe-area-inset-top, 0px))!important;max-width:calc(100% - 130px)}
}
@media(max-width:430px){
  body.single-du_an .lp-builder-content > h2,
  body.single-du_an .lp-builder-content h2.wp-block-heading,
  body.single-du_an.bnps-kingpark .lp-builder-content > h2{font-size:23px!important}
}

/* ===== Simple 2.17.6: true fullscreen mobile lightbox ===== */
/* Mobile header/contact layers use very high z-index values, so the viewer must sit above them. */
.bnps-lightbox{
  z-index:2147483646!important;
  top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100vw!important;height:100dvh!important;
  margin:0!important;
}
.bnps-lightbox.is-open{display:flex!important}
.bnps-lb-close{
  position:fixed!important;
  z-index:2147483647!important;
  top:max(12px, env(safe-area-inset-top, 0px))!important;
  right:max(12px, env(safe-area-inset-right, 0px))!important;
  width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;
  padding:0!important;margin:0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border:2px solid #fff!important;border-radius:50%!important;
  background:rgba(0,0,0,.82)!important;color:#fff!important;
  font-family:Arial,sans-serif!important;font-size:38px!important;font-weight:400!important;line-height:1!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  box-shadow:0 4px 18px rgba(0,0,0,.55)!important;
  -webkit-appearance:none!important;appearance:none!important;
}
body.bnps-lightbox-open .site-header,
body.bnps-lightbox-open .project-subnav,
body.bnps-lightbox-open .float-contact-icons,
body.bnps-lightbox-open .float-info-btn,
body.bnps-lightbox-open .float-phone{visibility:hidden!important}
@media(max-width:767px){
  .bnps-lightbox{padding:70px 6px calc(72px + env(safe-area-inset-bottom, 0px))!important}
  .bnps-lb-close{top:calc(12px + env(safe-area-inset-top, 0px))!important;right:12px!important}
}

/* 2.17.12: King Park green registration panel — restore readable white heading.
   Scoped to the CTA only; preserve all form, SEO and other project styles. */
body.single-du_an.bnps-kingpark .lp-builder-content .kp-final-cta h2,
body.single-du_an.bnps-kingpark .lp-builder-content .kp-final-cta h2.wp-block-heading,
body.single-du_an.bnps-kingpark .lp-builder-content .kp-final-cta .kp-cta-title{
  color:#ffffff!important;
  opacity:1!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* 2.17.15: Restore contrast for the WHITE deep-links card nested inside
   the GREEN King Park CTA. Override the CTA's white h2 rule only here. */
body.single-du_an.bnps-kingpark .lp-builder-content .kp-final-cta .bnps-kp-deep-links h2,
body.single-du_an.bnps-kingpark .lp-builder-content .kp-final-cta .bnps-kp-deep-links h2.wp-block-heading,
body.single-du_an.bnps-kingpark .kp-final-cta .bnps-kp-deep-links > h2 {
  color:#075c4d!important;
  -webkit-text-fill-color:#075c4d!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* 2.17.16 — independent transfer/rental listings and equal-height cards */
.listing-grid-equal{align-items:stretch}
.listing-grid-equal .listing-card{display:flex;flex-direction:column;min-width:0;height:100%}
.listing-grid-equal .listing-media{width:100%;aspect-ratio:16/10;flex:none}
.listing-grid-equal .listing-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.listing-grid-equal .listing-body{display:flex;flex-direction:column;flex:1;min-width:0}
.listing-grid-equal .listing-body h3{font-size:19px;line-height:1.42;min-height:2.84em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.listing-grid-equal .listing-body p{font-size:14px;line-height:1.65;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin-top:8px}
.listing-grid-equal .listing-body .readmore{margin-top:auto;padding-top:12px}
.listing-grid-equal .listing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.listing-grid-equal .listing-facts span{min-width:0;overflow-wrap:anywhere}
.listing-tabs a.is-active{background:#075846;color:#fff}
@media(max-width:700px){.listing-grid-equal .listing-body h3{min-height:0}}

/* 2.17.17: independent homepage sections and aligned cards */
.market-split .transfer-col{max-width:1100px;margin:0 auto;width:100%;}
.market-split .mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;}
.market-split .mini-card{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;}
.market-split .mini-card>img{width:100%;height:190px;object-fit:cover;flex:none;}
.market-split .mini-card .mini-placeholder{height:190px;}
.market-split .mini-card .copy{display:flex;flex-direction:column;flex:1;min-width:0;}
.market-split .mini-card h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.market-split .mini-card .meta{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;}
.market-split .mini-card .readmore{margin-top:auto;padding-top:12px;}
.market-split .view-all{display:block;text-align:right;margin-top:20px;}
@media(max-width:850px){.market-split .mini-list{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:580px){.market-split .mini-list{grid-template-columns:1fr;}.market-split .mini-card>img{height:210px;}}

/* 2.17.18: four-column listing archives and related listings on single pages */
.bnps-four-col{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bnps-four-col .listing-body{padding:16px}
.bnps-four-col .listing-body h3{font-size:17px;line-height:1.4}
.bnps-four-col .listing-body p{font-size:13px;line-height:1.6}
.bnps-related-listings{padding:48px 0 56px;border-top:1px solid #e4e9e5;margin-top:48px}
.bnps-related-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.bnps-related-heading h2{font-size:28px;margin:0 0 6px}
.bnps-related-heading p{color:#697770;margin:0}
.bnps-view-all,.bnps-listing-back a{color:#075846;font-weight:700;text-decoration:none}
.bnps-listing-back{text-align:center;margin:30px 0 0}
@media(max-width:1050px){.bnps-four-col{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bnps-four-col{grid-template-columns:1fr}.bnps-related-heading{align-items:flex-start;flex-direction:column}.bnps-related-heading h2{font-size:23px}}

/* 2.17.19: consistently centered related cards and 4-column archives */
.listing-single .bnps-related-listings{width:100%;max-width:1180px;margin:48px auto 0;padding:40px 0 56px;clear:both}
.listing-single .bnps-related-listings .listing-grid{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.listing-single .bnps-related-listings .listing-card{max-width:none;margin:0;min-width:0}
.bnps-no-related{padding:24px;background:#f5f8f6;border:1px solid #e2eae6;border-radius:12px;color:#435c53}
.subpage-content .listing-grid.bnps-four-col{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1050px){.listing-single .bnps-related-listings .listing-grid,.subpage-content .listing-grid.bnps-four-col{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.listing-single .bnps-related-listings .listing-grid,.subpage-content .listing-grid.bnps-four-col{grid-template-columns:1fr}}

/* 2.17.20: Home transfer/rental sections align with project and news widths. */
body.home .market-split > .container{width:min(1180px,calc(100% - 36px));max-width:1180px;}
body.home .market-split .transfer-col{max-width:none;width:100%;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;}
body.home .market-split .mini-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch;}
body.home .market-split .mini-card{display:flex;flex-direction:column;height:100%;min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 7px 22px rgba(20,50,42,.06);}
body.home .market-split .mini-card > img,body.home .market-split .mini-card > .mini-placeholder{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;flex:none;}
body.home .market-split .mini-card .copy{display:flex;flex-direction:column;flex:1;padding:18px;min-width:0;}
body.home .market-split .mini-card h3{font-size:17px;line-height:1.4;margin:7px 0 9px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
body.home .market-split .mini-card .meta{font-size:13px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;}
body.home .market-split .mini-card .readmore{margin-top:auto;padding-top:16px;}
body.home .market-split .view-all{margin-top:22px;}
body.home .market-split .empty-listing{grid-column:1/-1;}
@media(max-width:980px){body.home .market-split .mini-list{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){body.home .market-split .mini-list{grid-template-columns:1fr;}body.home .market-split .mini-card > img,body.home .market-split .mini-card > .mini-placeholder{aspect-ratio:16/10;height:auto;}}

/* 2.17.21: Disable manual resizing for visitor lead-form notes only. */
.lead-form textarea[name="note"] { resize: none; max-width: 100%; }

/* 2.17.28 — News sections: comfortable separation and subtle alternating panels.
   Scoped to the Tin tuc page sections; no changes to homepage/project sections. */
main.subpage-content > .container > .news-market-section,
main.subpage-content > .container > .news-cluster-section {
  margin: 0 0 48px;
  padding: 36px 30px 42px;
  border-radius: 18px;
  background: #fff;
}
main.subpage-content > .container > .news-market-section:nth-of-type(even),
main.subpage-content > .container > .news-cluster-section:nth-of-type(even) {
  background: #f3f7f6;
}
main.subpage-content > .container > .news-market-section > .news-cluster-head {
  border-top: 0;
  padding-top: 0;
}
main.subpage-content > .container > .news-market-section .news-page-card,
main.subpage-content > .container > .news-cluster-section .news-page-card {
  background: #fff;
}
@media (max-width: 620px) {
  main.subpage-content > .container > .news-market-section,
  main.subpage-content > .container > .news-cluster-section {
    margin-bottom: 30px;
    padding: 24px 16px 30px;
    border-radius: 14px;
  }
}

/* 2.17.29 — News topic archive: 4 columns on desktop, responsive layout. */
body.category .bnps-category-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px}
body.category .bnps-category-archive-grid .news-page-card{min-width:0}
body.category .bnps-category-archive-grid .news-page-media{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:9px;background:#eef2ef}
body.category .bnps-category-archive-grid .news-page-media img{width:100%;height:100%;object-fit:cover}
body.category .bnps-category-archive-grid .news-page-body{padding:12px 0 0}
body.category .bnps-category-archive-grid .news-page-body h2{font-size:18px;line-height:1.45;font-weight:500;margin:0}
body.category .bnps-category-archive-grid .news-page-body p,body.category .bnps-category-archive-grid .readmore{display:none}
body.category .bnps-category-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:36px 0 0}
body.category .bnps-category-pagination .page-numbers{padding:8px 14px;border:1px solid #dce7e2;border-radius:8px}
body.category .bnps-category-pagination .current{background:#075846;color:#fff}
@media(max-width:900px){body.category .bnps-category-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}}
@media(max-width:520px){body.category .bnps-category-archive-grid{grid-template-columns:1fr}}

/* 2.17.31: 8 project cards on homepage (4 x 2), independent of old carousel styles. */
body.home .bnps-projects-grid, .bnps-project-archive .bnps-projects-grid {
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;
 overflow:visible!important;scroll-snap-type:none!important;padding:0!important;
}
body.home .bnps-projects-grid > .project-card, .bnps-project-archive .bnps-projects-grid > .project-card {min-width:0!important;width:auto!important;max-width:none!important;scroll-snap-align:none!important}
.bnps-projects-head {align-items:center!important;flex-wrap:wrap}
.bnps-projects-all {color:#075846;font-weight:800;font-size:15px;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}
.bnps-projects-all:hover {color:#0a8066}
.bnps-project-archive .project-card .card-body{display:flex;flex-direction:column;min-height:190px}
.bnps-project-archive .project-card .readmore{margin-top:auto}
.bnps-project-placeholder{display:grid;place-items:center;height:100%;min-height:150px;background:#eaf4f0;color:#075846;font-weight:800}
.bnps-project-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:34px 0 0}
.bnps-project-pagination .page-numbers{padding:9px 14px;border:1px solid #d9e6e0;border-radius:8px}
.bnps-project-pagination .current{background:#075846;color:#fff}
@media(max-width:900px){body.home .bnps-projects-grid,.bnps-project-archive .bnps-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}}
@media(max-width:560px){body.home .bnps-projects-grid,.bnps-project-archive .bnps-projects-grid{grid-template-columns:minmax(0,1fr)!important} .bnps-projects-all{font-size:14px}}

/* 2.17.32: keep the homepage project cards as a static 4-column grid. */
body.home #du-an-dang-trien-khai .bnps-projects-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important}
body.home #du-an-dang-trien-khai .carousel-btn{display:none!important}
@media(max-width:900px){body.home #du-an-dang-trien-khai .bnps-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){body.home #du-an-dang-trien-khai .bnps-projects-grid{grid-template-columns:1fr!important}}

/* 2.17.33: position the all-projects link beneath the 8-card grid. */
body.home #du-an-dang-trien-khai .bnps-projects-footer{display:flex;justify-content:flex-end;align-items:center;margin-top:24px;padding:0 2px}
body.home #du-an-dang-trien-khai .bnps-projects-footer .bnps-projects-all{display:inline-flex;align-items:center;text-align:right}
@media(max-width:560px){body.home #du-an-dang-trien-khai .bnps-projects-footer{margin-top:18px}}


/* 2.17.34: align project-card detail links at the bottom-right on the homepage.
   Scope strictly to the deployed homepage project grid. */
body.home #du-an-dang-trien-khai .bnps-projects-grid > .project-card {
  display:flex;
  flex-direction:column;
}
body.home #du-an-dang-trien-khai .bnps-projects-grid > .project-card > a {
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-width:0;
  width:100%;
  height:100%;
}
body.home #du-an-dang-trien-khai .bnps-projects-grid > .project-card .card-media {
  flex:0 0 auto;
}
body.home #du-an-dang-trien-khai .bnps-projects-grid > .project-card .card-body {
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  width:100%;
  min-height:0;
}
body.home #du-an-dang-trien-khai .bnps-projects-grid > .project-card .readmore {
  display:block;
  align-self:flex-end;
  margin-top:auto;
  padding-top:16px;
  text-align:right;
}

/* 2.17.35 — All news-topic archive buttons use the same centered pill as market news. */
main.subpage-content > .container > .news-cluster-section .news-more-wrap{margin-top:34px;text-align:center}
main.subpage-content > .container > .news-cluster-section .news-more-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);border-radius:999px;padding:12px 24px;color:var(--green);font-size:14px;font-weight:600;background:#fff;text-decoration:none}
main.subpage-content > .container > .news-cluster-section .news-more-btn:hover{background:var(--green);color:#fff}

/* 2.17.39 - Thong tin minh bach nguoi tu van tai footer */
.footer .bnps-advisor-disclosure{margin-top:18px;padding-top:15px;border-top:1px solid rgba(255,255,255,.22);max-width:100%;overflow-wrap:anywhere}
.footer .bnps-advisor-disclosure h4{font-size:15px;line-height:1.5;margin:0 0 10px;font-weight:700;color:inherit}
.footer .bnps-advisor-disclosure p{font-size:13px;line-height:1.7;margin:0 0 9px;opacity:.92}
