/* ==========================================================================
   Together and Stronger family — "Hemisphere" identity (16 Oct 2026)
   Warm ivory and soft mist-blue grounds, harbour-navy ink, one Atlantic-blue accent,
   a sunrise-coral hairline for detail. Newsreader for headings, Plus Jakarta Sans for text and figures.
   Self-hosted fonts (latin subset: English, Spanish, Portuguese and French).
   ========================================================================== */
@font-face{font-family:"Newsreader";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/newsreader-500.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/newsreader-600.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/newsreader-500i.woff2) format("woff2")}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jakarta-400.woff2) format("woff2")}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jakarta-500.woff2) format("woff2")}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/jakarta-600.woff2) format("woff2")}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/jakarta-700.woff2) format("woff2")}
@font-face{font-family:"Jakarta";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/jakarta-800.woff2) format("woff2")}

:root{
  --white:#FFFDF9; --grey:#EEF3F7; --sand:#F7F1E8; --ink:#13283F; --text:#2C3A4B; --slate:#566476; --line:#E0E6EC;
  --acc:#1E5A8A; --acc-dark:#154468; --warm:#E3825A; --mist:#DCE8F1;
  --sans:"Jakarta",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --num:"Jakarta",system-ui,sans-serif;
  --gut:clamp(20px,7.5vw,112px); --wrap:1400px; --pad:clamp(72px,7.6vw,112px); --hdr:88px;
  --r:18px;
  --tas-w-accent:#1E5A8A; --tas-w-accent-ink:#ffffff; --tas-w-ink:#13283F; --tas-w-bg:#ffffff; --tas-w-soft:#EEF3F7;
  --tas-w-line:#E0E6EC; --tas-w-radius:18px; --tas-w-font:var(--sans); --tas-w-shadow:0 16px 40px rgba(19,40,63,.16);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--hdr) + 16px)}
body{margin:0;background:var(--white);color:var(--text);font-family:var(--sans);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--ink);margin:0;line-height:1.25;text-wrap:balance}
h4,dt,summary{text-wrap:balance}
/* Chinese headings break at their punctuation where they can, as the translation was written for it */
p{margin:0 0 1em;text-wrap:pretty}
li,dd{text-wrap:pretty}
ul,ol{margin:0;padding:0;list-style:none}
a{color:var(--acc);text-decoration-thickness:1px;text-underline-offset:.25em}
a:hover{color:var(--acc-dark)}
strong{font-weight:700;color:var(--ink)}
:focus-visible{outline:3px solid var(--acc);outline-offset:3px;border-radius:2px}
::selection{background:rgba(30,90,138,.16);color:var(--ink)}
html{scrollbar-color:#B7BDC7 var(--grey);accent-color:var(--acc);caret-color:var(--acc)}
input,select,textarea{accent-color:var(--acc);caret-color:var(--acc)}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--grey)}
::-webkit-scrollbar-thumb{background:#B7BDC7;border-radius:6px;border:3px solid var(--grey)}
::-webkit-scrollbar-thumb:hover{background:var(--slate)}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.sprite{position:absolute}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-80px;z-index:200;background:var(--white);color:var(--ink);padding:12px 18px;border:1.5px solid var(--ink);border-radius:2px}
.skip:focus{top:12px}
img[class*="pos-"]{object-fit:cover}
.pos-face{object-position:50% 22%}

/* ---------- buttons, kickers, small parts ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 28px;border:1.5px solid var(--acc);border-radius:2px;background:var(--acc);color:#fff;
  font:500 1rem/1.3 var(--sans);text-decoration:none;text-align:center;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.btn:hover{background:var(--acc-dark);border-color:var(--acc-dark);color:#fff}
.btn--line{background:var(--white);color:var(--ink);border-color:var(--ink)}
.btn--line:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn--sm{min-height:46px;padding:11px 24px;font-size:.95rem}
.btn:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.btn:not(.btn--line):focus-visible{outline-color:var(--ink)}
.more{display:inline-flex;align-items:center;min-height:44px;font-weight:500;color:var(--acc)}
.actions,.hero__actions,.phero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.kicker{display:flex;align-items:center;gap:10px;margin:0 0 18px;font:500 .9375rem/1.4 var(--sans);color:var(--acc);letter-spacing:.01em}
.kicker__n{font:700 .9375rem/1 var(--num);font-variant-numeric:tabular-nums}
.kicker__n::after{content:"";display:inline-block;width:18px;height:1.5px;margin-left:10px;vertical-align:middle;background:var(--acc);opacity:.6}
.fine{font-size:.875rem;line-height:1.7;color:var(--slate);max-width:76ch}
.seal-mini{display:inline-grid;place-items:center;flex:none;background:var(--acc);color:#fff;border-radius:2px;font:700 13px/1 var(--serif);padding:4px 6px}
.tag{display:inline-flex;align-items:center;gap:8px;margin:0;font:500 .8125rem/1.4 var(--sans);color:var(--acc)}
.tag--free{color:var(--slate)}
.tag--free::before{content:"";width:7px;height:7px;border:1.5px solid var(--slate);border-radius:50%}
.zh{font-family:var(--serif);font-weight:600;color:var(--slate);margin-left:.4em;white-space:nowrap}

/* ---------- section frame ---------- */
.sec{padding:var(--pad) 0}
.bg-white{background:var(--white)}
.bg-alt{background:var(--grey)}
.sec__head{max-width:760px;margin-bottom:clamp(36px,4vw,56px)}
.sec__head h2+.sec__lede,.sec__body>h2+p{margin-top:16px}
.sec h2,.cta__title{font-size:clamp(1.75rem,3.4vw,3rem);line-height:1.25;letter-spacing:-.005em}
html:lang(en) .sec h2,html:lang(en) .cta__title{font-size:clamp(1.9rem,3.1vw,2.75rem);line-height:1.18;letter-spacing:-.01em}
.sec__lede{margin:18px 0 0;font-size:1.125rem;line-height:1.75;color:var(--text);max-width:720px}
.sec__more{margin:clamp(36px,4vw,56px) 0 0}
.media,.banner,.door__pic,.area__media,.phero__media,.cta__pic,.journey__pics>div,.duo-pics>div{overflow:hidden;border-radius:var(--r);background:var(--line)}
.media img,.banner img,.door__pic img,.area__media img,.phero__media img,.cta__pic img,.journey__pics img,.duo-pics img{width:100%;height:100%;object-fit:cover}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4.4vw,64px);align-items:start}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--line)}
.hdr__in{display:flex;align-items:center;gap:24px;min-height:var(--hdr);position:relative}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-right:auto;flex:none}
.brand__seal{display:grid;place-items:center;width:38px;height:45px;background:var(--acc);color:#fff;border-radius:2px;font:700 20px/1 var(--serif)}
.brand__text{display:grid;line-height:1.2}
.brand__name{font:800 1.1875rem/1.3 var(--num);color:var(--ink);letter-spacing:-.005em}
.brand__full{font:400 .6875rem/1.3 var(--sans);color:var(--slate);white-space:nowrap}
.nav-toggle{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nav-btn{display:none}
.nav{display:flex;align-items:center;flex:1;gap:16px 24px;justify-content:space-between;min-width:0}
.nav__list{display:flex;align-items:center;gap:4px clamp(18px,2.3vw,34px);margin-inline:auto}
.nav__list a{display:flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;font:500 .9375rem/1.3 var(--sans);white-space:nowrap;position:relative}
.nav__list a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav__list a:hover::after,.nav__list a[aria-current="page"]::after{transform:scaleX(1)}
.nav__tools{display:flex;align-items:center;gap:14px}
.nav__cta{white-space:nowrap}
html:lang(en) .nav__list{gap:4px clamp(14px,1.7vw,28px)}
html:lang(en) .nav__list a{font-size:.9rem}
.fam{position:relative}
.fam summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;min-height:44px;padding:0 4px;font:500 .8125rem/1.2 var(--sans);color:var(--slate);white-space:nowrap}
.fam summary::-webkit-details-marker{display:none}
.fam summary:hover{color:var(--ink)}
.fam__chev{width:10px;height:7px;transition:transform .2s}
.fam[open] .fam__chev{transform:rotate(180deg)}
.fam__panel{position:absolute;right:0;top:calc(100% + 8px);width:290px;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:0 18px 40px rgba(15,26,43,.12);z-index:70}
.fam__note{margin:0 0 8px;padding:0 10px 10px;border-bottom:1px solid var(--line);font-size:.8125rem;line-height:1.5;color:var(--slate)}
.fam__list a,.fam__here{display:flex;align-items:center;min-height:42px;padding:6px 10px;font-size:.9375rem;color:var(--ink);text-decoration:none;border-radius:4px}
.fam__list a:hover{background:var(--grey)}
.fam__here{font-weight:700}
.fam__here::before{content:"";width:6px;height:6px;background:var(--acc);border-radius:50%;margin-right:10px}
.lang{display:flex;align-items:center}
.lang a{display:grid;place-items:center;min-width:40px;min-height:44px;padding:0 6px;color:var(--slate);text-decoration:none;font:600 .8125rem/1 var(--num);white-space:nowrap}
.lang a[data-lang="zh"]{font-family:var(--sans);font-weight:500}
.lang a + a{position:relative}
.lang a + a::before{content:"·";position:absolute;left:-3px;color:var(--slate)}
.lang a[aria-current="true"]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--acc);text-decoration-thickness:2px;text-underline-offset:6px}
.lang a:hover{color:var(--ink)}
@media (max-width:1259px){
  :root{--hdr:76px}
  .nav-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border:1.5px solid var(--ink);border-radius:2px;background:var(--white);color:var(--ink);font:500 .9375rem/1 var(--sans);cursor:pointer;white-space:nowrap}
  .nav-btn__bars{width:18px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}
  .nav-btn__bars::after{content:"";position:absolute;left:0;right:0;top:50%;border-top:1.5px solid currentColor;transform:translateY(-50%)}
  .nav-toggle:focus-visible + .nav-btn{outline:3px solid var(--acc);outline-offset:3px}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--white);border-bottom:1px solid var(--line);padding:8px var(--gut) 24px;flex-direction:column;align-items:stretch;box-shadow:0 20px 30px rgba(15,26,43,.08);max-height:calc(100vh - var(--hdr));overflow:auto}
  .nav-toggle:checked ~ .nav{display:flex}
  .nav__list{flex-direction:column;align-items:stretch;gap:0;margin:0}
  .nav__list a{min-height:52px;font-size:1.0625rem;border-bottom:1px solid var(--line)}
  .nav__list a::after{display:none}
  .nav__list a[aria-current="page"]{color:var(--acc)}
  .nav__tools{flex-wrap:wrap;justify-content:space-between;padding-top:14px}
  .nav__cta{flex:1 1 100%;margin-top:6px}
  .fam{position:static}
  .fam__panel{position:static;width:auto;margin-top:6px;box-shadow:none}
  .brand__seal{width:34px;height:40px;font-size:18px}
}
@media (max-width:440px){.brand{flex:1 1 auto;min-width:0;gap:9px}.brand__text{min-width:0}.brand__full{font-size:.625rem;white-space:nowrap;overflow:hidden;text-overflow:clip;line-height:1.35}
.brand__zh{display:none}.nav-btn{padding:8px 11px;flex:none}.hdr__in{gap:12px}}

