/* Fonts are served from this site, so visitors' browsers don't contact Google. Both are under the SIL Open Font License. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter.woff2) format("woff2")}
@font-face{font-family:Urbanist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/urbanist.woff2) format("woff2")}
:root{
  --bg:#f6f6f4; --surface:#ffffff; --card:#f1f1ef; --ink:#0d0d0d; --muted:#585855; --line:#e4e4e0;
  --accent:#ff5a1f; --accent-soft:#fff0e9; --ok:#1f7a45; --ok-soft:#e7f4ec; --warn:#9a5b00; --warn-soft:#fff5e0;
  --radius:24px; --radius-sm:16px; --fs:18px;
}
html.large{--fs:21px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font:400 var(--fs)/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,h4{font-family:Urbanist,Inter,sans-serif;font-weight:500;line-height:1.08;letter-spacing:-0.01em}
h1{font-size:clamp(42px,5.6vw,74px)}
h2{font-size:clamp(34px,4vw,52px)}
h3{font-size:1.3em}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
section{padding:96px 0}
.eyebrow{display:inline-block;font:500 14px/1 Inter;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 14px;color:var(--muted)}
.lead{font-size:1.1em;color:var(--muted);max-width:680px}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.head{margin-bottom:48px}.head h2{margin-top:18px}.head .lead{margin-top:18px}
.btn{display:inline-flex;align-items:center;gap:10px;font:500 17px/1 Inter;padding:18px 26px;border-radius:999px;text-decoration:none;border:0;cursor:pointer}
.btn-dark{background:var(--ink);color:#fff}.btn-light{background:#e8e8e5;color:var(--ink)}
.btn .arr{font-size:15px;opacity:.7}
.small{font-size:.85em;color:var(--muted)}
.ph{background:#fff1b8;border-radius:4px;padding:0 5px;font-family:ui-monospace,Menlo,monospace;font-size:.78em;color:#5a4a00;white-space:nowrap}
.check{flex:none;margin-top:5px}

.banner{background:#1a1a1a;color:#e6e6e6;font-size:14px;text-align:center;padding:10px 16px}
.banner b{color:#fff}

/* nav */
.nav{position:sticky;top:0;z-index:10;background:rgba(246,246,244,.9);backdrop-filter:blur(10px)}
.nav .wrap{display:flex;align-items:center;gap:28px;height:76px}
.logo{display:flex;align-items:center;gap:12px;font:400 25px/1 Urbanist;letter-spacing:.04em;text-decoration:none;margin-right:auto}
.nav ul{display:flex;gap:26px;list-style:none;font-size:16px}
.nav ul a{text-decoration:none}
.nav .btn{padding:13px 20px;font-size:15px}
.textsize{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 13px;font:600 14px Inter;cursor:pointer}

