/* OK Soonish: "a lamp left on in the kitchen at 2 am". Mobile first. */
@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces-normal-400-600.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces-italic-400-600.woff2) format("woff2");font-weight:400 600;font-style:italic;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(/assets/fonts/atkinson-normal-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(/assets/fonts/atkinson-normal-700.woff2) format("woff2");font-weight:700;font-display:swap}
:root{
  /* Direction A "First light": light default, warm dark follows the system. */
  color-scheme:light dark;
  --bg:#F6EFE4;--surface:#FFF9F1;--surface2:#ECE2D3;--sep:#E0D3C2;--sep2:#CDBDA9;
  --text:#2B2030;--muted:#66586A;--accent:#F4A574;--accent-hover:#F7B98C;--on-accent:#2B2030;--accent-text:#7A3868;--accent-soft:#F9D9C2;
  --tide:#C8682F;--calm:#7F9A78;--success:#4A6A46;--crisis:#9B3B33;--crisis-soft:#F6DED6;--clay:#D48A72;
  --glow:rgba(247,185,140,.45);--shadow:0 30px 70px -24px rgba(90,58,42,.35);--frame1:#FFFDF8;--frame2:#EADFCF;--frame-edge:#E0D3C2;--placeholder:#8C7E8E;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1080px;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#1B1822;--surface:#26222F;--surface2:#332D3D;--sep:#3A3344;--sep2:#4A4256;
  --text:#F4ECE1;--muted:#B9AFC2;--accent:#F2B36B;--accent-hover:#F6C287;--on-accent:#1B1822;--accent-text:#F2B36B;--accent-soft:rgba(242,179,107,.16);
  --tide:#F2B36B;--calm:#9DB596;--success:#9DB596;--crisis:#EBA593;--crisis-soft:#3A2529;--clay:#D98B78;
  --glow:rgba(242,179,107,.26);--shadow:0 30px 80px -20px rgba(0,0,0,.7);--frame1:#3B3446;--frame2:#211D29;--frame-edge:#4A4256;--placeholder:#8F859A;
}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-text);text-underline-offset:.18em}
a:hover{color:var(--text)}
:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:var(--text);color:var(--bg);padding:8px 12px;z-index:9}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.01em;margin:0;text-wrap:balance}
h1{font-size:clamp(2.35rem,8.4vw,4.1rem)}
h1 em,h2 em{font-style:italic;color:var(--accent-text);font-weight:400}
h2{font-size:clamp(1.7rem,5.6vw,2.6rem)}
h3{font-size:1.35rem;font-weight:600}
p{margin:0;text-wrap:pretty}
.eyebrow{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.muted{color:var(--muted)}

/* header */
.top{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font:600 1.15rem var(--serif)}
.brand svg{width:30px;height:30px}
.pill{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--sep);border-radius:999px;padding:6px 12px;color:var(--muted);white-space:nowrap}

/* hero */
.hero{position:relative;padding:18px 0 8px;overflow-x:clip;isolation:isolate}
.hero::before{content:"";position:absolute;top:-80px;right:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(closest-side,var(--glow),transparent);pointer-events:none;z-index:-1}
.hero-grid{display:grid;gap:34px;align-items:center}
.hero h1{margin:14px 0 16px}
.lede{font-size:1.15rem;color:var(--muted);max-width:34ch}
.lede strong{color:var(--text);font-weight:700}
.phone{position:relative;justify-self:center;width:min(78vw,320px);border-radius:38px;padding:9px;background:linear-gradient(160deg,var(--frame1),var(--frame2));box-shadow:var(--shadow),0 0 0 1px var(--frame-edge) inset}
.phone img{border-radius:30px;width:100%}
.phone.tilt{transform:rotate(2deg)}

