:root{--bg-primary: #FFF8EF;--bg-secondary: #F4E8D8;--bg-elevated: #FFFFFF;--ink-primary: #211A17;--ink-secondary: #5F514B;--accent-sage: #557A63;--accent-sky: #DCEAF2;--border-subtle: #DDCDBF;--state-error: #B3261E;--accent-plum: #5E2B64;--accent-plum-hover: #47204C;--sunrise-500: #E89B3C;--sunrise-600: #CC8226;--dawn-peach: #F7D9B5;--dawn-veil: #FBEAD6;--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-8: 64px;--space-10: 80px;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--shadow-card: 0 4px 20px -2px rgba(95, 81, 75, .08), 0 2px 8px -1px rgba(95, 81, 75, .04);--focus-ring: 2px solid #2F6FED;--focus-offset: 2px;--container-max: 1440px;--container-reading: 680px;--transition-speed-fast: .15s;--transition-speed-normal: .25s;--transition-speed-slow: .35s;--ease-custom: cubic-bezier(.16, 1, .3, 1)}.on-night{--bg-primary: #17122B;--bg-secondary: #221A3A;--bg-elevated: #2E2350;--ink-primary: #F6F1E8;--ink-secondary: #D9CFE6;--border-subtle: rgba(246, 241, 232, .12);--moonlight-50: #F6F1E8;--moonlight-200: #D9CFE6;--moon-disc: #E8DEF6;--focus-ring: 2px solid #F6F1E8;--shadow-card: inset 0 1px 0 0 rgba(246, 241, 232, .08), 0 8px 32px 0 rgba(11, 8, 22, .5);color:var(--ink-primary)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);color:var(--ink-primary);background-color:var(--bg-primary);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;line-height:1.6;font-size:16px;overflow-x:hidden}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid #2F6FED;outline-offset:2px;box-shadow:0 0 0 2px #fff8ef,0 0 0 4px #2f6fed}.on-night :focus-visible,.on-night:focus-visible{outline:2px solid #F6F1E8;outline-offset:2px;box-shadow:0 0 0 2px #17122b,0 0 0 4px #f6f1e8}.skip-link{position:absolute;top:-100px;left:0;background:var(--sunrise-500);color:var(--ink-primary);padding:var(--space-2) var(--space-3);z-index:100;font-weight:600;border-radius:0 0 var(--radius-sm) 0;transition:top var(--transition-speed-fast) var(--ease-custom)}.skip-link:focus-visible{top:0}.container{width:100%;max-width:none;margin-left:auto;margin-right:auto;padding-left:clamp(20px,5vw,160px);padding-right:clamp(20px,5vw,160px)}.container-reading{max-width:var(--container-reading);margin-left:auto;margin-right:auto}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:1.25}h1{font-size:clamp(38px,6vw,64px)}h2{font-size:clamp(28px,4vw,42px)}h3{font-size:clamp(20px,3vw,24px)}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:var(--accent-plum)}.on-night .eyebrow{color:var(--moonlight-200)}p,.on-night p{color:var(--ink-secondary)}.text-center{text-align:center}.chapter-line-container{position:relative}.chapter-line-container:before{content:"";position:absolute;left:var(--space-3);top:0;bottom:0;width:1.5px;border-left:1.5px dashed var(--accent-plum);opacity:.25;z-index:0}.on-night .chapter-line-container:before{border-left-color:var(--ink-primary)}@media(min-width:768px){.chapter-line-container:before{left:50%;transform:translate(-50%)}}.orbit-dot{position:absolute;left:calc(var(--space-3) - 3.5px);width:8px;height:8px;border-radius:50%;background-color:var(--accent-plum);box-shadow:0 0 8px var(--accent-plum);z-index:2;animation:travel-line 8s linear infinite;pointer-events:none}.on-night .orbit-dot{background-color:var(--sunrise-500);box-shadow:0 0 8px var(--sunrise-500)}@media(min-width:768px){.orbit-dot{left:50%;transform:translate(-50%);animation:travel-line-center 8s linear infinite}}@keyframes travel-line{0%{top:0%}to{top:100%}}@keyframes travel-line-center{0%{top:0%;transform:translate(-50%)}to{top:100%;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.orbit-dot{animation:none!important;top:50%!important}}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;line-height:1}.status-chip.now{background-color:var(--accent-sage);color:#fff}.status-chip.next{background-color:var(--accent-sky);color:#211a17}.status-chip.planned{background-color:var(--bg-secondary);color:var(--ink-primary);border:1px solid var(--border-subtle)}.status-chip.future{background-color:transparent;color:var(--ink-primary);border:1px dashed var(--border-subtle)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:16px;padding:14px 28px;border-radius:999px;border:none;cursor:pointer;transition:all var(--transition-speed-normal) var(--ease-custom);white-space:nowrap}.btn-primary{background-color:var(--sunrise-500);color:#211a17}.btn-primary:hover,.btn-primary:focus{background-color:var(--sunrise-600);transform:translateY(-1px)}.btn-secondary{background-color:var(--bg-elevated);color:var(--accent-plum);border:1px solid #CBB6CF}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--bg-secondary)}.btn-ghost-night{background-color:transparent;color:var(--moonlight-50);border:1px solid var(--moonlight-50)}.btn-ghost-night:hover,.btn-ghost-night:focus{background-color:#f6f1e814}.btn-muted{background-color:transparent;color:var(--ink-secondary);border:1px dashed var(--border-subtle);cursor:not-allowed}.btn:disabled{background-color:#e8ded5;color:#8b7d76;cursor:not-allowed;transform:none!important}.btn.loading{position:relative;cursor:wait}.btn.loading .btn-text{visibility:hidden;opacity:0}.btn.loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-top:-10px;margin-left:-10px;border:2px solid currentColor;border-radius:50%;border-right-color:transparent;animation:btn-spinner .6s linear infinite}@keyframes btn-spinner{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition:none!important;transition-duration:0s!important;transition-delay:0s!important}.btn:hover,.btn:focus,.timeline-card:hover,.chapter-card:hover,.step-card:hover,.audience-card:hover{transform:none!important}.pulse-dot{animation:none!important;box-shadow:none!important}.orbit-dot{animation:none!important;top:50%!important}}
