@font-face{font-family:Fr;src:url(Fraunces.ttf) format("truetype");font-weight:100 900;font-display:swap}
@font-face{font-family:Fr;font-style:italic;src:url(Fraunces-Italic.ttf) format("truetype");font-weight:100 900;font-display:swap}
@font-face{font-family:Fig;src:url(Figtree.ttf) format("truetype");font-weight:300 900;font-display:swap}
:root{--ink:#0B241F;--ink2:#123530;--card:#10302A;--line:#25504a;--paper:#EEF3EE;--mut:#A9C8BF;--mint:#6FE3CB;--peach:#F2B38B;color-scheme:dark}
*{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--paper);font:400 1.0625rem/1.65 Fig,system-ui,sans-serif;-webkit-text-size-adjust:100%}
a{color:var(--mint);text-underline-offset:3px}a:hover{color:var(--peach)}
:focus-visible{outline:3px solid var(--peach);outline-offset:3px;border-radius:4px}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--paper);color:var(--ink);padding:8px 12px;z-index:9}
header.top{padding:18px 0}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;font:600 1.15rem Fr,serif}
.brand img{border-radius:8px}
nav a{color:var(--mut);text-decoration:none;margin-left:18px;font-size:.95rem}nav a:hover{color:var(--paper)}
h1,h2,h3{font-family:Fr,Georgia,serif;font-weight:350;line-height:1.1;letter-spacing:-.02em;margin:0 0 .5em}
h1 i,h2 i{color:var(--peach)}
.hero{background:linear-gradient(to bottom,transparent 65%,var(--ink)),radial-gradient(ellipse 70% 90% at 75% 55%,#1B4A42 0%,var(--ink2) 45%,var(--ink) 100%);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:20px;padding-top:40px;padding-bottom:60px}
.hero h1{font-size:clamp(2.8rem,7vw,5.2rem);font-variation-settings:"opsz" 144,"SOFT" 100;font-weight:300}
.hero p.lead{color:var(--mut);font-size:1.25rem;max-width:30em}
.hero img{width:100%;height:auto;-webkit-mask-image:radial-gradient(ellipse closest-side at 50% 50%,#000 45%,transparent 100%);mask-image:radial-gradient(ellipse closest-side at 50% 50%,#000 45%,transparent 100%)}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px}
.gp img{height:58px;width:auto;display:block}
.soon{display:inline-block;border:1px solid var(--line);border-radius:10px;padding:10px 16px;color:var(--mut);font-size:.95rem}
section{padding:56px 0}
section h2{font-size:clamp(1.8rem,4vw,2.5rem)}
.grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:24px}
.grid .card{grid-column:span 2}.grid .card:nth-child(n+4){grid-column:span 3}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}
.card h3{font-size:1.3rem;margin-bottom:.35em}.card p{margin:0;color:var(--mut)}
.shots{display:flex;gap:16px;overflow-x:auto;padding:8px 20px 20px;margin:0 -20px;scroll-snap-type:x proximity}
.shots img{height:min(560px,70vh);width:auto;border-radius:22px;border:1px solid var(--line);flex:none;scroll-snap-align:start}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}
.faq summary{cursor:pointer;font:500 1.15rem Fr,serif;list-style-position:outside}
.faq p{color:var(--mut);margin:.6em 0 0;max-width:46em}
footer{border-top:1px solid var(--line);padding:32px 0 48px;color:var(--mut);font-size:.95rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}
footer a{color:var(--mut)}footer a:hover{color:var(--paper)}
.doc{max-width:760px;padding-top:24px;padding-bottom:48px}
.doc h1{font-size:clamp(2rem,5vw,3rem);font-weight:320}
.doc h2{font-size:1.5rem;margin-top:1.8em}.doc h3{font-size:1.2rem;margin-top:1.4em}
.doc li{margin:.3em 0}.doc code{background:var(--card);padding:1px 6px;border-radius:6px}
.doc .box,.privacy-first{background:var(--card);border-left:4px solid var(--mint);border-radius:8px;padding:12px 18px;margin:18px 0}
.update-date{color:var(--mut)}
@media(max-width:760px){.hero .wrap{grid-template-columns:1fr;padding-top:16px}.hero img{max-width:420px;margin:0 auto}nav a{margin-left:12px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.narrow{max-width:760px}
@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}.grid .card,.grid .card:nth-child(n+4){grid-column:auto}.grid .card:last-child{grid-column:1/-1}}
@media(max-width:560px){.grid{grid-template-columns:1fr}.grid .card:last-child{grid-column:auto}}
