/* PROVISIONAL palette: replace with the app's real tokens once provided. */
:root{--cream:#F6F1E7;--sage:#A8B5A0;--sage-l:#E1E6DA;--green:#1F3A2E;--muted:#56655B;--line:rgba(31,58,46,.2);--serif:"Newsreader",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--pad:clamp(1.25rem,5vw,3rem)}
@font-face{font-family:Newsreader;src:url(/assets/fonts/newsreader.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(/assets/fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
*{box-sizing:border-box;margin:0}
body{background:var(--cream);color:var(--green);font:400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.w{max-width:1100px;margin:0 auto;padding:0 var(--pad)}
.hd{display:flex;justify-content:space-between;align-items:center;padding-top:1.25rem;padding-bottom:1.25rem}
.mark{font:600 .72rem var(--sans);letter-spacing:.2em;text-decoration:none}
.lang{font-size:.8rem;letter-spacing:.1em;display:flex;gap:.4rem;align-items:center}
.lang a{text-decoration:none;opacity:.55;padding:.6rem .3rem}
.lang a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:.4em}
.s{padding:clamp(4.5rem,14vw,9rem) 0}
.hero{padding-top:clamp(2rem,8vw,5rem);padding-bottom:0;overflow:hidden}
.d{background:var(--green);color:var(--cream)}
.sg{background:var(--sage-l)}
h1,h2,.big,.num{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;font-optical-sizing:auto;text-wrap:balance}
h1{font-size:clamp(3rem,13.5vw,7rem);line-height:1}
h2{font-size:clamp(2.1rem,7.5vw,4rem);line-height:1.06;max-width:17ch}
.lead{font-size:clamp(1.1rem,3.4vw,1.3rem);max-width:34rem;margin-top:1.5rem}
.muted{color:var(--muted)}.d .muted{color:#C9D3C6}
p+p{margin-top:1rem}
h2+p,.num+h2{margin-top:1.5rem}
.eye{font:600 .8rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage);margin-bottom:1.25rem}
.num{font-size:clamp(5.5rem,32vw,16rem);line-height:.9;font-weight:300;letter-spacing:-.04em;margin-bottom:1.5rem}
.big{font-size:clamp(3rem,14vw,8.5rem);line-height:.98}
.lines p{font:400 clamp(1.8rem,7vw,3.4rem)/1.15 var(--serif);margin-top:.3rem}
.lines{margin:1rem 0 3rem}
.areas{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;margin-top:2rem;color:var(--muted);font-size:.9rem}
.modes{display:grid;margin-top:3rem;border-top:1px solid var(--line)}
.mode{padding:2rem 0;border-bottom:1px solid var(--line)}
.mode h3{font:400 clamp(1.7rem,5vw,2.3rem) var(--serif);letter-spacing:.12em;margin-bottom:.75rem}
.mode p{color:var(--muted);max-width:22rem;margin:0}
.note{margin-top:2rem;color:var(--muted)}
.two{display:grid;gap:3.5rem;align-items:center}
.col{display:flex;justify-content:center}
.phone{width:min(68vw,290px);aspect-ratio:9/19.5;border:1px solid var(--line);border-radius:2.6rem;padding:.6rem;background:var(--cream);box-shadow:0 30px 60px -34px rgba(31,58,46,.4)}
.ph{height:100%;border-radius:2rem;background:var(--sage-l);border:1.5px dashed var(--sage);display:grid;place-content:center;text-align:center;font:600 .66rem/1.5 var(--sans);letter-spacing:.14em;color:var(--muted)}
.crop{height:clamp(300px,80vw,520px);overflow:hidden;margin-top:3.5rem;display:flex;justify-content:center}
.full{min-height:100svh;display:flex;align-items:center}
.quote{font:300 clamp(1.3rem,4vw,1.9rem)/1.4 var(--serif);max-width:30rem;margin-top:2rem}
.btn{font:600 .78rem var(--sans);letter-spacing:.14em;background:var(--green);color:var(--cream);border:0;border-radius:3px;padding:1.05rem 1.6rem;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}
.d .btn{background:var(--cream);color:var(--green)}
@media(min-width:800px){
 .two{grid-template-columns:1fr 1fr;gap:6rem}.two.rev .col{order:-1}
 .modes{grid-template-columns:repeat(3,1fr);border-bottom:0}.mode{border-bottom:0;padding-right:2.5rem}
}
footer{padding:3rem 0;border-top:1px solid var(--line);font-size:.85rem}
footer .w,footer nav{display:flex;flex-wrap:wrap;gap:.5rem 1.75rem;justify-content:space-between}
footer nav{justify-content:flex-start}
footer a{text-decoration:none;opacity:.8;padding:.4rem 0}
@keyframes up{from{opacity:0;transform:translateY(12px)}}
.hero .in{animation:up .9s both}.hero .in:nth-child(2){animation-delay:.12s}.hero .in:nth-child(3){animation-delay:.24s}
@media(prefers-reduced-motion:reduce){.in{animation:none!important}}

/* legal + support pages */
.doc{padding:clamp(3rem,10vw,6rem) 0 clamp(4rem,12vw,8rem)}
.doc h1{font-size:clamp(1.75rem,8vw,4.5rem);line-height:1.05;overflow-wrap:break-word;hyphens:auto}
.doc .meta{margin-top:.9rem;color:var(--muted);font-size:.9rem}
.doc .body{max-width:40rem;margin-top:3rem}
.doc .body>*+*{margin-top:1rem}
.doc h2{font:400 clamp(1.35rem,4vw,1.7rem)/1.2 var(--serif);letter-spacing:-.01em;max-width:none}
.doc .body>h2{margin-top:2.75rem}
.doc .body>h2+*{margin-top:.9rem}
.doc ul{padding-left:1.25rem}
.doc li+li{margin-top:.35rem}
.doc a{text-underline-offset:.2em}
.doc a.btn{text-decoration:none}
