:root{--bg:#fff4e2;--bg-deep:#ffe6c6;--paper:#fffaf0;--ink:#241f33;--ink-soft:#4d4560;--muted:#6d6252;--accent:#d2452c;--accent-soft:#b8361f;--secondary:#2b4bb5;--tertiary:#8a4a06;--tertiary-bright:#e08a1e;--rule:#f0d3a8;--rule-soft:#f7e3c6;--field:#fffdf8;--btn-ink:#fff8ee;--shadow:0 1px 0 #1a1b2e0f, 0 12px 32px -24px #1a1b2e80;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--serif:"Fraunces", "Playfair Display", Georgia, serif;--wrap:68rem}@media (prefers-color-scheme:dark){:root{--bg:#191428;--bg-deep:#120e1e;--paper:#221b33;--ink:#fdf0dd;--ink-soft:#dccfb9;--muted:#b3a48d;--accent:#ff8a5c;--accent-soft:#ffa87f;--secondary:#8fb0ff;--tertiary:#ffc861;--tertiary-bright:#ffc861;--rule:#3a3153;--rule-soft:#2d2642;--field:#241d36;--btn-ink:#2a1206;--shadow:0 1px 0 #0006, 0 14px 34px -26px #000000e6}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(ellipse 62% 52% at 6% -8%, color-mix(in srgb, var(--accent) 22%, transparent) 0, transparent 62%), radial-gradient(ellipse 58% 48% at 98% 102%, color-mix(in srgb, var(--secondary) 20%, transparent) 0, transparent 60%), radial-gradient(ellipse 50% 40% at 82% 12%, color-mix(in srgb, var(--tertiary-bright) 20%, transparent) 0, transparent 58%), var(--bg);color:var(--ink);font-family:var(--mono);-webkit-font-smoothing:antialiased;text-wrap:pretty;background-attachment:fixed;margin:0;font-size:15px;line-height:1.7}h1,h2,h3{font-family:var(--serif);letter-spacing:-.02em;font-variation-settings:"SOFT" 0, "WONK" 1;margin:0 0 .6rem;font-weight:600;line-height:1.08}h1{font-size:clamp(2.1rem,6vw,3.6rem)}h2{font-size:clamp(1.4rem,3.4vw,2rem)}h3{font-size:1.12rem}p{margin:0 0 1rem}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem)}.muted{color:var(--muted)}.small{font-size:.82rem}.mono-label{letter-spacing:.16em;text-transform:uppercase;color:var(--tertiary);font-size:.7rem}.site-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid var(--rule);position:sticky;top:0}.site-header:after{content:"";background:linear-gradient(to right, var(--accent) 0 34%, var(--tertiary) 34% 67%, var(--secondary) 67% 100%);height:3px;display:block}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;padding-top:.85rem;padding-bottom:.85rem;display:flex}.brand{color:var(--ink);text-decoration:none;display:block}.brand-mark{font-family:var(--serif);letter-spacing:-.02em;font-size:1.32rem;font-weight:700;display:block}.brand-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.66rem;display:block}.site-nav{flex-wrap:wrap;align-items:center;gap:.35rem 1.25rem;display:flex}.nav-link{color:var(--ink-soft);letter-spacing:.04em;border-bottom:2px solid #0000;padding:.5rem .15rem;font-size:.82rem;text-decoration:none}.nav-link:hover{color:var(--accent)}.nav-link.is-current{color:var(--accent);border-bottom-color:var(--accent)}.spread{grid-template-columns:minmax(0,1fr);gap:0;display:grid}@media (width>=60rem){.spread{grid-template-columns:minmax(0,1fr) 4px minmax(0,1fr);align-items:start}.spread>.page--left{grid-area:1/1}.spread>.gutter{grid-area:1/2}.spread>.page--right{grid-area:1/3}}.page--left,.page--right{padding:clamp(1.5rem,4vw,3rem) 0}@media (width>=60rem){.page--left{padding-right:clamp(1.5rem,3.5vw,3rem)}.page--right{padding-left:clamp(1.5rem,3.5vw,3rem)}}.gutter{background:linear-gradient(to right, transparent 0, var(--rule) 40%, var(--rule) 60%, transparent 100%);align-self:stretch;min-height:100%;display:none}@media (width>=60rem){.gutter{display:block}}.hero{padding:clamp(2rem,6vw,4.5rem) 0 clamp(1.5rem,4vw,3rem)}.hero-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:999px;margin-bottom:1rem;padding:.25rem .75rem;font-size:.7rem;display:inline-block}.hero h1{max-width:22ch}.hero-lede{color:var(--ink-soft);max-width:46ch;font-size:1rem}.dictated{font-family:var(--serif);color:var(--secondary);text-wrap:pretty;max-width:40ch;min-height:4.5em;margin:1.5rem 0 0;font-size:clamp(1.15rem,2.6vw,1.6rem);line-height:1.45}.dictated .w{opacity:0;animation:.5s forwards word-in;animation-delay:var(--d,0s);display:inline}.dictated .sp{white-space:pre-wrap;display:inline}.dictated .caret{background:var(--accent);vertical-align:-.14em;width:.55ch;height:1.05em;margin-left:.12ch;animation:1.05s step-end infinite blink;display:inline-block}@keyframes word-in{0%{opacity:0}to{opacity:1}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.btn{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--btn-ink);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;padding:.7rem 1.35rem;font-size:.82rem;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex}.btn:hover{background:var(--accent-soft);color:var(--btn-ink);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-ghost{color:var(--accent);background:0 0}.btn-ghost:hover{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.btn-row{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.card{background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--accent);box-shadow:var(--shadow);border-radius:3px;padding:1.25rem 1.35rem}.card+.card{margin-top:1rem}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;margin-bottom:.5rem;display:flex}.card-title{font-family:var(--serif);margin:0;font-size:1.2rem}.card-title a{color:var(--ink);text-decoration:none}.card-title a:hover{color:var(--accent)}.tag{letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);background:color-mix(in srgb, var(--secondary) 12%, transparent);border:1px solid color-mix(in srgb, var(--secondary) 35%, transparent);border-radius:999px;padding:.15rem .6rem;font-size:.68rem;display:inline-block}.stars{color:var(--accent);letter-spacing:.1em}.stars-off{color:var(--muted)}.review{border-top:1px solid var(--rule-soft);margin-top:.9rem;padding-top:.9rem}.review:first-of-type{border-top:0;margin-top:0;padding-top:0}.review-by{color:var(--muted);margin-bottom:.35rem;font-size:.78rem}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{counter-increment:step;border-left:1px solid var(--rule);margin-left:.85rem;padding-bottom:1.4rem;padding-left:3rem;position:relative}.steps li:last-child{border-left-color:#0000;padding-bottom:0}.steps li:before{content:counter(step, decimal-leading-zero);background:var(--accent);border:1px solid var(--accent);width:1.7rem;height:1.7rem;color:var(--btn-ink);border-radius:50%;place-items:center;font-size:.66rem;display:grid;position:absolute;top:0;left:-.85rem}.steps h3{margin-bottom:.25rem}.steps p{color:var(--ink-soft);margin:0;font-size:.9rem}.field{margin-bottom:1.1rem}.field label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;font-size:.72rem;display:block}.field input,.field textarea,.field select{width:100%;min-height:44px;font-family:var(--mono);color:var(--ink);background:var(--field);border:1px solid var(--rule);border-radius:2px;padding:.65rem .75rem;font-size:.9rem}.field textarea{resize:vertical;min-height:8rem}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:1px}.field-hint{color:var(--muted);margin-top:.35rem;font-size:.76rem}.form-note{border:1px solid var(--rule);border-left:3px solid var(--tertiary-bright);background:color-mix(in srgb, var(--tertiary-bright) 10%, var(--paper));margin-bottom:1.5rem;padding:.9rem 1rem;font-size:.86rem}.alert{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--paper));color:var(--ink);border-radius:2px;margin-bottom:1.25rem;padding:.8rem 1rem;font-size:.86rem}.alert-ok{border-color:var(--secondary);background:color-mix(in srgb, var(--secondary) 10%, var(--paper))}.site-footer{border-top:3px solid var(--accent);background:color-mix(in srgb, var(--bg-deep) 70%, transparent);margin-top:clamp(2rem,6vw,4rem);padding:2rem 0 2.5rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 2rem;display:flex}.footer-line{color:var(--muted);max-width:52ch;margin:0;font-size:.82rem}.attribution{margin:0;font-size:.78rem}.attribution a{color:var(--muted)}.admin-bar{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.25rem;margin-bottom:1.5rem;padding:.75rem 0;display:flex}.admin-tabs{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.admin-tabs a{color:var(--ink-soft);font-size:.8rem;text-decoration:none}.admin-tabs a.is-current{color:var(--accent);text-decoration:underline}.stat-row{flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem;display:flex}.stat{border:1px solid var(--rule);border-top:3px solid var(--secondary);background:var(--paper);border-radius:3px;flex:8rem;padding:.9rem 1rem}.stat-num{font-family:var(--serif);color:var(--accent);font-size:1.8rem;line-height:1;display:block}.stat-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.table{border-collapse:collapse;width:100%;font-size:.84rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--rule-soft);vertical-align:top;padding:.6rem .5rem}.table th{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:400}.inline-form{display:inline}.linkish{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.8rem;text-decoration:underline}.reveal{opacity:0;animation:.7s forwards reveal-in;animation-timeline:view();animation-range:entry cover 26%;transform:translateY(14px)}@keyframes reveal-in{to{opacity:1;transform:translateY(0)}}.parallax{position:relative;overflow:hidden}.parallax-layer{pointer-events:none;z-index:0;animation:linear both drift;animation-timeline:view();animation-range:cover;position:absolute;inset:-20% -10%}.parallax-layer.l1{background:radial-gradient(circle at 20% 30%, color-mix(in srgb, var(--accent) 26%, transparent) 0, transparent 55%);animation-name:drift-slow}.parallax-layer.l2{background:radial-gradient(circle at 78% 68%, color-mix(in srgb, var(--tertiary-bright) 30%, transparent) 0, transparent 52%);animation-name:drift-fast}.parallax>*{z-index:1;position:relative}@keyframes drift-slow{0%{transform:translateY(-6%)}to{transform:translateY(6%)}}@keyframes drift-fast{0%{transform:translateY(9%)}to{transform:translateY(-9%)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.dictated .w{opacity:1}.dictated .caret{display:none}.reveal{opacity:1;transform:none}.parallax-layer{display:none}}
