:root{--night:#080d14;--text:#eeeae2;--muted:#b3bcc6;--gold:#edc48b;--rule:#e9e4d328;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mono:'SFMono-Regular',Consolas,monospace;--gutter:clamp(24px,6vw,100px)}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:var(--night);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-style:normal;color:var(--text);font-weight:400;letter-spacing:-.05em;line-height:1.05}h2{font-size:clamp(48px,6vw,90px)}h3{font-size:clamp(35px,3.3vw,54px)}em{font-weight:400;color:var(--gold)}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:2px solid var(--gold);outline-offset:7px}img{display:block;max-width:100%}svg{display:block;width:100%;height:auto}.eyebrow{font:11px/1.65 var(--mono);letter-spacing:.15em;color:var(--gold)}.handwritten{font-family:'Bradley Hand','Segoe Print',cursive;font-size:30px;line-height:1.25}.source-ref{font:12px/1.8 var(--mono);white-space:nowrap;color:var(--gold)}.skip-link{position:fixed;top:12px;left:15px;padding:14px;background:var(--text);color:var(--night);z-index:20;transform:translateY(-180%)}.skip-link:focus{transform:none}
.masthead{position:absolute;top:0;inset-inline:0;height:100px;padding:0 var(--gutter);z-index:10;display:flex;align-items:center;gap:35px}.wordmark{font-size:28px;font-weight:650;letter-spacing:-1.6px;text-decoration:none}.wordmark span{color:var(--gold)}.masthead>span,.masthead>a:last-child{font:10px var(--mono);letter-spacing:.12em}.masthead>span{color:var(--muted)}.masthead>a:last-child{margin-left:auto;text-decoration:none;padding:15px 0}
/* One mounted scene carries the opening into the solar light journey. */
.prologue{position:relative;isolation:isolate}.prologue-stage{position:sticky;top:0;height:100svh;min-height:600px;z-index:-1;overflow:hidden;background:var(--night)}.prologue-text{margin-top:calc(-1 * max(100svh,600px))}.earthrise{position:absolute;inset:0;opacity:var(--dawn-opacity,1);transform:scale(var(--dawn-scale,1));transform-origin:85% 45%}.earthrise img{width:100%;height:100%;object-fit:cover;object-position:75% 50%}.earthrise::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080d14dd 0%,#080d1470 36%,transparent 67%),linear-gradient(0deg,#080d14 0%,transparent 20%)}.hero{position:relative;height:100svh;min-height:740px;padding:clamp(145px,20svh,210px) var(--gutter) 70px}.hero-copy{max-width:750px;opacity:var(--hero-opacity,1)}.hero h1{font-size:clamp(88px,10.2vw,160px);line-height:.95;margin:28px 0 32px}.hero-copy>p:not(.eyebrow){font-size:clamp(19px,1.75vw,25px);line-height:1.6;color:#d8dadd;max-width:350px}.begin-link{display:inline-flex;gap:14px;align-items:center;font-size:13px;text-decoration:none;margin-top:35px;background:#080d14aa;padding:9px 16px 9px 9px;border-radius:40px}.begin-link>span{border:1px solid #eee5d344;width:33px;height:33px;border-radius:50%;display:grid;place-items:center;font-size:21px;color:var(--gold)}.hero-note{position:absolute;bottom:15%;right:8%;transform:rotate(-5deg);opacity:var(--hero-opacity,1);text-shadow:0 2px 8px #000}.hero-bottom{position:absolute;bottom:30px;inset-inline:var(--gutter);display:flex;justify-content:space-between;gap:25px;font:10px/1.6 var(--mono);letter-spacing:.07em;color:#bfc2c8}.hero-bottom a{text-decoration:none}
.solar-journey{min-height:155svh;padding:90px var(--gutter) 120px;display:flex;flex-direction:column;justify-content:space-between;gap:65svh}.solar-question h2{font-size:clamp(53px,6vw,90px);margin:20px 0 26px}.solar-question>p:last-child{font-size:21px;line-height:1.6;color:var(--muted)}.solar-answer{max-width:900px;position:relative}.big-time{font:clamp(85px,10vw,150px)/1.1 var(--serif);letter-spacing:-.065em;margin:10px 0 30px}.big-time small{font-size:.28em;color:var(--gold);letter-spacing:0;margin-right:.4em}.solar-answer>p:not(.eyebrow):not(.big-time){font-size:clamp(21px,2vw,27px);line-height:1.6;max-width:650px}.solar-answer>p:last-child{color:var(--muted);margin-top:20px;font-size:20px!important}.solar-view{position:absolute;inset:0;opacity:var(--solar-opacity,0)}.solar-sun{position:absolute;left:20%;top:58%;width:clamp(120px,19vw,260px);aspect-ratio:1;transform:translate(-50%,-50%) scale(var(--sun-scale,1));mix-blend-mode:screen}.solar-sun img{width:100%;height:100%}.solar-earth{position:absolute;left:81%;top:58%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:radial-gradient(ellipse at 30% 30%,#8cb9a2,transparent 32%),radial-gradient(circle at 25% 30%,#82b0c3,#23435d 55%,#080e15 75%);box-shadow:0 0 18px #78b0d522}.solar-path{position:absolute;left:26%;right:19%;top:58%;height:1px;background:#edc48b25}.solar-trail{height:1px;width:var(--travel,0%);background:linear-gradient(90deg,#e8bc7720,#f7dba7)}.solar-photon{position:absolute;left:var(--travel,0%);top:0;width:6px;height:6px;transform:translate(-50%,-50%);background:#fff7e8;border-radius:50%;box-shadow:0 0 18px 3px #ffe6a96b}.solar-label{position:absolute;top:calc(58% + 90px);font:11px var(--mono);letter-spacing:.12em;color:var(--muted);transform:translateX(-50%)}.solar-label-sun{left:20%;top:calc(58% + 145px)}.solar-label-earth{left:81%}.solar-clock{position:absolute;left:54%;top:calc(58% - 90px);transform:translateX(-50%);text-align:center;white-space:nowrap}.solar-clock>span{font:10px var(--mono);letter-spacing:.1em;color:var(--muted)}.solar-clock strong{display:block;margin-top:12px;font:32px var(--mono);color:var(--gold)}.solar-clock small{font-size:13px}.solar-model-note{position:absolute;top:81%;width:100%;text-align:center;font:11px/1.6 var(--mono);color:var(--muted);padding-inline:25px}
/* A blackboard, with large text outside it rather than a card on top. */
.chapter-heading{padding:120px var(--gutter) 65px;max-width:1150px}.chapter-heading h2{margin:24px 0 30px}.chapter-heading>p:last-child{font-size:21px;line-height:1.6;color:var(--muted);max-width:600px}.board-chapter{border-top:1px solid var(--rule);padding-bottom:70px;background:linear-gradient(125deg,#0c1618,#0b1118 65%)}.board-story{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:7vw;padding:0 var(--gutter);align-items:start}.blackboard{position:sticky;top:13svh;padding:24px 20px 28px;background:radial-gradient(ellipse at 50% 55%,#24302b55,transparent 75%),repeating-linear-gradient(0deg,transparent,transparent 35px,#cadac603 36px),#121d1d;border:1px solid #d4dcca26;box-shadow:inset 0 0 70px #0003}.board-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.board-top>.handwritten{font-size:36px;color:#d9ddd2}.board-top>span:last-child{font:9px var(--mono);letter-spacing:.12em;color:#a6b5ac}.blackboard svg{margin-top:20px;overflow:visible}.blackboard svg text{fill:#dfe3d6;stroke:none;font:23px 'Bradley Hand','Segoe Print',cursive}.chalk-source,.chalk-eye{fill:none;stroke:#dce2d0;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.chalk-source circle{stroke:#e9c58b}.chalk-source path{stroke:#e9c58baa}.chalk-ray{fill:none;stroke:#e9c58b;stroke-width:2;marker-end:url(#chalk-arrow);stroke-dasharray:800;stroke-dashoffset:0}.chalk-guide{fill:none;stroke:#b4c2b66b;stroke-width:1.5;stroke-dasharray:6 9}.chalk-dust{fill:#e9c58b}.chalk-short-ray{fill:none;stroke:#e9c58b99;stroke-width:1.5}.chalk-moon{fill:#bfccbc10;stroke:#d6ddca;stroke-width:2}.chalk-moon-detail{fill:none;stroke:#d6ddca66;stroke-width:1.5}.board-state{opacity:0;transition:opacity .35s}.board-direct{opacity:1}.blackboard[data-state="1"] .board-direct,.blackboard[data-state="2"] .board-direct{opacity:0}.blackboard[data-state="1"] .board-reflected,.blackboard[data-state="2"] .board-scattered{opacity:1}.chalk-eye{transition:transform .5s}.blackboard[data-state="2"] .chalk-eye{transform:translateY(135px)}.blackboard figcaption{font-size:29px;margin:4px 12px 16px;color:#e9c58b}.board-footnote{font-size:12px;line-height:1.6;color:#aebdb3;margin-inline:12px;max-width:500px}.board-step{min-height:80svh;display:flex;flex-direction:column;justify-content:center;padding:55px 0}.board-step h3{margin:22px 0}.board-step p:not(.eyebrow){font-size:20px;line-height:1.75;color:#bdc8c9;margin-top:16px}.board-step .board-side-note{font:28px/1.4 'Bradley Hand','Segoe Print',cursive!important;color:var(--gold)!important;transform:rotate(-3deg);margin-top:32px!important}
/* Section four: one persistent dark stage, six exposures, darkness between them. */
.observatory{background:var(--night);border-top:1px solid var(--rule)}.observatory-heading{padding-bottom:130px}.exposure-story{position:relative;isolation:isolate}.observatory-stage{position:relative;min-height:600px;background:var(--night)}.exposure{margin:0 auto 80px;width:85%;max-width:1100px}.exposure>img{width:100%;height:auto}.exposure figcaption{font:11px/1.8 var(--mono);letter-spacing:.08em;color:#d4d7dc;padding-top:20px}.exposure figcaption span{display:block;color:#9da9b6;font-size:11px;letter-spacing:0}.exposure svg text{fill:#bbc8d1;font:17px var(--mono);letter-spacing:1px}.exposure svg path{fill:none;stroke-width:2}.wave-emitted{stroke:#91b6dc}.wave-received{stroke:#edb880}.wave-arrow{stroke:#c1c3c577}.cmb-crop{position:relative;aspect-ratio:2.05;overflow:hidden}.cmb-crop img{position:absolute;top:-28.7%;width:100%;height:auto}.exposure-meter{display:none}.episode{padding:70px var(--gutter)}.episode-copy{max-width:630px}.episode h3{margin:22px 0 26px}.episode p:not(.eyebrow){font-size:21px;line-height:1.75;color:#bfc7d0;margin-top:20px}.episode .source-ref{display:inline-block}
.js .observatory-stage{position:sticky;top:0;height:100svh;min-height:0;overflow:hidden;z-index:0}.js .exposure{position:absolute;inset:10svh auto auto 0;width:59%;height:80svh;max-width:none;margin:0;padding:25px 3vw 20px var(--gutter);display:flex;flex-direction:column;justify-content:center;opacity:var(--exposure-opacity,0);visibility:hidden;pointer-events:none;will-change:opacity}.js .exposure.is-active{visibility:visible}.js .exposure>img{width:100%;height:auto;max-height:67svh;object-fit:contain;min-height:0}.js .exposure>svg{max-height:64svh;flex-shrink:1;min-height:0}.js .exposure figcaption{flex-shrink:0}.js .exposure-mom{width:62%;padding-left:2vw;padding-right:2vw}.js .exposure-cmb .cmb-crop{width:100%;flex-shrink:0}.js .episodes{position:relative;margin-top:-100svh;z-index:1}.js .episode{min-height:140svh;display:flex;align-items:center;justify-content:flex-end;padding-block:100px}.js .episode-copy{width:34%;max-width:500px;min-width:0}.js .episode h3{font-size:clamp(35px,3.7vw,58px)}.js .episode p:not(.eyebrow){font-size:clamp(18px,1.65vw,23px)}.js .exposure-meter{position:absolute;bottom:28px;left:var(--gutter);width:170px;display:flex;align-items:center;gap:16px;font:10px var(--mono);color:#a4aeb8}.meter-line{height:1px;flex:1;background:var(--rule)}
/* Return to the opening with simple labels, no boxed cards. */
.ending{position:relative;padding:140px var(--gutter) 90px;border-top:1px solid var(--rule);overflow:hidden}.ending-copy{position:relative;z-index:1;max-width:850px}.ending-copy h2{font-size:clamp(60px,8vw,120px);margin:25px 0 30px}.ending-copy>p:last-child{font-size:22px;line-height:1.7;color:var(--muted)}.ending-image{position:relative;margin:-140px -6vw 0 12%;mask-image:linear-gradient(90deg,transparent,#000 20%),linear-gradient(0deg,transparent,#000 10%,#000 80%,transparent);mask-composite:intersect}.ending-image img{width:100%;height:auto}.ending-labels{padding:0;margin:45px 0 0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;list-style:none}.ending-labels li{display:flex;gap:20px;border-top:1px solid var(--rule);padding-top:25px}.ending-labels li>span{font:12px var(--mono);color:var(--gold);padding-top:6px}.ending-labels strong{font:30px var(--serif)}.ending-labels p{font-size:17px;line-height:1.65;color:var(--muted);margin-top:12px}.ending-caption{font:11px/1.6 var(--mono);color:#98a6b6;margin-top:50px}
.sources{padding:100px var(--gutter) 70px;background:#0d141d;border-top:1px solid var(--rule)}.sources-heading{max-width:650px;margin-bottom:65px}.sources-heading h2{font-size:60px;margin:20px 0 25px}.sources-heading>p:last-child{font-size:18px;line-height:1.7;color:var(--muted)}.sources-list{list-style:none;counter-reset:sources;display:grid;grid-template-columns:1fr 1fr;gap:45px 70px;padding:0;margin:0}.sources-list li{counter-increment:sources;border-top:1px solid var(--rule);padding-top:25px;scroll-margin-top:30px}.sources-list h3{font:500 20px/1.4 var(--sans);letter-spacing:0;margin-bottom:15px}.sources-list h3::before{content:counter(sources,decimal-leading-zero) ' / ';font:11px var(--mono);color:var(--gold)}.sources-list p,.method-note p{font-size:15px;line-height:1.85;color:#b8c0ca}.sources-list a{display:table;padding:10px 0;font-size:14px;line-height:1.6;color:#ddd0bd;overflow-wrap:anywhere}.method-note{max-width:900px;border-top:1px solid var(--rule);margin-top:65px;padding-top:35px}.method-note h3{font:12px var(--mono);letter-spacing:.08em;margin-bottom:25px;color:var(--gold)}.method-note p+p{margin-top:20px}.footer{padding:45px var(--gutter);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule)}.footer p{font-size:12px;color:var(--muted);margin-top:15px}.back-to-start{font-size:14px;padding:15px 0}
@media(max-width:1050px){.board-story{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:40px}.board-step p:not(.eyebrow){font-size:18px}.blackboard{padding:18px 10px}.board-top{padding:0 12px}.board-top>.handwritten{font-size:28px}.board-top>span:last-child{font-size:8px}.js .episode-copy{width:36%}.js .episode h3{font-size:36px}.js .episode p:not(.eyebrow){font-size:18px}.js .exposure{width:57%;padding-left:3vw}.js .exposure-mom{width:60%}.hero h1{font-size:clamp(84px,11vw,135px)}}
@media(max-width:700px){
 :root{--gutter:24px}.masthead{height:80px}.masthead>span{display:none}.wordmark{font-size:25px}.masthead>a:last-child{font-size:10px}.hero{min-height:740px;padding-top:135px}.hero h1{font-size:clamp(72px,18vw,115px);margin-top:22px;margin-bottom:26px}.hero-copy>p:not(.eyebrow){font-size:19px}.hero-copy .eyebrow{font-size:10px}.begin-link{font-size:11px;gap:10px;max-width:100%;margin-top:25px}.earthrise{inset:23% -28% 0 -5%}.earthrise img{object-position:70% 50%}.earthrise::after{background:linear-gradient(180deg,#080d14,transparent 40%),linear-gradient(90deg,#080d14aa,transparent 70%),linear-gradient(0deg,#080d14,transparent 30%)}.hero-note{right:9%;bottom:14%;font-size:26px}.hero-bottom{bottom:25px;font-size:9px}.hero-bottom>span{display:none}.hero-bottom a{margin-left:auto}.solar-journey{padding-top:65px;min-height:1500px;gap:600px;padding-bottom:85px}.solar-question h2{font-size:59px}.solar-question>p:last-child{font-size:18px}.solar-question br:not(h2 br){display:none}.solar-answer>p:not(.eyebrow):not(.big-time){font-size:21px}.solar-answer>p:last-child{font-size:18px!important}.big-time{font-size:86px}.solar-sun{left:17%;width:130px}.solar-earth{left:84%;width:32px;height:32px}.solar-path{left:26%;right:16%}.solar-label-sun{left:17%;top:calc(58% + 76px)}.solar-label-earth{left:84%;top:calc(58% + 54px)}.solar-label{font-size:10px}.solar-clock{left:55%;top:calc(58% - 78px)}.solar-clock strong{font-size:26px}.solar-clock>span{font-size:8px}.solar-model-note{font-size:10px;top:78%}
 .chapter-heading{padding-top:85px;padding-bottom:50px}.chapter-heading h2{font-size:clamp(48px,12vw,76px)}.chapter-heading>p:last-child{font-size:19px}.board-story{display:block}.blackboard{position:sticky;top:0;z-index:1;padding:12px 14px 15px;margin:0 -10px;background:#121d1d}.blackboard svg{max-height:30svh;margin-top:0}.board-top>span:last-child{font-size:8px}.board-top>.handwritten{font-size:25px}.blackboard figcaption{font-size:24px;margin:0 0 10px}.board-footnote{font-size:11px;margin:0}.board-steps{position:relative;z-index:2}.board-step{min-height:100svh;padding:48svh 0 45px;justify-content:flex-start}.board-step h3{font-size:36px;margin:18px 0}.board-step p:not(.eyebrow){font-size:18px;line-height:1.7}.board-step>*{position:relative;background:#0c1418}.board-step{background:linear-gradient(transparent 40svh,#0c1418 48svh)}
 .observatory-heading{padding-bottom:85px}.js .exposure{inset:1svh 0 auto;width:100%;height:43svh;padding:12px 18px 0;justify-content:center}.js .exposure>img{max-height:34svh;width:100%}.js .exposure>svg{max-height:34svh;width:100%}.js .exposure figcaption{padding-top:10px;font-size:9px;line-height:1.65}.js .exposure figcaption span{font-size:10px}.js .exposure-mom{width:100%;padding-inline:8px}.js .exposure-cmb .cmb-crop{width:min(100%,60svh);align-self:center}.js .exposure-meter{display:none}.js .episode{min-height:145svh;padding:53svh var(--gutter) 80px;align-items:flex-start;display:block}.js .episode-copy{width:100%;max-width:none;background:var(--night)}.js .episode h3{font-size:clamp(34px,9vw,48px);margin:18px 0 23px}.js .episode p:not(.eyebrow){font-size:18px;line-height:1.7}.exposure svg text{font-size:22px;letter-spacing:0}.exposure-horizon svg text{font-size:19px}
 .ending{padding-top:95px;padding-bottom:65px}.ending-copy h2{font-size:clamp(55px,14vw,86px)}.ending-copy>p:last-child{font-size:19px}.ending-image{margin:15px -24px 0;mask-image:linear-gradient(0deg,transparent,#000 13%,#000 85%,transparent)}.ending-labels{grid-template-columns:1fr;gap:22px;margin-top:15px}.ending-labels li{padding-top:20px}.ending-labels strong{font-size:27px}.ending-labels p{font-size:17px;margin-top:7px}.ending-caption{font-size:10px;margin-top:35px}.sources{padding-top:70px}.sources-list{grid-template-columns:1fr;gap:35px}.sources-heading h2{font-size:44px}.sources-heading{margin-bottom:40px}.footer{flex-direction:column;align-items:flex-start;gap:25px}
}
@media(max-height:650px) and (min-width:701px){.hero{min-height:680px;padding-top:135px}.hero h1{font-size:100px}.blackboard{top:3svh}.blackboard svg{max-height:56svh}.blackboard figcaption{font-size:24px}.board-top{display:none}.board-step{min-height:105svh}.js .episode{min-height:150svh}.js .episode h3{font-size:35px}.js .episode p:not(.eyebrow){font-size:18px}}
@media(max-height:650px) and (max-width:700px){.blackboard{position:relative;top:auto}.blackboard svg{max-height:none}.board-step{padding:35px 0;min-height:0;background:none}.js .episode{min-height:180svh}.js .exposure{height:39svh}.js .exposure>img,.js .exposure>svg{max-height:29svh}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.earthrise{transform:none}.js .exposure{will-change:auto}}
@media print{.masthead,.skip-link,.prologue-stage,.begin-link{display:none}.prologue-text,.js .episodes{margin-top:0}.hero,.solar-journey,.board-step,.js .episode{height:auto;min-height:0;padding:25px}.hero-copy{opacity:1}.hero-note,.hero-bottom{display:none}.board-story{display:block}.blackboard{position:relative;top:auto}.js .observatory-stage{position:relative;height:auto;overflow:visible}.js .exposure{position:relative;inset:auto;width:100%;height:auto;visibility:visible;opacity:1}.js .episode-copy{width:100%}.sources-list{display:block}.sources-list li{break-inside:avoid;margin-bottom:25px}}
.chalk-ray{stroke-dashoffset:calc(800 * (1 - var(--ink,1)))}
.reduced-motion .board-state,.reduced-motion .chalk-eye{transition:none}.reduced-motion .earthrise{transform:none}.reduced-motion .exposure{will-change:auto}
.footer-links{display:flex;align-items:center;gap:32px;font-size:13px}
.light-pin{position:absolute;display:grid;place-items:center;width:34px;height:34px;border:1px solid #f6dba6;border-radius:50%;background:#080d14ba;color:#fff1d4;font:11px var(--mono);box-shadow:0 0 0 5px #080d1440}.pin-sun{left:89%;top:37%}.pin-air{left:70%;top:19%}.pin-city{left:57%;top:46%}
@media(max-width:700px){.blackboard svg text{font-size:27px}.footer-links{align-items:flex-start;flex-direction:column;gap:12px}.light-pin{width:27px;height:27px;font-size:10px}.ending-image{mask-image:linear-gradient(0deg,transparent,#000 10%,#000 92%,transparent)}}
@media(min-width:701px){.solar-sun,.solar-earth,.solar-path{top:65%}.solar-label-sun{top:calc(65% + 145px)}.solar-label-earth{top:calc(65% + 90px)}.solar-clock{top:calc(65% - 90px)}.solar-model-note{top:89%}.js .episode{min-height:120svh}}
@media(max-width:700px){.earthrise{inset:28% -8% 0 -60%}.earthrise img{object-position:100% 50%}.blackboard{top:24px}.js .episode{min-height:135svh}.pin-sun{left:89%;top:37%}.pin-air{left:74%;top:24%}}
@media(max-height:650px) and (min-width:701px){.solar-journey{padding-top:45px}.solar-question h2{font-size:52px}.solar-question>p:last-child{font-size:18px}.solar-sun{width:170px}.solar-label-sun{top:calc(65% + 95px)}.solar-label-earth{top:calc(65% + 55px)}.solar-model-note{top:90%}.js .episode{min-height:150svh}}
@media(max-height:650px) and (max-width:700px){.blackboard{top:auto}.js .episode{min-height:180svh}}

/* September refinement: keep the sun attached to the opening flare. */
.earthrise{will-change:transform,opacity}
.solar-sun{z-index:1;opacity:0;transform:translate(-50%,-50%) scale(var(--sun-scale,1));pointer-events:none}
.solar-sun img{opacity:var(--sun-detail,1);border-radius:50%}
.sun-flare{position:absolute;inset:9%;border-radius:50%;background:radial-gradient(circle,#fffbea 0%,#ffe0a0 30%,#f9b750 58%,#e98a2220 72%,transparent 76%);opacity:calc(1 - var(--sun-detail,1));box-shadow:0 0 50px 10px #ffa93455}
.solar-view{z-index:2;pointer-events:none}
.solar-model-note span{font-size:10px;color:#8d9bab}
.solar-path{left:calc(20% + clamp(60px,9.5vw,130px));right:19%}
/* A classroom chalkboard: green slate, worn timber and a small chalk ledge. */
.board-chapter{background:linear-gradient(130deg,#101c19,#0b1417 65%)}
.blackboard{background:radial-gradient(ellipse at 27% 35%,#8cac7c13,transparent 47%),radial-gradient(ellipse at 75% 73%,#c3d4b009,transparent 43%),repeating-linear-gradient(2deg,transparent 0 4px,#e3edd403 5px 6px),#204c3c;border:10px solid #5f4933;border-top-color:#785d3f;border-right-color:#473725;box-shadow:inset 0 0 65px #061d2180,0 12px 28px #0004;isolation:isolate}
.blackboard::before{content:"";position:absolute;inset:3%;z-index:-1;opacity:.17;background:repeating-linear-gradient(171deg,transparent 0 37px,#d0ddbc17 39px,transparent 42px 49px);mask-image:radial-gradient(ellipse,#000,transparent 72%)}
.board-top{padding-bottom:15px;border-bottom:1px solid #e2ecd12b}
.board-top>.handwritten{font-size:clamp(24px,2.5vw,36px);color:#eef1d9}
.board-top>span:last-child{color:#c3d1bb;white-space:nowrap}
.blackboard svg text{fill:#f0edda}
.blackboard figcaption{position:relative;display:table;padding-bottom:7px;color:#f4d78f}
.blackboard figcaption::after{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:2px solid #e6cc8baa;transform:scaleX(var(--ink,1)) rotate(-1deg);transform-origin:left}
.board-footnote{color:#cfdbc9}
.chalk-tray{position:absolute;left:-13px;right:-13px;bottom:-19px;height:13px;background:linear-gradient(#9c7e58,#4c3927);box-shadow:0 5px 6px #0005}
.chalk-tray i{position:absolute;bottom:12px;left:8%;width:35px;height:6px;border-radius:2px;background:#e3e8d6;transform:rotate(-3deg);box-shadow:0 1px 2px #0007}
.chalk-tray i+i{left:17%;width:26px;background:#e9cd8b;transform:rotate(2deg)}
.chalk-tray span{position:absolute;right:8%;bottom:12px;width:62px;height:18px;background:linear-gradient(#9b8665 40%,#c1b498 42%,#666851);border-radius:2px;transform:rotate(-2deg)}
/* Light comes up before the visual begins to explain a detail. */
.js .exposure>img,.js .exposure>svg,.js .exposure .cmb-crop,.js .comparison-images{filter:brightness(var(--image-light,1))}
.exposure[data-exposure="1"]>img{transform:scale(calc(1 + .07 * var(--focus,0)));transform-origin:50% 45%}
.ink{background:linear-gradient(transparent calc(100% - 2px),#d8b67c 0) left bottom / 0% 100% no-repeat;transition:background-size .5s}
.is-reading .ink{background-size:100% 100%}
.observation-note{font-family:'Bradley Hand','Segoe Print',cursive!important;color:var(--gold)!important;line-height:1.35!important;font-size:27px!important;transform:rotate(-2deg)}
.observation-note .source-ref{display:block;transform:rotate(2deg);margin-top:16px}
.comparison-images{position:relative;max-width:100%;width:min(100%,58svh);aspect-ratio:1277/1230;align-self:center;flex-shrink:0}
.comparison-images img{width:100%;height:100%;object-fit:contain}
.comparison-infrared{position:absolute;inset:0;opacity:var(--focus,1)}
.comparison-label{position:relative;min-height:2em}
.comparison-label b{font-weight:400;display:block}
.comparison-label b:first-child{opacity:calc(1 - var(--focus,1))}
.comparison-label b:last-child{position:absolute;inset:0;opacity:var(--focus,1)}
.exposure-comparison figcaption{padding-top:13px}
@media(max-width:1050px) and (min-width:701px){.board-top{align-items:flex-start}.board-top>.handwritten{font-size:24px}.board-top>span:last-child{font-size:8px;padding-top:7px}}
@media(max-width:700px){
 .solar-sun{left:19%;width:112px}.solar-earth,.solar-path{top:65%}.solar-path{left:calc(19% + 56px);right:16%}.solar-label-sun{left:19%;top:calc(65% + 70px)}.solar-label-earth{top:calc(65% + 54px)}.solar-clock{top:calc(65% - 78px)}.solar-model-note{top:83%}
 .blackboard{border-width:7px;padding:12px 12px 19px}.board-top{gap:7px;padding:0 0 10px}.board-top>.handwritten{font-size:22px}.board-top>span:last-child{font-size:7px}.blackboard svg{max-height:27svh}.blackboard figcaption{font-size:23px}.blackboard .board-footnote{font-size:11px}
 .comparison-images{width:auto;height:32svh;max-width:100%}.exposure-comparison figcaption{width:100%;padding-top:8px}.comparison-label{min-height:1.8em}.observation-note{font-size:25px!important}
}
@media(max-height:650px) and (max-width:700px){.blackboard svg{max-height:none}.comparison-images{height:27svh}}
.reduced-motion .earthrise,.reduced-motion .exposure>img{transform:none!important;will-change:auto}
.reduced-motion .ink{transition:none;background-size:100% 100%}
@media(prefers-reduced-motion:reduce){.exposure[data-exposure="1"]>img{transform:none}}
.hero-bottom{opacity:var(--hero-opacity,1)}
@media(max-height:800px) and (min-width:701px){.solar-journey{padding-top:48px}.solar-question h2{font-size:64px;margin-bottom:20px}.solar-question>p:last-child{font-size:18px}}
@media(max-height:650px) and (max-width:700px){.solar-journey{padding-top:35px}.solar-question h2{font-size:48px;margin-block:16px}.solar-question>p:last-child{font-size:17px}}
@media(min-width:701px) and (max-height:800px){.blackboard{top:6svh}.blackboard svg{max-height:49svh}}
.field-window{position:relative;aspect-ratio:1;overflow:hidden;width:min(100%,63svh);align-self:center;flex-shrink:0}
.field-window img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1 + .45 * var(--focus,0)));transform-origin:50% 45%}
.js .field-window{filter:brightness(var(--image-light,1))}
.comparison-images{overflow:hidden}
/* Crop the top 120 px of both 1277 × 1350 originals at their native proportions. */
.comparison-images img{position:absolute;top:-9.7561%;left:0;width:100%;height:109.7561%;object-fit:fill}
.comparison-label b:first-child{opacity:1}.comparison-label b:last-child{opacity:0}
.infrared-visible .comparison-label b:first-child{opacity:0}.infrared-visible .comparison-label b:last-child{opacity:1}
.reduced-motion .field-window img{transform:none}
@media(prefers-reduced-motion:reduce){.field-window img{transform:none}}
@media(max-width:700px){.field-window{height:34svh;width:auto;max-width:100%}}
@media(max-width:700px) and (max-height:650px){.field-window{height:29svh}}
@media(max-width:700px){.js .solar-question{opacity:var(--question-opacity,0)}}
html:not(.js) .comparison-images{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%;aspect-ratio:auto;overflow:visible}
html:not(.js) .comparison-images img{position:static;height:auto;opacity:1}
html:not(.js) .comparison-label b{position:static;opacity:1}

/* Keep keyboard destinations and focused links visible during the opening fade. */
.hero-copy:focus-within,.hero-bottom:focus-within{opacity:1}
.solar-journey:focus{outline:none}
.solar-journey:focus-visible .solar-question{opacity:1;outline:2px solid var(--gold);outline-offset:10px}

/* October: transformations run across the whole reading interval. */
.js .field-window img{transform:scale(calc(1 + .95 * var(--focus,0)));transform-origin:61% 43%;will-change:transform}
.wave-reference{stroke:#8ba6bc;stroke-dasharray:4 8;opacity:.48}
.wave-stretch{stroke:#edc48b;stroke-width:3!important}
.wave-measure{stroke:#edc48b}
.exposure svg .wave-label{font-size:18px;letter-spacing:0}
.comparison-infrared{opacity:1;clip-path:inset(0 calc(100% - var(--focus,1) * 100%) 0 0)}
.comparison-divider{position:absolute;top:0;bottom:0;left:calc(var(--focus,1) * 100%);width:1px;background:#fff0ca;box-shadow:0 0 8px #000;opacity:calc(4 * var(--focus,1) * (1 - var(--focus,1)))}
.comparison-tag{position:absolute;top:12px;color:#fff3df;font:10px/1.3 var(--mono);text-shadow:0 1px 5px #000,0 0 10px #000;z-index:1}
.comparison-tag-hubble{right:12px;opacity:clamp(0,calc(5 - 6 * var(--focus,0)),1)}
.comparison-tag-webb{left:12px;opacity:clamp(0,calc(5 * var(--focus,0) - .6),1)}
.js .horizon-other{opacity:var(--focus,0)}
html:not(.js) .comparison-tag,html:not(.js) .comparison-divider{display:none}
html:not(.js) .comparison-infrared{clip-path:none}
.reduced-motion .field-window img{transform:none;will-change:auto}
@media(prefers-reduced-motion:reduce){.js .field-window img{transform:none;will-change:auto}}
@media(max-width:700px){
 .js .episodes{clip-path:inset(var(--reading-cut,0px) 0 0)}
 .episode a{scroll-margin-top:50svh;scroll-margin-bottom:15svh}
 .js .exposure figcaption{letter-spacing:.03em}
 .comparison-tag{font-size:9px;top:8px}
}

/* The final question grows from one mounted transit and spectrum diagram. */
.ending-life{padding-bottom:0;overflow:visible}
.ending-intro{max-width:720px;margin-bottom:65px}
.ending-intro>p:last-child{font:clamp(25px,3vw,40px)/1.4 var(--serif);margin-top:25px}
.life-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:7vw;align-items:start}
.life-visual{position:sticky;top:12svh;min-width:0}
.life-visual svg{max-height:70svh}
.life-visual svg text{font:15px var(--mono);letter-spacing:.06em;fill:#bbc5cc}
.life-visual figcaption{font:10px/1.7 var(--mono);color:#9da9b6;max-width:480px}
.life-atmosphere{fill:#9ab2c117;stroke:#bcd3df;stroke-width:2}
.life-planet{fill:#101922;stroke:#596975;stroke-width:1}
.life-telescope,.life-band-callout,.life-direction{fill:none;stroke:#b8c3ca;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.life-light{fill:none;stroke:#f0ddab;stroke-width:2}
.life-absorption{fill:#222832}
.life-step{min-height:82svh;display:flex;flex-direction:column;justify-content:center;padding:60px 0;min-width:0}
.life-step h2,.life-step h3{font-size:clamp(35px,4vw,65px);margin-bottom:28px}
.life-step p{font-size:clamp(18px,1.65vw,22px);line-height:1.75;color:#bfc7d0}
.life-question h3{font-size:clamp(42px,4.3vw,70px);margin-top:45px;margin-bottom:0}
.js .life-light{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--life-travel,0))}
.js .life-spectrum{opacity:var(--life-spectrum,0)}
@media(max-width:1050px) and (min-width:701px){.life-story{gap:35px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.life-step h2,.life-step h3{font-size:42px}.life-question h3{font-size:46px}}
@media(max-width:700px){
 .ending-life{padding-top:80px}.ending-intro{margin-bottom:35px}
 .life-story{display:block}.life-visual{position:relative;top:auto;margin-inline:-10px}
 .life-visual svg{max-height:none}.life-visual figcaption{padding-inline:10px}
 .life-visual svg text{font-size:18px;letter-spacing:0}
 .life-step{min-height:0;padding:45px 0 0}.life-step h2,.life-step h3{font-size:42px;margin-bottom:23px}.life-step p{font-size:18px}
 .life-question{padding-bottom:80px}.life-question h3{font-size:clamp(43px,11vw,64px);margin-top:35px}
 .js .life-light{stroke-dashoffset:0}.js .life-spectrum{opacity:1}
}
@media print{.life-visual{position:relative;top:auto}.life-story{display:block}.life-step{min-height:0}.js .life-spectrum{opacity:1}.js .life-light{stroke-dashoffset:0}.js .episodes{clip-path:none}}
@media(max-width:700px){
 .life-visual svg text{font-size:32px}
 .exposure-waves svg text,.exposure-waves svg .wave-label,.exposure-horizon svg text{font-size:28px}
}

@media(max-width:700px) and (max-height:650px){
 .exposure-waves svg text,.exposure-waves svg .wave-label,.exposure-horizon svg text{font-size:40px;letter-spacing:0}
}
@media(min-width:701px) and (max-width:1050px){
 .life-visual svg text{font-size:32px;letter-spacing:0}
 .exposure-waves svg text,.exposure-waves svg .wave-label,.exposure-horizon svg text{font-size:28px;letter-spacing:0}
}

/* Source notes stay compact until their heading or an in-story citation is opened. */
.sources-list{align-items:start;gap:20px 70px}
.sources-list li{padding-top:0;min-width:0}
.sources-list summary{position:relative;cursor:pointer;list-style:none;min-height:64px;padding:20px 32px 20px 0}
.sources-list summary::-webkit-details-marker{display:none}
.sources-list summary::after{content:'+';position:absolute;right:2px;top:22px;color:var(--gold);font:22px/1 var(--mono)}
.sources-list details[open]>summary::after{content:'−'}
.sources-list summary h3{margin:0}
.sources-list summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.sources-list summary:hover h3{color:var(--gold)}
.source-content{padding-bottom:20px}
.source-content p+p{margin-top:15px}
@media(max-width:700px){.sources-list{gap:8px}}
@media print{.sources-list summary{padding-right:0}.sources-list summary::after{display:none}}
