/* Aaron Fitch site foundation, v0.1 2026-10-17 (Lightning). Same tokens as the Real Media order form. */
:root{color-scheme:dark;--bg:#0f1115;--card:#171a21;--ink:#eef0f4;--mute:#a1a8b3;--line:#2a2f3a;--acc:#5b8cff;--acc-ink:#0b0d12;--ok:#3fbf7f}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--acc)}
.wrap{max-width:720px;margin:0 auto;padding:0 16px}
header.top{border-bottom:1px solid var(--line);background:var(--card)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.brand{font-weight:700;color:var(--ink);text-decoration:none;font-size:1.05rem}
nav.main{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:.95rem}
nav.main a{color:var(--ink);text-decoration:none}
nav.main a[aria-current=page]{color:var(--acc);font-weight:600}
nav.main a.btn{color:var(--acc-ink)}
main{padding:28px 0 48px}
h1{font-size:1.6rem;line-height:1.25;margin:12px 0 4px}
h2{font-size:1.15rem;line-height:1.3;margin:0 0 8px}
h3{font-size:1rem;margin:16px 0 4px}
.sub{color:var(--mute);margin:0 0 16px}
.eyebrow{color:var(--mute);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 16px;margin:14px 0}
@media (min-width:600px){.card{padding:24px 24px}}
.card p{margin:8px 0}
.mute{color:var(--mute)}
.small{font-size:.9rem}
.btn{display:inline-block;padding:12px 18px;border-radius:12px;background:var(--acc);color:var(--acc-ink);font-weight:700;text-decoration:none;border:0;font-size:1rem;cursor:pointer}
.btn.ghost{background:transparent;color:var(--acc);border:1px solid var(--acc)}
nav.main .btn{padding:7px 14px;border-radius:10px;font-size:.92rem}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.list{list-style:none;padding:0;margin:8px 0}
.list li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}
.list li:first-child{border-top:0}
.list b{white-space:nowrap}
ul.plain{padding-left:20px;margin:8px 0}ul.plain li{margin:4px 0}
details{border-top:1px solid var(--line);padding:12px 0}
details:first-of-type{border-top:0}
summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--mute);font-weight:400}
details[open] summary::after{content:"–"}
details p{margin:8px 0 0;color:var(--mute)}
.who{display:flex;gap:14px;align-items:center}
.who img{width:64px;height:64px;border-radius:50%;flex:0 0 64px;object-fit:cover;border:1px solid var(--line)}
.who.big img{width:96px;height:96px;flex-basis:96px}
.samples{display:grid;gap:10px;margin-top:12px}
.sample{position:relative;aspect-ratio:16/9;border:1px solid var(--line);border-radius:12px;background:var(--bg);overflow:hidden}
.sample button{position:absolute;inset:0;width:100%;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px}
.sample button::before{content:"";width:0;height:0;border-left:16px solid var(--acc);border-top:10px solid transparent;border-bottom:10px solid transparent}
.sample iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.legal h2{font-size:1.02rem;margin-top:20px}
.legal p{margin:6px 0}
footer.bottom{border-top:1px solid var(--line);color:var(--mute);font-size:.85rem;padding:20px 0 32px}
footer.bottom nav{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0}
footer.bottom a{color:var(--mute)}
.samples{grid-template-columns:1fr}
@media (min-width:600px){.samples{grid-template-columns:1fr 1fr}}
.sample-fig{margin:0}
.sample-fig figcaption{font-size:.85rem;color:var(--mute);margin-top:6px}
.sample video{position:absolute;inset:0;width:100%;height:100%;background:#000}
ol.steps{padding-left:22px;margin:8px 0}ol.steps li{margin:4px 0;font-weight:600}
details.article{border:0;padding:0}details.article summary{font-size:1.05rem}
details.article p{color:var(--ink)}
.eyebrow a{color:var(--mute)}
/* v0.3 samples */
.samples{display:grid;gap:14px;grid-template-columns:1fr}
@media (min-width:640px){.samples{grid-template-columns:1fr 1fr}.samples .sample-fig:first-child{grid-column:1/-1}}
.sample{aspect-ratio:16/9}
.sample.tall{aspect-ratio:9/16;width:min(100%,300px);margin:0 auto}
.sample-fig figcaption{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.share{font-size:.82rem;white-space:nowrap}
.sample-fig.focus .sample{outline:2px solid var(--acc);outline-offset:3px}
.vrow{display:grid;gap:16px;align-items:center}
@media (min-width:640px){.vrow{grid-template-columns:1fr 260px}}
.vrow .sample-fig{margin:0}
/* v0.4 kit waitlist */
.notify .chk{margin:8px 0}
.notify input[type=email]{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-size:16px}
.notify .chk input{width:18px;height:18px;accent-color:var(--acc)}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
label.f{display:block;font-weight:600;font-size:.95rem;margin:12px 0 4px}
.kitcard{border-color:var(--acc)}
/* v0.5 waitlist form */
.notify fieldset.opts{border:0;padding:0;margin:12px 0 0}
.notify legend{font-weight:600;font-size:.95rem;margin-bottom:6px;padding:0}
.notify legend .mute{font-weight:400}
.notify .opt{display:flex;gap:12px;align-items:center;padding:12px;margin:8px 0;border:1px solid var(--line);border-radius:10px;cursor:pointer;font-size:.95rem}
.notify .opt input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--acc)}
.notify .opt:has(input:checked){border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}
.notify label.f{margin-top:16px}