/* hero */
.hero{padding:44px 0 40px}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.hero h1{margin:22px 0 22px}
.hero .lead{margin-bottom:32px;font-size:1.12em}
.ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero .small{margin-top:20px}
.hero .small a{text-decoration:underline;text-underline-offset:3px}
.photo{position:relative;border-radius:var(--radius);overflow:hidden;background:#dedbd4;aspect-ratio:3/2}
.photo img{width:100%;height:100%;object-fit:cover}
.hero .photo{aspect-ratio:4/5}
.hero .photo img{object-position:44% center}
.flow{position:absolute;left:18px;right:18px;bottom:18px;display:grid;gap:8px}
.mini{background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-radius:16px;padding:12px 14px;font-size:15px;line-height:1.35;box-shadow:0 8px 28px rgba(0,0,0,.12);display:flex;gap:12px;align-items:center}
.mini .t{font:600 12px Inter;color:var(--muted);min-width:44px}
.mini .who{display:block;font-size:12px;color:var(--muted)}
.mini b{font-weight:500}
.mini .tag{margin-left:auto;font:600 12px Inter;padding:6px 10px;border-radius:999px;background:var(--ink);color:#fff;white-space:nowrap}
.mini.kin{background:rgba(231,244,236,.97)}
.mini.kin .tag{background:var(--ok)}

/* trust strip */
.trust{padding:0 0 24px}
.trust ul{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.trust li{background:var(--surface);border-radius:14px;padding:16px 18px;font-size:15px;font-weight:500;display:flex;gap:10px;align-items:flex-start;line-height:1.4}

/* problem */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--surface);border-radius:var(--radius-sm);padding:28px}
.card h3{font-size:1.25em;margin-bottom:10px}
.card p{font-size:.9em;color:var(--muted)}
.num{font:500 15px Urbanist;color:var(--accent);margin-bottom:16px;display:block}

/* loop */
.panel{background:var(--surface);border-radius:32px;margin:0 16px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}
.step{background:var(--card);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column}
.step .n{width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:500 17px Urbanist;margin-bottom:18px}
.step h3{font-size:1.2em;margin-bottom:8px}
.step p{font-size:.88em;color:var(--muted);margin-bottom:20px}
.step .ui{margin-top:auto}
.bub{background:#fff;border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.4}
.bub .meta{display:block;font-size:11.5px;color:var(--muted);margin-bottom:3px}
.bub.dark{background:var(--ink);color:#fff}.bub.dark .meta{color:#aaa}
.bub.okb{background:var(--ok-soft);color:var(--ok);font:500 18px Urbanist;text-align:center;padding:16px}
.bub.okb small{display:block;font:400 12.5px Inter;color:#2d6a47}
.bub.quiet{background:#fff;border:1px dashed #cfcfca;color:var(--muted)}
.branch{margin-top:16px;background:var(--warn-soft);border-radius:var(--radius-sm);padding:18px 22px;display:flex;gap:14px;align-items:center;font-size:.92em}
.branch b{font-weight:600}

/* wearer */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split h2{margin:18px 0 18px}
.points{list-style:none;display:grid;gap:18px;margin-top:28px}
.points li{display:flex;gap:14px}
.points b{display:block;font-weight:600;margin-bottom:2px}
.points span{color:var(--muted);font-size:.92em}
.stack{position:relative}
.note{background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:20px;padding:16px 18px;box-shadow:0 12px 40px rgba(0,0,0,.14);font-size:15px;line-height:1.4;max-width:320px}
.note-head{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:6px}
.dot{width:20px;height:20px;border-radius:6px;background:var(--ink);display:grid;place-items:center}
.note-head .now{margin-left:auto}
.note p{font-size:17px;font-weight:500}
.acts{display:flex;gap:8px;margin-top:12px}
.acts span{flex:1;text-align:center;padding:9px;border-radius:12px;background:#f0f0ed;font-size:14px;font-weight:500}
.acts .yes{background:var(--ink);color:#fff}
.stack .note{position:absolute;right:-16px;bottom:24px}

/* family */
.fam{background:var(--ink);color:#fff;border-radius:32px;margin:0 16px}
.fam .lead{color:#c8c8c3}
.fam .eyebrow{background:#1c1c1c;border-color:#2c2c2c;color:#c8c8c3}
.screens{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:8px}
.screens>div{display:flex;flex-direction:column}
.phone{flex:1;background:#1b1b1b;border:1px solid #2e2e2e;border-radius:28px;padding:14px 12px 18px;display:flex;flex-direction:column}
.phone .bar{display:flex;justify-content:space-between;font:600 11px Inter;color:#8d8d88;padding:0 6px 12px}
.screen{flex:1;background:#f6f6f4;color:var(--ink);border-radius:18px;padding:14px;min-height:190px;display:flex;flex-direction:column;gap:8px}
.screen .app{font:600 11px Inter;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.screen .msg{font-size:14.5px;font-weight:500;line-height:1.35}
.screen .row{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-top:1px solid var(--line)}
.screen .row:first-of-type{border-top:0}
.pill{font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:999px;white-space:nowrap}
.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.info{background:#eef1ff;color:#3446a6}
.screen .btns{display:flex;gap:6px;margin-top:auto}
.screen .btns span{flex:1;text-align:center;font-size:12.5px;font-weight:600;padding:8px 4px;border-radius:10px;background:#e7e7e3}
.screen .btns .red{background:#d93b1f;color:#fff}.screen .btns .blk{background:var(--ink);color:#fff}
.screen.urgent{background:#fff1ec}
.screen .map{height:46px;border-radius:10px;background:repeating-linear-gradient(45deg,#e6e2d9 0 8px,#ece8df 8px 16px);position:relative}
.screen .map::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:#d93b1f;border:3px solid #fff;transform:translate(-50%,-50%)}
.bar-chart{display:flex;gap:4px;align-items:flex-end;height:44px;margin-top:4px}
.bar-chart i{flex:1;background:#cfe8d9;border-radius:3px}
.cap{font-size:15px;color:#d4d4cf;margin-top:14px;line-height:1.45}
.cap b{color:#fff;font-weight:600;display:block}
.famfoot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:44px;flex-wrap:wrap}
.famfoot p{color:#c8c8c3;max-width:560px}
.fam .btn-dark{background:#fff;color:var(--ink)}

/* privacy */
.privgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.privgrid .card{background:var(--card);display:flex;gap:14px;align-items:flex-start}
.privgrid .card p{color:var(--ink);font-size:.95em;font-weight:500}
.negatives{font:400 clamp(22px,2.4vw,30px)/1.3 Urbanist;color:var(--muted);margin-top:16px}

/* why ring */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:36px}
.stat{background:var(--surface);border-radius:var(--radius);padding:30px}
.big{font:500 64px/1 Urbanist;margin-bottom:14px}
.stat p{font-size:.9em;color:var(--muted)}
.stat a{font-size:13px;color:var(--muted);display:inline-block;margin-top:12px}
.why-body{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.why-body p{font-size:1.1em}
.why-body .pull{font:500 26px/1.3 Urbanist;margin-top:18px}

/* week */
.week{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;text-align:left}
.day{background:var(--surface);border-radius:var(--radius-sm);padding:22px}
.day .d{font:600 14px Inter;color:var(--accent);margin-bottom:10px;display:block}
.day p{font-size:.85em;color:var(--muted);line-height:1.5}
.day.sos{background:var(--accent-soft)}
.example{display:inline-block;margin-top:12px;font-size:14px;color:var(--muted);font-style:italic}

/* fit */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fitcol{border-radius:var(--radius);padding:32px}
.fitcol.yes{background:var(--ok-soft)}.fitcol.no{background:var(--card)}
.fitcol h3{margin-bottom:18px}
.fitcol ul{list-style:none;display:grid;gap:12px}
.fitcol li{display:flex;gap:12px;font-size:.95em}

/* pricing */
.price{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}
.pcard{background:var(--surface);border-radius:var(--radius);padding:32px}
.prow{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.prow:first-of-type{border-top:0;padding-top:0}
.prow b{font-weight:600;display:block}
.prow span{color:var(--muted);font-size:.88em}
.prow .amt{font:600 30px/1 Urbanist;color:var(--ink);white-space:nowrap}
.prow .amt small{font:500 15px Inter;color:var(--muted);margin-left:2px}
.pcard ul{list-style:none;display:grid;gap:12px}
.pcard li{display:flex;gap:12px;font-size:.95em}

/* founder */
.founder{max-width:820px;margin:0 auto;text-align:center}
.founder blockquote{font:400 clamp(24px,2.6vw,32px)/1.35 Urbanist;margin:22px 0 22px}

/* faq */
.faq{max-width:840px;margin:0 auto}
details{background:var(--surface);border-radius:var(--radius-sm);margin-bottom:10px;padding:0 24px}
summary{list-style:none;cursor:pointer;padding:21px 0;font:500 1em Inter;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:24px;line-height:1;color:var(--muted)}
details[open] summary::after{content:"–"}
details p{padding:0 0 22px;color:var(--muted);font-size:.95em}

/* cta */
.form{max-width:580px;margin:36px auto 0;display:grid;gap:12px;text-align:left}
.form input{font:400 17px Inter;padding:18px 20px;border-radius:14px;border:1px solid var(--line);background:var(--bg)}
.who{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:15px;color:var(--muted);margin:6px 0}
.chip{padding:11px 15px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:15px;cursor:pointer}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.form .btn{justify-content:center;background:var(--accent);color:#fff;margin-top:6px}
.talk{text-align:center;margin-top:18px;font-size:.92em;color:var(--muted)}
.talk a{color:var(--ink);text-underline-offset:3px}

footer{padding:16px}
.foot{background:#000;color:#fff;border-radius:24px;padding:56px 0}
.foot .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.foot p{color:#9a9a96;font-size:16px;max-width:360px;margin-top:12px}
.foot a{text-decoration:none;display:block;margin-bottom:10px;font-size:16px}

@media (max-width:1080px){
  .nav ul{display:none}
  .screens{grid-template-columns:repeat(3,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .week{grid-template-columns:repeat(3,1fr)}
  .trust ul{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:800px){
  section{padding:64px 0}
  .wrap{padding:0 16px}
  .nav .wrap{gap:10px}
  .logo{font-size:21px}
  .nav .btn{padding:11px 15px;font-size:14px}
  .hero-grid,.split,.why-body,.fit,.price{grid-template-columns:1fr;gap:32px}
  .hero .photo{aspect-ratio:4/5}
  .grid3,.stats,.privgrid,.steps{grid-template-columns:1fr}
  .screens{grid-template-columns:repeat(5,78%);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
  .phone{scroll-snap-align:start}
  .week{grid-template-columns:1fr}
  .trust ul{grid-template-columns:1fr}
  .panel,.fam{margin:0 8px;border-radius:24px}
  .stack .note{position:relative;right:auto;bottom:auto;margin:-48px 12px 0}
  .foot .wrap{grid-template-columns:1fr}
  .flow{left:10px;right:10px;bottom:10px}
}

/* ---------- shared by versions A, B and C ---------- */
.banner{line-height:2}
.banner .vs{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:0 8px;vertical-align:middle}
.banner .vs a{color:#e6e6e6;text-decoration:none;padding:1px 12px;border-radius:999px;border:1px solid #4a4a4a;white-space:nowrap}
.banner .vs a.on{background:#fff;color:#111;border-color:#fff;font-weight:600}
.banner .bn{white-space:normal}

/* tick lists */
.tk{display:flex;gap:12px;align-items:flex-start}
.tk::before{content:"";flex:none;width:18px;height:18px;margin-top:.3em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f7a45' stroke-width='2.6'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/contain no-repeat}
.tk.dk::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d0d0d' stroke-width='2.4'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E")}
.tk.no::before{background:none;content:"—";width:18px;height:auto;margin-top:0;color:var(--muted)}
.fit.onbg .fitcol.no{background:var(--surface)}
.steps.onbg .step{background:var(--surface)}
.steps.onbg .bub:not(.dark):not(.okb){background:var(--card)}
.steps.three{grid-template-columns:repeat(3,1fr)}
.subhead{font:500 1.35em/1.2 Urbanist;margin:44px 0 18px}
.subhead:first-of-type{margin-top:0}

/* B: before and after */
.ba{display:grid;gap:10px}
.ba-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ba-row>div{border-radius:var(--radius-sm);padding:20px 24px;font-size:.95em}
.ba-row .lab{display:block;font:600 12px/1 Inter;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.ba-row .was{background:var(--surface);color:var(--muted)}
.ba-row .now{background:var(--ok-soft)}
.ba-row .now .lab{color:var(--ok)}

/* B: one day from both ends */
.tl{display:grid;gap:10px;text-align:left}
.tl-row{display:grid;grid-template-columns:92px 1fr 1fr;gap:10px}
.tl-row .t{font:500 24px/1 Urbanist;padding-top:20px}
.tl-row .c{border-radius:var(--radius-sm);padding:18px 22px;font-size:.92em;background:var(--surface)}
.tl-row .c b{display:block;font:600 12px/1 Inter;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.tl-row .c.calm{background:var(--ok-soft)}
.tl-row .c.calm b{color:var(--ok)}
.tl-row .c.alert{background:var(--warn-soft)}
.tl-row .c.alert b{color:var(--warn)}

/* C: hero price, comparison table */
.heroprice{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 28px;color:var(--muted);font-size:.95em}
.heroprice span{white-space:nowrap}
.heroprice b{font:600 1.5em/1 Urbanist;color:var(--ink);margin-right:4px}
.flow.below{position:static;margin-top:10px}
.flow.below .mini{background:var(--surface);box-shadow:none}
.flow.below .mini.kin{background:var(--ok-soft)}
.flow.below .mini.urg{background:var(--accent-soft)}
.cmp{width:100%;border-collapse:separate;border-spacing:0;font-size:.9em;text-align:left}
.cmp th,.cmp td{padding:16px 20px;border-top:1px solid var(--line);vertical-align:top}
.cmp thead th{border-top:0;font:600 15px/1.3 Inter;color:var(--muted)}
.cmp tbody th{font-weight:600;width:22%}
.cmp td{color:var(--muted)}
.cmp .us{background:var(--ok-soft)}
.cmp td.us{color:var(--ink);font-weight:500}
.cmp thead .us{color:var(--ok);border-radius:16px 16px 0 0}
.cmp tbody tr:last-child .us{border-radius:0 0 16px 16px}
.cmpnote{margin-top:24px;background:var(--card);border-radius:var(--radius-sm);padding:20px 24px;font-size:.95em}
.card .cmp tbody th{width:30%}

@media (max-width:1080px){
  .steps.three{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:800px){
  .banner .bn{display:block}
  .banner .vs{display:flex;margin:6px 0}
  .ba-row,.tl-row{grid-template-columns:1fr}
  .ba-row{gap:4px;margin-bottom:8px}
  .tl-row{gap:6px;margin-bottom:10px}
  .tl-row .t{padding-top:8px}
  .steps.three{grid-template-columns:1fr}
  .cmp thead{display:none}
  .cmp,.cmp tbody,.cmp tr,.cmp th,.cmp td{display:block;width:100%}
  .cmp tr{background:var(--card);border-radius:16px;padding:18px;margin-bottom:10px}
  .card .cmp tr{background:var(--bg)}
  .cmp th,.cmp td{border:0;padding:0}
  .cmp tbody th,.card .cmp tbody th{width:100%;margin-bottom:10px;font-size:1.08em}
  .cmp td{padding:6px 0}
  .cmp td::before{content:attr(data-l);display:block;font:600 12px/1.4 Inter;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
  .cmp td.us,.cmp tbody tr:last-child .us{background:var(--ok-soft);border-radius:10px;padding:10px 12px;margin-top:6px}
  .cmp td.us::before{color:var(--ok)}
}
.flow.below .mini .t{min-width:74px}
.branch svg{flex:none}
@media (max-width:800px){
  .prow{display:block;position:relative}
  .prow b{padding-right:150px}
  .prow .amt,.prow>.ph{position:absolute;right:0;top:18px}
  .prow:first-of-type .amt{top:0}
  .prow .amt{font-size:26px}
}

/* parent-first framing: Mum and Dad example blocks */
.week.three{grid-template-columns:repeat(3,1fr)}
.story{margin-top:36px;text-align:left}
.who2{max-width:820px;margin:0 0 16px;color:var(--muted)}
.who2 b{font:500 1.35em/1 Urbanist;color:var(--ink);margin-right:6px}
.tl + .who2{margin-top:40px}
.eg{display:inline-block;font:500 13px/1 Inter;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 11px;color:var(--muted);vertical-align:middle;margin-left:8px}
@media (max-width:800px){.week.three{grid-template-columns:1fr}}

/* comparison table inside a white card (chosen page) */
.cmpcard{padding:12px 20px 20px}
.cmpcard + .cmpnote{background:var(--surface)}
@media (min-width:801px){ .cmpcard .cmp tbody th{width:22%} }
@media (max-width:800px){ .cmpcard{padding:18px} }

/* product shots above the prices */
.shots{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.shots .photo{aspect-ratio:3/2}
@media (max-width:800px){ .shots{grid-template-columns:1fr} }

/* video in a photo slot */
.photo video{display:block;width:100%;height:100%;object-fit:cover}
@media (min-width:801px){ .stack .note.low{bottom:-26px} }

/* ---------- live site additions ---------- */
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;z-index:20}
.skip:focus{left:16px}
.form label.f{display:grid;gap:6px;font-size:15px;color:var(--muted)}
.who{border:0;padding:0}
.who legend{float:left;margin-right:4px;padding:11px 0}
.chip-r{position:relative}
.chip-r input{position:absolute;opacity:0;width:1px;height:1px}
.chip-r span{display:inline-block}
.chip-r input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.chip-r input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form .consent{font-size:14px;color:var(--muted);margin-top:4px}
.form .consent a{color:var(--ink)}
.form .btn[disabled]{opacity:.6;cursor:wait}
.form[hidden]{display:none}
.form-msg{display:none;max-width:580px;margin:20px auto 0;padding:18px 20px;border-radius:14px;font-size:.95em;text-align:left}
.form-msg.ok{display:block;background:var(--ok-soft);color:var(--ok)}
.form-msg.err{display:block;background:#fdecea;color:#b3300f}
.foot .copy{grid-column:1/-1;max-width:none;color:#7d7d79;font-size:14px;border-top:1px solid #222;padding-top:20px;margin-top:8px}

/* simple pages: legal, contact, thanks, 404 */
.page{padding:56px 0 96px}
.page .wrap{max-width:780px}
.page h1{font-size:clamp(38px,5vw,56px);margin:18px 0 20px}
.page h2{font-size:1.5em;margin:40px 0 12px}
.page p,.page li{color:#2f2f2d;margin-bottom:12px}
.page ul{padding-left:22px;margin-bottom:12px}
.page .updated{color:var(--muted);font-size:.9em;margin-top:40px}
.page .btn{margin-top:16px}
.page a:not(.btn){text-underline-offset:3px}