/* waitlist */
.wl{margin-top:24px;max-width:470px}
.wl .row{display:flex;flex-direction:column;gap:10px}
.wl input[type=email]{font:inherit;font-size:1.05rem;width:100%;padding:15px 16px;border-radius:14px;border:1.5px solid var(--sep);background:var(--surface);color:var(--text)}
.wl input[type=email]::placeholder{color:var(--placeholder)}
.wl input[type=email]:focus{border-color:var(--accent-text);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}
.btn{font:700 1.05rem var(--sans);padding:15px 22px;border-radius:14px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer;text-decoration:none;display:inline-block;text-align:center}
.btn:hover{background:var(--accent-hover);color:var(--on-accent)}
.btn[disabled]{opacity:.7;cursor:progress}
.moment{border:0;margin:16px 0 0;padding:0}
.moment legend{font-size:.95rem;color:var(--muted);margin-bottom:8px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chips span{display:inline-block;padding:8px 13px;border-radius:999px;background:var(--surface);border:1px solid var(--sep);font-size:.95rem;color:var(--text)}
.chips input:checked+span{background:var(--accent-soft);border-color:var(--accent-text);color:var(--accent-text)}
.chips input:focus-visible+span{outline:2px solid var(--accent-text);outline-offset:2px}
.fine{font-size:.88rem;color:var(--muted);margin-top:12px}
.form-error{color:var(--crisis);margin-top:10px;font-weight:700}
.thanks{background:var(--surface);border:1px solid var(--sep);border-left:3px solid var(--calm);border-radius:14px;padding:16px 18px;margin-top:24px;max-width:470px}
.thanks strong{font-family:var(--serif);font-size:1.25rem;font-weight:600;display:block;margin-bottom:4px}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* tide line */
.tide{display:block;width:100%;height:70px;margin:44px 0 8px;color:var(--tide)}
.tide path.calm{color:var(--calm)}

/* sections */
section{padding:52px 0}
.section-head{max-width:640px;margin-bottom:30px}
.section-head p{color:var(--muted);margin-top:12px;font-size:1.1rem}
.features{display:grid;gap:44px}
.feature{display:grid;gap:22px;align-items:center}
.feature .phone{width:min(70vw,270px)}
.feature p{color:var(--muted);margin-top:10px;max-width:42ch}
.feature .kicker{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);margin-bottom:8px;display:block}
.steps{display:grid;gap:14px;counter-reset:s;padding:0;margin:0;list-style:none}
.steps li{background:var(--surface);border:1px solid var(--sep);border-radius:18px;padding:20px 20px 20px 64px;position:relative;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;left:20px;top:18px;font:500 1.6rem var(--serif);color:var(--accent-text)}
.steps b{display:block;font-size:1.08rem;margin-bottom:2px}
.steps span{color:var(--muted)}
.cards{display:grid;gap:14px}
.card{background:var(--surface);border:1px solid var(--sep);border-radius:18px;padding:22px}
.card h3{margin-bottom:8px}
.card p{color:var(--muted)}
.card.safe{border-color:var(--crisis);background:var(--crisis-soft)}
.card.safe h3{color:var(--crisis)}
.price{background:var(--surface);border:1px solid var(--sep);border-radius:22px;padding:26px}
.price ul{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.price li{padding-left:28px;position:relative}
.price li::before{content:"";position:absolute;left:4px;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--success)}
.price li.no::before{background:transparent;border:2px solid var(--crisis);width:8px;height:8px}
details{border-top:1px solid var(--sep);padding:16px 0}
details:last-of-type{border-bottom:1px solid var(--sep)}
summary{cursor:pointer;font:600 1.15rem var(--serif);list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--accent-text);font-family:var(--sans)}
details[open] summary::after{content:"–"}
details p{color:var(--muted);margin-top:10px;max-width:62ch}
.final{text-align:left}
.final .wl{margin-top:20px}

/* footer */
footer{border-top:1px solid var(--sep);margin-top:30px;padding:34px 0 46px;font-size:.95rem;color:var(--muted)}
.help{background:var(--surface);border:1px solid var(--sep);border-radius:14px;padding:16px 18px;color:var(--text);margin-bottom:22px}
.help b{color:var(--text)}
.help a{color:var(--accent-text)}
.foot-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px}
.foot-links a{color:var(--muted)}
.foot-links a:hover{color:var(--text)}

/* prose pages */
.prose{max-width:720px;padding:20px 0 40px}
.prose h1{font-size:clamp(2.1rem,7vw,3.1rem);margin:8px 0 10px}
.prose h2{font-size:1.45rem;margin:34px 0 10px}
.prose p,.prose li{color:var(--text)}
.prose p+p{margin-top:12px}
.prose ul{padding-left:20px}
.prose li+li{margin-top:6px}
table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.98rem}
th,td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--sep)}
th{font-weight:700;color:var(--text)}
td{color:var(--text)}
.table-wrap{overflow-x:auto}

@media (min-width:600px){
  .wl .row{flex-direction:row}
  .wl .row .btn{flex:0 0 auto}
  .cards{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:900px){
  .wrap{padding:0 32px}
  .top{padding:26px 0}
  .hero{padding:34px 0 10px}
  .hero-grid{grid-template-columns:1.15fr .85fr;gap:56px}
  .phone{width:330px}
  .feature{grid-template-columns:1fr 1fr;gap:60px}
  .feature:nth-child(even) .phone{order:-1}
  .feature .phone{width:290px}
  .steps{grid-template-columns:repeat(3,1fr)}
  .cards{grid-template-columns:repeat(3,1fr)}
  section{padding:72px 0}
}
.brand{white-space:nowrap}
@media (max-width:420px){.pill{font-size:.7rem;padding:5px 10px;letter-spacing:.06em}.pill .long{display:none}}

/* soft rose crisis pill */
.crisis-pill{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:var(--crisis-soft);color:var(--crisis);font-weight:700;font-size:.95rem;border-radius:999px;padding:8px 14px;text-decoration:none}
.crisis-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--crisis);flex:none}
.crisis-pill:hover{color:var(--crisis);text-decoration:underline}
.top-right{display:flex;align-items:center;gap:10px}
@media (max-width:520px){.top .pill{display:none}.top .crisis-pill{font-size:.85rem;padding:7px 12px}}
.help .crisis-pill{margin-top:12px}
.foot-links .crisis-pill{color:var(--crisis)}