/* ---------- home hero ---------- */
.hero{position:relative;overflow:hidden;min-height:clamp(620px,59.7vw,860px);display:flex;align-items:center;isolation:isolate;background:#DCE3EC}
.hero__bg,.hero__bg img{position:absolute;inset:0;width:100%;height:100%}
.hero__bg img{object-fit:cover;object-position:50% 45%}
.hero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.55) 42%,rgba(255,255,255,0) 70%)}
.hero__in{position:relative;z-index:1;width:100%;padding-block:clamp(56px,5.5vw,96px)}
.hero__copy{max-width:640px}
.kicker--hero{font-size:1.125rem;margin-bottom:28px}
.hero h1{font-size:clamp(3.25rem,7.25vw,6.5rem);line-height:1.12;letter-spacing:-.01em;margin-bottom:28px}
html:lang(en) .hero h1{font-size:clamp(2.9rem,5.6vw,5.1rem);line-height:1.06;letter-spacing:-.02em}
.hero__sub{margin:-8px 0 26px;font:600 clamp(1.25rem,1.8vw,1.5rem)/1.45 var(--serif);color:var(--acc)}
.hero__lede{font-size:1.125rem;line-height:1.75;color:var(--text);max-width:540px;margin-bottom:28px}
.hero__note{margin:18px 0 0;font-size:.8125rem;line-height:1.5;color:var(--slate)}
.hcard{position:absolute;right:var(--gut);bottom:clamp(40px,8.4vw,120px);width:320px;background:var(--white);border-radius:14px;padding:26px 28px 24px;box-shadow:0 24px 48px rgba(15,26,43,.18);display:grid;gap:18px}
.hcard p{margin:0}
.hcard__top{display:flex;align-items:center;gap:10px;font:500 .875rem/1.3 var(--sans);color:var(--ink)}
.hcard__who{display:flex;align-items:center;gap:14px}
.hcard__face{width:52px;height:52px;border-radius:50%;flex:none;object-fit:cover}
.hcard__who p{display:grid;gap:2px}
.hcard__name{font:600 1.125rem/1.3 var(--serif);color:var(--ink)}
.hcard__no{font:500 .75rem/1.3 var(--num);color:var(--slate)}
.hcard__bar{display:block;height:4px;background:var(--acc)}
.hcard__foot{font-size:.8125rem;line-height:1.5;color:var(--slate)}
@media (max-width:1100px){.hero__veil{background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.7) 55%,rgba(255,255,255,.15) 100%)}}
@media (max-width:860px){
  .hero{display:block;min-height:0}
  .hero__veil{background:linear-gradient(180deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.86) 55%,rgba(255,255,255,.35) 100%)}
  .hero__in{padding-block:48px 40px}
  .hero h1{font-size:clamp(2.6rem,13vw,4.2rem)}
  html:lang(en) .hero h1{font-size:clamp(2.3rem,10.4vw,3.6rem)}
  .hero__in{padding-bottom:104px}
  .hcard{position:relative;right:auto;bottom:auto;margin-top:40px;width:min(100%,340px)}
}

/* ---------- facts ---------- */
.facts{padding:88px 0 80px}
.facts__title{font-size:clamp(1.6rem,2.8vw,2.5rem);line-height:1.3;margin-bottom:40px}
.facts__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}
.fact{padding:24px 28px 0;border-left:1px solid var(--line)}
.fact:first-child{padding-left:0;border-left:0}
.fact dt{font:800 clamp(2rem,3.2vw,2.875rem)/1.15 var(--num);color:var(--ink);margin-bottom:12px;white-space:nowrap;letter-spacing:-.01em}
.fact--lead dt{color:var(--acc)}
html:lang(en) .fact dt{font-size:clamp(1.75rem,2.6vw,2.5rem);white-space:normal}
.fact dd{margin:0;font-size:.9375rem;line-height:1.65;color:var(--slate);max-width:240px}
.facts__src{margin:40px 0 0;font-size:.75rem;line-height:1.6;color:var(--slate);max-width:none}
.facts__src strong{color:var(--slate);font-weight:500}
.facts__list--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px;margin-top:36px}
@media (max-width:980px){.facts__list{grid-template-columns:1fr 1fr;row-gap:32px}.fact:nth-child(3){padding-left:0;border-left:0}}
@media (max-width:520px){.facts__list,.facts__list--two{grid-template-columns:1fr;row-gap:0}.fact,.fact:nth-child(3){padding:20px 0;border-left:0;border-top:1px solid var(--line)}.fact:first-child{border-top:0;padding-top:0}.fact dt{white-space:normal}.fact dd{max-width:none}}

/* ---------- two audiences ---------- */
.doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.door{background:var(--white);border-radius:var(--r);overflow:hidden}
.bg-white .door{background:var(--grey)}
.door__pic{height:clamp(240px,25vw,360px);border-radius:0}
.door__body{padding:36px 40px 40px}
.door h3{font-size:clamp(1.6rem,2.2vw,2rem);margin-bottom:18px}
.door__sub{font-weight:500;color:var(--acc);margin:0 0 18px}
.door__promise{font:600 1.1875rem/1.5 var(--serif);color:var(--ink);margin:0 0 10px}
.door__text{font-size:.9375rem;line-height:1.75;color:var(--slate);margin:0 0 22px}
.door__cta{margin:30px 0 0}
.door__note{margin:18px 0 0;font-size:.8125rem;line-height:1.6;color:var(--slate)}
.ticks{display:grid;gap:18px}
.ticks li{position:relative;padding-left:28px;font-size:1rem;line-height:1.7;color:var(--text)}
.ticks li::before{content:"";position:absolute;left:0;top:.85em;width:14px;height:2px;background:var(--warm)}
.houses,.panel__houses{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:56px 0 0}
.houses__t,.panel__houses-t{font-weight:700;font-size:.9375rem;color:var(--ink)}
.houses a,.panel__houses a{display:inline-flex;align-items:center;min-height:44px;padding:6px 18px;border:1px solid var(--line);border-radius:22px;background:var(--white);color:var(--ink);font-size:.875rem;text-decoration:none}
.houses a:hover,.panel__houses a:hover{border-color:var(--ink)}
@media (max-width:900px){.doors{grid-template-columns:1fr}.door__body{padding:28px 24px 32px}}

/* ---------- benefits ---------- */
.split--media .sec__head{margin:0}
.split--media .media{height:clamp(260px,26.4vw,380px)}
.bcards,.progs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(40px,4vw,56px);border-bottom:1px solid var(--line)}
.bcard,.prog{display:flex;flex-direction:column;gap:14px;padding:32px 28px 36px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.bcard:nth-child(4n+1),.prog:nth-child(4n+1){border-left:0;padding-left:0}
.bcard::before,.prog::before{content:"";width:28px;height:3px;background:var(--acc)}
.bcard h3,.prog h3{font-size:1.3125rem;line-height:1.4;font-weight:600}
.bcard p,.prog p{margin:0;font-size:.9375rem;line-height:1.75;color:var(--slate)}
.bcard .tag,.prog .tag{margin-top:auto;color:var(--acc)}
.bcard .tag--free,.prog .tag--free{color:var(--slate)}
@media (max-width:1100px){.bcards,.progs{grid-template-columns:repeat(2,minmax(0,1fr))}.bcard:nth-child(4n+1),.prog:nth-child(4n+1){border-left:1px solid var(--line);padding-left:28px}.bcard:nth-child(2n+1),.prog:nth-child(2n+1){border-left:0;padding-left:0}}
@media (max-width:620px){.bcards,.progs{grid-template-columns:1fr}.bcard,.prog,.bcard:nth-child(4n+1),.prog:nth-child(4n+1){border-left:0;padding:26px 0 28px}}
@media (max-width:900px){.split{grid-template-columns:1fr}}

/* ---------- journey ---------- */
.split--journey{grid-template-columns:minmax(0,596fr) minmax(0,540fr);align-items:start}
.journey__pics{display:grid;grid-template-columns:340fr 240fr;gap:16px;align-items:start}
.journey__a{aspect-ratio:340/460}
.journey__b{aspect-ratio:240/300;margin-top:64px}
.journey__text h2{margin-bottom:0}
.moments{margin-top:28px;border-bottom:1px solid var(--line)}
.moments li{display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px;padding:20px 0;border-top:1px solid var(--line)}
.moments h3{font-size:1.1875rem;line-height:1.5;font-weight:600}
.moments p{margin:0;font-size:1rem;line-height:1.7;color:var(--slate)}
@media (max-width:900px){.split--journey{grid-template-columns:1fr}.journey__pics{max-width:600px}}
@media (max-width:520px){.moments li{grid-template-columns:1fr;gap:6px}}

/* ---------- two systems ---------- */
.banner{height:clamp(180px,20.8vw,300px)}
.banner img{object-position:50% 55%}
.cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,4.4vw,64px);margin-top:56px}
.col h3{font-size:1.875rem;line-height:1.4}
.col__for{margin:0;font-size:.9375rem;color:var(--slate)}
.steps{margin-top:20px;border-bottom:1px solid var(--line)}
.steps li{border-top:1px solid var(--line)}
.step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:20px;padding:18px 0;text-decoration:none;color:var(--ink)}
.step__n{font:700 .9375rem/1.45 var(--num);color:var(--acc);font-variant-numeric:tabular-nums}
.step__txt{display:grid;gap:4px}
.step__t{font:500 1.0625rem/1.45 var(--sans);color:var(--ink)}
.step__d{font-size:.875rem;line-height:1.65;color:var(--slate)}
.step:hover .step__t{color:var(--acc);text-decoration:underline;text-underline-offset:.22em}
.sec--systems .fine{margin:56px 0 0}
@media (max-width:820px){.cols2{grid-template-columns:1fr}}

