:root{--c-sunset:#f56a00;--c-sunset-hover:#dc5f00;--c-sunset-soft:rgba(245,106,0,.08);--c-navy:#0f2a38;--c-willow:#e2e71b;--c-cream:#f4f2ec;--c-white:#fff;--c-fg:#0f2a38;--c-fg-body:#1a1a1a;--c-fg-muted:#6b7280;--c-border:#e5e5e5;--c-border-strong:#d0d0d0;--c-surface:#f8f8f8;--c-error:#c0392b;--c-success:#2e7d32;--c-warning:#b45309;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-6:24px;--s-8:32px;--s-12:48px;--s-20:80px;--r-xs:2px;--r-sm:3px;--r-md:8px;--r-lg:2px;--r-2xl:24px;--r-pill:9999px;--shadow-xs:0 1px 2px rgba(15,42,56,.06);--shadow-sm:0 2px 8px rgba(15,42,56,.08);--shadow-md:0 8px 24px rgba(15,42,56,.12);--shadow-lg:0 16px 40px rgba(15,42,56,.16);--font-display:var(--font-red-hat),ui-sans-serif,system-ui,sans-serif;--font-body:var(--font-red-hat),ui-sans-serif,system-ui,sans-serif;--mono:var(--font-jetbrains),ui-monospace,Menlo,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-body);color:var(--c-fg-body);background:var(--c-white);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:700;color:var(--c-navy);letter-spacing:-.01em;line-height:1.1;margin:0}h1{font-size:46px}h2{font-size:32px}h2,h3{line-height:1.15}h3{font-size:22px}p{font-size:16px;line-height:1.5;margin:0 0 var(--s-4)}a{color:var(--c-sunset);text-decoration:none}a:hover{color:var(--c-sunset-hover)}.reveal{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}@keyframes hero-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.hero-enter{animation:hero-enter .7s ease both}@media (prefers-reduced-motion:reduce){.hero-enter{animation:none}}.btn{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-body);font-weight:600;font-size:14px;border-radius:var(--r-md);border:1px solid transparent;height:40px;padding:0 var(--s-4);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--c-sunset-soft)}.btn--primary{background:var(--c-sunset);color:var(--c-white)}.btn--primary:hover{background:var(--c-sunset-hover)}.btn--outline{background:var(--c-white);color:var(--c-fg);border-color:var(--c-border)}.btn--navy{background:var(--c-navy);color:var(--c-cream)}.btn--ghost-onDark{background:transparent;color:var(--c-cream);border-color:hsla(45,27%,94%,.4)}.btn--ghost-onDark:hover{border-color:var(--c-cream)}.label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sunset)}.rich-body .muted{color:var(--c-fg-muted)}.rich-body .sec-num{font-family:var(--mono);font-size:13px;color:var(--c-sunset)}.rich-body .toc{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:18px 22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:6px 20px;gap:6px 20px}.rich-body .toc a{display:flex;gap:10px;font-size:14px;color:var(--c-fg-body);padding:5px 0}.rich-body .toc a .n{font-family:var(--mono);color:var(--c-sunset);font-size:12px}.rich-body table.tl{width:100%;border-collapse:collapse;margin-top:8px;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden}.rich-body table.tl td{padding:11px 16px;border-bottom:1px solid var(--c-border);font-size:15px;vertical-align:top}.rich-body table.tl tr:last-child td{border-bottom:none}.rich-body table.tl td.day{font-family:var(--mono);font-size:13px;color:var(--c-navy);font-weight:500;white-space:nowrap;width:130px;background:var(--c-surface)}.rich-body .grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:8px}.rich-body .card{background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:18px 20px}.rich-body .card h3{margin-top:0}.rich-body .card p{font-size:15px;margin-bottom:0}.rich-body .steps{counter-reset:s;display:grid;grid-gap:12px;gap:12px;margin-top:8px}.rich-body .step{display:grid;grid-template-columns:40px 1fr;grid-gap:14px;gap:14px;align-items:start;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:16px 18px}.rich-body .step .num{counter-increment:s;width:34px;height:34px;border-radius:50%;background:var(--c-navy);color:var(--c-cream);font-family:var(--font-display);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:16px}.rich-body .step .num:before{content:counter(s)}.rich-body .step h3{margin:2px 0 4px}.rich-body .step p{font-size:15px;margin:0}.rich-body .packgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:10px}.rich-body .pack{background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:16px 18px}.rich-body .pack h3{margin:0 0 8px;font-size:16px}.rich-body .pack ul{margin:0;padding:0;list-style:none}.rich-body .pack li{font-size:14px;padding:6px 0;border-bottom:1px dashed var(--c-border);display:flex;justify-content:space-between;gap:10px;align-items:baseline}.rich-body .pack li:last-child{border-bottom:none}.rich-body .rec{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--c-sunset);white-space:nowrap}.rich-body .rec:after{content:" \2197"}.rich-body .included{grid-column:1/-1;background:var(--c-navy);color:var(--c-cream);border:none}.rich-body .included h3{color:var(--c-cream)}.rich-body .included li{border-color:hsla(45,27%,94%,.14);color:hsla(45,27%,94%,.9)}.rich-body .included .tag{font-family:var(--mono);font-size:11px;color:var(--c-willow)}.rich-body .rules{display:grid;grid-gap:8px;gap:8px;margin-top:8px;counter-reset:r}.rich-body .rule{background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-md);padding:12px 16px;font-size:15px;display:grid;grid-template-columns:26px 1fr;grid-gap:10px;gap:10px}.rich-body .rule .rn{counter-increment:r;font-family:var(--mono);color:var(--c-sunset);font-size:13px}.rich-body .rule .rn:before{content:counter(r)}.rich-body .callout{background:var(--c-sunset-soft);border-left:3px solid var(--c-sunset);border-radius:0 var(--r-md) var(--r-md) 0;padding:14px 18px;font-size:15px;margin:16px 0;color:var(--c-navy)}.rich-body .callout b{color:var(--c-sunset)}.rich-body .callout.navy{background:var(--c-navy);color:var(--c-cream);border-left-color:var(--c-willow)}.rich-body .callout.navy b{color:var(--c-willow)}