/* Cosmo / cinematic motion layer: premium, lightweight, accessible. */
:root{--cosmo-ease:cubic-bezier(.22,1,.36,1);--cosmo-gold:#b99c70}
html{scroll-padding-top:104px}
body{overflow-x:clip}
.site-header{transition:background .35s ease,box-shadow .35s ease,border-color .35s ease;isolation:isolate}
.site-header.is-scrolled{background:rgba(250,249,245,.97);box-shadow:0 18px 38px rgba(12,45,44,.11);border-color:rgba(42,86,78,.11)}
.cosmo-brand{direction:ltr;align-items:center;justify-content:flex-start;padding-block:13px}
.cosmo-logo{width:clamp(176px,15.4vw,214px);height:auto;max-width:100%;object-fit:contain;transition:transform .55s var(--cosmo-ease),opacity .35s ease}
.cosmo-brand:hover .cosmo-logo{transform:translateY(-2px);opacity:.93}
.header-inner{min-height:106px}
.header-cta,.btn-primary,.cost-tier-action{position:relative;overflow:hidden;isolation:isolate}
.header-cta::before,.btn-primary::before{content:"";position:absolute;inset:-20% auto -20% -75%;width:37%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.26),transparent);transform:skewX(-21deg);transition:left .78s var(--cosmo-ease);pointer-events:none;z-index:1}
.header-cta:hover::before,.btn-primary:hover::before{left:125%}
.nav-panel{transform-origin:top center;animation:cosmoMenuIn .3s var(--cosmo-ease) both}
.site-header .nav-disclosure summary{transition:color .24s ease}
.cosmo-progress{position:fixed;top:0;left:0;right:auto;height:3px;width:100%;z-index:999;background:linear-gradient(90deg,#b49868,#ead3a6,#b49868);transform:scaleX(0);transform-origin:left center;pointer-events:none;box-shadow:0 0 12px rgba(214,178,112,.34)}
html[dir=rtl] .cosmo-progress{transform-origin:right center}
.hero{position:relative;isolation:isolate}
.hero-copy{overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 1% 80%,#dfeae4 0,transparent 55%),radial-gradient(ellipse at 80% 1%,#fffffa 0,transparent 58%),linear-gradient(135deg,#f8f6ee,#eaf0e9)}
.hero-copy::after{content:"";position:absolute;width:min(54vw,600px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(188,169,123,.21);box-shadow:0 0 0 50px rgba(188,169,123,.045),0 0 0 110px rgba(188,169,123,.025);top:-25%;right:-35%;pointer-events:none;animation:cosmoOrbit 18s ease-in-out infinite alternate;z-index:0}
.hero-copy-inner{position:relative;z-index:2}
.hero h1{font-size:clamp(3.1rem,5vw,5.7rem);letter-spacing:-.055em;line-height:1.19}
.hero h1 em{background:linear-gradient(108deg,#164b45 6%,#398276 53%,#b09a70 96%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-image-wrap{isolation:isolate}
.hero-photo{animation:cosmoHeroFrame 20s ease-in-out infinite alternate;will-change:transform}
.hero-image-wrap:hover .hero-photo{animation-play-state:paused;transform:scale(1.05)}
.hero-image-wrap::after{content:"";position:absolute;inset:-35%;z-index:1;pointer-events:none;background:linear-gradient(110deg,transparent 42%,rgba(231,248,230,.12) 50%,transparent 59%);transform:translateX(-85%) rotate(7deg);animation:cosmoImageGleam 11s ease-in-out 1.6s infinite}
.hero-image-note,.photo-credit{z-index:2}
.hero-image-note{filter:drop-shadow(0 5px 18px rgba(0,0,0,.25))}
.hero-image-note span{color:#dcecd9;letter-spacing:.2em}
.hero .eyebrow{color:#326e60}
.hero-meta{margin-top:clamp(32px,4vw,55px)}
.hero-rule{background:linear-gradient(90deg,#bd9f6d,#356e62);height:2px}
.page-intro{background:radial-gradient(circle at 87% 10%,#e3eee5 0,transparent 40%),linear-gradient(120deg,#fbf9f1,#eaf0e9 88%)}
.page-intro:after{content:"";position:absolute;width:46vw;height:46vw;max-width:750px;max-height:750px;right:-9vw;top:-28vw;border:1px solid rgba(180,160,118,.19);border-radius:50%;box-shadow:0 0 0 54px rgba(181,163,126,.035),0 0 0 120px rgba(181,163,126,.018);pointer-events:none}
.page-intro h1,.cost-hero h1{letter-spacing:-.043em;text-wrap:balance}
.intro-ornament .orb-a{animation:cosmoOrbBreath 9s ease-in-out infinite alternate}
.intro-ornament .orb-b{animation:cosmoOrbFloat 7.5s ease-in-out infinite alternate;box-shadow:inset -15px -20px 45px rgba(10,63,51,.44),0 18px 50px rgba(46,99,78,.2)}
.editorial-section{background:radial-gradient(circle at 95% 5%,rgba(84,133,117,.19),transparent 45%),linear-gradient(122deg,#0e3236,#173e41)}
.editorial-visual{box-shadow:0 30px 60px rgba(2,18,24,.22)}
.editorial-photo{transition:transform 1.65s var(--cosmo-ease)}
.editorial-visual:hover .editorial-photo{transform:scale(1.055)}
.editorial-stamp{animation:cosmoSeal 14s ease-in-out infinite alternate}
.reality-item{transition:border-color .3s ease,transform .4s var(--cosmo-ease)}
.reality-item:hover{transform:translateX(7px);border-color:rgba(205,188,138,.55)}
html[dir=rtl] .reality-item:hover{transform:translateX(-7px)}
.benefit-tile,.area-card,.service-card,.cost-tier,.fact-card,.source-card{transition:transform .55s var(--cosmo-ease),box-shadow .55s ease,border-color .45s ease,background .45s ease}
.benefit-tile:hover{background:rgba(226,237,229,.44);transform:translateY(-3px)}
.area-card,.service-card,.cost-tier,.fact-card,.source-card{isolation:isolate}
.area-card:hover,.service-card:hover,.cost-tier:hover,.fact-card:hover,.source-card:hover{border-color:rgba(147,163,119,.6);box-shadow:0 22px 48px rgba(30,60,52,.11)}
.area-card[data-illuminate]::before,.service-card[data-illuminate]::before,.cost-tier[data-illuminate]::before,.fact-card[data-illuminate]::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(420px circle at var(--glow-x,50%) var(--glow-y,50%),rgba(208,187,137,.17),transparent 66%);opacity:0;transition:opacity .3s}
.area-card[data-illuminate]:hover::before,.service-card[data-illuminate]:hover::before,.cost-tier[data-illuminate]:hover::before,.fact-card[data-illuminate]:hover::before{opacity:1}
.area-card[data-illuminate]>* ,.service-card[data-illuminate]>* ,.cost-tier[data-illuminate]>* ,.fact-card[data-illuminate]>*{position:relative;z-index:1}
.area-card .arrow-circle{transition:transform .4s var(--cosmo-ease)}
.area-card:hover .arrow-circle{transform:translate(4px,-4px)}
.service-card{border-radius:3px;min-width:0}
.service-card h2{line-height:1.34;text-wrap:balance}
.page-services .service-grid{align-items:stretch;gap:clamp(14px,2vw,25px)}
.page-services .service-card:nth-child(5){grid-column:1/-1;grid-template-columns:minmax(0,66px) minmax(0,1.1fr) minmax(0,.9fr);gap:16px clamp(25px,4vw,65px);padding:clamp(30px,4.5vw,55px);background:radial-gradient(circle at 0 100%,rgba(197,218,194,.34),transparent 46%),#f7f8f1;border-color:#c5d7cb}
.page-services .service-card:nth-child(5) .service-num{font-size:2.8rem}
.page-services .service-card:nth-child(5) h2{font-size:clamp(1.5rem,2.3vw,2.15rem);margin:0;grid-column:2;grid-row:1}
.page-services .service-card:nth-child(5) p{grid-column:2;grid-row:2;max-width:610px;margin:0}
.page-services .service-card:nth-child(5) ul{grid-column:3;grid-row:1/3;margin:0;padding-top:17px;align-self:center;min-width:0}
.cost-hero-figure{position:relative;overflow:hidden;box-shadow:0 24px 56px rgba(14,49,43,.22);background:linear-gradient(142deg,#214d46,#0e3435)}
.cost-hero-figure::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(234,216,164,.3);background:radial-gradient(circle at 90% 0%,rgba(244,220,159,.14),transparent 63%)}
.cost-tier:hover{transform:translateY(-7px)}
.cost-contact-cta,.closing{background-image:radial-gradient(ellipse at 85% 4%,rgba(123,159,121,.24),transparent 40%),linear-gradient(119deg,#0c3438,#1b514a)}
.cost-contact-cta::before{content:"";display:block;position:absolute;pointer-events:none}
.nav-panel a,.footer-link-group a{transition:background .22s ease,color .22s ease,transform .22s ease}
.footer-link-group a:hover{transform:translateX(3px)}
html[dir=rtl] .footer-link-group a:hover{transform:translateX(-3px)}
/* JavaScript enhancement only: everything remains visible when scripts are unavailable. */
.js-motion .cosmo-reveal{opacity:0;transform:translate3d(0,37px,0);filter:blur(7px);transition:opacity .95s var(--cosmo-ease),transform 1.05s var(--cosmo-ease),filter .95s ease;transition-delay:var(--reveal-delay,0ms)}
.js-motion .cosmo-reveal.cosmo-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.js-motion .cosmo-reveal.cosmo-visible[data-reveal="scale"]{transform:scale(1)}
.js-motion .cosmo-reveal[data-reveal="scale"]{transform:scale(.964)}
@media(prefers-reduced-motion:no-preference){
 .hero-copy-inner>.eyebrow{animation:cosmoEnter .85s .08s both var(--cosmo-ease)}
 .hero h1 span{animation:cosmoEnter 1.03s .2s both var(--cosmo-ease)}
 .hero h1 em{animation:cosmoEnter 1.08s .34s both var(--cosmo-ease)}
 .hero-lede{animation:cosmoEnter .95s .5s both var(--cosmo-ease)}
 .hero-actions{animation:cosmoEnter .9s .65s both var(--cosmo-ease)}
 .hero-meta{animation:cosmoEnter .9s .82s both var(--cosmo-ease)}
 .hero-image-note{animation:cosmoEnter 1.1s .8s both var(--cosmo-ease)}
 .page-intro .eyebrow,.cost-hero .eyebrow{animation:cosmoEnter .75s .06s both var(--cosmo-ease)}
 .page-intro h1,.cost-hero h1{animation:cosmoEnter .95s .18s both var(--cosmo-ease)}
 .page-intro p,.cost-hero-description{animation:cosmoEnter .92s .38s both var(--cosmo-ease)}
}
@keyframes cosmoEnter{from{opacity:0;transform:translate3d(0,30px,0);filter:blur(5px)}to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}}
@keyframes cosmoMenuIn{from{opacity:0;transform:translateY(-9px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes cosmoHeroFrame{from{transform:scale(1.035) translate3d(-.6%,0,0)}to{transform:scale(1.105) translate3d(.6%,-.3%,0)}}
@keyframes cosmoImageGleam{0%,32%,100%{transform:translateX(-85%) rotate(7deg);opacity:0}50%{opacity:.9}66%{transform:translateX(85%) rotate(7deg);opacity:0}}
@keyframes cosmoOrbFloat{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-14px,0)}}
@keyframes cosmoOrbBreath{from{transform:scale(.96);opacity:.75}to{transform:scale(1.045);opacity:1}}
@keyframes cosmoOrbit{from{transform:scale(.9) rotate(-7deg)}to{transform:scale(1.06) rotate(9deg)}}
@keyframes cosmoSeal{from{transform:rotate(-13deg)}to{transform:rotate(-6deg)}}
@media(min-width:1031px) and (max-width:1450px){
 .cosmo-logo{width:clamp(170px,14vw,200px)}
 .header-inner{gap:clamp(9px,1.3vw,18px)}
 .desktop-nav{gap:clamp(8px,1.4vw,21px)}
 .header-actions{gap:clamp(6px,1vw,14px)}
}
@media(min-width:1031px) and (max-width:1250px){.header-inner{min-height:96px}.cosmo-brand{max-width:181px}.cosmo-logo{width:180px}.desktop-nav .nav-disclosure summary,.desktop-nav>a{font-size:.78rem}.header-cta{padding:11px 9px}}
@media(max-width:1030px){
 .header-inner{min-height:96px;gap:12px}
 .cosmo-brand{max-width:202px}
 .cosmo-logo{width:196px}
 .mobile-nav:not([hidden]){box-shadow:0 24px 42px rgba(12,45,42,.18);backdrop-filter:blur(18px);background:rgba(250,251,246,.985)}
}
@media(min-width:850px) and (max-width:1030px){
 .hero{grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);min-height:610px}
 .hero-copy-inner{padding:72px 30px 60px max(35px,4vw)}
 .hero h1{font-size:clamp(2.7rem,4.7vw,3.9rem)}
 .hero-image-wrap{min-height:610px}
 .hero-actions{gap:10px}
 .section-heading.split{gap:32px}
 .editorial-layout{gap:35px}
 .footer-main{grid-template-columns:minmax(0,1fr);gap:38px}
}
@media(min-width:600px) and (max-width:849px){
 .hero-copy-inner{padding:72px 7vw 56px}
 .hero-image-wrap{min-height:390px;height:390px}
 .hero h1{font-size:clamp(3.1rem,6.8vw,4.5rem)}
 .benefit-grid{gap:0}
 .editorial-visual{height:420px}
 .page-services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
 .page-services .service-card:nth-child(5){display:flex;flex-direction:column;gap:0;padding:clamp(25px,5vw,37px)}
 .page-services .service-card:nth-child(5) .service-num{margin-bottom:15px}
 .page-services .service-card:nth-child(5) h2{margin:0 0 15px}
 .page-services .service-card:nth-child(5) p{margin:0 0 18px}
 .page-services .service-card:nth-child(5) ul{align-self:stretch;border-top:1px solid var(--line);margin:0;max-width:100%}
 .page-intro h1{font-size:clamp(2.2rem,5.9vw,3.65rem);line-height:1.25}
}
@media(max-width:599px){
 .cosmo-brand{padding-block:11px;max-width:178px}
 .cosmo-logo{width:174px}
 .header-inner{min-height:91px;gap:8px}
 .header-actions{gap:6px}
 .lang-wrap select{max-width:88px;width:88px;font-size:.71rem}
 .hero-copy-inner{padding:62px 24px 50px}
 .hero h1{font-size:clamp(2.45rem,9.2vw,3.38rem);line-height:1.23}
 .hero-lede{font-size:1rem;line-height:1.85}
 .hero-actions{align-items:stretch;flex-direction:column;gap:11px}
 .hero-actions .btn{width:100%;justify-content:space-between;min-height:52px}
 .hero-meta{margin-top:25px}
 .hero-image-wrap{height:clamp(270px,78vw,375px);min-height:clamp(270px,78vw,375px)}
 .hero-image-note{bottom:35px}
 .hero-image-note strong{font-size:clamp(1.23rem,5.3vw,1.95rem)}
 .page-intro{padding:67px 0 63px}
 .page-intro h1{font-size:clamp(2.1rem,8.3vw,3rem)}
 .page-intro p{font-size:.99rem;line-height:1.8}
 .page-intro .intro-ornament{display:none}
 .section.spacious{padding-block:78px}
 .editorial-section{padding-block:65px}
 .editorial-visual{height:355px}
 .benefit-tile:hover{transform:none}
 .site-footer{padding-top:65px}
 .closing-inner{gap:30px}
 .cost-hero{padding-block:68px}
 .cost-hero-figure{padding:33px 27px}
 .cost-tier:hover{transform:none}
 .cost-parts-section{padding-block:75px}
}
@media(max-width:380px){
 .cosmo-brand{max-width:146px}
 .cosmo-logo{width:146px}
 .header-inner{min-height:82px;gap:4px}
 .header-actions{gap:3px}
 .lang-wrap select{width:76px;max-width:76px;font-size:.7rem}
 .hero h1{font-size:clamp(2.2rem,8.8vw,2.75rem)}
 .hero-copy-inner{padding-inline:21px}
 .hero-actions .btn{gap:12px}
 .page-services .service-card{padding:26px 22px}
 .footer-links{gap:19px 16px}
}
@media(hover:none),(pointer:coarse){.area-card:hover,.service-card:hover,.cost-tier:hover,.fact-card:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation:none!important;transition-duration:0ms!important}
 .js-motion .cosmo-reveal{opacity:1!important;filter:none!important;transform:none!important}
 .hero-photo{will-change:auto}
 .cosmo-progress{display:none}
 .page-intro::after,.hero-copy::after,.hero-image-wrap::after{animation:none!important}
}

/* Desktop hero overflow regression: wide screens must preserve a real text column. */
@media(min-width:961px){
  .hero-copy{justify-content:flex-start;min-width:0}
  .hero-copy-inner{
    flex:1 1 auto;min-width:0;width:100%;max-width:none;
    padding:clamp(68px,6vw,114px) 0 clamp(60px,5vw,102px);
    padding-inline-start:max(38px,calc((100vw - var(--container))/2));
    padding-inline-end:clamp(28px,3vw,84px);
  }
  .hero h1{max-width:100%;font-size:clamp(2.55rem,4.5vw,5.2rem);line-height:1.19;text-wrap:balance;overflow-wrap:anywhere}
  .hero-lede{max-width:570px}
}
@media(min-width:961px) and (max-width:1200px){
  .hero-copy-inner{padding-inline-start:clamp(28px,4vw,50px);padding-inline-end:clamp(24px,3vw,38px)}
  .hero h1{font-size:clamp(2.55rem,4.3vw,4.1rem)}
}
@media(min-width:801px) and (max-width:960px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-copy{justify-content:flex-start;min-width:0}
  .hero-copy-inner{flex:1 1 auto;width:100%;max-width:none;min-width:0;padding:72px max(32px,7vw) 58px}
  .hero h1{max-width:800px;font-size:clamp(3rem,6.2vw,4.45rem);line-height:1.2;text-wrap:balance;overflow-wrap:anywhere}
  .hero-lede{max-width:730px}
  .hero-image-wrap{height:clamp(345px,46vw,450px);min-height:clamp(345px,46vw,450px)}
  .hero-meta{margin-top:32px}
}
@media(max-width:800px){
  .hero-copy-inner{width:100%;max-width:none;min-width:0}
}

/* Biometric cards benefit from existing scroll-reveal effects, without heavy GPU filters. */
.biometric-card[data-illuminate]{position:relative;isolation:isolate}


/* RESPONSIVE MATRIX 2026-10-30
   One final, viewport-aware layer for narrow phones, foldables, tablets,
   standard desktops and ultrawide screens. Keep the original visual system. */
:root{--cosmo-side-gap:clamp(17px,3vw,46px)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.container{width:min(var(--container),calc(100% - 2 * var(--cosmo-side-gap)))}
.hero,.hero-copy,.hero-copy-inner,.hero-image-wrap,
.page-intro-layout,.section-heading,.section-heading>div,
.editorial-layout,.editorial-copy,.footer-main,.footer-links,
.cost-hero-layout,.cost-split,.cost-residence-panel,.price-bridge,
.contact-layout,.contact-panel,.enquiry-wrapper,.roster-record-grid,
.direct-company-inner,.direct-register,.special-assessment-inner,
.service-grid,.service-card,.cost-tier-grid,.cost-tier,.area-grid,
.area-card,.fact-grid,.fact-card,.biometric-grid,.biometric-card,
.source-grid,.source-card,.faq-layout,.rates-layout,.rate-row{min-width:0}
:where(.hero,.page-intro,.cost-hero,.section,.content-page,.site-footer) h1,
:where(.hero,.page-intro,.cost-hero,.section,.content-page,.site-footer) h2,
:where(.hero,.page-intro,.cost-hero,.section,.content-page,.site-footer) h3{
  overflow-wrap:break-word
}
:where(.contact-value,.footer-contact a,.footer-link-group a,
  .source-card a,.cost-sources a,.biometric-source a,
  .roster-record a,.roster-record dd,.direct-register strong,
  .service-card li,.cost-tier-kind,.cost-part p,.rate-row strong,
  .cost-faq strong,.faq-item strong){overflow-wrap:anywhere}
.header-inner{min-width:0}
.header-actions{flex-shrink:0}
.menu-toggle{width:48px;height:48px;min-width:48px;min-height:48px;flex-shrink:0;padding:0}
.lang-wrap{min-width:0}
.lang-wrap select{min-height:44px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.hero-copy-inner{min-width:0}
.hero h1,.page-intro h1,.cost-hero h1{text-wrap:balance}
.hero-actions .btn,.closing .btn,.special-assessment-inner .btn,
.cost-residence-panel .btn,.enquiry-actions .btn{max-width:100%;white-space:normal}
.service-card li,.cost-part,.contact-method,.biometric-note,
.roster-proof>div,.insight-banner{min-width:0}
.faq-item summary strong,.cost-faq summary strong{min-width:0}
.cost-hero-figure>div{max-width:100%}
.cost-tier-amount{max-width:100%;overflow-wrap:anywhere}
.backtop{inset-inline-end:max(18px,env(safe-area-inset-right));right:auto;bottom:max(18px,env(safe-area-inset-bottom))}
html[dir=rtl] .backtop{right:auto;left:max(18px,env(safe-area-inset-left))}
@media(min-width:1700px){
  :root{--container:clamp(1250px,75vw,1520px)}
  .hero-lede{max-width:640px}
  .section-heading h2{max-width:780px}
  .section-heading p{max-width:500px}
}
@media(max-width:1140px){
  /* Mobile navigation begins at 1140px, so menu layout and JS use 1141px. */
  .desktop-nav,.header-cta{display:none}
  .menu-toggle{display:flex}
  .mobile-nav:not([hidden]){
    display:grid;grid-template-columns:minmax(0,1fr);gap:2px;
    padding:12px clamp(18px,5vw,62px) max(24px,env(safe-area-inset-bottom));
    max-height:calc(100vh - 105px);max-height:calc(100dvh - 105px);
    overflow-y:auto;overscroll-behavior:contain
  }
  .mobile-nav>.nav-disclosure,.mobile-nav>a,.mobile-nav .nav-panel{min-width:0}
  .mobile-nav>.nav-disclosure>summary{min-height:50px}
  .mobile-nav .nav-panel a{overflow-wrap:anywhere;min-height:48px}
  .header-inner{gap:clamp(8px,1.5vw,18px)}
}
@media(min-width:760px) and (max-width:1140px) and (min-height:550px){
  /* Wide foldables and landscape tablets retain desktop-like hero columns. */
  .hero{grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);min-height:0}
  .hero-copy{justify-content:flex-start;min-width:0}
  .hero-copy-inner{
    flex:1 1 auto;width:100%;max-width:none;min-width:0;
    padding:clamp(48px,6vw,82px) clamp(21px,3.1vw,45px)
  }
  .hero h1{font-size:clamp(2.15rem,3.8vw,3.6rem);line-height:1.21;letter-spacing:-.04em}
  .hero-lede{font-size:clamp(.92rem,1.5vw,1.05rem);line-height:1.75}
  .hero-actions{gap:10px;flex-direction:row;align-items:center}
  .hero-actions .btn{width:auto;min-height:48px;padding:13px 15px;gap:12px;font-size:.84rem}
  .hero-meta{margin-top:29px;letter-spacing:.12em}
  .hero-image-wrap{min-height:clamp(505px,55vw,655px);height:auto}
  .hero-image-note{inset-inline:8%;bottom:47px}
  .hero-image-note strong{font-size:clamp(1.28rem,2.2vw,1.9rem)}
}
@media(min-width:760px) and (max-width:899px) and (min-height:550px){
  .hero{grid-template-columns:minmax(0,1.19fr) minmax(0,.81fr)}
  .hero h1{font-size:clamp(2.1rem,3.7vw,2.75rem)}
  .hero-copy-inner{padding-inline:clamp(20px,3vw,30px)}
  .hero-actions{align-items:stretch;flex-direction:column}
  .hero-actions .btn{width:100%;justify-content:space-between}
  .hero-image-wrap{min-height:510px}
}
@media(min-width:760px) and (max-width:1140px) and (max-height:549px){
  /* Short landscape phones should not produce an unreadably thin hero. */
  .hero{grid-template-columns:minmax(0,1fr);min-height:0}
  .hero-copy-inner{width:100%;max-width:none;padding:45px max(22px,6vw) 34px}
  .hero h1{font-size:clamp(2.3rem,5.2vw,3.9rem)}
  .hero-image-wrap{height:clamp(250px,40vh,330px);min-height:250px}
  .hero-meta{margin-top:26px}
}
@media(min-width:701px) and (max-width:1040px){
  .page-intro-layout{grid-template-columns:minmax(0,1fr)}
  .intro-ornament{display:none}
  .page-intro h1{max-width:940px;font-size:clamp(2.6rem,5vw,4rem)}
  .faq-layout{gap:clamp(28px,4vw,50px);grid-template-columns:minmax(180px,.45fr) minmax(0,1fr)}
  .two-col-section,.rates-layout{gap:clamp(30px,4.5vw,55px)}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 42px}
}
@media(min-width:701px) and (max-width:900px){
  .contact-layout{grid-template-columns:minmax(0,1fr)}
  .contact-aside{padding-top:0}
  .contact-panel{max-width:100%}
  .cost-hero-layout{grid-template-columns:minmax(0,1fr)}
  .cost-hero-figure{max-width:590px}
  .cost-split{grid-template-columns:minmax(0,1fr)}
  .cost-left{position:static}
}
@media(max-width:740px){
  /* Content-heavy tiles must not retain two narrow text columns. */
  .service-grid,.page-services .service-grid,.area-grid,.fact-grid,
  .scenario-grid,.source-grid{grid-template-columns:minmax(0,1fr)}
  .scenario:last-child,.service-card:last-child:nth-child(odd),
  .page-services .service-card:nth-child(5){grid-column:auto}
  .service-card:last-child:nth-child(odd){display:block}
  .service-card{padding:clamp(25px,4.5vw,36px)}
  .fact-card,.source-card{min-height:0}
  .fact-grid,.scenario-grid{margin-bottom:clamp(48px,8vw,78px)}
  .source-card h2{margin-top:15px}
  .closing-inner,.cost-residence-panel,.special-assessment-inner{min-width:0}
  .closing .btn,.cost-residence-panel .btn{min-width:0}
}
@media(min-width:561px) and (max-width:759px){
  .hero-copy-inner{padding-inline:clamp(28px,6vw,48px)}
  .hero h1{font-size:clamp(2.7rem,6.4vw,4rem)}
  .hero-image-wrap{height:clamp(340px,50vw,400px);min-height:340px}
  .section,.content-page,.faq-section,.contact-section{padding-block:clamp(65px,9vw,85px)}
  .roster-record-grid,.direct-company-inner{grid-template-columns:minmax(0,1fr)}
  .cost-hero-figure{max-width:590px}
}
@media(max-width:640px){
  .cost-tier-grid,.cost-steps{grid-template-columns:minmax(0,1fr)}
  .cost-tier{min-width:0}
  .cost-tier-amount{white-space:normal}
  .rate-row{flex-wrap:wrap;align-items:baseline;gap:6px 16px}
  .rate-row strong{max-width:100%;text-align:start}
  .footer-bottom{flex-wrap:wrap;gap:8px 20px}
}
@media(max-width:560px){
  .header-inner{min-height:clamp(76px,19vw,88px)}
  .cosmo-brand{max-width:clamp(154px,42vw,172px);min-width:0;padding-block:9px}
  .cosmo-logo{width:100%;max-width:100%}
  .lang-wrap select{width:clamp(82px,24vw,101px);max-width:clamp(82px,24vw,101px);font-size:.73rem}
  .header-actions{gap:4px}
  .hero-copy-inner{padding:clamp(48px,8vw,60px) max(18px,var(--cosmo-side-gap)) 45px}
  .hero h1{font-size:clamp(2.2rem,9vw,3.1rem);line-height:1.23}
  .hero-image-wrap{height:clamp(265px,73vw,355px);min-height:265px}
  .hero-image-note{bottom:32px}
  .hero-image-note strong{font-size:clamp(1.2rem,5.2vw,1.85rem)}
  .page-intro h1,.cost-hero h1{font-size:clamp(2rem,8.4vw,2.9rem);line-height:1.25}
  .page-intro,.cost-hero{padding-block:clamp(51px,9vw,70px)}
  .service-card,.page-services .service-card:nth-child(5){padding:26px 22px}
  .service-card li{align-items:flex-start}
  .service-card li svg{margin-top:4px;flex-shrink:0}
  .cost-hero-figure>div{white-space:normal}
  .cost-hero-figure strong{font-size:clamp(2.3rem,8vw,3rem)}
  .cost-residence-panel{padding:25px 20px}
  .price-bridge{padding:23px 20px}
  .price-bridge-price{white-space:normal;min-width:0}
  .contact-panel{padding:23px 19px}
  .roster-record{padding:21px 18px}
  .roster-official-external,.roster-copy-button{overflow-wrap:anywhere}
  .enquiry-actions .btn,.enquiry-actions .copy-email{min-height:48px}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 17px}
}
@media(max-width:360px){
  /* 280-360px narrow phones: keep brand, selector and menu on the same row. */
  .header-inner{gap:4px;min-height:76px}
  .cosmo-brand{width:clamp(116px,38vw,142px);max-width:none;flex:0 1 auto}
  .cosmo-logo{width:100%}
  .lang-wrap select{width:clamp(76px,26vw,89px);max-width:clamp(76px,26vw,89px);font-size:.69rem;padding-inline:2px}
  .menu-toggle{width:44px;height:44px;min-width:44px;min-height:44px}
  .notice-bar{font-size:.61rem;line-height:1.5;letter-spacing:0;padding-inline:9px}
  .hero h1{font-size:clamp(2.05rem,8.8vw,2.55rem)}
  .hero-copy-inner{padding-inline:17px}
  .hero-actions .btn{padding:13px 14px}
  .cost-hero-figure{padding:25px 19px}
  .cost-hero-figure strong{font-size:clamp(2rem,8vw,2.4rem)}
  .cost-tier{padding:22px 20px}
  .cost-tier-amount{font-size:clamp(1.85rem,8vw,2.3rem)}
  .footer-links{gap:21px 13px}
  .footer-link-group a{font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){
  .hero-photo{will-change:auto}
  .area-card,.service-card,.cost-tier,.fact-card,.source-card{transform:none!important}
}


/* DIRECT POSITIONING 2026-11-01: government-source verification + direct, itemised service */
.hero-direct-check{display:flex;align-items:flex-start;gap:12px;min-width:0;margin:18px 0 4px;padding:15px 17px;border-inline-start:3px solid #af9569;background:rgba(255,255,255,.72);box-shadow:0 6px 20px rgba(26,69,56,.045)}
.hero-direct-icon{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;background:#e0ede4;color:#1d5b4d;border-radius:50%;font-weight:750;font-size:.8rem;margin-top:1px}
.hero-direct-content{min-width:0;display:flex;flex-direction:column;gap:3px}
.hero-direct-content strong{color:#194e44;font-size:.84rem;line-height:1.55;overflow-wrap:anywhere}
.hero-direct-content a{color:#1b5a4d;text-decoration:underline;text-underline-offset:4px;font-size:.8rem;font-weight:700;min-height:30px;display:inline-flex;align-items:center;gap:8px;max-width:100%}
.hero-direct-content a:hover{color:#0b3430}
.direct-value-section{padding:clamp(60px,6vw,90px) 0 clamp(62px,7vw,94px);background:linear-gradient(142deg,#e9f1e9 0%,#f8f7f0 56%,#eaf1e9 100%);border-block:1px solid #d2dfd5}
.direct-value-top{display:flex;justify-content:space-between;align-items:flex-end;gap:clamp(22px,3vw,45px);margin-bottom:31px}
.direct-value-heading{max-width:830px;min-width:0}
.direct-value-heading .eyebrow{color:#836a48;letter-spacing:.12em;font-size:.69rem;font-weight:800}
.direct-value-heading h2{font-size:clamp(1.9rem,3.3vw,3.2rem);line-height:1.24;margin:16px 0 13px;letter-spacing:-.04em;text-wrap:balance;overflow-wrap:anywhere}
.direct-value-heading p{margin:0;font-size:.97rem;line-height:1.83;color:#4c635a}
.direct-value-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:min(270px,100%);flex-shrink:0}
.direct-value-actions .btn{min-height:50px;display:inline-flex;justify-content:space-between;align-items:center;gap:14px;white-space:normal}
.direct-value-official{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;min-height:44px;color:#21594b;font-size:.86rem;font-weight:730;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.direct-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.direct-value-card{background:#fffefa;border:1px solid #cfddd1;border-top:3px solid #b69a69;padding:clamp(22px,2.6vw,33px);min-width:0;box-shadow:0 12px 26px rgba(26,68,58,.045)}
.direct-value-card h3{margin:0 0 14px;font-size:clamp(1.15rem,1.6vw,1.42rem);line-height:1.42;color:#173e37;overflow-wrap:anywhere}
.direct-value-card p{margin:0;font-size:.9rem;color:#526a60;line-height:1.85;overflow-wrap:anywhere}
.direct-value-note{margin:21px 0 0;color:#687b71;line-height:1.75;font-size:.73rem;max-width:1060px;overflow-wrap:anywhere}
.direct-pricing-strip{padding:24px 0;background:#ebf2ea;border-block:1px solid #cbded0}
.direct-pricing-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;min-width:0}
.direct-pricing-inner>div{min-width:0}
.direct-pricing-inner .eyebrow{font-size:.66rem;color:#846d49;letter-spacing:.12em}
.direct-pricing-inner h2{font-size:clamp(1.22rem,2vw,1.7rem);margin:7px 0;line-height:1.34}
.direct-pricing-inner p{margin:0;max-width:860px;font-size:.89rem;line-height:1.8;color:#4c665c}
.direct-pricing-inner>a{flex-shrink:0;display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#1c5a4e;font-weight:720;font-size:.86rem;text-decoration:underline;text-underline-offset:4px;max-width:100%}
.direct-contact-proof{padding:23px 24px;margin-bottom:28px;background:#e9f1e9;border-inline-start:3px solid #b59a72;min-width:0}
.direct-contact-proof .eyebrow{display:block;color:#816846;font-size:.68rem;margin-bottom:10px}
.direct-contact-proof strong{display:block;font-size:1.05rem;color:#1c4e42;line-height:1.5}
.direct-contact-proof p{color:#4d655c;font-size:.85rem;line-height:1.78;margin:9px 0}
.direct-contact-proof a{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#1b5b4d;text-decoration:underline;text-underline-offset:4px;font-size:.83rem;font-weight:700;overflow-wrap:anywhere}
@media(max-width:1040px){
 .direct-value-top{align-items:flex-start;flex-direction:column}
 .direct-value-actions{flex-direction:row;flex-wrap:wrap;gap:12px;min-width:0}
 .direct-value-actions .btn{min-width:220px}
 .direct-value-card{padding:22px}
}
@media(max-width:760px){
 .direct-value-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .direct-value-card h3{margin-bottom:9px}
 .direct-value-note{margin-top:20px}
 .direct-pricing-inner{flex-direction:column;align-items:flex-start;gap:12px}
 .direct-pricing-inner>a{align-self:flex-start}
}
@media(max-width:560px){
 .hero-direct-check{margin-top:17px;padding:13px 14px}
 .direct-value-section{padding-block:53px 58px}
 .direct-value-top{margin-bottom:23px;gap:20px}
 .direct-value-heading h2{font-size:clamp(1.78rem,7.3vw,2.3rem)}
 .direct-value-heading p{font-size:.9rem}
 .direct-value-actions{flex-direction:column;width:100%}
 .direct-value-actions .btn,.direct-value-official{width:100%}
 .direct-value-card{padding:22px 21px}
 .direct-pricing-strip{padding-block:21px}
 .direct-contact-proof{padding:20px 19px}
}
html[dir=rtl] .direct-value-heading,html[dir=rtl] .direct-value-card,html[dir=rtl] .direct-pricing-strip,html[dir=rtl] .direct-contact-proof{text-align:right}


/* COSMO GUIDE 2026-11-01 — source-first, one-stop DSP explanation */
.cosmo-guide-hero{padding:clamp(63px,7.5vw,104px) 0 clamp(55px,6vw,85px);background:linear-gradient(120deg,#153d38,#214e45 67%,#315f50);color:#f9f8f1}
.cosmo-guide-hero .eyebrow{display:block;color:#dbc59a;letter-spacing:.13em;margin-bottom:18px}
.cosmo-guide-hero h1{max-width:1000px;color:#fffdf6;font-size:clamp(2.05rem,4.2vw,4.2rem);line-height:1.17;letter-spacing:-.045em;overflow-wrap:anywhere;text-wrap:balance;margin-bottom:19px}
.cosmo-guide-hero p{font-size:clamp(.95rem,1.25vw,1.1rem);line-height:1.85;max-width:840px;color:#e0eae5}
.cosmo-guide-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
.cosmo-guide-hero .btn{min-height:48px;white-space:normal}
.cosmo-guide-hero .btn-outline{border-color:#c3d6ca;color:#fff}
.cosmo-guide-hero .btn-outline:hover{color:#17463d;background:#fff}
.cosmo-guide-updated{display:inline-block;margin-top:22px;color:#d4e1d8;font-size:.76rem}
.cosmo-guide-overview{padding:clamp(57px,6vw,85px) 0 46px;background:#f7f7f2}
.cosmo-guide-overview h2{font-size:clamp(1.6rem,2.7vw,2.4rem);margin-bottom:24px}
.cosmo-guide-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cosmo-guide-fact{min-width:0;display:flex;flex-direction:column;background:#fffefa;border:1px solid #d4e1d6;border-top:3px solid #b5996a;padding:clamp(22px,2.8vw,31px)}
.cosmo-guide-fact h3{font-size:1.2rem;line-height:1.4;margin:0 0 10px}
.cosmo-guide-fact p{font-size:.88rem;line-height:1.83;color:#4d625b}
.cosmo-guide-fact a{margin-top:auto;padding-top:8px;color:#226557;font-weight:730;font-size:.85rem;text-decoration:underline;text-underline-offset:4px}
.cosmo-guide-toc{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}
.cosmo-guide-toc a{display:inline-flex;align-items:center;min-height:41px;border:1px solid #d3dfd6;border-radius:22px;padding:8px 15px;color:#245d52;background:white;font-size:.82rem;font-weight:620}
.cosmo-guide-toc a:hover{border-color:#558d79;background:#edf4ef}
.cosmo-guide-section{scroll-margin-top:110px;padding:clamp(64px,7vw,93px) 0}
.cosmo-guide-muted{background:#eef2eb}
.cosmo-guide-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(30px,6vw,90px);align-items:start}
.cosmo-guide-lead,.cosmo-guide-detail{min-width:0}
.cosmo-guide-lead .eyebrow{display:block;color:#826b49;font-size:.72rem;letter-spacing:.13em;margin-bottom:13px}
.cosmo-guide-lead h2{font-size:clamp(1.75rem,3.2vw,3.1rem);line-height:1.24;margin-bottom:16px;overflow-wrap:anywhere;text-wrap:balance}
.cosmo-guide-lead p{color:#526960;font-size:.95rem;line-height:1.85}
.cosmo-guide-detail>p{font-size:.91rem;color:#546a62;line-height:1.8}
.cosmo-guide-roster{background:#fff;border:1px solid #d7e2da;border-inline-start:4px solid #b49967;padding:clamp(23px,3vw,33px);display:flex;flex-direction:column;gap:10px}
.cosmo-guide-roster>span{color:#8c714a;font-size:.68rem;letter-spacing:.11em;font-weight:750}
.cosmo-guide-roster strong{font-size:clamp(1.18rem,1.75vw,1.55rem);color:#173e37;overflow-wrap:anywhere}
.cosmo-guide-roster p{margin:0;font-size:.92rem;color:#476159}
.cosmo-guide-roster a,.cosmo-guide-textlink,.cosmo-guide-identity a,.cosmo-guide-sources a{color:#1e6052;text-decoration:underline;text-underline-offset:4px;font-weight:680}
.cosmo-guide-roster a{min-height:43px;display:inline-flex;align-items:center}
.cosmo-guide-textlink{display:inline-flex;min-height:43px;align-items:center;overflow-wrap:anywhere}
.cosmo-guide-table-scroll{max-width:100%;overflow-x:auto;border:1px solid #d3dfd5;border-radius:4px;background:#fff}
.cosmo-guide-table{border-collapse:collapse;width:100%;min-width:390px;text-align:start}
.cosmo-guide-table caption{text-align:start;padding:16px 22px;background:#1d4b42;color:#fff;font-size:.89rem;font-weight:730;caption-side:top}
.cosmo-guide-table th,.cosmo-guide-table td{padding:15px 20px;border-bottom:1px solid #e2e9e3;vertical-align:middle;text-align:start;font-size:.92rem}
.cosmo-guide-table thead th{background:#edf3ed;color:#214b40;font-size:.77rem}
.cosmo-guide-table tbody tr:last-child th,.cosmo-guide-table tbody tr:last-child td{border-bottom:0}
.cosmo-guide-table td{font-weight:730;white-space:nowrap;font-variant-numeric:tabular-nums}
.cosmo-guide-note{font-size:.78rem!important;line-height:1.8;color:#688076!important;margin-top:17px!important}
.cosmo-guide-checklist{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.cosmo-guide-checklist li{position:relative;padding:14px 18px 14px 43px;border:1px solid #d8e3d9;background:white;line-height:1.65;font-size:.94rem;overflow-wrap:anywhere}
.cosmo-guide-checklist li::before{content:'✓';position:absolute;left:16px;color:#29755f;font-weight:800}
html[dir=rtl] .cosmo-guide-checklist li{padding:14px 43px 14px 18px}
html[dir=rtl] .cosmo-guide-checklist li::before{left:auto;right:16px}
.cosmo-guide-stages{border-top:1px solid #d2e0d5}
.cosmo-guide-stage{display:flex;align-items:flex-start;gap:17px;border-bottom:1px solid #d2e0d5;padding:18px 3px}
.cosmo-guide-stage>span{flex:0 0 30px;color:#9f8153;font-weight:790;font-size:.8rem;padding-top:4px}
.cosmo-guide-stage>div{min-width:0}
.cosmo-guide-stage h3{font-size:1.15rem;margin:0 0 7px}
.cosmo-guide-stage p{font-size:.9rem;color:#526a60;line-height:1.75;margin:0}
.cosmo-guide-identity{padding:clamp(23px,3vw,35px);background:#fffdfa;border:1px solid #d3e2d7}
.cosmo-guide-identity h3{margin:0 0 13px}
.cosmo-guide-identity p{font-size:.93rem;color:#526a60;line-height:1.86}
.cosmo-guide-links{display:flex;flex-wrap:wrap;gap:12px 22px}
.cosmo-guide-links a{font-size:.84rem;min-height:42px;display:inline-flex;align-items:center}
.cosmo-guide-questions-intro{max-width:930px;margin-bottom:25px}
.cosmo-guide-questions-intro .eyebrow{color:#876f4e}
.cosmo-guide-questions-intro h2{font-size:clamp(1.8rem,3vw,3rem);margin:12px 0}
.cosmo-guide-questions-intro p{color:#51675e}
.cosmo-guide-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px;align-items:start}
.cosmo-guide-question{background:#fff;border:1px solid #d6e1d7;min-width:0}
.cosmo-guide-question summary{list-style:none;display:flex;gap:12px;align-items:flex-start;padding:20px;cursor:pointer}
.cosmo-guide-question summary::-webkit-details-marker{display:none}
.cosmo-guide-question summary>span:first-child{flex:0 0 23px;font-size:.75rem;color:#947d56;padding-top:3px}
.cosmo-guide-question summary strong{flex:1;min-width:0;font-size:.96rem;line-height:1.53;overflow-wrap:anywhere}
.cosmo-guide-question summary>span:last-child{font-size:1.18rem;color:#387665}
.cosmo-guide-question[open] summary>span:last-child{transform:rotate(45deg)}
.cosmo-guide-question p{border-top:1px solid #e6ece6;padding:16px 20px 20px 55px;margin:0;color:#4e665c;font-size:.9rem;line-height:1.8}
html[dir=rtl] .cosmo-guide-question p{padding:16px 55px 20px 20px}
.cosmo-guide-sources{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.cosmo-guide-sources li{padding:15px 17px;background:#fff;border:1px solid #d8e2db;min-width:0}
.cosmo-guide-sources a{overflow-wrap:anywhere;display:inline-block;font-size:.91rem}
.cosmo-guide-end{background:linear-gradient(115deg,#1c4b42,#224f43);padding:clamp(63px,7vw,90px) 0;color:white}
.cosmo-guide-end .eyebrow{color:#e8d5b3}
.cosmo-guide-end h2{color:white;font-size:clamp(1.75rem,3.2vw,3rem);margin:14px 0}
.cosmo-guide-end p{max-width:820px;color:#e1eae3;line-height:1.86}
.cosmo-guide-end .btn{margin-top:8px}
.cosmo-guide-teaser{padding:45px 0;background:#f6f7ef;border-bottom:1px solid #d5e2d7}
.cosmo-guide-teaser-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}
.cosmo-guide-teaser-inner>div{min-width:0;max-width:950px}
.cosmo-guide-teaser .eyebrow{color:#9b8057}
.cosmo-guide-teaser h2{font-size:clamp(1.35rem,2.15vw,2.15rem);margin:8px 0}
.cosmo-guide-teaser p{font-size:.9rem;color:#5b7065;margin:0}
.cosmo-guide-teaser .btn{flex-shrink:0;min-height:48px;white-space:normal}
.cosmo-guide-inline{padding:14px max(var(--cosmo-side-gap,20px),calc((100vw - var(--container))/2));background:#e5efe5;border-bottom:1px solid #c8dccd}
.cosmo-guide-inline .eyebrow{color:#786449;font-size:.63rem}
.cosmo-guide-inline p{display:inline;margin:0 12px 0 0;color:#3e6255;font-size:.81rem;line-height:1.6}
.cosmo-guide-inline a{color:#1f6656;font-size:.81rem;font-weight:740;text-decoration:underline;text-underline-offset:3px;white-space:normal}
@media(max-width:1100px){
 .cosmo-guide-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .cosmo-guide-lead{max-width:920px}
 .cosmo-guide-teaser-inner{flex-direction:column;align-items:flex-start}
}
@media(max-width:760px){
 .cosmo-guide-facts,.cosmo-guide-questions{grid-template-columns:minmax(0,1fr)}
 .cosmo-guide-overview{padding:47px 0 35px}
 .cosmo-guide-fact{padding:22px}
 .cosmo-guide-section{padding:59px 0}
 .cosmo-guide-question p{padding-left:55px}
}
@media(max-width:560px){
 .cosmo-guide-hero{padding:53px 0 51px}
 .cosmo-guide-hero h1{font-size:clamp(2rem,8vw,2.5rem)}
 .cosmo-guide-hero-actions{flex-direction:column;align-items:stretch}
 .cosmo-guide-hero-actions .btn{width:100%;justify-content:space-between}
 .cosmo-guide-toc{gap:7px}
 .cosmo-guide-toc a{font-size:.77rem;padding:7px 12px}
 .cosmo-guide-lead h2{font-size:clamp(1.7rem,7.5vw,2.1rem)}
 .cosmo-guide-table th,.cosmo-guide-table td{padding:13px 15px}
 .cosmo-guide-question summary{padding:17px 15px}
 .cosmo-guide-question p{padding:14px 17px 18px 51px}
 .cosmo-guide-inline{padding:14px 17px}
 .cosmo-guide-inline p{display:block;margin-bottom:5px}
}
html[dir=rtl] .cosmo-guide-table caption,html[dir=rtl] .cosmo-guide-table th,html[dir=rtl] .cosmo-guide-table td{text-align:right}

/* Practical payment and contracting checks, without making approval promises. */
.cosmo-guide-safe-list{counter-reset:cosmosafe;display:grid;gap:12px;list-style:none;margin:0;padding:0}
.cosmo-guide-safe-list li{counter-increment:cosmosafe;position:relative;min-width:0;background:#fffefa;border:1px solid #dbe6dc;padding:18px 20px 18px 58px;font-size:.91rem;line-height:1.8;color:#425e54;overflow-wrap:anywhere}
.cosmo-guide-safe-list li::before{content:counter(cosmosafe,decimal-leading-zero);position:absolute;left:18px;top:18px;color:#9d7b50;font-size:.83rem;font-weight:750}
html[dir=rtl] .cosmo-guide-safe-list li{padding:18px 58px 18px 20px}
html[dir=rtl] .cosmo-guide-safe-list li::before{left:auto;right:18px}


/* COSMO RESIDENCY / PUBLIC PRE-CONSULTATION 2026-11-01 */
.pr-hero,.advisor-hero{padding:clamp(62px,7vw,99px) 0;background:linear-gradient(116deg,#19463d,#2c5b4b);color:#fefcf6}
.pr-hero h1,.advisor-hero h1{font-size:clamp(2.05rem,4.1vw,4rem);line-height:1.19;max-width:1000px;color:#fff;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance;margin:13px 0 20px}
.pr-hero p,.advisor-hero p{font-size:clamp(.96rem,1.3vw,1.12rem);line-height:1.86;max-width:920px;color:#e5efe8}
.pr-hero .eyebrow,.advisor-hero .eyebrow{color:#e2cdab}
.pr-hero-actions,.advisor-links{display:flex;gap:13px;flex-wrap:wrap;margin-top:27px}
.pr-hero-actions .btn{white-space:normal;min-height:48px;max-width:100%}
.pr-hero-actions .btn-outline{border-color:#bed5c7;color:#fff}
.pr-hero-actions .btn-outline:hover{color:#194a3c;background:#fff}
.pr-intro{background:#f3f5ee;padding:23px 0;border-bottom:1px solid #d8e2d7}
.pr-intro p{margin:0 0 8px;color:#45655b;font-size:.92rem;line-height:1.85}
.pr-intro p:last-child{margin-bottom:0}
.pr-intro .pr-caveat{font-size:.82rem;color:#687a6f}
.pr-translation-note{border-left:3px solid #aa8658;padding:8px 14px;background:#fff}
.pr-heading{max-width:870px;margin-bottom:30px}
.pr-heading .eyebrow,.pr-split .eyebrow,.pr-faq-section .eyebrow{font-size:.7rem;color:#957a52;letter-spacing:.13em}
.pr-heading h2,.pr-split h2,.pr-faq-section h2{font-size:clamp(1.8rem,3vw,3rem);margin:12px 0 16px;line-height:1.23;text-wrap:balance}
.pr-heading p,.pr-split>div>p{line-height:1.82;color:#526b60}
.pr-main{padding-block:clamp(66px,7vw,97px)}
.pr-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.pr-route{min-width:0;display:flex;flex-direction:column;background:#fffefa;border:1px solid #d3e1d6;border-top:3px solid #ac926a;padding:clamp(23px,2.5vw,34px)}
.pr-route .eyebrow{color:#8f754e;font-size:.68rem}
.pr-route h3{font-size:clamp(1.22rem,1.75vw,1.55rem);line-height:1.42;margin:12px 0}
.pr-route strong{color:#236453;font-size:.9rem;overflow-wrap:anywhere}
.pr-route p{font-size:.92rem;line-height:1.85;color:#4f6a60}
.pr-route a{display:inline-flex;align-items:center;min-height:42px;margin-top:auto;color:#1e6251;font-size:.84rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.pr-docs-section{background:#eef4ec}
.pr-steps-section{background:#fafaf6}
.pr-faq-section{background:#edf2ea}
.pr-sources-section{background:#fffefa}
.pr-split{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(30px,6vw,95px);align-items:start}
.pr-split>*{min-width:0}
.pr-uncertain,.pr-privacy-note{font-size:.81rem!important;color:#765d3a!important;line-height:1.8;border-left:3px solid #bfaa87;padding-left:13px}
.pr-document-list,.pr-process-list{list-style:none;counter-reset:none;padding:0;margin:0;display:grid;gap:10px}
.pr-document-list li,.pr-process-list li{display:flex;align-items:flex-start;gap:16px;line-height:1.75;padding:16px 19px;background:#fff;border:1px solid #d8e4da;min-width:0;font-size:.9rem;color:#466358;overflow-wrap:anywhere}
.pr-document-list li span,.pr-process-list li span{flex:0 0 30px;color:#92734c;font-weight:780;font-size:.77rem;padding-top:3px}
.pr-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px;align-items:start}
.pr-qa{min-width:0;border:1px solid #d0e0d4;background:#fffefa}
.pr-qa summary{list-style:none;display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:20px}
.pr-qa summary::-webkit-details-marker{display:none}
.pr-qa summary>span:first-child{flex:0 0 22px;font-size:.74rem;color:#ab9165;padding-top:3px}
.pr-qa summary strong{flex:1;font-size:.95rem;line-height:1.58;min-width:0;overflow-wrap:anywhere}
.pr-qa p{border-top:1px solid #e2ebe3;margin:0;padding:18px 19px 20px 53px;line-height:1.8;font-size:.89rem;color:#50685c}
.pr-sources{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.pr-sources li{min-width:0;border:1px solid #dce5dc;background:#f7faf6;padding:14px 18px}
.pr-sources a{color:#1e6554;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;font-size:.88rem}
.pr-next{background:#19483c;color:#fefbf5;padding:clamp(65px,7vw,90px) 0}
.pr-next h2{color:white;font-size:clamp(1.8rem,3.1vw,2.8rem);margin:13px 0}
.pr-next p{color:#dcebe1;max-width:830px;line-height:1.8}
.pr-next .btn-outline{border-color:#d1e3d6;color:#fff}
.pr-teaser,.advisor-teaser{padding:clamp(38px,4.5vw,60px) 0}
.pr-teaser{background:#f0f4ee}.advisor-teaser{background:#e6efe8}
.pr-teaser-inner,.advisor-teaser-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.pr-teaser-inner>div,.advisor-teaser-inner>div{min-width:0;max-width:890px}
.pr-teaser h2,.advisor-teaser h2{font-size:clamp(1.4rem,2.2vw,2.15rem);margin:8px 0 12px;overflow-wrap:anywhere}
.pr-teaser p,.advisor-teaser p{font-size:.88rem;color:#536e60;line-height:1.75;margin:0}
.pr-teaser .btn,.advisor-teaser .btn{flex-shrink:0;min-height:48px;white-space:normal}
.advisor-links a{color:#f9f8ef;text-decoration:underline;text-underline-offset:4px;font-size:.9rem;font-weight:660;min-height:44px;display:inline-flex;align-items:center}
.advisor-search-section{padding:clamp(60px,6vw,88px) 0;background:#f8f9f5}
.advisor-search-heading{max-width:810px;margin-bottom:24px}
.advisor-search-heading h2,.advisor-precheck h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.2;margin:12px 0}
.advisor-search-heading p,.advisor-precheck p{color:#4d685c;line-height:1.8}
.advisor-searchbar{display:flex;max-width:960px;gap:8px}
.advisor-searchbar input{flex:1;min-width:0;border:1px solid #a8c8b6;border-radius:6px;padding:13px 16px;background:#fff;font-size:1rem}
.advisor-searchbar button{min-height:48px;padding:8px 18px;background:#ebf2e8;border:1px solid #aec6b4;border-radius:6px;color:#225747;font-weight:680;cursor:pointer}
.advisor-count{font-size:.77rem;color:#657a6e;margin:13px 0 19px}
.advisor-qa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.advisor-faq-card{min-width:0;border:1px solid #d5e0d6;background:#fffefa}
.advisor-faq-card[hidden]{display:none!important}
.advisor-faq-card summary{list-style:none;display:flex;gap:12px;padding:19px;cursor:pointer;align-items:flex-start}
.advisor-faq-card summary::-webkit-details-marker{display:none}
.advisor-faq-card summary>span:first-child{flex:0 0 25px;color:#9b7b4a;font-size:.77rem;padding-top:3px}
.advisor-faq-card summary strong{min-width:0;flex:1;line-height:1.55;overflow-wrap:anywhere;font-size:.92rem}
.advisor-faq-card p{margin:0;padding:18px;border-top:1px solid #e1e9e1;color:#4c665c;font-size:.9rem;line-height:1.8}
.advisor-empty{font-size:.94rem;color:#5a705f}
.advisor-precheck{background:#edf3ed;padding:clamp(65px,7vw,95px) 0}
.advisor-precheck-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,90px)}
.advisor-privacy{font-size:.84rem;color:#826e51!important}
.advisor-form-card{min-width:0;border:1px solid #d8e3d8;padding:clamp(23px,3vw,35px);background:#fffefa}

#advisor-precheck-form{display:grid;gap:17px}
#advisor-precheck-form label{display:grid;gap:8px;font-weight:700;color:#254e43;font-size:.91rem}
#advisor-precheck-form select{width:100%;padding:12px 14px;border:1px solid #aac4b2;border-radius:4px;min-height:48px;background:white;color:#234d41}
#advisor-precheck-form .btn{max-width:100%;min-height:48px;justify-self:start;white-space:normal}
#advisor-recommendation{margin-top:24px;padding-top:20px;border-top:1px solid #d2dfd3}
#advisor-recommendation h3{font-size:1.13rem;margin:0 0 13px}
.advisor-action-links{display:grid;gap:10px}
.advisor-action-links a{color:#1b6954;font-weight:700;text-decoration:underline;text-underline-offset:3px;font-size:.9rem}
@media(max-width:930px){.pr-split,.advisor-precheck-grid{grid-template-columns:minmax(0,1fr)}.pr-teaser-inner,.advisor-teaser-inner{flex-direction:column;align-items:flex-start}}
@media(max-width:740px){.pr-route-grid,.pr-faq-grid,.advisor-qa-grid{grid-template-columns:minmax(0,1fr)}.pr-document-list li,.pr-process-list li{padding:14px 16px}}
@media(max-width:560px){.pr-hero,.advisor-hero{padding:56px 0}.pr-hero-actions{flex-direction:column;align-items:stretch}.pr-hero-actions .btn{width:100%}.advisor-searchbar input{font-size:.9rem}.advisor-searchbar button{padding:9px 12px}.pr-qa p{padding:17px 18px}.pr-next{padding:60px 0}.advisor-form-card{padding:21px 18px}}
html[dir=rtl] .pr-uncertain,html[dir=rtl] .pr-privacy-note{border-left:0;border-right:3px solid #bfaa87;padding-left:0;padding-right:13px}

/* 2026-11-01: make Vanuatu statutory sources explicit on citizenship and residency guides. */
.cosmo-authority-note{max-width:100%;min-width:0;background:#e6f0e7;border-inline-start:3px solid #38806a;padding:17px 19px;margin:22px 0 27px;color:#254f42}
.cosmo-authority-note strong{display:block;font-size:.92rem;line-height:1.5;color:#15483c;font-weight:750}
.cosmo-authority-note p{font-size:.87rem!important;line-height:1.8!important;color:#365d50!important;margin:8px 0 10px!important;overflow-wrap:anywhere}
.cosmo-authority-note a{display:inline-flex;align-items:center;gap:8px;min-height:40px;color:#1e6351;font-size:.85rem;font-weight:750;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.cosmo-guide-overview>.container>.cosmo-authority-note{margin:0 0 33px}
.pr-intro .cosmo-authority-note{background:#fffefa}
@media(max-width:560px){.cosmo-authority-note{padding:15px 16px;margin:17px 0 22px}}


/* Market-by-market editorial design. Locale != citizenship; examples are explicitly fictional. */
.market-local-section{padding:clamp(63px,6.7vw,96px) 0;background:#f7f8f3;border-block:1px solid #dbe5da}
.market-local-heading{max-width:1050px;margin-bottom:30px}
.market-local-heading .eyebrow,.market-local-check .eyebrow{color:#987b52;font-size:.72rem;letter-spacing:.13em}
.market-audience{font-size:.8rem!important;font-weight:720;color:#1e6757!important;margin:11px 0 13px!important}
.market-local-heading h2{font-size:clamp(1.85rem,3.1vw,3.05rem);line-height:1.24;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:anywhere;margin:0 0 16px}
.market-local-heading>p:last-child{color:#47665a;line-height:1.84;font-size:.95rem;margin:0}
.market-priorities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.market-priority{background:#fffdfa;border:1px solid #d4e0d5;border-top:3px solid #b39a6f;padding:clamp(22px,2.6vw,33px);min-width:0}
.market-priority .market-n{display:block;color:#a88b5b;font-weight:780;font-size:.78rem;margin-bottom:14px}
.market-priority h3{font-size:clamp(1.12rem,1.55vw,1.38rem);line-height:1.43;overflow-wrap:anywhere;margin:0 0 12px}
.market-priority p{font-size:.9rem;line-height:1.85;color:#4a655c;overflow-wrap:anywhere;margin:0}
.market-cases-heading{max-width:920px;margin:clamp(36px,4.2vw,60px) 0 20px}
.market-cases-heading h3{font-size:clamp(1.45rem,2.3vw,2.15rem);line-height:1.33;margin:0 0 9px}
.market-cases-heading p{color:#5d7168;font-size:.82rem;line-height:1.75;margin:0}
.market-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.market-case{min-width:0;background:#ecf2ed;border:1px solid #d2e1d4;padding:clamp(23px,2.5vw,33px)}
.market-case-label{display:block;color:#8b7050;font-size:.77rem;letter-spacing:.04em;font-weight:780;margin-bottom:12px}
.market-case h3{font-size:clamp(1.15rem,1.65vw,1.5rem);line-height:1.4;margin:0 0 13px;overflow-wrap:anywhere}
.market-case p{color:#47665b;line-height:1.86;font-size:.92rem;margin:0;overflow-wrap:anywhere}
.market-local-check{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(23px,4vw,55px);background:#1d4a40;color:#fff;padding:clamp(24px,4vw,45px);margin-top:19px}
.market-local-check>div{min-width:0}
.market-local-check h3{font-size:clamp(1.17rem,1.8vw,1.6rem);line-height:1.38;color:#fdf9ef;margin:10px 0}
.market-local-check p{color:#e0e9df;font-size:.88rem;line-height:1.84;margin:0}
.market-source-links{display:flex;flex-direction:column;gap:9px}
.market-source-links strong{font-size:.78rem;color:#e3c79c;margin:0 0 4px}
.market-source-links a{display:inline-flex;align-items:center;min-height:41px;color:#e5f1ea;text-decoration:underline;text-underline-offset:4px;font-size:.81rem;font-weight:680;overflow-wrap:anywhere;line-height:1.6}
.market-language-warning{font-size:.75rem;color:#667b70;line-height:1.8;margin:17px 0 0;overflow-wrap:anywhere}
.market-inline{background:#e7f0e8;border-bottom:1px solid #ccdece;padding:16px 0}
.market-inline-content{display:flex;align-items:center;justify-content:space-between;gap:clamp(17px,3vw,35px)}
.market-inline-content>div{min-width:0;flex:1}
.market-inline-content .eyebrow{display:block;color:#7e6a4c;font-size:.65rem;letter-spacing:.09em;overflow-wrap:anywhere;margin-bottom:6px}
.market-inline-content strong{display:block;font-size:clamp(.93rem,1.3vw,1.05rem);line-height:1.55;color:#1b5142;overflow-wrap:anywhere}
.market-inline-content p{font-size:.83rem;color:#4c685c;line-height:1.65;margin:5px 0}
.market-inline-content small{display:block;font-size:.71rem;color:#62796c;line-height:1.55}
.market-inline-content>a{flex-shrink:0;display:inline-flex;align-items:center;min-height:44px;color:#236e55;text-decoration:underline;text-underline-offset:4px;font-size:.82rem;font-weight:760;white-space:normal;max-width:220px}
.market-education-sources{padding:17px 20px;background:#e7efe6;border:1px solid #c9dfce;margin-top:25px;min-width:0}
.market-education-sources strong{font-size:.84rem;color:#235341}
.market-education-sources p{font-size:.8rem;line-height:1.8;margin:7px 0;color:#547061;overflow-wrap:anywhere}
.market-education-sources a{color:#1c5e4e;text-decoration:underline;text-underline-offset:4px}
@media(max-width:940px){.market-priorities{grid-template-columns:repeat(2,minmax(0,1fr))}.market-priority:last-child{grid-column:span 2}.market-local-check{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){.market-priorities,.market-cases{grid-template-columns:minmax(0,1fr)}.market-priority:last-child{grid-column:auto}.market-inline-content{align-items:flex-start;flex-direction:column}.market-inline-content>a{max-width:100%}.market-local-section{padding:54px 0}.market-local-check{padding:24px 21px}.market-priority,.market-case{padding:23px 21px}}
html[dir=rtl] .market-local-section,html[dir=rtl] .market-inline,html[dir=rtl] .market-education-sources{text-align:right}


/* Market conversion: pain -> concrete Vanuatu use -> conditions and target-fit. */
.market-value-grid{align-items:stretch}
.market-value-card{display:flex;flex-direction:column;gap:0;background:#fffefb}
.market-value-card>h3{min-height:2.6em}
.market-value-card .market-value-point{padding:12px 0;border-top:1px solid #e2e9e3}
.market-value-point strong{display:block;font-size:.74rem;color:#93794d;letter-spacing:.025em;margin:0 0 5px;line-height:1.5}
.market-value-card .market-value-point p{margin:0;color:#3e6253;line-height:1.77;font-size:.87rem}
.market-value-actual{background:#e9f3ec;border:1px solid #c9e1cf!important;margin:7px -10px;padding:13px 10px!important}
.market-value-card .market-value-actual p{font-weight:630;color:#1f5646}
.market-value-card .market-value-limits p{font-size:.81rem;color:#667368}
.market-value-card>a{margin-top:auto;display:inline-flex;align-items:center;min-height:46px;padding-top:10px;font-size:.84rem;font-weight:730;color:#1f7258;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.market-value-fit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:20px 0 38px}
.market-value-fit>div{padding:20px 22px;background:#e8f0e8;border:1px solid #cfdfd0;min-width:0}
.market-value-fit>div:last-child{background:#f6eee5;border-color:#e7d7c4}
.market-value-fit strong{display:block;font-size:.9rem;color:#225a48;margin-bottom:10px}
.market-value-fit>div:last-child strong{color:#86603d}
.market-value-fit p{font-size:.88rem;line-height:1.8;color:#4c685a;margin:0}
.market-value-fit>div:last-child p{color:#67594d}
@media(max-width:940px){.market-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-value-grid .market-value-card:last-child{grid-column:span 2}}
@media(max-width:680px){.market-value-grid,.market-value-fit{grid-template-columns:minmax(0,1fr)}.market-value-grid .market-value-card:last-child{grid-column:auto}.market-value-card>h3{min-height:0}.market-value-card .market-value-actual{margin-inline:-8px}}
