/* NovAsia component theme: one small visual layer shared by every route. */
:root{--nct-gold:#d4af6a;--nct-gold-hi:#f0d395;--nct-ink:#081813;--nct-panel:#102a22;--nct-panel-2:#143329;--nct-line:rgba(212,175,106,.28);--nct-line-hi:rgba(212,175,106,.62);--nct-shadow:0 14px 32px rgba(0,0,0,.18);--nct-rise:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.ns-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
*{scroll-margin-top:96px}
:is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--nct-gold-hi);outline-offset:3px}

/* 0. Content-page and project title colour: NovAsia gold (restored 2026-08-18).
   Scoped to .bwrap content so the two-tone home hero (.mh-main) is untouched. */
main.bwrap h1{color:var(--nct-gold)!important}

/* 1. Header, menu and country selector */
.bhead{border-bottom-color:var(--nct-line)!important;box-shadow:0 1px 0 rgba(255,255,255,.03),0 8px 24px rgba(0,0,0,.13)}
.bnav .navlink,.bnav-actions a,.market-switch a{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.bnav .navlink:hover,.bnav .navlink:focus-visible{color:var(--nct-gold-hi)!important}
.bnav .dropdown{border-color:var(--nct-line-hi)!important;box-shadow:var(--nct-shadow)!important;background:linear-gradient(180deg,rgba(20,51,41,.99),rgba(8,24,19,.99))!important}
.bnav .dropdown a{border-radius:7px}.bnav .dropdown a:hover{background:rgba(212,175,106,.11)!important;color:var(--nct-gold-hi)!important}
.market-switch{border-color:var(--nct-line-hi)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.market-switch a.on{box-shadow:0 2px 12px rgba(212,175,106,.14)}
.burger,.desktop-menu-toggle{border-color:var(--nct-line-hi)!important;transition:var(--nct-rise)}
.burger:hover,.desktop-menu-toggle:hover{border-color:var(--nct-gold-hi)!important;background:rgba(212,175,106,.1)!important}

/* 2. Buttons and calls to action */
:is(.rh-btn,.mh-btn,.cta-btn,.hub-cta .btn-ask,.ih-page .ih-cta-primary,.pcard-cta .ask,.zh-btn.primary,.bnav-tg,.bnav-wa,.vsx-bbtn,.pj-ask,.nsfoot-cta){box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 14px rgba(0,0,0,.13);transition:var(--nct-rise)!important}
:is(.rh-btn,.mh-btn,.cta-btn,.hub-cta .btn-ask,.ih-page .ih-cta-primary,.pcard-cta .ask,.zh-btn.primary,.bnav-tg,.bnav-wa,.vsx-bbtn,.pj-ask,.nsfoot-cta):hover{transform:translateY(-1px);filter:brightness(1.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 9px 20px rgba(0,0,0,.2)}
:is(.rh-btn,.mh-btn,.cta-btn,.hub-cta .btn-ask,.ih-page .ih-cta-primary,.pcard-cta .ask,.zh-btn.primary,.bnav-tg,.bnav-wa,.vsx-bbtn,.pj-ask,.nsfoot-cta):active{transform:translateY(0)}
:is(.rh-btn:not(.primary),.mh-btn:not(.primary),.hub-cta .btn-open,.pcard-cta .open,.zh-btn:not(.primary)){border-color:var(--nct-line-hi)!important}

/* 3. Chips, tabs and filters */
:is(.pf-btn,.pf-chip,.pf-sum,.pf-control>summary,.pf-sort>select,.pf-mobile-trigger,.hubnav-i,.rh-nav-chip,.rh-secnav a,.pj-nav a,.cmp-chip,.cmp-goal,.lp-sections){border-color:var(--nct-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);transition:var(--nct-rise)!important}
:is(.pf-btn,.pf-chip,.pf-sum,.pf-control>summary,.pf-sort>select,.pf-mobile-trigger,.hubnav-i,.rh-nav-chip,.rh-secnav a,.pj-nav a,.cmp-chip,.cmp-goal):hover{border-color:var(--nct-line-hi)!important;background-color:rgba(212,175,106,.09)!important;color:var(--nct-gold-hi)!important}
:is(.pf-btn.is-on,.pf-chip.is-on,.hubnav-i.is-on,.rh-nav-chip.is-active,.cmp-chip.is-on,.cmp-goal.is-on){box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 5px 12px rgba(0,0,0,.12)}
.pf-modern,.pf-menu,.pf-zero{border-color:var(--nct-line)!important;box-shadow:var(--nct-shadow)}
.pf-active-chip::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--nct-gold);box-shadow:0 0 0 3px rgba(212,175,106,.12)}

/* 4. Forms */
:is(input:not([type=checkbox]):not([type=radio]),textarea,select,.pf-search,.pf-budget-fields input,.pj-form input,.pj-form select,.pj-form textarea){border-color:var(--nct-line)!important;background-color:rgba(8,24,19,.42)!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.16);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}
:is(input:not([type=checkbox]):not([type=radio]),textarea,select,.pf-search,.pf-budget-fields input,.pj-form input,.pj-form select,.pj-form textarea):hover{border-color:rgba(212,175,106,.45)!important}
:is(input:not([type=checkbox]):not([type=radio]),textarea,select,.pf-search,.pf-budget-fields input,.pj-form input,.pj-form select,.pj-form textarea):focus{border-color:var(--nct-gold)!important;box-shadow:0 0 0 3px rgba(212,175,106,.13),inset 0 1px 2px rgba(0,0,0,.14)!important;outline:0}
input[type=checkbox],input[type=radio]{accent-color:var(--nct-gold)}
::placeholder{color:rgba(229,237,232,.47)!important}