/* ---------- city network ---------- */
.citysets{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;align-items:start}
.cityset{background:var(--white);border-radius:var(--r);padding:28px}
.bg-white .cityset,.bg-white .cityview{background:var(--grey)}
.cityset__t{margin:0 0 16px;font:500 .875rem/1.4 var(--sans);color:var(--acc)}
.cityset__chips{display:flex;flex-wrap:wrap;gap:10px}
.citychip{display:inline-flex;align-items:center;min-height:40px;padding:8px 16px;border:0;border-radius:20px;background:var(--grey);color:var(--ink);font:500 .9375rem/1.2 var(--sans);cursor:pointer;transition:background-color .2s,color .2s}
.bg-white .citychip{background:var(--white)}
.citychip:hover{background:#E6E9EE}
.citychip[aria-pressed="true"]{background:var(--ink);color:#fff}
html:not(.js) .citysets{display:none}
.cityview{position:relative;background:var(--white);border-radius:var(--r);padding:32px 36px;margin-top:40px}
.cityview__label{display:none;margin:0 0 8px;font-size:.8125rem;color:var(--slate)}
.cities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 40px}
.city__name{font-size:1.25rem;margin-bottom:4px}
.city__ask{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.js .cityview{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:40px;align-items:center}
.js .cityview__label{grid-column:1}
.js .cityview[data-group="abroad"] .cityview__label--abroad,.js .cityview[data-group="bridge"] .cityview__label--bridge,.js .cityview[data-group="gateway"] .cityview__label--gateway{display:block}
.js .cities{display:contents}
.js .city{display:none}
.js .city.is-on{display:contents}
.js .city.is-on .city__name{grid-column:1;font-size:1.875rem;margin:0;white-space:nowrap}
.js .city.is-on .city__ask{grid-column:2;grid-row:1/3;font-size:1.0625rem;color:var(--ink)}
.citynote{margin:20px 0 0;font-size:.875rem;line-height:1.7;color:var(--slate);max-width:90ch}
.citynote a{font-weight:500;white-space:nowrap}
.js .citynote{display:none}
.js .network[data-group="abroad"] .citynote--abroad,.js .network[data-group="bridge"] .citynote--bridge,.js .network[data-group="gateway"] .citynote--gateway{display:block}
@media (max-width:980px){.citysets{grid-template-columns:1fr 1fr}.cityset--abroad{grid-column:1/-1}.cities{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.citysets{grid-template-columns:1fr}.cityset{padding:22px}.cityview{padding:24px}.cities{grid-template-columns:1fr}
  .js .cityview{grid-template-columns:1fr}.js .city.is-on .city__ask{grid-column:1;grid-row:auto;margin-top:12px}}

/* ---------- community leaders ---------- */
.split--leaders{grid-template-columns:minmax(0,576fr) minmax(0,552fr);gap:clamp(32px,5vw,72px);align-items:start}
@media (min-width:981px){.duo-pics{position:sticky;top:calc(var(--hdr) + 40px)}}
.duo-pics{display:grid;grid-template-columns:300fr 260fr;gap:16px;align-items:end}
.duo-pics__a{aspect-ratio:300/420}
.duo-pics__b{aspect-ratio:260/340}
.leaders__text h2{margin-bottom:20px}
.leaders__text .sec__lede{margin:0 0 20px}
.gains{display:grid;gap:22px;margin:0 0 20px}
.gains--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gains dt{font:700 1rem/1.5 var(--sans);color:var(--ink);margin-bottom:6px}
.gains dd{margin:0;font-size:.875rem;line-height:1.65;color:var(--slate)}
.compact{background:var(--grey);border-radius:var(--r);padding:24px 28px;margin:0 0 20px}
.bg-alt .compact{background:var(--white)}
.compact h3{font-size:1.375rem;margin-bottom:10px}
.compact p{margin:0 0 8px;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.compact .compact__fine{margin:0;font-size:.8125rem;color:var(--slate)}
@media (max-width:980px){.split--leaders{grid-template-columns:1fr}.duo-pics{max-width:600px}}
@media (max-width:620px){.gains--3{grid-template-columns:1fr;gap:16px}}

/* ---------- membership ---------- */
.split--member,.member{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:clamp(32px,5vw,72px);align-items:start}
.member__left .actions,.member__left .member__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.member__left .sec__lede{margin-bottom:40px}
.card{width:min(100%,440px);background:var(--white);border-radius:16px;padding:28px 30px 26px;box-shadow:0 20px 40px rgba(15,26,43,.14);display:grid;gap:22px}
.card p{margin:0}
.card__top{display:flex;align-items:center;gap:12px}
.seal-mini--card{font-size:16px;padding:6px 8px}
.card__brand{display:grid;line-height:1.3}
.card__wm{font:800 1rem/1.3 var(--num);color:var(--ink)}
.card__sub{font-size:.6875rem;color:var(--slate)}
.card__name{font:600 1.625rem/1.3 var(--serif);color:var(--ink)}
.card__line{font:500 .8125rem/1.5 var(--num);color:var(--slate)}
.card__no{font-family:var(--num);letter-spacing:.04em}
.card__bar{display:block;height:6px;background:linear-gradient(90deg,var(--acc),var(--warm))}
.card__cap{margin:20px 0 0;font-size:.875rem;color:var(--slate);max-width:440px}
.ways{display:grid;gap:16px}
.way{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 28px;background:var(--white);border:2px solid transparent;border-radius:var(--r);padding:26px 28px}
.bg-white .way{background:var(--grey)}
.way--main{border-color:var(--acc)}
.way__head{grid-column:1;grid-row:1/3;display:grid;gap:8px;align-content:start;justify-items:start}
.way h3{font-size:1.625rem;line-height:1.3}
.way__flag{margin:0;padding:2px 8px;border:1px solid var(--acc);border-radius:2px;color:var(--acc);font-size:.75rem;font-weight:500;line-height:1.5}
.way__for{grid-column:1;grid-row:3;margin:0;font-size:.8125rem;line-height:1.6;color:var(--slate)}
.way .dash,.way .ticks{grid-column:2;grid-row:1/4;align-self:start}
.way__more{grid-column:2;margin:4px 0 0}
.dash{display:grid;gap:8px}
.dash li{position:relative;padding-left:26px;font-size:.9375rem;line-height:1.6;color:var(--ink)}
.dash li::before{content:"—";position:absolute;left:0;color:var(--ink)}
.sec--member .actions{margin-top:56px}
@media (max-width:980px){.split--member,.member{grid-template-columns:1fr}}
@media (max-width:560px){.way{grid-template-columns:1fr;padding:22px}.way__head,.way__for,.way .dash,.way .ticks,.way__more{grid-column:1;grid-row:auto}.way__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}}

/* ---------- free to everyone ---------- */
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.tile{position:relative;display:block;height:100%;background:var(--grey);border-radius:var(--r);padding:32px 28px 36px;text-decoration:none;color:var(--ink);transition:background-color .2s}
.bg-alt .tile{background:var(--white)}
.tile h3{font-size:1.5rem;margin-bottom:14px}
.tile p{margin:0;font-size:.9375rem;line-height:1.75;color:var(--slate)}
.tile__go{position:absolute;right:24px;bottom:18px;color:var(--acc);font-family:var(--num);font-weight:700}
.tile:hover{background:#E9ECF0}
.tile:hover h3{color:var(--acc)}
@media (max-width:1020px){.tiles{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.tiles{grid-template-columns:1fr}}

/* ---------- what we believe (photo ground) ---------- */
.beliefs{position:relative;overflow:hidden;isolation:isolate;padding:96px 0;background:#E8ECF1}
.beliefs__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.beliefs__veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.85) 55%,rgba(255,255,255,.2) 100%)}
.creed{display:grid;gap:22px;max-width:860px}
.creed li{display:grid;grid-template-columns:400px minmax(0,420px);gap:36px;align-items:center}
.creed__m{margin:0;font:700 clamp(1.6rem,2.4vw,2.125rem)/1.35 var(--serif);color:var(--ink);text-wrap:balance}
html:lang(en) .creed__m{font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.25}
.creed__g{margin:0;font-size:1rem;line-height:1.7;color:var(--text)}
@media (max-width:980px){.creed li{grid-template-columns:1fr;gap:6px}.beliefs__veil{background:rgba(255,255,255,.88)}}

/* ---------- join or serve band ---------- */
.cta__title{margin-bottom:56px}
.cta__doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cta__door{display:grid;grid-template-columns:220px minmax(0,1fr);background:var(--white);border-radius:var(--r);overflow:hidden}
.bg-white .cta__door{background:var(--grey)}
.cta__pic{border-radius:0;min-height:300px}
.cta__body{padding:40px 36px}
.cta__body h3{font-size:1.875rem;margin-bottom:16px}
.cta__body p{font-size:1rem;line-height:1.75;color:var(--slate);margin:0 0 24px}
.cta__scope{margin:56px 0 0;font-size:.8125rem;line-height:1.6;color:var(--slate)}
@media (max-width:1100px){.cta__doors{grid-template-columns:1fr}}
@media (max-width:560px){.cta__door{grid-template-columns:1fr}.cta__pic{min-height:0;aspect-ratio:16/9}.cta__body{padding:28px 24px}}

/* ---------- questions ---------- */
.faqwrap{display:grid;grid-template-columns:380px minmax(0,1fr);gap:80px}
.faqwrap__head h2{font-size:clamp(2rem,3.1vw,2.75rem)}
.faq{border-bottom:1px solid var(--line);max-width:860px}
.faq details{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;position:relative;padding:22px 44px 22px 0;font:500 1.125rem/1.5 var(--sans);color:var(--ink);min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before,.faq summary::after{content:"";position:absolute;right:2px;top:50%;width:13px;height:1.5px;background:var(--acc);transition:transform .25s}
.faq summary::after{transform:rotate(90deg)}
.faq details[open] summary::after{transform:rotate(0)}
.faq summary:hover{color:var(--acc)}
.faq details p{margin:0;padding:0 44px 24px 0;font-size:.9375rem;line-height:1.75;color:var(--slate);max-width:72ch}
@media (max-width:900px){.faqwrap{grid-template-columns:1fr;gap:12px}}

/* ---------- the family register ---------- */
.register__label{font:500 .9375rem/1.4 var(--sans);color:var(--acc);margin:0 0 14px}
.register{display:grid;gap:16px;margin-bottom:40px}
.register:last-child{margin-bottom:0}
.register--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.register a,.register__here{display:grid;gap:6px;align-content:start;height:100%;padding:22px 24px;background:var(--grey);border-radius:var(--r);text-decoration:none;transition:background-color .2s}
.bg-alt .register a,.bg-alt .register__here{background:var(--white)}
.register a:hover{background:#E9ECF0}
.register__n{font:700 1.125rem/1.35 var(--serif);color:var(--ink)}
.register a:hover .register__n{color:var(--acc)}
.register__d{font-size:.875rem;line-height:1.6;color:var(--slate)}
.register__here{border:1.5px solid var(--acc)}
@media (max-width:1020px){.register--4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.register--4{grid-template-columns:1fr}}

/* ---------- forms ---------- */
.join{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:start}
.join__form{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:clamp(28px,4vw,48px)}
.bg-white .join__form{background:var(--grey);border-color:transparent}
.join__form h2,.join__h{font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:12px}
.sec .join__h{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.join__scope{margin:0 0 28px;color:var(--slate);max-width:56ch}
.join__lede{margin:0 0 24px;color:var(--slate)}
form[data-tas-form]{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.field{display:grid;gap:7px;align-content:start}
.field--wide{grid-column:1/-1}
.field label{font-size:.875rem;font-weight:500;color:var(--ink)}
.field input:not([type="checkbox"]),.field select,.field textarea{width:100%;min-height:50px;padding:11px 14px;border:1px solid #C9CED6;border-radius:4px;background:var(--white);color:var(--ink);font:inherit;font-size:1rem;line-height:1.4}
.field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2310192B' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px;padding-right:38px}
.field textarea{resize:vertical;min-height:110px}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--acc);outline-offset:2px;border-color:var(--ink)}
.hint{margin:0;font-size:.8125rem;line-height:1.55;color:var(--slate)}
.checks{gap:8px}
.field .check{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:.9375rem;font-weight:400;line-height:1.55;min-height:44px;padding:8px 0;cursor:pointer;color:var(--text)}
.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--acc)}
.check--serve{margin-top:4px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__end{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:6px}
.form__status{margin:0;font-size:.9375rem;line-height:1.5}
.form__status:empty{display:none}
[data-form-status][data-kind="ok"]{color:#0F5132;background:#E8F5EE;border:1px solid #B9DFC9;border-radius:4px;padding:10px 14px}
[data-form-status][data-kind="error"]{color:var(--acc-dark);background:#FCEDEE;border:1px solid #F2C2C6;border-radius:4px;padding:10px 14px}
[data-form-status][data-kind="sending"]{color:var(--slate)}
.join__side h3{font-size:1.5rem;margin-bottom:18px}
@media (min-width:981px){.join__side{position:sticky;top:calc(var(--hdr) + 28px)}}
.next{counter-reset:n;display:grid;gap:16px;margin-bottom:28px}
.next li{counter-increment:n;position:relative;padding-left:46px;min-height:30px;line-height:1.65}
.next li::before{content:counter(n,decimal-leading-zero);position:absolute;left:0;top:0;font:700 .9375rem/1.75 var(--num);color:var(--acc)}
.assure{font:600 1.1875rem/1.5 var(--serif);color:var(--ink);padding:18px 0;border-block:1px solid var(--line);margin:0 0 28px;text-wrap:balance}
.touch{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:24px 26px}
.bg-white .touch{background:var(--grey);border-color:transparent}
.touch h3{font-size:1.25rem;margin-bottom:8px}
.touch p{margin:0 0 6px;font-size:.9375rem;line-height:1.65;color:var(--slate)}
.touch__mail a{font:600 1rem/1.4 var(--num);white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.touch .panel__houses{margin:12px 0 0}
@media (max-width:980px){.join{grid-template-columns:1fr}}
@media (max-width:560px){form[data-tas-form]{grid-template-columns:1fr}}

/* ---------- footer ---------- */
.ftr{background:var(--grey);border-top:1px solid var(--line);padding:80px 0 104px;font-size:.875rem}
.ftr__top{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:48px}
.brand--foot{gap:12px;margin:0 0 14px}
.brand--foot .brand__seal{width:34px;height:40px;font-size:18px}
.brand--foot .brand__name{font-size:1.25rem}
.ftr__line{margin:0 0 14px;font:600 1.125rem/1.4 var(--serif);color:var(--ink)}
.ftr__mail a{font:500 .875rem/1.4 var(--num);color:var(--acc);white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.ftr__cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:32px 28px}
.ftr__col h2{font:700 .875rem/1.4 var(--sans);color:var(--ink);margin:0 0 12px}
.ftr__col .ftr__h2b{margin-top:28px}
.ftr__col ul{display:grid;gap:2px}
.ftr__col a{display:inline-flex;align-items:center;min-height:32px;line-height:1.35;color:var(--slate);text-decoration:none}
.ftr__col a:hover{color:var(--acc);text-decoration:underline}
.ftr__col--office p{margin:0 0 14px;line-height:1.6;color:var(--slate)}
.ftr__lbl{display:block;color:var(--ink);font-weight:500}
.ftr__legal{margin:48px 0 0;padding-top:24px;border-top:1px solid var(--line);font-size:.75rem;line-height:1.7;color:var(--slate);max-width:none}
.ftr__end{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.ftr__copy{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;color:var(--slate);font-size:.8125rem}
.ftr__copy a{display:inline-flex;align-items:center;min-height:44px;color:var(--slate)}
.ftr__dot{color:var(--slate)}
.lang--foot{margin-right:auto}
.ftr__sign{margin:0;font:700 1rem/1.4 var(--serif);color:var(--acc)}
@media (max-width:1100px){.ftr__top{grid-template-columns:1fr}.ftr__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.ftr{padding-bottom:120px}.ftr__cols{grid-template-columns:1fr 1fr}.ftr__col a{min-height:44px}.ftr__col--office{grid-column:1/-1}.ftr__end{flex-direction:column;align-items:flex-start}.lang--foot{margin:0}}

/* ==========================================================================
   Inner pages
   ========================================================================== */
.phero{padding:clamp(48px,5.5vw,80px) 0 clamp(56px,6vw,88px)}
.phero__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:clamp(32px,5vw,72px);align-items:center}
.phero__crumb{display:flex;align-items:center;gap:10px;margin:0 0 22px;font-size:.8125rem;color:var(--slate)}
.phero__crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--slate);text-decoration:none;font-family:var(--num);font-weight:700}
.phero__crumb a:hover{color:var(--acc)}
.phero__sep{color:#AEB4BE}
.phero h1{font-size:clamp(2.2rem,3.9vw,3.5rem);line-height:1.18;letter-spacing:-.01em;margin-bottom:22px}
html:lang(en) .phero h1{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.1}
.phero__lede{margin:0;font-size:1.125rem;line-height:1.75;color:var(--text);max-width:60ch}
.phero__media{height:clamp(240px,27vw,380px)}
.phero__actions{margin:28px 0 0}
.phero__scope{margin:22px 0 0;font-size:.875rem;line-height:1.65;color:var(--slate);max-width:60ch}
.phero__date{display:flex;align-items:center;gap:12px;margin:22px 0 0;font:700 .9375rem/1.3 var(--num);color:var(--ink)}
.phero__date::before{content:"";width:28px;height:3px;background:var(--acc)}
.pindex{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}
.pindex a{display:inline-flex;align-items:center;min-height:44px;padding:6px 18px;border:1px solid #C9CED6;border-radius:22px;background:var(--white);color:var(--ink);font-size:.9375rem;font-weight:500;text-decoration:none}
.pindex a:hover{border-color:var(--ink)}
.pindex--nf{display:grid;grid-template-columns:repeat(2,minmax(0,16rem))}
.pindex--nf li{display:flex}
.pindex--nf a{flex:1;border-radius:4px;justify-content:space-between}

.legend{display:grid;gap:8px;margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line);max-width:36em}
.legend li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 16px;font-size:.875rem;color:var(--slate)}
.legend .tag{min-width:11em}
@media (max-width:900px){.phero__in{grid-template-columns:1fr}.phero__media{height:auto;aspect-ratio:16/9;max-width:640px}}
@media (max-width:480px){.pindex--nf{grid-template-columns:1fr}}

/* section grounds that pair with the inner-page lists */
.sec .sec__body > .sec__head:first-child{margin-bottom:clamp(32px,3.6vw,48px)}

/* benefits */
.jump{padding:clamp(40px,4vw,56px) 0}
.jump__bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px}
html:not(.js) .jump__bar{display:none}
.jump__t{font-weight:500;color:var(--slate);margin-right:6px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:8px 18px;border:1px solid #C9CED6;border-radius:22px;background:var(--white);color:var(--ink);font:500 .9375rem/1.2 var(--sans);cursor:pointer}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.jump__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:28px;border-top:1px solid var(--line)}
.jump__list a{display:flex;align-items:center;gap:14px;height:100%;min-height:58px;padding:10px 4px 10px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font:500 1rem/1.35 var(--sans)}
.jump__list a:hover{color:var(--acc)}
.jump__n{flex:none;min-width:24px;font:700 .9375rem/1 var(--num);color:var(--acc);font-variant-numeric:tabular-nums}
.jump__list li.is-off a{color:var(--slate);opacity:.55}
@media (max-width:1020px){.jump__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.jump__list{grid-template-columns:1fr}}
.area[hidden]{display:none}
.area__head{display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:12px clamp(32px,5vw,72px);align-items:start;margin-bottom:8px}
.area__head h2{grid-column:1}
.area__intro{grid-column:1;margin:0;font-size:1.0625rem;line-height:1.75;color:var(--text);max-width:64ch}
.area__media{grid-column:2;grid-row:1/3;aspect-ratio:16/10}
.prog[hidden]{display:none}
.progs{grid-template-columns:repeat(3,minmax(0,1fr))}
.progs .prog:nth-child(4n+1){border-left:1px solid var(--line);padding-left:28px}
.progs .prog:nth-child(3n+1){border-left:0;padding-left:0}
.prog h3{font-size:1.1875rem}
@media (max-width:1100px){.progs{grid-template-columns:repeat(2,minmax(0,1fr))}.progs .prog:nth-child(3n+1){border-left:1px solid var(--line);padding-left:28px}.progs .prog:nth-child(2n+1){border-left:0;padding-left:0}}
@media (max-width:620px){.progs{grid-template-columns:1fr}.progs .prog,.progs .prog:nth-child(3n+1){border-left:0;padding:24px 0 26px}}
@media (max-width:860px){.area__head{grid-template-columns:1fr}.area__media{grid-column:1;grid-row:auto;max-width:560px;margin-top:12px}}

/* notes, prose, media beside text */
.note{background:var(--grey);border-radius:var(--r);padding:clamp(26px,3.4vw,44px);max-width:900px}
.bg-alt .note{background:var(--white)}
.sec .note h2{font-size:clamp(1.5rem,2.3vw,2rem);margin-bottom:12px}
.note p{color:var(--slate);margin:0 0 1em}
.note .btn{margin-top:8px}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.duo .note{max-width:none}
.lead-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:24px clamp(32px,5vw,72px);align-items:start;margin-bottom:clamp(36px,4vw,56px)}
.lead-split .sec__head{margin-bottom:0}
.lead-split .sec__head > p:last-child{margin:24px 0 0}
.media--side{aspect-ratio:4/3}
.media--tall{aspect-ratio:4/5;max-width:440px;justify-self:end;width:100%}
.prose{max-width:70ch}
.prose h2{margin-bottom:20px}
.prose p{margin:0 0 1.1em;font-size:1.0625rem;line-height:1.8}
.prose p:last-child{margin-bottom:0}
.prose-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:32px clamp(32px,6vw,96px);align-items:start}
.sec--idea .facts__src{margin-top:20px}
@media (max-width:860px){.duo,.lead-split,.prose-split{grid-template-columns:1fr}.media--tall{justify-self:start;max-width:420px}}

/* lists set on hairlines: kinds, reasons, pairs */
.kinds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.kinds--help,.kinds--serve{grid-template-columns:repeat(3,minmax(0,1fr))}
.kinds--five{grid-template-columns:repeat(5,minmax(0,1fr))}
.kinds li{background:var(--grey);border-radius:var(--r);padding:26px 24px 28px}
.bg-alt .kinds li{background:var(--white)}
.kinds li::before{content:"";display:block;width:28px;height:3px;background:var(--acc);margin-bottom:16px}
.kinds h3{font-size:1.1875rem;line-height:1.45;font-weight:600;margin-bottom:8px}
.kinds p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.kinds--serve{counter-reset:k;margin-bottom:clamp(40px,4.4vw,64px)}
.kinds--serve li{counter-increment:k}
.kinds--serve li::before{content:counter(k,decimal-leading-zero);width:auto;height:auto;background:none;font:700 .9375rem/1 var(--num);color:var(--acc)}
@media (max-width:1020px){.kinds,.kinds--five,.kinds--help,.kinds--serve{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.kinds,.kinds--five,.kinds--help,.kinds--serve{grid-template-columns:1fr}}
.reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(24px,3vw,48px);border-bottom:1px solid var(--line)}
.reasons--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.reasons li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px;row-gap:6px;align-content:start;padding:24px 0 26px;border-top:1px solid var(--line)}
.num{grid-row:1/3;font:800 1.25rem/1.45 var(--num);color:var(--acc);font-variant-numeric:tabular-nums}
.reasons h3{font-size:1.1875rem;line-height:1.45;font-weight:600}
.reasons p{grid-column:2;margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
@media (max-width:1020px){.reasons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.reasons,.reasons--two{grid-template-columns:1fr}}
.bridge{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,4.4vw,64px)}
.bridge__col h3{font-size:1.75rem;margin-bottom:6px}
.bridge__for{margin:0 0 20px;font-size:.9375rem;color:var(--slate)}
.bridge--plain .bridge__col h3{margin-bottom:16px}
.pairs{border-bottom:1px solid var(--line)}
.pairs li{padding:18px 0;border-top:1px solid var(--line)}
.pairs h4{font:500 1.0625rem/1.45 var(--sans);color:var(--ink);margin:0 0 4px}
.pairs p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
@media (max-width:820px){.bridge{grid-template-columns:1fr}}

/* leaders */
.compact-wide{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.compact-wide h2{margin-bottom:0}
.compact-wide > div > p:last-child{margin-top:18px;color:var(--slate)}
.compact-wide .compact{margin:0;padding:clamp(26px,3vw,36px)}
.compact .ticks{gap:12px;margin-bottom:22px}
.compact .ticks:last-child{margin-bottom:0}
.compact .ticks li{font-size:.9375rem}
.compact h3 ~ h3{margin-top:4px}
@media (max-width:900px){.compact-wide{grid-template-columns:1fr}}
.timeline{counter-reset:t;max-width:900px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.timeline li{counter-increment:t;display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;padding:22px 0;border-top:1px solid var(--line)}
.timeline li::before{content:counter(t,decimal-leading-zero);grid-row:1/3;font:800 1.25rem/1.5 var(--num);color:var(--acc)}
.timeline h3{font-size:1.25rem;line-height:1.45;margin-bottom:6px}
.timeline p{grid-column:2;margin:0;color:var(--slate);max-width:68ch}

/* guides */
.bridge--guides .bridge__col h3{margin-bottom:6px}
.guide{border-top:1px solid var(--line);scroll-margin-top:calc(var(--hdr) + 16px)}
.guide:last-child{border-bottom:1px solid var(--line)}
.guide summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:28px minmax(0,1fr) 16px;column-gap:18px;row-gap:3px;align-items:start;padding:18px 0;position:relative}
.guide summary::-webkit-details-marker{display:none}
.guide__n{grid-row:1/3;font:700 .9375rem/1.6 var(--num);color:var(--acc)}
.guide__t{grid-column:2;font:500 1.0625rem/1.5 var(--sans);color:var(--ink)}
.guide__d{grid-column:2;font-size:.875rem;line-height:1.6;color:var(--slate)}
.guide summary::before,.guide summary::after{content:"";position:absolute;right:0;top:30px;width:13px;height:1.5px;background:var(--acc);transition:transform .25s}
.guide summary::after{transform:rotate(90deg)}
.guide[open] summary::after{transform:rotate(0)}
.guide summary:hover .guide__t,.guide[open] summary .guide__t{color:var(--acc)}
.guide__steps{counter-reset:s;display:grid;gap:10px;margin:4px 0 20px 46px}
.guide__steps li{counter-increment:s;position:relative;padding-left:30px;font-size:.9375rem;line-height:1.7}
.guide__steps li::before{content:counter(s);position:absolute;left:0;top:0;font:700 .875rem/1.8 var(--num);color:var(--acc)}
.guide__src{margin:0 0 12px 46px;font-size:.875rem;line-height:1.6}
.guide__src strong{display:block;font-weight:500;margin-bottom:2px}
.guide__src a{display:flex;align-items:center;min-height:44px;line-height:1.35}
.guide .fine{margin:0 0 22px 46px}
.sec--desk .guide__src{margin-left:0;max-width:900px}
.never{max-width:900px;margin:0 0 clamp(28px,3.4vw,44px);padding:20px 24px;background:var(--white);border-radius:var(--r);font:600 clamp(1.125rem,1.8vw,1.375rem)/1.5 var(--serif);color:var(--ink)}
.bg-white .never{background:var(--grey)}
.scams{counter-reset:sc;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.scam{counter-increment:sc;position:relative;background:var(--white);border-radius:var(--r);padding:28px 30px 22px 72px}
.bg-white .scam{background:var(--grey)}
.scam::before{content:counter(sc,decimal-leading-zero);position:absolute;left:28px;top:29px;font:800 1.0625rem/1.4 var(--num);color:var(--acc)}
.scam h3{font-size:1.25rem;line-height:1.45;margin-bottom:10px}
.scam p{margin:0 0 .6em;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.gains--desk{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px}
.gains--desk div{background:var(--grey);border-radius:var(--r);padding:24px}
.bg-alt .gains--desk div{background:var(--white)}
.gains--desk dt{font:700 1.125rem/1.45 var(--serif);margin-bottom:8px}
@media (max-width:980px){.gains--desk{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.scams{grid-template-columns:1fr}}
@media (max-width:560px){.guide__steps,.guide__src,.guide .fine{margin-left:0}.scam{padding:24px 20px 18px 56px}.scam::before{left:20px;top:25px}.gains--desk{grid-template-columns:1fr}}

/* about */
.tablets{counter-reset:tb;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.tablets li{counter-increment:tb;background:var(--grey);border-radius:var(--r);padding:26px 24px 28px}
.bg-alt .tablets li{background:var(--white)}
.tablets li::before{content:counter(tb,decimal-leading-zero);display:block;font:800 1rem/1 var(--num);color:var(--acc);margin-bottom:16px}
.tablets h3{font-size:1.1875rem;line-height:1.45;margin-bottom:8px}
.tablets p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
@media (max-width:1020px){.tablets{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.tablets{grid-template-columns:1fr}}

/* join, serve, help */
.join--serve{margin-top:0}
.reach{display:grid;margin:0 0 26px;border-bottom:1px solid var(--line)}
.reach li{display:grid;gap:4px;padding:16px 0;border-top:1px solid var(--line);font-size:.9375rem;line-height:1.6;color:var(--slate)}
.reach strong{font:500 1rem/1.4 var(--sans);color:var(--ink)}
.reach a{font:600 1rem/1.4 var(--num);white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.slips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.slips--three{grid-template-columns:repeat(4,minmax(0,1fr))}
.slip{display:block;height:100%;background:var(--grey);border-radius:var(--r);padding:28px 26px 32px;text-decoration:none;color:var(--ink)}
.bg-alt .slip{background:var(--white)}
.slip__icon{width:36px;height:36px;color:var(--acc);margin-bottom:18px}
.slip h3{font-size:1.375rem;margin-bottom:10px}
.slip p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.slip:hover h3{color:var(--acc)}
@media (max-width:1020px){.slips,.slips--three{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.slips,.slips--three{grid-template-columns:1fr}}

/* privacy */
.doc{display:grid;grid-template-columns:minmax(0,15.5rem) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.doc__ix{position:sticky;top:calc(var(--hdr) + 24px);border-top:3px solid var(--acc);padding-top:14px}
.doc__ixt{font-weight:500;color:var(--ink);margin:0 0 6px}
.doc__ix ol{counter-reset:d}
.doc__ix li{counter-increment:d;border-bottom:1px solid var(--line)}
.doc__ix a{display:flex;align-items:center;gap:12px;min-height:42px;color:var(--text);text-decoration:none;font-size:.9375rem;line-height:1.3}
.doc__ix a::before{content:counter(d,decimal-leading-zero);flex:none;width:1.6em;font:700 .8125rem/1 var(--num);color:var(--acc)}
.doc__ix a:hover{color:var(--acc)}
.prose--doc{max-width:72ch}
.prose--doc .never{margin-bottom:28px}
.prose--doc section{padding:clamp(24px,3vw,34px) 0;border-top:1px solid var(--line);scroll-margin-top:calc(var(--hdr) + 16px)}
.prose--doc section:last-child{padding-bottom:0}
.sec .prose--doc h2{font-size:clamp(1.375rem,2vw,1.625rem);margin-bottom:12px}
.prose--doc p{font-size:1rem}
.prose--doc ul{display:grid;gap:.5em;margin:0 0 1.1em}
.prose--doc ul li{position:relative;padding-left:26px}
.prose--doc ul li::before{content:"";position:absolute;left:0;top:.85em;width:14px;height:2px;background:var(--warm)}
@media (max-width:900px){.doc{grid-template-columns:1fr}.doc__ix{position:static}.doc__ix ol{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.doc__ix a{min-height:44px}}
@media (max-width:480px){.doc__ix ol{grid-template-columns:1fr}}

/* ---------- shared widgets, in this house's hand ---------- */
.tas-chat__launch,.tas-voice{transition:opacity .2s,visibility .2s,transform .2s}
@media (max-width:860px){.float-yield .tas-chat__launch,.float-yield .tas-voice{opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none}}
.tas-chat__launch{border-radius:4px;padding:13px 18px;font-weight:500;box-shadow:0 12px 28px rgba(30,90,138,.25)}
.tas-voice{border-radius:4px;background:var(--white);color:var(--ink);border:1.5px solid var(--ink);font-weight:500;box-shadow:0 12px 28px rgba(15,26,43,.12)}
.tas-voice svg{color:var(--acc)}
.tas-chat__panel{border-color:var(--line)}
.tas-chat__title{font-size:17px;font-weight:700;font-family:var(--serif)}
.tas-chat__msg{border-radius:6px}
.tas-chat__chip{border-radius:20px;border-color:#C9CED6;min-height:36px}
.tas-chat__input,.tas-chat__send{border-radius:4px}
.tas-chat__launch:focus-visible,.tas-voice:focus-visible,.tas-chat__chip:focus-visible,.tas-chat__send:focus-visible,.tas-chat__close:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.tas-chat__close{min-width:44px;min-height:44px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.hdr,.nav,.jump__bar,.tas-chat__launch,.tas-voice,.hero__bg,.beliefs__bg,.cta{display:none}.sec{padding:24px 0}.hero__veil,.beliefs__veil{display:none}}

/* 16 Oct 2026: moving-image header — photos only, no text on images; all text below, light ground */
.hreel{position:relative;height:clamp(300px,42vw,560px);overflow:hidden;background:#EEF2F6}
.hreel__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.6s ease,transform 7s ease}
.hreel__img.is-on{opacity:1;transform:scale(1)}
.hero--below{min-height:0;background:linear-gradient(180deg,#F6F8FB 0%,#FFFFFF 100%)}
.hero--below .hero__in{padding-block:clamp(40px,4.5vw,72px)}
@media (max-width:860px){.hreel{height:clamp(220px,58vw,360px)}.hero--below .hero__in{padding-bottom:104px}}
@media (prefers-reduced-motion:reduce){.hreel__img{transition:none;transform:none}}
@media print{.hreel{display:none}}
.hero--below .hero__in{display:flex;align-items:center;justify-content:space-between;gap:48px}
.hero--below .hcard{position:relative;right:auto;bottom:auto;flex:none}
@media (max-width:860px){.hero--below .hero__in{display:block}}


/* ==========================================================================
   Together and Stronger family — identity layer (what makes this house its own)
   ========================================================================== */
body{background:var(--white);font-size:1.0625rem}
h1,h2{letter-spacing:-.012em}
h1{font-weight:500}
.bg-white{background:var(--white)}
.bg-alt{background:var(--grey)}
.bg-sand{background:var(--sand)}
::selection{background:rgba(227,130,90,.22)}

/* buttons: soft pills */
.btn{border-radius:999px;font-weight:600;letter-spacing:.005em;padding:13px 30px}
.btn--line{background:transparent;color:var(--ink);border-color:rgba(19,40,63,.35)}
.btn--line:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn--sm{border-radius:999px}

/* header: airy, translucent */
.hdr{background:rgba(255,253,249,.92);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid rgba(19,40,63,.08)}
.brand__seal{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,#2A6FA3 0%,#1E5A8A 55%,#17486F 100%);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.brand__seal svg{width:26px;height:26px}
.brand__name{font-family:var(--serif);font-weight:600;font-size:1.3125rem;letter-spacing:-.01em}
.brand__full{color:var(--slate)}
.seal-mini{border-radius:8px;background:var(--acc);padding:5px}
.seal-mini svg{width:14px;height:14px;display:block}
.seal-mini--card svg{width:18px;height:18px}

/* the moving photo header: full width, tall, photos only */
.hreel{height:clamp(340px,52vw,700px);background:var(--mist)}
.hreel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(to bottom,rgba(255,253,249,0),rgba(255,253,249,.55));pointer-events:none}
.hreel__dots{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px;z-index:2}
.hreel__dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.65);box-shadow:0 0 0 1px rgba(19,40,63,.15);transition:width .4s,background .4s}
.hreel__dots span.is-on{width:26px;border-radius:5px;background:#fff}
@media (max-width:860px){.hreel{height:clamp(260px,66vw,420px)}}

/* hero below the reel */
.hero--below{background:var(--white)}
.hero__sub{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--acc)}
.hcard{border-radius:22px;box-shadow:0 28px 60px rgba(19,40,63,.16);border:1px solid rgba(19,40,63,.06)}

/* world-stage band */
.stage{padding:clamp(56px,6vw,84px) 0;background:linear-gradient(180deg,var(--sand),var(--white))}
.stage__in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.stage__k{font:600 .8125rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--warm);margin-bottom:16px}
.stage h2{font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.15;margin-bottom:18px}
.stage__lede{font-size:1.125rem;color:var(--text);max-width:620px}
.stage__nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0}
.stage__nums div{background:#fff;border-radius:var(--r);padding:22px 22px 20px;border:1px solid var(--line)}
.stage__nums dt{font:800 clamp(1.8rem,2.6vw,2.4rem)/1.1 var(--num);color:var(--ink);letter-spacing:-.02em}
.stage__nums dd{margin:8px 0 0;font-size:.9375rem;line-height:1.5;color:var(--slate)}
@media (max-width:900px){.stage__in{grid-template-columns:1fr}}

/* facts: number tiles with a coral hairline */
.fact--lead dt{color:var(--acc)}
.facts__title{font-weight:500}

/* cards get rounded, lifted surfaces instead of China's ruled grid */
.door{border-radius:var(--r);box-shadow:0 1px 0 rgba(19,40,63,.04)}
.bcards,.progs{gap:18px;border-bottom:0}
.bcard,.prog{background:#fff;border:1px solid var(--line)!important;border-radius:var(--r);padding:28px 26px 30px!important}
.bg-white .bcard,.bg-white .prog{background:var(--grey);border-color:transparent!important}
.bcard::before,.prog::before{width:36px;height:3px;border-radius:2px;background:var(--warm)}
.bcard .tag,.prog .tag{font-weight:600}
.tile,.way,.cityset,.cityview,.compact,.card{border-radius:var(--r)}
.citychip{border-radius:999px}
.step__n{color:var(--warm)}
.banner,.media,.door__pic,.cta__pic,.journey__pics>div,.duo-pics>div,.area__media,.phero__media{border-radius:var(--r)}

/* beliefs: light veil over the photograph */
.beliefs__veil{background:linear-gradient(90deg,rgba(255,253,249,.94) 0%,rgba(255,253,249,.86) 45%,rgba(255,253,249,.55) 100%)}
.creed__m{font-family:var(--serif);font-weight:500}

/* member card */
.card{background:linear-gradient(150deg,#FFFFFF 0%,#F2F7FB 100%);border:1px solid rgba(19,40,63,.08)}
.card__bar,.hcard__bar{background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 6px,transparent 6px 9px)}

/* footer: soft mist instead of white */
.ftr{background:#E9F0F5;border-top:0}
.ftr__sign{font-family:var(--serif);font-style:italic;color:var(--acc)}

/* family / houses */
.register a,.register__here{border-radius:14px}
.houses a{border-radius:999px}

/* ---- inner pages: moving header slightly shorter, text-only page header ---- */
.hreel--inner{height:clamp(300px,40vw,560px)}
@media (max-width:860px){.hreel--inner{height:clamp(220px,58vw,360px)}}
.phero__in:not(:has(.phero__media)){grid-template-columns:minmax(0,860px)}
.phero{background:var(--white)}

/* ---- languages band (Europe model) ---- */
.langs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:clamp(32px,4vw,48px)}
.langs li{background:var(--grey);border-radius:var(--r);padding:26px 24px;display:grid;gap:8px;border-top:3px solid var(--warm)}
.langs__n{font:500 1.75rem/1.2 var(--serif);color:var(--ink)}
.langs__d{font-size:.9375rem;line-height:1.55;color:var(--slate)}
@media (max-width:980px){.langs{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.langs{grid-template-columns:1fr}}

/* ---- first ninety days (Canada model) ---- */
.first90{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:clamp(32px,4vw,48px)}
.first90__step{background:#fff;border-radius:var(--r);padding:28px 26px 30px;border:1px solid var(--line)}
.first90__when{font:700 .8125rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#B45E36;margin:0 0 12px}
.first90__step h3{font-size:1.5rem;margin-bottom:14px}
.first90__step .dash li{font-size:.9375rem}
@media (max-width:900px){.first90{grid-template-columns:1fr}}

/* ---- country zones (Canada provinces / Europe countries model) ---- */
.zones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(32px,4vw,48px)}
.zone{background:var(--grey);border-radius:var(--r);padding:24px 24px 26px}
.zone--abroad{background:var(--sand)}
.zone__k{font:600 .75rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin:0 0 10px}
.zone--abroad .zone__k{color:#B45E36}
.zone h3{font-size:1.375rem;margin-bottom:8px}
.zone p:last-child{margin:0;font-size:.9375rem;line-height:1.6;color:var(--slate)}
@media (max-width:980px){.zones{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.zones{grid-template-columns:1fr}}

/* ---- hero headline: two sentences, kept to four lines on desktop ---- */
.hero--below h1{font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.12}
.hero__copy{max-width:760px}

/* skylines sit in the lower part of most photos */
.hreel__img{object-position:50% 68%}

:root{
  --white:#FFFDF9; --grey:#F6F1EA; --sand:#FBF4EB; --ink:#0F2C44; --text:#2B3A49; --slate:#566373; --line:#E6DED3;
  --acc:#0B3D5C; --acc-dark:#082C43; --warm:#F26A21; --mist:#FCE9DB;
  --tas-w-accent:#0B3D5C; --tas-w-soft:#F6F1EA; --tas-w-line:#E6DED3;
}
/* ===== Flagship additions on the family system (17 Oct 2026) ===== */
.brand__seal{background:#FFF6EE;box-shadow:inset 0 0 0 1px #F2D9C6}
.brand__seal svg{width:34px;height:34px}
.seal-mini{background:#FFF6EE;padding:3px;box-shadow:inset 0 0 0 1px #F2D9C6}
.seal-mini svg{width:18px;height:18px}
.seal-mini--card svg{width:24px;height:24px}
.btn{background:var(--acc);border-color:var(--acc)}
.btn--line{background:var(--white);color:var(--ink);border-color:var(--ink)}
.hreel{height:clamp(320px,46vw,640px)}
.hreel__dots span.is-on{background:var(--warm)}

/* utility bar */
.ubar{background:var(--grey);border-bottom:1px solid var(--line);font:500 .8125rem/1.3 var(--sans);color:var(--slate)}
.ubar__in{display:flex;align-items:center;gap:20px;min-height:38px}
.ubar__links{display:flex;gap:20px;margin-left:auto;flex-wrap:wrap}
.ubar a{color:var(--slate);text-decoration:none}
.ubar a:hover{color:var(--ink)}
.ubar .callback{color:var(--acc);font-weight:700}
@media (max-width:760px){.ubar__in>span:first-child,.ubar a[href^="mailto"],.ubar a[href*="raklet"]{display:none}}

/* language buttons styled like the family's language links */
.lang button{display:grid;place-items:center;min-width:40px;min-height:44px;padding:0 6px;border:0;background:none;cursor:pointer;color:var(--slate);font:600 .8125rem/1 var(--num);position:relative}
.lang button + button::before{content:"·";position:absolute;left:-3px;color:var(--slate)}
.lang button[aria-pressed="true"]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--warm);text-decoration-thickness:2px;text-underline-offset:6px}

/* member card in the hero: QR instead of a portrait */
.hcard__qr{width:58px;height:58px;flex:none;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.hcard__qr svg{width:100%;height:100%}
.hcard__bar{background:repeating-linear-gradient(90deg,var(--warm) 0 3px,transparent 3px 6px)}

/* mantra ribbon */
.ribbon{overflow:hidden;background:var(--mist);border-block:1px solid #F3D8C5;padding:16px 0}
.ribbon__track{display:flex;width:max-content;animation:tas-marq 48s linear infinite}
.ribbon__track li{display:flex;align-items:center;gap:24px;padding-right:24px;white-space:nowrap;font:italic 500 clamp(1.1rem,1.7vw,1.4rem) var(--serif);color:#9A3F12}
.ribbon__track i{font-style:normal;font-size:.75rem;color:var(--warm)}
.ribbon:hover .ribbon__track{animation-play-state:paused}
@keyframes tas-marq{to{transform:translateX(-50%)}}

/* stage values + audience line */
.stage__vals{margin-top:clamp(36px,4vw,56px);padding-top:32px;border-top:1px solid var(--line)}
.stage__vals dt{font:600 1.125rem/1.35 var(--serif);color:var(--ink);margin-bottom:6px}
.stage__vals dd{margin:0;font-size:.9375rem;line-height:1.7;color:var(--slate)}
.stage__who{margin:28px 0 0;max-width:72ch;font-size:.9375rem;color:var(--slate)}
.gains--plain dd{margin:0;font-size:.9375rem;line-height:1.7;color:var(--text);padding-left:18px;border-left:3px solid var(--warm)}

/* atlas */
.atlas-grid{display:grid;gap:22px}
.map-fig{position:relative;margin:0;background:var(--white);border-radius:var(--r);padding:clamp(14px,2.4vw,32px);border:1px solid var(--line)}
.map-fig figcaption{font-size:.8125rem;color:var(--slate);margin-top:10px}
.worldmap{width:100%;height:auto;display:block}
.land path{stroke:#fff;stroke-width:.6;transition:filter .3s,opacity .3s}
.hz{cursor:pointer}
.hz-xx path{fill:#DCE4EB}
.atlas-grid.focus .hz path{opacity:.32}
.atlas-grid.focus .hz.hot path{opacity:1}
.hz:focus-visible{outline:none}.hz:focus-visible path{stroke:var(--ink);stroke-width:1.4}
.arc{stroke-width:1.8;stroke-linecap:round;stroke-dasharray:6 8;opacity:.9;animation:tas-flow 2.4s linear infinite;animation-delay:var(--d)}
.halo{opacity:.25;transform-box:fill-box;transform-origin:center;animation:tas-pulse 2.6s ease-out infinite}
.pin{pointer-events:none}
@keyframes tas-flow{to{stroke-dashoffset:-28}}
@keyframes tas-pulse{0%{transform:scale(.6);opacity:.45}100%{transform:scale(2.1);opacity:0}}
.map-tip{position:absolute;pointer-events:none;background:var(--white);color:var(--ink);border:1px solid var(--line);box-shadow:0 12px 28px rgba(15,26,43,.16);border-radius:10px;padding:8px 12px;font-size:.8125rem;display:grid;gap:1px;opacity:0;transform:translate(-50%,-125%);transition:opacity .2s;white-space:nowrap;z-index:2}
.map-tip.on{opacity:1}.map-tip span{color:var(--slate)}
.houses{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.house a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"sw nm go" "sw mt go";gap:4px 12px;align-items:center;height:100%;padding:16px;background:var(--white);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);transition:border-color .25s,box-shadow .25s}
.house a:hover,.house.hot a{border-color:var(--hc);box-shadow:0 10px 24px rgba(15,26,43,.10)}
.house .sw{grid-area:sw;width:10px;height:36px;border-radius:5px;background:var(--hc)}
.house .hn{grid-area:nm;display:grid;gap:2px;min-width:0}
.house .nm strong{display:block;font:600 1.0625rem/1.25 var(--serif);color:var(--ink)}
.house .tn{display:block;font:600 .6875rem/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--slate);margin-bottom:2px}
.house .here{display:inline-block;margin-left:4px;font:700 .625rem var(--sans);letter-spacing:.08em;text-transform:uppercase;background:var(--warm);color:#fff;padding:3px 7px;border-radius:999px;vertical-align:2px}
.house .hr{font-size:.8125rem;color:var(--slate)}
.house .hm{grid-area:mt;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:.75rem}
.house .st{font-weight:700;color:#2C7650}.house .lg{color:var(--slate)}
.house .ic{grid-area:go;width:16px;height:16px;color:var(--slate);fill:none;stroke:currentColor;stroke-width:1.6}
@media (max-width:1180px){.houses{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.houses{grid-template-columns:minmax(0,1fr)}}

/* benefit status tags */
.tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--warm)}
.tag--live{color:#2C7650}.bcard .tag--live{color:#2C7650}.tag--live::before{background:#2C7650}
.tag--free::before{background:none}
.bcard::before{background:var(--warm)}
.sec__more{display:flex;flex-wrap:wrap;gap:12px}

/* savings tool */
.sv-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center}
.sv-copy h2{font-size:clamp(1.9rem,3.1vw,2.75rem);line-height:1.18}
.sv-copy .sec__lede{margin-top:18px}
.sv-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
.sv-form .wide{grid-column:1/-1}
.sv-form label{display:grid;gap:7px;font:600 .875rem var(--sans);color:var(--ink)}
.sv-form select{appearance:none;-webkit-appearance:none;font:500 1rem var(--sans);color:var(--ink);padding:13px 44px 13px 14px;border:1.5px solid #D6CABB;border-radius:10px;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F2C44' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/18px no-repeat;cursor:pointer}
.sv-out{background:var(--white);border-radius:var(--r);padding:clamp(26px,3vw,40px);border:1px solid var(--line);box-shadow:0 20px 40px rgba(15,26,43,.10);border-top:4px solid var(--warm)}
.sv-big{font:600 clamp(2.2rem,3.6vw,3rem)/1.05 var(--serif);color:var(--ink);margin:0}
.sv-cap{margin:10px 0 0;color:var(--slate);font-size:.9375rem}
.sv-rows{margin:22px 0;display:grid}
.sv-rows div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed var(--line)}
.sv-rows dt{color:var(--slate)}.sv-rows dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}
.sv-out .fine{font-size:.8125rem;color:var(--slate);margin-bottom:20px}
.sv-out .btn .ic,.btn .ic{display:none}
@media (max-width:900px){.sv-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.sv-form{grid-template-columns:minmax(0,1fr)}}

/* comparison table */
.tbl{overflow-x:auto;border-radius:var(--r);border:1px solid var(--line);background:var(--white);margin-top:clamp(32px,3.6vw,48px)}
.tbl table{width:100%;border-collapse:collapse;min-width:640px}
.tbl th,.tbl td{text-align:left;padding:17px 22px;border-bottom:1px solid var(--line);font-size:.9375rem;vertical-align:middle}
.tbl tbody tr:last-child th,.tbl tbody tr:last-child td{border-bottom:0}
.tbl thead th{font:700 .75rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--slate);background:var(--grey)}
.tbl thead th.us{color:#9A3F12}
.tbl thead th.us .emblem{width:24px;height:24px;display:inline-block;vertical-align:-7px;margin-right:8px}
.tbl tbody th{font:600 1.0625rem var(--serif);color:var(--ink)}
.tbl td.us{background:#FFF6EE;font-weight:600;color:var(--ink)}
.tbl td.us .ic{width:16px;height:16px;display:inline-block;vertical-align:-3px;margin-right:8px;color:#2C7650;fill:none;stroke:currentColor;stroke-width:2}
.tbl td.them{color:var(--slate)}

/* projections */
.charts{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);margin-top:clamp(32px,3.6vw,48px)}
.cfig{margin:0;min-width:0;background:var(--white);border-radius:var(--r);padding:clamp(18px,2.6vw,32px);border:1px solid var(--line)}
.ct{font:600 1.125rem var(--serif);color:var(--ink);margin-bottom:12px}
.cn{font-size:.8125rem;color:var(--slate);margin:10px 0 0;max-width:72ch}
.cbox{overflow-x:auto}
.chart{width:100%;height:auto;min-width:520px;display:block}
.cfig.span2 .chart:not(.flow){max-height:420px}
.chart.flow{min-width:640px;max-height:440px}
.chart .gl{stroke:#E6E9EE;stroke-width:1}
.chart .ax{font:500 12px var(--sans);fill:#5C6B7A;font-variant-numeric:tabular-nums}
.chart .area{fill:rgba(242,106,33,.12)}
.chart .line{fill:none;stroke:var(--warm);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.chart .dot{fill:#fff;stroke:var(--warm);stroke-width:2.4}.chart .dot.end{fill:var(--warm)}
.chart .ref{stroke:var(--acc);stroke-width:1.5;stroke-dasharray:6 5}
.chart .refl{font:600 12px var(--sans);fill:var(--acc)}
.chart .endl{font:700 13px var(--sans);fill:#9A3F12}
.flow .fl{fill:none;stroke-width:2.4;stroke-dasharray:5 7;animation:tas-flow 2.2s linear infinite}
.flow .card{fill:#fff;stroke:#D8E1E9;stroke-width:1.2}
.flow .cardtop{fill:var(--acc)}
.flow .cardbrand{font:700 10.5px var(--sans);letter-spacing:.14em;fill:#fff}
.flow .cardt{font:600 20px var(--serif);fill:var(--ink)}
.flow .cards{font:500 12px var(--sans);fill:#5C6B7A}
.flow .qr rect{fill:var(--ink)}
.flow .nt{font:700 17px var(--sans);fill:var(--ink)}
.flow .ns{font:500 13px var(--sans);fill:#5C6B7A}
.road{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;margin-top:10px}
.road::before{content:"";position:absolute;left:8px;right:8px;top:9px;height:2px;background:linear-gradient(90deg,var(--warm) 0 50%,#CFD6DE 50%)}
.road li{position:relative;padding:32px 16px 0 0;display:grid;gap:6px}
.road li::before{content:"";position:absolute;top:2px;left:0;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid #CFD6DE}
.road li.done::before{background:var(--warm);border-color:var(--warm)}.road li.next::before{border-color:var(--warm)}
.road .rt{font:700 .75rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#9A3F12}
.road p{font-size:.9375rem;margin:0;max-width:28ch}
@media (max-width:860px){.road{grid-template-columns:minmax(0,1fr);gap:18px}.road::before{left:7px;right:auto;top:8px;bottom:8px;width:2px;height:auto;background:linear-gradient(180deg,var(--warm) 0 50%,#CFD6DE 50%)}.road li{padding:0 0 0 30px}}

/* plans */
.way__price{margin:6px 0 0;font:600 2.4rem/1 var(--serif);color:var(--ink)}
.way__go{margin:18px 0 0}
.way--main{border-color:var(--warm);background:#FFF9F3}
.way__flag{background:var(--warm);color:#fff}
.ways .way{grid-template-columns:210px minmax(0,1fr)}
.way__head{grid-row:1}.way__price{grid-row:2;grid-column:1}.way__for{grid-row:3;grid-column:1}.way__go{grid-row:4}
.way__go .btn{white-space:nowrap}
.way .dash{grid-column:2;grid-row:1/5}
.way__go{grid-column:1}
.fd-note{margin-top:28px;color:var(--slate);font-size:.9375rem}
@media (max-width:560px){.ways .way{grid-template-columns:1fr}.way .dash{grid-column:1;grid-row:auto}}


/* restored 21 Oct 2026: statistics graphics + network map */
.xcharts{margin-top:clamp(40px,4.4vw,64px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--line)}
.xcharts__t{font:700 .8125rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#9A3F12;margin:0 0 18px}
.xcharts__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.xfig{margin:0;min-width:0;background:var(--grey);border-radius:var(--r);padding:clamp(18px,2.2vw,28px)}
.xchart{width:100%;height:auto;display:block;margin-top:6px}
.xchart .pp{fill:#C9D3DD}.xchart .pp.on{fill:var(--warm)}
.xchart .xbig{font:800 30px var(--num);fill:var(--ink)}
.xchart .dn-bg{fill:none;stroke:#D6DEE6;stroke-width:22}
.xchart .dn-fg{fill:none;stroke:var(--warm);stroke-width:22;stroke-linecap:butt}
.xchart .dn-key text{font:500 13px var(--sans);fill:var(--text)}
.xchart .k1{fill:var(--warm)}.xchart .k2{fill:#D6DEE6}
.xchart .bl{font:500 12.5px var(--sans);fill:var(--text)}
.xchart .bt{fill:#DDE4EA}.xchart .bv{fill:var(--acc)}.xchart .b-us{fill:var(--warm)}.xchart .b-es{fill:#F2A25C}
.xchart .bn{font:700 12.5px var(--num);fill:var(--ink)}
@media (max-width:980px){.xcharts__grid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:no-preference){.xchart .dn-fg{animation:tas-grow 1.4s ease-out both}.xchart .bv{transform-box:fill-box;transform-origin:left;animation:tas-bar 1.2s ease-out both}}
@keyframes tas-bar{from{transform:scaleX(0)}}
@keyframes tas-grow{from{stroke-dasharray:0 400}}
.netfig{margin:clamp(28px,3vw,40px) 0 0;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:clamp(16px,2.6vw,32px)}
.netmap{position:relative;background:linear-gradient(180deg,#F6F9FC,#EAF1F7);border-radius:calc(var(--r) - 4px);padding:clamp(8px,1.6vw,20px)}
.netmap{overflow-x:auto}.netsvg{width:100%;min-width:620px;height:auto;display:block;overflow:visible}
.nland path{fill:none;stroke:#C5D3DF;stroke-width:5.2;stroke-linecap:round}
.nland .nd-americas{stroke:#F7C9AE}
.nr{fill:none;stroke:var(--c);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:4 7;opacity:.85;animation:tas-route 2.4s linear infinite;animation-delay:var(--d)}
@keyframes tas-route{to{stroke-dashoffset:-22}}
.nh{cursor:pointer}.nh-dot{fill:var(--c);stroke:#fff;stroke-width:2}
.nh-halo{fill:var(--c);opacity:.22;transform-box:fill-box;transform-origin:center;animation:tas-halo 2.6s ease-out infinite}
.nh:hover .nh-dot,.nh:focus-visible .nh-dot{stroke:var(--ink);stroke-width:2.4}
.nh:focus-visible{outline:none}
.nf-dot{fill:var(--acc);stroke:#fff;stroke-width:2.5}.nf-halo{fill:var(--warm);opacity:.25;animation:tas-halo 2.2s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes tas-halo{0%{transform:scale(.6);opacity:.45}100%{transform:scale(2);opacity:0}}
.net-tip{position:absolute;pointer-events:none;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:8px 12px;box-shadow:0 14px 30px -12px rgba(11,61,92,.35);opacity:0;transform:translate(-50%,-125%);transition:opacity .2s;white-space:nowrap;display:grid;gap:2px}
.net-tip.on{opacity:1}.net-tip strong{font:600 .9375rem var(--serif);color:var(--ink)}.net-tip span{font-size:.8125rem;color:var(--slate)}
.net-legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:14px;font-size:.8125rem;color:var(--slate)}
.net-legend>span{display:inline-flex;align-items:center;gap:8px}
.net-legend i{display:inline-block;width:12px;height:12px;border-radius:50%}
.lg-flag{background:var(--acc);box-shadow:0 0 0 3px rgba(242,106,33,.35)}.lg-house{background:var(--warm)}.lg-route{border:1.5px dashed var(--warm);background:transparent}
@media (prefers-reduced-motion:reduce){.nr,.nh-halo,.nf-halo{animation:none}.np{display:none}}

/* footer slogan */
.ftr__slogan{font:italic 500 clamp(1.7rem,3.2vw,2.6rem)/1.15 var(--serif);color:#9A3F12;padding-bottom:36px;margin:0 0 40px;border-bottom:1px solid var(--line);text-wrap:balance}
.ftr__legal p{margin:0 0 .6em}
.ftr__col p a{display:inline-block;margin-top:6px}
.ftr .callback{margin-top:4px}

/* figma capture: show every photo, no motion */
.figma .hreel__img{opacity:0}.figma .hreel__img.is-on{opacity:1;transform:none}
.figma .ribbon__track,.figma .arc,.figma .halo,.figma .fl{animation:none}

.beliefs__veil{background:rgba(255,253,249,.9)}
.beliefs__bg{filter:saturate(.35)}
.ftr{background:var(--grey)}
@media (max-width:560px){.way__head,.way__price,.way__for,.way__go{grid-row:auto}}