/* 5. Tables and comparisons */
:is(.rh-tablewrap,.cmp-table-wrap,.ih-scroll,.vsx-tablewrap){border:1px solid var(--nct-line);border-radius:12px;overflow:auto;background:rgba(8,24,19,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
:is(.rh-table,.bwrap table,.cmp-table,.ih-scroll table,.vsx-table){margin:0!important}
:is(.rh-table th,.bwrap th,.cmp-table th,.ih-scroll th,.vsx-table th){background:linear-gradient(180deg,rgba(212,175,106,.13),rgba(212,175,106,.045))!important;border-bottom-color:var(--nct-line-hi)!important;color:var(--nct-gold-hi)!important}
:is(.rh-table td,.bwrap td,.cmp-table td,.ih-scroll td,.vsx-table td){border-color:rgba(212,175,106,.14)!important}
:is(.rh-table tbody tr:nth-child(even),.bwrap tbody tr:nth-child(even),.cmp-table tbody tr:nth-child(even),.ih-scroll tbody tr:nth-child(even),.vsx-table tbody tr:nth-child(even)){background:rgba(212,175,106,.028)}

/* 6-8. Project, developer and expert cards */
:is(.pcard,.team-card,.rh-idxcard,.rh-explore-card,.bcard,.rcard,.dev-card,.thdev-card){border-color:var(--nct-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 7px 18px rgba(0,0,0,.09);transition:var(--nct-rise)!important}
:is(.pcard,.team-card,.rh-idxcard,.rh-explore-card,.bcard,.rcard,.dev-card,.thdev-card):hover{border-color:var(--nct-line-hi)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 28px rgba(0,0,0,.18);transform:translateY(-2px)}
.pcard,.team-card,.rh-idxcard{position:relative}.pcard::before,.team-card::before,.rh-idxcard::before{content:"";position:absolute;top:0;right:0;width:58px;height:58px;pointer-events:none;background:right top/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 58 58' fill='none'%3E%3Cpath d='M57 .5H22.5M57 .5V35' stroke='%23D4AF6A' stroke-opacity='.58'/%3E%3Cpath d='M49 8.5H29.5M49 8.5V28' stroke='%23D4AF6A' stroke-opacity='.28'/%3E%3Ccircle cx='49' cy='8.5' r='1.5' fill='%23D4AF6A' fill-opacity='.72'/%3E%3C/svg%3E");opacity:.62}
.pcard-img::after,.pcard-ph::after{content:"";position:absolute;inset:0;border:1px solid rgba(212,175,106,.2);pointer-events:none;background:linear-gradient(135deg,rgba(212,175,106,.13),transparent 28%,transparent 74%,rgba(212,175,106,.09))}
.pcard-badge,.pcard-stage,.src-label{border-color:rgba(212,175,106,.48)!important;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.src-label .dot{background:var(--nct-gold)!important;box-shadow:0 0 0 3px rgba(212,175,106,.1)}
.pcard-price-anchor{color:var(--nct-gold-hi)!important}.pcard-price-anchor::after{content:"";display:block;width:38px;height:8px;margin-top:2px;background:left center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 8' fill='none'%3E%3Cpath d='M1 4h28M24 1l4 3-4 3' stroke='%23D4AF6A' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='34.5' cy='4' r='1.5' fill='%23D4AF6A' fill-opacity='.68'/%3E%3C/svg%3E");opacity:.76}
.team-av{box-shadow:0 0 0 2px rgba(212,175,106,.65),0 0 0 6px rgba(212,175,106,.09),0 10px 22px rgba(0,0,0,.2)}
.team-card .tflag,.team-card .tmore{border-color:var(--nct-line-hi)!important}.team-card .tmore::before{content:"✦";color:var(--nct-gold);margin-right:6px}

/* 9. Hub widgets and expert views */
:is(.rh-cardgrid>*,.rh-cbox,.rh-checklist,.rh-ddChecklist,.rh-doccheck,.rh-costbands,.rh-comparisonTable,.rh-expert,.rh-botbanner,.rh-band,.rh-timeline,.rh-greenFlags,.rh-mythFact,.rh-doDont,.rh-decisionHelper,.vsx-expert){border-color:var(--nct-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 7px 18px rgba(0,0,0,.08)}
:is(.rh-cardgrid>*,.rh-cbox,.rh-checklist,.rh-ddChecklist,.rh-doccheck,.rh-costbands,.rh-comparisonTable,.rh-expert,.rh-botbanner,.rh-band,.rh-timeline,.rh-greenFlags,.rh-mythFact,.rh-doDont,.rh-decisionHelper,.vsx-expert) h2::before,:is(.rh-cardgrid>*,.rh-cbox,.rh-checklist,.rh-ddChecklist,.rh-doccheck,.rh-costbands,.rh-comparisonTable,.rh-expert,.rh-botbanner,.rh-band,.rh-timeline,.rh-greenFlags,.rh-mythFact,.rh-doDont,.rh-decisionHelper,.vsx-expert) h3::before{content:"";display:inline-block;width:18px;margin:0 8px 5px 0;border-top:2px solid var(--nct-gold);vertical-align:middle}
.rh-check::before,.rh-dd-check::before,.rh-gf__check::before{color:var(--nct-gold)!important;text-shadow:0 0 10px rgba(212,175,106,.24)}
.rh-cb-track,.rh-bc-range{background:rgba(212,175,106,.12) url('/assets/img/ornaments/range-bar-track.png') center/auto 100% repeat-x!important;border-color:rgba(212,175,106,.26)!important}
.rh-cb-fill{background:linear-gradient(90deg,rgba(212,175,106,.48),var(--nct-gold))!important}
.rh-note,.rh-cb-note,.rh-costx-hint{border-left:2px solid var(--nct-gold);padding-left:12px}
.rh-expert,.vsx-expert{position:relative}.rh-expert::before,.vsx-expert::before{content:"";position:absolute;top:12px;left:12px;width:44px;height:44px;background:url('/assets/img/ornaments/quote-mark.png') center/contain no-repeat;opacity:.15;pointer-events:none}

/* 10. FAQ and sources */
.rh-faq details,.faq details,.accordion details,.rh-srcd{border-color:var(--nct-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.rh-faq summary,.faq summary,.accordion summary,.rh-srcd>summary{transition:color .15s ease,background-color .15s ease}
.rh-faq summary:hover,.faq summary:hover,.accordion summary:hover,.rh-srcd>summary:hover{color:var(--nct-gold-hi)!important}
.rh-faq details[open],.faq details[open],.accordion details[open]{border-color:var(--nct-line-hi)!important;background:rgba(212,175,106,.045)!important}
.rh-faq .a{border-top-color:rgba(212,175,106,.16)!important;background:url('/assets/img/ornaments/faq-divider.png') right bottom/94px auto no-repeat}

/* 11-14. In-page navigation, badges, CTA, favourites and chat */
.btoc,.lp-sheet__panel,.lp-top,.lp-sections,.fav-drawer,.fav-launcher,.nsc-w,.nsc-p{border-color:var(--nct-line-hi)!important;box-shadow:var(--nct-shadow)!important}
.btoc-h::before{content:"";display:inline-block;width:13px;height:13px;vertical-align:-2px;margin-right:7px;background:url('/assets/img/ornaments/toc-glyph.png') center/contain no-repeat}.btoc a{transition:color .15s ease,padding-left .15s ease}.btoc a:hover{padding-left:4px}
.cta,.rh-band,.vsx-band,.ih-cta{border-color:var(--nct-line-hi)!important;background-image:linear-gradient(110deg,rgba(212,175,106,.08),transparent 38%,rgba(212,175,106,.05)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 126 110' fill='none'%3E%3Cpath d='M126 109.5H47.5m78.5 0V31M116 100H69m47 0V53' stroke='%23D4AF6A' stroke-opacity='.42'/%3E%3Cpath d='M50 107c9-12 15-21 30-24s20-14 31-31' stroke='%23D4AF6A' stroke-opacity='.28' stroke-dasharray='3 5'/%3E%3Ccircle cx='81' cy='83' r='3' fill='%23D4AF6A' fill-opacity='.6'/%3E%3C/svg%3E")!important;background-position:center,right bottom!important;background-repeat:no-repeat!important;background-size:auto,110px!important}
:is(.date,.updated,.rh-byline,.hub-meta,.pcard-rel){font-variant-numeric:tabular-nums}
/* Fixed chat panels must keep their viewport-safe frame, including on tap. */
.fav-launcher:hover,.nsc-w:hover{transform:translateY(-2px) scale(1.03)}

/* 15. Footer */
.nsfoot{border-top-color:var(--nct-line-hi)!important}
.nsfoot h3::before{content:"";display:inline-block;width:11px;height:11px;margin-right:7px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='m6 1 1 4 4 1-4 1-1 4-1-4-4-1 4-1 1-4Z' fill='%23D4AF6A' fill-opacity='.88'/%3E%3C/svg%3E")}
.nsfoot-grp a{transition:color .15s ease,padding-left .15s ease}.nsfoot-grp a:hover{padding-left:3px}

@media(max-width:720px){
  .pcard:hover,.team-card:hover,.rh-idxcard:hover,.rh-explore-card:hover,.bcard:hover,.rcard:hover,.dev-card:hover,.thdev-card:hover{transform:none}
  :is(.rh-btn,.mh-btn,.cta-btn,.hub-cta .btn-ask,.ih-page .ih-cta-primary,.pcard-cta .ask,.zh-btn.primary,.vsx-bbtn){min-height:48px}
  .rh-tablewrap,.bwrap,.cmp-table-wrap,.ih-scroll,.vsx-tablewrap{border-radius:10px}
  .cta,.rh-band,.vsx-band,.ih-cta{background-size:auto,76px!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Dark surfaces for legacy information-hub cards and the mobile drawer's single selector. */
.ih-page :is(.ih-card,.ih-scn,.ih-mat,.ih-source,.ih-scroll th,.ih-scroll td){background:linear-gradient(180deg,#143329,#0d241d)!important;border-color:var(--nct-line)!important;color:#f3f1ec!important}
.ih-page :is(.ih-card,.ih-scn,.ih-mat,.ih-source,.ih-scroll th,.ih-scroll td) :is(h2,h3,p,li,strong,span,dt,dd){color:#f3f1ec!important}
.ih-page :is(.ih-card,.ih-scn,.ih-mat,.ih-source,.ih-scroll) a{color:var(--nct-gold-hi)!important}
.ih-page .ih-scn:hover,.ih-page .ih-mat:hover,.ih-page .ih-source:hover{border-color:var(--nct-line-hi)!important;background:#173a2f!important}
.ih-page .ih-scn-chip{background:rgba(212,175,106,.14)!important;border:1px solid rgba(212,175,106,.35)}
.ih-page .ih-scn-chip .ih-scn-ic,.ih-page .ih-scn-arw,.ih-page .ih-mat-go{color:var(--nct-gold)!important}
.ih-page .ih-scn-t,.ih-page .ih-mat-nm,.ih-page .ih-source h3{color:var(--nct-gold-hi)!important}
.ih-page .ih-scn-d,.ih-page .ih-source-pub,.ih-page .ih-mat-tag{color:#aebab2!important}
.ih-page .ih-scn-arw{border-color:var(--nct-line-hi)!important;background:#0a1f1a!important}
.ih-page .ih-scn:hover .ih-scn-arw{background:var(--nct-gold)!important;color:#0a1f1a!important}
/* removed: legacy mobile hide of .market-switch-drawer — the drawer picker is now the intended country switcher at the top of the mobile menu */
/* Bangkok catalogue hero cover (only used on /projects/thailand/bangkok/). */
.hub-hero-cover{display:block;width:100%;margin:16px 0 8px;border-radius:16px;overflow:hidden;border:1px solid rgba(243,241,236,.14);line-height:0}
.hub-hero-cover img{display:block;width:100%;height:auto}
@media(max-width:640px){.hub-hero-cover{aspect-ratio:4/5}.hub-hero-cover img{height:100%;object-fit:cover}}

/* ==== NOVASIA DESIGN ICONS — GLOBAL v2 (обратимо) ==== */
h2:has(+.rh-tldr),h2:has(+.rh-faq),h2:has(+.rh-myths2),h2:has(+.rh-dtvfit),h2:has(+.rh-checks){display:flex;align-items:center;gap:13px}
h2:has(+.rh-tldr)::before,h2:has(+.rh-faq)::before,h2:has(+.rh-myths2)::before,h2:has(+.rh-dtvfit)::before,h2:has(+.rh-checks)::before{content:"";flex:0 0 auto;width:46px;height:46px;border-radius:50%;background-color:rgba(212,175,106,.12);background-position:center;background-size:26px;background-repeat:no-repeat;border:1px solid rgba(212,175,106,.45)}
h2:has(+.rh-tldr)::before{background-image:url(/assets/img/design/glyph-tldr.webp);background-size:34px}
h2:has(+.rh-faq)::before{background-image:url(/assets/img/design/glyph-faq.webp)}
h2:has(+.rh-myths2)::before{background-image:url(/assets/img/design/glyph-flags.webp)}
h2:has(+.rh-dtvfit)::before{background-image:url(/assets/img/design/glyph-fit.webp)}
h2:has(+.rh-checks)::before{background-image:url(/assets/img/design/glyph-checklist.webp)}
.mh-market{position:relative;overflow:hidden}
.mh-market-cambodia::after,.mh-market-thailand::after{content:"";position:absolute;top:16px;right:16px;width:66px;height:66px;background-position:center;background-size:contain;background-repeat:no-repeat;opacity:.5;pointer-events:none}
.mh-market-cambodia::after{background-image:url(/assets/img/design/market-cambodia.webp)}
.mh-market-thailand::after{background-image:url(/assets/img/design/market-thailand.webp)}
.mh-city b::before{content:"";display:inline-block;width:1em;height:1em;margin-right:.4em;vertical-align:-.12em;background:url(/assets/img/design/icon-pin.webp) center/contain no-repeat;opacity:.85}
@media(max-width:640px){
h2:has(+.rh-tldr)::before,h2:has(+.rh-faq)::before,h2:has(+.rh-myths2)::before,h2:has(+.rh-dtvfit)::before,h2:has(+.rh-checks)::before{width:36px;height:36px;background-size:21px}
.mh-market-cambodia::after,.mh-market-thailand::after{width:48px;height:48px;top:12px;right:12px}
}
/* ===== NOVASIA DESIGN ICONS — block A placements ===== */
.nf-h::before{content:"";display:block;width:112px;height:112px;margin:0 auto 16px;background:url(/assets/img/design/art-404.webp) center/contain no-repeat;opacity:.9}
.srch-empty::before{content:"";display:block;width:92px;height:92px;margin:4px auto 12px;background:url(/assets/img/design/empty-catalogue.webp) center/contain no-repeat;opacity:.8}
.rh-expert{position:relative}
.rh-expert::before{content:"";position:absolute;top:12px;left:14px;width:58px;height:58px;background:url(/assets/img/design/quote-mark.webp) center/contain no-repeat;opacity:.13;pointer-events:none}
.rh-sources{position:relative}
.rh-sources::before{content:"";position:absolute;top:-4px;right:2px;width:38px;height:38px;background:url(/assets/img/design/crest-trust.webp) center/contain no-repeat;opacity:.32;pointer-events:none}
/* type icons on catalogue project cards (data-driven, fail-safe) */
.pcard[data-type] .pcard-cat{display:inline-flex;align-items:center;gap:6px}
.pcard[data-type] .pcard-cat::before{content:"";flex:0 0 auto;width:17px;height:17px;background-position:center;background-size:contain;background-repeat:no-repeat;opacity:.85}
.pcard[data-type="condominium"] .pcard-cat::before{background-image:url(/assets/img/design/type-condo.webp)}
.pcard[data-type="mixed_use"] .pcard-cat::before,.pcard[data-type="mixed_use_condominium_hotel"] .pcard-cat::before{background-image:url(/assets/img/design/type-mixed.webp)}
.pcard[data-type="hotel_residence"] .pcard-cat::before,.pcard[data-type="serviced"] .pcard-cat::before,.pcard[data-type="serviced_residence"] .pcard-cat::before{background-image:url(/assets/img/design/type-serviced.webp)}
.pcard[data-type="strata_office"] .pcard-cat::before,.pcard[data-type="office"] .pcard-cat::before,.pcard[data-type="commercial"] .pcard-cat::before{background-image:url(/assets/img/design/type-commercial.webp)}
.pcard[data-type="borey"] .pcard-cat::before,.pcard[data-type="house"] .pcard-cat::before,.pcard[data-type="land"] .pcard-cat::before,.pcard[data-type="landed"] .pcard-cat::before,.pcard[data-type="townhouse"] .pcard-cat::before{background-image:url(/assets/img/design/type-borey.webp)}
.pcard[data-type="resort"] .pcard-cat::before,.pcard[data-type="villa"] .pcard-cat::before,.pcard[data-type="pool_villa"] .pcard-cat::before{background-image:url(/assets/img/design/type-resort.webp)}
.pcard[data-type="unknown"] .pcard-cat::before{background-image:none}
/* motif in master-hub hero corners (class emitted by masterHero) */
.rh-hero{position:relative}
.rh-hero--invest::after,.rh-hero--visa::after,.rh-hero--life::after,.rh-hero--thailand::after{content:"";position:absolute;top:8px;right:0;width:120px;height:120px;background-position:center;background-size:contain;background-repeat:no-repeat;opacity:.1;pointer-events:none}
.rh-hero--invest::after{background-image:url(/assets/img/design/motif-invest.webp)}
.rh-hero--visa::after{background-image:url(/assets/img/design/motif-visa.webp)}
.rh-hero--life::after{background-image:url(/assets/img/design/motif-life.webp)}
.rh-hero--thailand::after{background-image:url(/assets/img/design/motif-city.webp)}
@media(max-width:640px){
.nf-h::before{width:88px;height:88px}
.rh-hero--invest::after,.rh-hero--visa::after,.rh-hero--life::after,.rh-hero--thailand::after{width:76px;height:76px}
.rh-expert::before{width:44px;height:44px}
}
/* ===== NOVASIA DESIGN ICONS — block B extras ===== */
/* vs comparison pages — faint motif behind the compare table (scoped by .vsx-*) */
.vsx-tablewrap{position:relative}
.vsx-tablewrap::before{content:"";position:absolute;top:-40px;right:6px;width:96px;height:96px;background:url(/assets/img/design/motif-vs.webp) center/contain no-repeat;opacity:.09;pointer-events:none;z-index:0}
/* project map placeholder (before the interactive map loads) */
.pj-map-ph{background-image:linear-gradient(180deg,rgba(8,24,19,.15),rgba(8,24,19,.35)),url(/assets/img/design/map-placeholder.webp);background-position:center;background-size:cover;background-repeat:no-repeat}
/* expert / team cards — subtle ornamental ring in the corner */
.spec-card,.team-card{position:relative}
.spec-card::after,.team-card::after{content:"";position:absolute;top:12px;right:12px;width:36px;height:36px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' fill='none'%3E%3Ccircle cx='18' cy='18' r='13.5' stroke='%23D4AF6A' stroke-opacity='.7'/%3E%3Ccircle cx='18' cy='18' r='8' stroke='%23D4AF6A' stroke-opacity='.36' stroke-dasharray='2 3'/%3E%3Cpath d='m18 13 1.5 3.5L23 18l-3.5 1.5L18 23l-1.5-3.5L13 18l3.5-1.5L18 13Z' fill='%23D4AF6A' fill-opacity='.8'/%3E%3C/svg%3E");opacity:.32;pointer-events:none}
/* placeholder fact rows — small "to be confirmed" mark */
.pcard-facts.is-placeholder{display:flex;align-items:center;gap:7px}
.pcard-facts.is-placeholder::before{content:"";flex:0 0 auto;width:15px;height:15px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='6.5' stroke='%23D4AF6A' stroke-opacity='.9'/%3E%3Cpath d='M8 4.2v4.1l2.6 1.5' stroke='%23D4AF6A' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");opacity:.82}
/* mega-hub market cards — faint corner flourish (top-left, opposite the emblem) */
.mh-market::before{content:"";position:absolute;top:0;left:0;width:70px;height:70px;background:top left/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 70' fill='none'%3E%3Cpath d='M.5 47.5V.5h47M7.5 36V7.5H36' stroke='%23D4AF6A' stroke-opacity='.72'/%3E%3Cpath d='M14 29C23 20 26 27 34 19s15-2 24-12' stroke='%23D4AF6A' stroke-opacity='.45' stroke-dasharray='3 4'/%3E%3Ccircle cx='34' cy='19' r='2' fill='%23D4AF6A'/%3E%3C/svg%3E");opacity:.16;pointer-events:none}
/* Text-led cards use one quiet vector mark instead of extra image assets.  It is
   outside the reading path and never changes their intrinsic grid dimensions. */
:is(.dev-card,.bcard,.rcard,.rh-explore-card,.thdev-card){position:relative}
:is(.dev-card,.bcard,.rcard,.rh-explore-card,.thdev-card)::after{content:"";position:absolute;top:12px;right:12px;width:34px;height:34px;pointer-events:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 34' fill='none'%3E%3Cpath d='M33.5.5H13M33.5.5V21' stroke='%23D4AF6A' stroke-opacity='.52'/%3E%3Cpath d='M28 6H18M28 6v10' stroke='%23D4AF6A' stroke-opacity='.3'/%3E%3Ccircle cx='28' cy='6' r='1.5' fill='%23D4AF6A' fill-opacity='.72'/%3E%3C/svg%3E");opacity:.32}
@media(max-width:640px){
.vsx-tablewrap::before{width:66px;height:66px;top:-28px}
.spec-card::after,.team-card::after{width:28px;height:28px}
.mh-market::before{width:52px;height:52px}
:is(.dev-card,.bcard,.rcard,.rh-explore-card,.thdev-card)::after{top:10px;right:10px;width:26px;height:26px;opacity:.24}
}
/* Data-gated ten-second summaries on information pages. */
.rh-hero-grid,.rh-hero-grid>*{min-width:0}
/* A few older rich-hub inline styles can leave the desktop hero tracks active
   after the rest of the mobile stylesheet has loaded.  A grid item's default
   min-content width then expands the entire page past a phone viewport.  This
   late shared rule is deliberately defensive: every rich-hub hero is a single
   readable column below the tablet breakpoint. */
@media(max-width:860px){.rh-hero-grid{grid-template-columns:minmax(0,1fr)!important}.rh .ts-info{width:100%;max-width:100%}}
/* A small group of legacy flagship dossiers predates the shared .pj-hero shell and
   places its cover directly in the article. Keep the same bounded editorial frame
   as a shared hero instead of letting a portrait render consume the page. */
.pj-legacy-hero{display:block;max-width:100%;height:auto}
@media(max-width:859px){.pj-legacy-hero{width:100%;height:clamp(220px,62vw,320px)!important;object-fit:cover;object-position:center}}
@media(min-width:860px){.pj-legacy-hero{width:min(100%,760px)!important;height:475px!important;object-fit:cover;object-position:center}}
.ts-info{margin:22px 0 30px;padding:24px 28px;max-width:760px;border:1px solid var(--nct-line-hi);border-radius:16px;background:rgba(17,32,25,.97);box-shadow:inset 3px 0 0 var(--nct-gold),var(--nct-shadow);color:#e9e7dc;overflow-wrap:anywhere;box-sizing:border-box}
.ts-info-kicker{display:inline-block;padding:5px 11px;border-radius:999px;background:rgba(212,175,106,.14);color:var(--nct-gold-hi);font-size:11px;font-weight:700;letter-spacing:.09em}.ts-info h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ts-info-list{margin:14px 0 0}.ts-info-row{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:12px 0;border-top:1px solid rgba(243,241,236,.10)}.ts-info-row:first-child{border-top:0}.ts-info-row dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--nct-gold);font-weight:600;margin:2px 0 0}.ts-info-row dd{margin:0;font-weight:400;font-size:15px;line-height:1.6;color:#dfe3dc}.ts-info-vs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 0}.ts-info-vs>div{padding:14px 16px;border:1px solid rgba(212,175,106,.22);border-radius:12px;background:rgba(0,0,0,.12)}.ts-info-vs b{color:var(--nct-gold-hi);font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:600}.ts-info-vs p{margin:7px 0 0;font-weight:400;font-size:15px;line-height:1.6;color:#dfe3dc}.ts-info-data{display:inline-block;margin:12px 0 0;padding:5px 11px;border-radius:999px;background:rgba(127,224,173,.12);color:#bfeccc;font-size:12.5px}.ts-info-note{margin:16px 0 0;padding:13px 0 0;border-top:1px solid rgba(243,241,236,.10);color:#9fb0a6;font-size:13px;line-height:1.55}
@media(max-width:640px){.ts-info{margin:16px 0 24px;padding:18px;max-width:none}.ts-info-row{grid-template-columns:1fr;gap:4px}.ts-info-row dt{margin:0 0 4px}.ts-info-vs{grid-template-columns:1fr}}
/* DTV cluster breadcrumbs: a real navigation path for people and crawlers. */
.rh-dtv-breadcrumbs{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:18px 0 14px;font:12px/1.4 Arial,sans-serif;color:#98a79c}.rh-dtv-breadcrumbs a{color:#d9b96f;text-decoration:none}.rh-dtv-breadcrumbs a:hover{text-decoration:underline}.rh-dtv-breadcrumbs>span[aria-hidden]{color:#627267}.rh-dtv-breadcrumbs [aria-current]{color:#d9ddd6}@media(max-width:640px){.rh-dtv-breadcrumbs{margin:14px 0 10px;font-size:11.5px}}

/* Shared visual language: a vector pin remains crisp at every density and does
   not add a layout node or a new asset request. It is intentionally limited to
   existing market-home city links. */
.mh-city b::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D4AF6A' stroke-width='1.8'%3E%3Cpath d='M12 21s6-5.2 6-11a6 6 0 1 0-12 0c0 5.8 6 11 6 11Z'/%3E%3Ccircle cx='12' cy='10' r='2.1'/%3E%3C/svg%3E");opacity:.9}

/* NovAsia custom select (progressive enhancement).
   The native <select> stays in the DOM and keeps the form value; this only
   replaces its *appearance* on pointer devices, because the native option
   popup is drawn by the OS and ignores CSS on macOS/iOS Safari.
   On touch devices we deliberately keep the native control — the iOS wheel
   picker is better UX than any custom list. */
.ns-select{position:relative;width:100%;}
.ns-select select.ns-native{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;margin:0;}
.ns-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;box-sizing:border-box;
  font-family:inherit;font-size:16px;line-height:1.25;text-align:left;cursor:pointer;
  padding:11px 13px;border:1px solid rgba(255,255,255,.18);border-radius:9px;
  background:rgba(0,0,0,.28);color:#eef3f6;}
.ns-btn::after{content:"";flex:0 0 auto;width:11px;height:7px;
  background:currentColor;color:#c9a24b;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  transition:transform .18s;}
.ns-select.is-open .ns-btn::after{transform:rotate(180deg);}
.ns-btn:hover{border-color:rgba(201,162,75,.5);}
.ns-btn:focus-visible{outline:none;border-color:#c9a24b;box-shadow:0 0 0 3px rgba(201,162,75,.16);}
.ns-select.is-open .ns-btn{border-color:#c9a24b;}
.ns-list{position:absolute;z-index:60;top:calc(100% + 6px);left:0;right:0;margin:0;padding:5px;list-style:none;
  max-height:260px;overflow-y:auto;border:1px solid rgba(201,162,75,.35);border-radius:10px;
  background:#0b1219;box-shadow:0 14px 34px rgba(0,0,0,.5);}
.ns-list[hidden]{display:none;}
.ns-opt{padding:10px 12px;border-radius:7px;font-size:15px;line-height:1.3;color:#dbe3e8;cursor:pointer;}
.ns-opt[aria-selected="true"]{color:#e8c98a;font-weight:600;}
.ns-opt.is-active,.ns-opt:hover{background:rgba(201,162,75,.14);color:#fff;}

/* Initial widget geometry: same rules as the visual layer, before first paint. */
/* Reviewed reader components; selectors stay inside their own widgets. */
.ns-area-picker.ns-area-picker{box-sizing:border-box;padding:24px!important;border:1px solid #315044;border-radius:20px;background:linear-gradient(140deg,#12352a,#0b231c);max-width:100%;margin:32px 0!important}
.ns-area-heading>span,.ns-summary-heading>span{display:block;color:#d6b36b;font-size:11px;font-weight:700;letter-spacing:.12em;margin-bottom:8px}
.ns-area-heading h2{margin:0 0 10px!important;font:600 clamp(25px,3vw,34px)/1.2 Georgia,serif;color:#e5c47e}
.ns-area-heading h2:before,.ns-summary-heading h2:before{content:none!important}
.ns-area-heading p{margin:0 0 20px!important;color:#c2d0c7;font-size:16px;line-height:1.5}
.ns-area-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:12px;margin-bottom:16px}
.ns-area-controls label{display:grid;gap:7px;font-size:13px;color:#c2d0c7}
.ns-area-controls :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:46px;border:1px solid #476252;background:#0b241c;color:#f1eee4;border-radius:10px;padding:11px 13px;font:inherit;font-size:16px}
.ns-area-controls :is(input,select):focus-visible{outline:2px solid #d6b36b;outline-offset:3px}
.ns-area-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:410px;overflow-y:auto;padding:3px 8px 3px 3px;scrollbar-color:#a58d59 #0c241c;scrollbar-width:thin}
.ns-area-option.ns-area-option{box-sizing:border-box;display:flex;align-items:center;gap:12px;position:relative;min-height:76px;padding:14px;border:1px solid #315044;border-radius:12px;background:#0e2a21;color:#f0eee4;text-decoration:none;font-size:16px;font-weight:600;line-height:1.3;transition:background .15s,border-color .15s}
.ns-area-option.ns-area-option:before,.ns-area-option.ns-area-option:after{content:none!important}
.ns-area-option.ns-area-option:hover{background:#193d2e;border-color:#b69b60;transform:none}
.ns-area-option svg{flex:0 0 38px;width:38px;height:38px;stroke:#d6b36b;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.ns-area-option.is-current{border-color:#d6b36b;background:#254331}
.ns-area-option small{position:absolute;right:9px;bottom:5px;font-size:10px;font-weight:400;color:#d6b36b}
.ns-area-option[hidden]{display:none!important}
.ns-area-option:focus-visible{outline:2px solid #f1d9a3;outline-offset:2px}
.ns-area-result{font-size:13px!important;color:#aabfb2;margin:12px 0 0!important;min-height:1.4em}
section.pgup-sec.ns-editorial-card{box-sizing:border-box;max-width:100%;margin:18px 0!important;padding:0!important;border:1px solid #304d3f!important;border-radius:14px;background:#102c22;overflow:clip;box-shadow:none}
.ns-editorial-card>details>summary{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:18px 20px;list-style:none;cursor:pointer;color:#e5c47e}
.ns-editorial-card>details>summary::-webkit-details-marker,.ns-faq-widget summary::-webkit-details-marker,.ns-faq-item>summary::-webkit-details-marker{display:none}
.ns-editorial-card>details>summary h2{padding:0!important;margin:0!important;font:600 clamp(20px,2.2vw,25px)/1.25 Georgia,serif;color:inherit}
.ns-editorial-card>details>summary h2:before,.ns-editorial-card>details>summary h2:after{content:none!important}
.ns-editorial-toggle{flex:0 0 22px;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.ns-editorial-card>details[open]>summary .ns-editorial-toggle{transform:rotate(45deg)}
.ns-editorial-content{box-sizing:border-box;padding:0 20px 20px;font-size:16px;line-height:1.65;color:#d6e0d8;overflow-wrap:anywhere}
.ns-editorial-content>p:first-child{margin-top:0}.ns-editorial-content>p:last-child{margin-bottom:0}
.ns-editorial-content>ul{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ns-editorial-content>ul>li{margin:0;padding:0;min-width:0}
.ns-editorial-content>ul>li>a{box-sizing:border-box;display:flex;align-items:center;min-height:46px;height:100%;padding:11px 13px;border:1px solid #3f5948;border-radius:9px;background:#143529;color:#e5c47e;text-decoration:none;font-size:15px;line-height:1.4}
.ns-editorial-content>ul>li>a:hover{border-color:#b69b60;background:#1b412f}
.ns-editorial-content table{display:table;width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:14px}
.ns-editorial-content :is(td,th){overflow-wrap:anywhere;word-break:normal;padding:12px!important;vertical-align:top}
.ns-summary-widget.ns-summary-widget{box-sizing:border-box;max-width:100%;border:1px solid #456149!important;border-left:3px solid #d6b36b!important;border-radius:16px!important;background:linear-gradient(135deg,#163a2b,#10281f)!important;padding:24px!important;margin:24px 0!important;color:#e5ece5}
.ns-summary-heading h2{font:600 26px/1.2 Georgia,serif!important;color:#e5c47e!important;padding:0!important;margin:0 0 18px!important}
.ns-summary-widget .ts-info-list{margin:0}.ns-summary-widget .ts-info-row{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px;padding:0!important;border:0!important}
.ns-summary-widget dt{color:#d6b36b;font-size:13px;font-weight:600}.ns-summary-widget dd{margin:0;font-size:16px;line-height:1.6;color:#e0e8e0}
.ns-summary-more{border-top:1px solid #355240;margin-top:18px;padding-top:14px}
.ns-summary-more>summary{cursor:pointer;color:#e5c47e;font-size:14px;min-height:30px;line-height:1.5}
.ns-summary-more>div{padding-top:10px;font-size:16px;line-height:1.6}.ns-summary-more :is(p,ul,ol){max-width:100%}
.ns-summary-context.ns-summary-context{padding:0!important;background:transparent!important;border:0!important;margin:12px 0!important;box-shadow:none!important}
.ns-faq-widget{display:grid;gap:10px;margin:20px 0 30px;max-width:100%}
.ns-faq-widget>details,.ns-faq-item{border:1px solid #33513f!important;border-radius:12px;background:#103024;overflow:hidden;margin:0!important;padding:0!important}
.ns-faq-widget summary,.ns-faq-item>summary{position:relative;display:block;min-height:54px;box-sizing:border-box;padding:18px 48px 18px 20px;cursor:pointer;list-style:none;font-size:17px;font-weight:600;line-height:1.45;color:#e9e8dc}
.ns-faq-widget summary:after,.ns-faq-item>summary:after{content:'+';position:absolute;right:19px;top:16px;color:#d6b36b;font-size:23px;line-height:1}
.ns-faq-widget details[open]>summary:after,.ns-faq-item[open]>summary:after{content:'−'}
.ns-faq-answer{padding:0 20px 20px;color:#c8d8cc;font-size:16px;line-height:1.7}.ns-faq-answer>p:first-child{margin-top:0}.ns-faq-answer>p:last-child{margin-bottom:0}
.ns-source-drawer{font-size:13px;color:#adbdaf;border-top:1px solid #344f3e;padding:18px 0;margin:28px 0}.ns-source-drawer>summary{cursor:pointer;color:#c9d6cb;min-height:32px}.ns-source-drawer li,[data-owner-source-notes] li{font-size:13px;line-height:1.6;margin:8px 0;overflow-wrap:anywhere}
.ns-journey-return.ns-journey-return{box-sizing:border-box;width:100%;max-width:850px;margin:28px auto!important;padding:0!important;border:1px solid #3b5543!important;border-radius:12px!important;background:#102b21!important;box-shadow:none!important}
.ns-journey-return>a{display:flex;align-items:center;gap:16px;padding:18px 22px;color:#e5c47e;text-decoration:none}
.ns-journey-return svg,.ns-journey-grid svg{flex:0 0 30px;width:30px;height:30px;stroke:#d6b36b;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ns-journey-return small{display:block;color:#adbfaf;font-size:12px;margin-bottom:5px}.ns-journey-return strong{display:block;font-size:17px;font-weight:600;line-height:1.35}
.ns-journey-grid.ns-journey-grid{box-sizing:border-box;max-width:100%;padding:24px!important;border:1px solid #3b5543!important;border-radius:16px!important;background:#102b21!important;margin:28px auto!important}
.ns-journey-grid>h2{font:600 28px/1.2 Georgia,serif!important;margin:0 0 18px!important;color:#e5c47e!important}.ns-journey-grid>h2:before{content:none!important}
.ns-journey-grid>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ns-journey-grid>div>a{display:flex;align-items:center;gap:12px;min-width:0;padding:16px;border:1px solid #37513f;border-radius:10px;color:#e3e9df;text-decoration:none;font-size:15px;line-height:1.4}
.ns-journey-grid a:hover,.ns-journey-return>a:hover{background:#173b2b}
.ns-catalogue-currency.ns-catalogue-currency{box-sizing:border-box;display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin:20px 0!important;padding:18px 20px!important;border:1px solid #3b5543;border-radius:13px;background:#102d22}
.ns-catalogue-currency label{display:grid;gap:7px;color:#bdcfbf;font-size:13px}.ns-catalogue-currency :is(select,input){box-sizing:border-box;min-height:44px;max-width:230px;border:1px solid #496348;border-radius:8px;padding:10px 12px;background:#0b231b;color:#e7ecdf;font:inherit;font-size:16px}
.ns-catalogue-currency p{flex:1 1 240px;margin:0!important;font-size:13px;color:#b4c6b5;line-height:1.5}.ns-catalogue-currency [hidden]{display:none!important}
.ns-currency-price{color:#efd18a!important}
:is(.ns-editorial-card,.ns-faq-widget,.ns-faq-item,.ns-summary-widget) summary:focus-visible,:is(.ns-journey-return,.ns-journey-grid) a:focus-visible{outline:2px solid #f1d9a3;outline-offset:-4px}
@media(max-width:700px){.ns-area-picker.ns-area-picker{padding:18px!important;border-radius:15px}.ns-area-controls{grid-template-columns:minmax(0,1fr)}.ns-area-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:350px;gap:8px}.ns-area-option.ns-area-option{min-height:78px;padding:12px 10px;gap:8px;font-size:14px}.ns-area-option svg{width:30px;height:30px;flex-basis:30px}.ns-journey-grid>div{grid-template-columns:repeat(2,minmax(0,1fr))}.ns-editorial-content>ul{grid-template-columns:minmax(0,1fr)}.ns-summary-widget.ns-summary-widget{padding:20px!important}.ns-summary-widget .ts-info-row{grid-template-columns:minmax(0,1fr);gap:8px}.ns-editorial-card>details>summary{padding:17px}.ns-editorial-content{padding:0 17px 18px}.ns-journey-grid.ns-journey-grid{padding:18px!important}.ns-journey-return>a{padding:16px 18px}.ns-catalogue-currency.ns-catalogue-currency{padding:16px!important}.ns-catalogue-currency :is(input,select){max-width:100%;width:100%}.ns-catalogue-currency label{flex:1 1 170px}}
@media(max-width:420px){.ns-journey-grid>div{grid-template-columns:minmax(0,1fr)}.ns-editorial-content table{font-size:13px}.ns-editorial-content :is(td,th){padding:9px!important}}


/* Owner feedback: stable mobile-first reader widgets, also in blocking component CSS. */
.ns-resource-widget.ns-resource-widget{box-sizing:border-box;grid-column:1/-1;min-width:0;max-width:100%;margin:28px 0;padding:20px;border:1px solid #355448;border-radius:20px;background:linear-gradient(135deg,#123429,#0b241d);color:#f1eee5;clear:both}
.ns-resource-widget.ns-resource-widget>h2{margin:0 0 18px!important;padding:0!important;font:600 clamp(21px,2vw,28px)/1.25 Georgia,serif!important;color:#e4c47f!important}
.ns-resource-widget>h2::before,.ns-resource-widget>h2::after{content:none!important}
.ns-resource-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.ns-resource-grid>a.ns-resource-card{box-sizing:border-box;display:flex!important;align-items:center;gap:13px;min-height:70px;min-width:0;padding:14px!important;border:1px solid #3b584a;border-radius:13px;background:#102c23;color:#f2eee4!important;font:600 15px/1.4 system-ui!important;text-decoration:none!important;overflow-wrap:anywhere;transition:background .15s,border-color .15s}
.ns-resource-card>svg{display:block;flex:0 0 32px;width:32px;height:32px;color:#d4af6a;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.ns-resource-card>span{min-width:0}.ns-resource-card:hover{background:#193e30!important;border-color:#d4af6a!important}.ns-resource-card:focus-visible{outline:2px solid #e4c47f;outline-offset:3px}.ns-resource-card .ns-art,.ns-resource-card .ns-vector-arrow,.ns-resource-card>span[aria-hidden=true]{display:none!important}
.ns-feedback-sources.ns-feedback-sources,.ns-source-drawer.ns-source-drawer{box-sizing:border-box;max-width:100%;margin:24px 0;padding:0!important;border:1px solid #355448;border-radius:13px;background:#0e291f;color:#bbcbbf;font:400 14px/1.6 system-ui!important}
.ns-feedback-sources>summary,.ns-source-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:13px 16px!important;cursor:pointer;list-style:none;color:#d4af6a;font:600 14px/1.4 system-ui!important}
.ns-feedback-sources>summary::-webkit-details-marker,.ns-source-drawer>summary::-webkit-details-marker{display:none}.ns-feedback-sources>summary::after,.ns-source-drawer>summary::after{content:'+';font:400 22px/1 system-ui}.ns-feedback-sources[open]>summary::after,.ns-source-drawer[open]>summary::after{content:'−'}
.ns-feedback-sources>summary>h2,.ns-feedback-sources>summary>h3{font:inherit!important;color:inherit!important;margin:0!important;padding:0!important}.ns-feedback-sources>summary>:is(h2,h3)::before,.ns-feedback-sources>summary>:is(h2,h3)::after{content:none!important}
.ns-source-body,.ns-source-drawer>ul{padding:0 18px 16px!important;overflow-wrap:anywhere}.ns-feedback-sources :is(p,li,small,span),.ns-source-drawer :is(p,li,small,span){font-size:14px!important;line-height:1.6!important;color:#bbcbbf!important}.ns-feedback-sources ol,.ns-feedback-sources ul{padding-left:22px}.ns-feedback-sources li+li{margin-top:9px}
html.ns-has-sections :is(nav.btoc,nav.rh-secnav,.dev-sections){display:none!important}
.ns-editorial-card.ns-editorial-card>details>summary h2,.ns-summary-widget.ns-summary-widget h2{font:600 clamp(20px,2vw,26px)/1.3 Georgia,serif!important}.ns-editorial-card.ns-editorial-card>details>summary{gap:12px}.ns-editorial-toggle{flex:0 0 22px!important;width:22px!important;height:22px!important}
.ns-project-count.ns-project-count{font:400 15px/1.5 system-ui!important;margin:10px 0 16px!important}.ns-project-count a{display:inline-flex;min-height:40px;align-items:center;color:#e4c47f;text-decoration:none}
main :is(.rh-actions,.ih-actions,.b-actions,.hg-links){display:flex;flex-wrap:wrap;gap:10px!important;align-items:stretch}main :is(.rh-actions,.ih-actions,.b-actions,.hg-links)>a{margin:0!important;min-height:44px;box-sizing:border-box}
main input[type=search]{appearance:none;-webkit-appearance:none;color-scheme:dark}main input[type=search]::-webkit-search-cancel-button{appearance:none;width:18px;height:18px;margin-left:8px;cursor:pointer;background:linear-gradient(45deg,transparent 44%,#dfbd75 45%,#dfbd75 55%,transparent 56%),linear-gradient(-45deg,transparent 44%,#dfbd75 45%,#dfbd75 55%,transparent 56%)}
.bfind.bfind{box-sizing:border-box;position:relative;border:1px solid #355448;border-radius:16px;padding:16px;background:#102b22}.bfind .bfind-in{box-sizing:border-box;width:100%;min-height:48px;padding:12px 15px;border:1px solid #577056;border-radius:10px;background:#091e18;color:#f2eee5;font:400 16px/1.4 system-ui}.bfind .bfind-hint{margin:10px 0 0;font:400 13px/1.5 system-ui;color:#b9c9be}.bfind :is(.bfind-status,.bfind-results):empty{display:none}
main select{color-scheme:dark;accent-color:#d4af6a;min-height:44px}main input[type=range]{appearance:none;-webkit-appearance:none;box-sizing:border-box;height:6px!important;padding:0!important;border:0;border-radius:99px;background:#3f5a42;accent-color:#d4af6a;cursor:pointer}main input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border:2px solid #f0d397;border-radius:50%;background:#d4af6a;box-shadow:0 1px 6px #0005}main input[type=range]::-moz-range-thumb{width:18px;height:18px;border:2px solid #f0d397;border-radius:50%;background:#d4af6a}
:is(.pf-dd,.pf-control,.bali-filter-control)[open]{z-index:90!important}.ns-select.is-open{z-index:95;position:relative}.ns-list{color:#f3eee5!important;background:#102b22!important;border:1px solid #577056!important;border-radius:12px!important;box-shadow:0 12px 32px #0005}.ns-opt{padding:12px!important;min-height:44px;box-sizing:border-box}.ns-opt:hover,.ns-opt.is-active{background:#254534!important;color:#efd18a!important}
main :is(.team-nav,.expert-nav,.experts-nav){display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}main :is(.team-nav,.expert-nav,.experts-nav)>a{display:flex;align-items:center;min-height:58px;padding:14px;border:1px solid #526a4e;border-radius:13px;background:#13352a;color:#e5c681!important;text-decoration:none}
@media(min-width:640px){.ns-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1080px){.ns-resource-widget.ns-resource-widget{padding:25px}.ns-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.ns-resource-widget.ns-resource-widget{padding:16px;border-radius:16px}.ns-resource-grid>a.ns-resource-card{min-height:64px;padding:12px!important}main :is(.rh-actions,.ih-actions,.b-actions,.hg-links)>a{flex:1 1 150px}.ns-editorial-card.ns-editorial-card>details>summary h2{font-size:20px!important}}
/* End owner feedback stable widgets. */

main .expert-task-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}main .expert-task-nav>a{box-sizing:border-box;display:flex;align-items:center;min-height:64px;padding:15px 18px;border:1px solid #526a4e;border-radius:14px;background:#13352a;color:#e5c681!important;font:600 15px/1.4 system-ui;text-decoration:none}

/* Catalogue geometry is available before the async decorative layer. */
@media screen and (min-width:1080px){main.ns-project-catalogue{box-sizing:border-box;zoom:.6;width:100%;max-width:1440px!important;margin-inline:auto;padding-inline:33.75px!important}main.bwrap.pj-shell{box-sizing:border-box;zoom:1;width:100%;max-width:1080px!important;margin-inline:auto;padding-inline:24px!important;grid-template-columns:minmax(0,1fr) 320px;column-gap:24px;font-size:16px;line-height:1.65}main.bwrap.pj-shell .pj-ask{position:static;top:auto}main.bwrap.pj-shell .pj-ask.ns-ask-fits{position:sticky;top:96px}main.bwrap.pj-shell section[id]{scroll-margin-top:100px}main.bwrap.pj-shell .pj-ask-f :is(input,select,textarea){font-size:16px}main.ns-project-catalogue .pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}.ns-project-catalogue #pmeta-static:has(+ #pexplain:not(:empty)){display:none}
@media screen and (min-width:1080px){main.ns-project-catalogue{max-width:2066.666667px!important;padding-inline:40px!important}main.ns-project-catalogue .pgrid{gap:33.333333px}}
.ns-context-contact.ns-context-contact{box-sizing:border-box;grid-column:1/-1;clear:both;margin:26px 0;padding:18px;border:1px solid #416048;border-left:3px solid #d4af6a;border-radius:14px;background:#112f25}.ns-context-contact.ns-context-contact>h2{margin:0 0 8px!important;padding:0!important;font:600 18px/1.4 system-ui!important;color:#e3c17c!important}.ns-context-contact>h2::before,.ns-context-contact>h2::after{content:none!important}.ns-context-contact>p{margin:0 0 14px;font:400 14px/1.5 system-ui;color:#bbcbbf}.ns-context-contact .ns-contact-pills{display:flex;flex-wrap:wrap;gap:8px}.ns-context-contact .ns-contact-pill{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 13px;border:1px solid #6d7950;border-radius:10px;color:#e5c681;background:#13372a;font:600 14px/1.3 system-ui;text-decoration:none;overflow-wrap:anywhere}.ns-context-contact .ns-contact-pill--primary{background:#d4af6a;color:#10251b}.ns-context-contact .mail-chip{word-break:break-word}

/* Above-fold geometry must not wait for the asynchronous visual release. */
@media(max-width:767px){.mh-page .mh-hero-copy>.mh-eyebrow{display:none}.mh-page .mh-main>.mh-hero{padding-top:0;padding-bottom:0}.mh-page .mh-hero-bg{min-height:0;align-items:flex-start}.mh-page .mh-hero-copy{padding-top:20px;padding-bottom:24px}}
/* The enhanced section picker replaces these authored TOCs. Preserve them when scripting is disabled. */
@media(scripting:enabled){nav.btoc:has(a[href^="#"]:not([href="#"])),nav.rh-secnav:has(a[href^="#"]:not([href="#"])),.dev-sections:has(nav a[href^="#"]:not([href="#"])){display:none!important}}

/* Owner review: compact widget titles across every article/template family. */
body .ns-editorial-card.ns-editorial-card>details>summary h2,body .ns-summary-widget.ns-summary-widget h2,body .ns-resource-widget.ns-resource-widget>h2{font:600 clamp(18px,1.25vw,20px)/1.4 Georgia,serif!important;overflow-wrap:break-word}

/* Owner review 09.11: bounded reader controls, shared first-paint baseline. */
.ns-select select.ns-native[hidden],.ns-select .ns-list[hidden],.pj-custom-choice+select[hidden]{display:none!important}
body :is(.ns-list,.pf-menu,.ns-pw-choice-list,.ns-area-options){scrollbar-width:thin;scrollbar-color:#8e7c52 #10291f}
body :is(.ns-list,.pf-menu,.ns-pw-choice-list,.ns-area-options)::-webkit-scrollbar{width:7px;height:7px}
body :is(.ns-list,.pf-menu,.ns-pw-choice-list,.ns-area-options)::-webkit-scrollbar-thumb{background:#8e7c52;border:2px solid #10291f;border-radius:8px}
body :is(.ns-list,.pf-menu,.ns-pw-choice-list,.ns-area-options)::-webkit-scrollbar-track{background:#10291f}
.bhead:has(.bnav.open) .burger{visibility:hidden;pointer-events:none}
.bnav [data-ns-new-tab-icon]{display:none!important}
body .ns-resource-widget{box-sizing:border-box;width:calc(100% - 48px);max-width:1192px;margin-inline:auto!important}
:is(main,article,.mh-wrap) .ns-resource-widget{width:100%}
body .ns-feedback-sources>summary{list-style:none;position:relative;display:block;padding:17px 48px 17px 18px;cursor:pointer}
body .ns-feedback-sources>summary::-webkit-details-marker{display:none}
body .ns-feedback-sources>summary::before{content:none!important}
body .ns-feedback-sources>summary::after{content:'+'!important;position:absolute;inset:16px 18px auto auto;font:500 24px/1 sans-serif;color:#b89d68}
body .ns-feedback-sources[open]>summary::after{content:'−'!important}
body .ns-feedback-sources>summary :is(h2,h3){display:inline;margin:0!important;padding:0!important;font-family:inherit!important;font-size:16px!important;font-weight:600;line-height:1.5;color:#cbb57f}
body .ns-feedback-sources>summary :is(h2,h3)::before,body .ns-feedback-sources>summary :is(h2,h3)::after{content:none!important}
body .ns-feedback-sources>summary>span:last-child[aria-hidden=true]{display:none!important}
body .gl-body{box-sizing:border-box;width:100%;max-width:1060px;margin:28px auto;padding:0 24px;color:#d9e3dc;font-size:16px;line-height:1.7}
body .gl-body h1{font:600 clamp(30px,4vw,46px)/1.12 'Cormorant Garamond',Georgia,serif;color:#d6b36b;max-width:24ch;margin:20px 0}
body .gl-body h2{font:600 clamp(24px,3vw,30px)/1.25 Georgia,serif;color:#d6b36b}
body .gl-hero{padding:24px 0}.gl-body .gl-sec{margin:32px 0}.gl-body .gl-def{font-size:18px;line-height:1.65;max-width:74ch}
body :is(.dev-card,.thdev-card) :is(h2,h3){font-family:inherit!important;font-size:20px!important;font-weight:600;line-height:1.35;color:#d6b36b!important;margin:0 0 12px!important}
body .ns-question-row{grid-column:1/-1}body .ns-question-row textarea{box-sizing:border-box;width:100%;min-height:88px;resize:vertical;padding:12px;border:1px solid #4b6044;border-radius:9px;background:#0d281e;color:#e7ece7;font-family:inherit;font-size:16px;line-height:1.5}
body .mh-section-finder{padding-block:28px}.mh-section-finder :is(.mh-finder,.mh-finder-inner){min-width:0}
body .mh-section-finder :is(.mh-finder-actions,.mh-btns,.rh-btns,.ns-contact-pills){display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}
body .mh-section-finder :is(.ns-contact-pill,.mail-chip){max-width:100%;margin:0}
body .pj-shell #pj-gallery :is(.pj-gal-open,.btn-open),body .pj-shell .pj-gallery-open{min-height:44px;padding:12px 18px;font-size:15px;line-height:1.35;border-radius:11px}
body .ns-pw-car-place{transition:background-color .16s,border-color .16s,box-shadow .16s}
body .ns-pw-car-place:has(input:checked){background:#294333;border-color:#b89d68;box-shadow:inset 3px 0 #b89d68}
body .ns-pw-car-place.is-outside{background:#3a3020;border-color:#b89d68}body .ns-pw-car-place:has(input:checked) strong{color:#edcf8a}
body input[type=range]{appearance:none;-webkit-appearance:none;height:6px!important;min-height:6px!important;margin:20px 0;background:linear-gradient(90deg,#b89d68,#b89d68) 0/var(--ns-range-progress,0%) 100% no-repeat,#203b2d;border:0;border-radius:8px;box-shadow:none!important;padding:0!important;cursor:pointer;accent-color:#b89d68}
body input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#c6ab70;border:2px solid #e7d5a6;box-shadow:0 2px 5px #0005}
body input[type=range]::-moz-range-thumb{width:19px;height:19px;border-radius:50%;background:#c6ab70;border:2px solid #e7d5a6}
body input[type=range]:focus-visible{outline:2px solid #c6ab70;outline-offset:7px}
:root,html[data-ns-art-market=thailand]{--ns-art-ink:#b89d68;--ns-art-line:rgba(184,157,104,.19)}
body .ns-resource-card>svg{stroke:#b89d68;opacity:.7;stroke-width:1.35}
body .ns-pw-month{position:relative;cursor:help}body .ns-pw-month:is(:hover,:focus-within)::after{content:attr(data-weather-label);position:absolute;z-index:3;bottom:100%;left:50%;transform:translateX(-50%);padding:8px 12px;border:1px solid #7c704b;border-radius:8px;background:#0a2019;color:#ead9b1;white-space:nowrap;font-size:13px;box-shadow:0 5px 18px #0006}
@media(max-width:700px){body .ns-resource-widget{width:calc(100% - 32px)}:is(main,article,.mh-wrap) .ns-resource-widget{width:100%}body .gl-body{padding-inline:18px}.mh-section-finder .ns-contact-pills>*{flex:1 1 135px}body .ns-question-row textarea{min-height:80px}}

body .pj-shell .pj-media-open-main{min-height:44px;padding:12px 18px!important;border-radius:11px!important;font-size:15px!important;line-height:1.35}

body :is(.news-pager,.bpager,.ppager){display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:24px auto;padding:0;max-width:100%}
body :is(.news-pager,.bpager,.ppager)>:is(a,span){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:9px 13px;margin:0;border:1px solid #4e6041;border-radius:10px;background:#10291f;color:#ddcfaa;font:500 15px/1.2 sans-serif;text-decoration:none}
body :is(.news-pager,.bpager,.ppager)>[aria-current=page]{background:#c6ab70!important;color:#10251c!important;border-color:#c6ab70;font-weight:700}
body :is(.news-pager,.bpager,.ppager)>:is(.bpager-gap,.pg-gap){min-width:18px;padding:0;background:none;border:0}
body .news-pager>.disabled{opacity:.45}body :is(.news-pager,.bpager,.ppager)>a:hover{background:#294333;border-color:#b89d68}
@media(min-width:1080px){body main.ns-project-catalogue .ppager>:is(a,span){font-size:25px;min-width:70px;min-height:70px}}

body.mh-page .mh-section-finder .mh-finder{padding:30px!important;border-radius:18px;background:linear-gradient(130deg,#16372a,#0a2019)!important}
body .mh-section-finder .mh-finder>.ns-art{display:none!important}
body .mh-section-finder .mh-finder>div:not(.ns-art){display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
body .mh-section-finder .mh-finder :is(h2,p){margin:0!important;max-width:65ch}
body .mh-section-finder .mh-finder h2{font-size:clamp(28px,3vw,38px)!important}
body .mh-section-finder .ns-contact-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 0}
body .mh-section-finder .ns-contact-pills>*{box-sizing:border-box;min-width:0;justify-content:center;overflow-wrap:anywhere}
body .mh-section-finder .ns-contact-pills>.mail-chip{grid-column:1/-1}
@media(min-width:900px){body .mh-section-finder .mh-finder>div:not(.ns-art){grid-template-columns:minmax(0,1fr) 300px;column-gap:40px}body .mh-section-finder .mh-finder>div>:not(.ns-contact-pills){grid-column:1}body .mh-section-finder .mh-finder>div>.ns-contact-pills{grid-column:2;grid-row:1/5;align-self:center}body .mh-section-finder .mh-finder>div>.pgup-sec{grid-column:1;margin:8px 0 0!important}}
.ns-market-art{position:absolute;top:18px;right:18px;width:72px;height:58px;color:#b89d68;opacity:.55;pointer-events:none}.ns-market-art svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.25}
body .ns-pw-rain{padding-top:32px;overflow:visible;position:relative}body .ns-weather-scale{display:flex;justify-content:space-between;gap:12px;color:#bbccb9;font-size:12px;padding:0 2px;margin:8px 0 16px}
body .ns-feedback-sources>summary .ns-editorial-toggle{display:none!important}

body .ns-feedback-sources>summary>[aria-hidden=true]{display:none!important}
.bnav .dropdown a .ns-vector-arrow{display:none!important}

/* Confirmed live followups: legacy parent grids and repeated-class rules. */
body.mh-page .mh-section-finder .mh-finder{display:block!important}
body.mh-page .mh-section-finder .mh-finder>div:not(.ns-art){width:100%;max-width:none}
body .ns-resource-widget.ns-resource-widget{width:100%;max-width:min(100%,1192px);margin-inline:auto!important}
body .mh-main>.ns-resource-widget.ns-resource-widget{width:calc(100% - 32px)!important}
body .pj-shell .pj-media-open-main{height:auto!important;min-height:44px!important;align-self:center}
body .ns-developer-catalogue .pcard .pcard-top>:is(h2,h3){font-family:inherit!important;font-size:20px!important;font-weight:600;line-height:1.35;color:#d6b36b!important;margin:0 0 12px!important}
body .ns-news-expert-reference{display:flex;align-items:center;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(207,174,99,.24)}body .ns-news-expert-reference img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}body .ns-news-expert-reference>div{display:grid;gap:4px;min-width:0}body .ns-news-expert-reference small,body .ns-news-expert-reference span{font-size:13px;line-height:1.45;color:#afc2b8}body .ns-news-expert-reference a{font-size:16px;font-weight:600;color:#c9ac6b}
