@font-face{font-family:Cormorant;src:url('/abu-simbel/assets/fonts/Cormorant.woff2?v=09515caf462f') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:Plex;src:url('/abu-simbel/assets/fonts/IBMPlexSans-latin-ext.woff2?v=ae1d854fefa1') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Plex;src:url('/abu-simbel/assets/fonts/IBMPlexSans-latin.woff2?v=056e4e2459f5') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{color-scheme:light;--bg:#e6ece9;--surface:#f1f5f2;--text:#12343b;--muted:#294951;--accent:#594022;--line:#a6b8b5;--stage:#d6e2de;--rock:#b4c7be;--room:#f1f5f2;--stone:#466b6b;--water:#8bb9bc;--shell:#2e5861;--sun-rock:#173b43;--sun-label:#12343b;--focus:#743506;--bar:#e6ece9;--hero-ink:#fff5e2;--hero-bg:#071d25;--hero-muted:#e8d9be;--header:3.5rem;--display:Cormorant,Georgia,serif;--body:Plex,Arial,sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#092d35;--surface:#10363e;--text:#f6efdf;--muted:#c5d6d3;--accent:#e8c086;--line:#50757b;--stage:#071f27;--rock:#31535b;--room:#0d2c35;--stone:#bed0c4;--water:#216271;--shell:#b8c9c9;--sun-rock:#71877b;--sun-label:#f6efdf;--focus:#ffda9e;--bar:#092d35}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#092d35;--surface:#10363e;--text:#f6efdf;--muted:#c5d6d3;--accent:#e8c086;--line:#50757b;--stage:#071f27;--rock:#31535b;--room:#0d2c35;--stone:#bed0c4;--water:#216271;--shell:#b8c9c9;--sun-rock:#71877b;--sun-label:#f6efdf;--focus:#ffda9e;--bar:#092d35}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 1rem)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.2em}button,input{font:inherit;color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button{background:none;border:1px solid var(--line);padding:.6rem 1rem}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button:hover{background:var(--surface)}[hidden],svg[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:500;line-height:1.03;letter-spacing:-.035em}h2{font-size:3.1rem}h3{font-size:1.0625rem;font-weight:600;line-height:1.4}p+p{margin-top:1.1em}img{display:block;max-width:100%;height:auto}svg{display:block}section[id]{scroll-margin-top:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;line-height:1.5;font-weight:600;color:var(--accent)}.ref{font-size:.75em;color:var(--accent);text-decoration:none;display:inline-block;padding:.1rem .2rem}.skip{position:fixed;top:-10rem;left:1rem;z-index:100;background:var(--surface);padding:1rem}.skip:focus{top:.5rem}
.topbar{position:fixed;inset:0 0 auto;height:var(--header);z-index:40;display:flex;align-items:center;justify-content:space-between;padding:0 2.75rem;background:var(--bar);border-bottom:1px solid var(--line);font-size:.75rem;line-height:1.2;gap:1rem}.home{text-decoration:none;white-space:nowrap;font-weight:500}.home-dot{opacity:.55;margin:0 .5rem}.home-sub{font-weight:400}.topbar nav{display:flex;gap:1.7rem}.topbar nav a{display:flex;align-items:center;min-height:44px;text-decoration:none}.topbar nav a:hover{text-decoration:underline}.top-actions{display:flex;align-items:center;gap:.85rem}.language{display:flex;align-items:center;min-height:44px;text-decoration:none}.theme-button{border:0;padding:12px;display:grid;place-items:center;width:44px;height:44px;flex:none}.theme-button svg{fill:none;stroke:currentColor;stroke-width:1.5}.theme-button .sun{display:none}:root[data-theme=dark] .theme-button .sun{display:block}:root[data-theme=dark] .theme-button .moon{display:none}.progress{position:absolute;bottom:-1px;left:0;transform-origin:left;background:var(--accent);height:2px;width:100%;transform:scaleX(0)}
.hero{position:relative;min-height:calc(100svh - var(--header));margin-top:var(--header);background:var(--hero-bg);color:var(--hero-ink);overflow:hidden}.hero-photo{position:absolute;inset:0}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,29,37,.04) 20%,rgba(7,29,37,.1) 37%,rgba(7,29,37,.82) 68%,var(--hero-bg) 100%)}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 39%}.hero-photo figcaption{position:absolute;top:1rem;right:2.8rem;z-index:1;font-size:.625rem;line-height:1.5;background:var(--hero-bg);color:var(--hero-muted);padding:.3rem .55rem}.hero-content{position:relative;z-index:2;padding:15rem 6.25rem 2.5rem;min-height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:flex-end}.hero .eyebrow{color:var(--hero-muted);margin-bottom:.9rem}.hero h1{font-size:8.75rem;letter-spacing:-.045em;line-height:.85}.hero h1 span{display:block;font-size:3rem;line-height:1.12;letter-spacing:-.02em;margin-top:1.2rem;max-width:45rem}.hero-deck{max-width:35rem;font-size:1rem;line-height:1.6;margin-top:1.35rem;color:var(--hero-muted)}.hero-bottom{display:flex;align-items:center;gap:3rem;margin-top:2rem;font-size:.75rem}.hero-bottom a{display:inline-flex;align-items:center;gap:1.5rem;min-height:44px;text-decoration:none}.hero-bottom .begin{border-bottom:1px solid var(--hero-muted)}.hero-bottom .begin span{font-size:1.5rem}.hero-bottom a:hover{text-decoration:underline}.view-alone{color:var(--hero-muted)}
.intro{max-width:1280px;margin:auto;padding:7rem 5rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem 5rem}.intro-heading h2{margin-top:1rem;max-width:30rem}.intro-copy{padding-top:2rem;max-width:34rem}.large-copy{font-family:var(--display);font-size:1.85rem;line-height:1.3}.intro-copy>p+ p{color:var(--muted);font-size:1rem}.distance-summary{grid-column:1/-1;display:flex;gap:4.5rem;align-items:center;margin-top:2rem;padding:2.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.distance-summary>div{display:flex;flex-direction:column}.distance-summary strong{font-family:var(--display);font-weight:500;font-size:4.3rem;line-height:1}.distance-summary strong span{font-size:2.5rem}.distance-summary>div>span{font-size:.8rem;color:var(--muted);margin-top:.6rem}.distance-summary p{max-width:20rem;font-size:.875rem;color:var(--muted);margin-left:auto}.share-line{grid-column:1/-1;display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;font-size:.75rem}.share-line button{padding:.4rem 0;min-height:44px;border:0}.share-line [data-status]{color:var(--muted)}
.scroll-story{max-width:1700px;margin:auto;border-top:1px solid var(--line)}.sticky-stage{display:none}.step{max-width:1100px;margin:auto;padding:4rem}.step-copy{max-width:36rem}.step h2{margin-top:.8rem;margin-bottom:1.5rem;font-size:3.2rem}.step h2 a{text-decoration:none}.step p:not(.eyebrow){font-size:1rem;line-height:1.75}.step p+p{color:var(--muted)}.static-figure{margin-top:2rem}.static-figure img{max-height:80vh;margin:auto}.static-figure figcaption,.static-note{font-size:.8rem;line-height:1.5;margin-top:1rem;color:var(--muted)}
.enhanced .scroll-story{display:grid;grid-template-columns:38% 62%;position:relative}.enhanced .sticky-stage{display:block;position:sticky;top:var(--header);height:calc(100svh - var(--header));grid-column:2;grid-row:1;z-index:3;min-width:0;background:var(--stage)}.enhanced .story-steps{grid-column:1;grid-row:1;min-width:0}.enhanced .step{min-height:100svh;display:flex;align-items:center;position:relative;padding:5rem 3.5rem 5rem 4.75rem}.enhanced .step h2{font-size:2.7rem}.enhanced .step-copy{transition:opacity .25s}.enhanced .step:not(.active) .step-copy{opacity:.48}.enhanced .static-figure,.enhanced .static-note{display:none}.stage{position:relative;height:100%;overflow:hidden;background:var(--stage);isolation:isolate}.stage-view{position:absolute;inset:4.2rem 1.5rem 6.8rem;opacity:0;visibility:hidden;transition:opacity .5s,visibility .5s}.stage-view.active{opacity:1;visibility:visible}.stage-view img{height:100%;width:100%;object-fit:contain}.stage-meter{position:absolute;top:1.4rem;left:2.2rem;right:2.2rem;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.07em;color:var(--muted)}.stage-meter [data-stage-date]{color:var(--accent)}.stage>figcaption{position:absolute;bottom:1.5rem;left:2.2rem;right:3.5rem;font-size:.8125rem;line-height:1.45;color:var(--text)}.stage>figcaption small{font-size:.625rem;line-height:1.5;display:block;color:var(--muted);margin-top:.5rem}.stage-view svg{width:100%;height:100%}.section-view{inset:5.5rem 0 6rem}.sun-view{inset:5.5rem .5rem 6rem}
.relocation-svg{--lift:0;--retreat:0;overflow:visible}.terrain{fill:var(--rock)}.hatch{fill:none;stroke:var(--stone);stroke-width:.6;opacity:.3}.temple-rock{fill:var(--rock);stroke:var(--stone);stroke-width:1.8}.room{fill:var(--room);stroke:var(--stone);stroke-width:1.5}.stone-edge{fill:none;stroke:var(--stone);stroke-width:2}.statue-profile{fill:var(--stone)}.old-ghost{fill:none;stroke:var(--shell);stroke-width:1.5;stroke-dasharray:5 6;opacity:0}.lake{fill:var(--water);opacity:.88}.lake-line{fill:none;stroke:var(--shell);stroke-width:2}.water-ripple{fill:none;stroke:var(--shell);stroke-width:1;opacity:.5}.lake-layer{opacity:0;transition:opacity .4s}.moving-temple{transform:translate(850px,505px);opacity:0}.new-temple{opacity:0}.move-path{fill:none;stroke:var(--shell);stroke-width:1.5;stroke-dasharray:5 8;opacity:0}.new-hill{opacity:0}.hill-fill{fill:var(--rock);fill-opacity:.7}.hill-hatch{fill:none;stroke:var(--stone);stroke-width:1.5}.dome-shell{fill:none;stroke:var(--shell);stroke-width:8}.dome-inner{fill:none;stroke:var(--stone);stroke-width:1}.measure-lines{fill:none;stroke:var(--text);stroke-width:1;opacity:0}.measure-lines text{stroke:none;fill:var(--text);font:26px var(--body)}.section-labels{fill:var(--text);font:22px var(--body);opacity:0}.section-labels text:first-child{opacity:0}.stage[data-scene=water] .lake-layer{opacity:1}.stage[data-scene=section] .old-temple{opacity:0}.stage[data-scene=section] .old-ghost,.stage[data-scene=section] .move-path,.stage[data-scene=section] .measure-lines,.stage[data-scene=section] .section-labels{opacity:1}.stage[data-scene=section] .new-temple,.stage[data-scene=section] .new-hill,.stage[data-scene=section] .section-labels text:first-child{opacity:1}.stage[data-scene=section] .lake-layer{opacity:.35}.stage[data-scene=section] .hill-fill{fill-opacity:.35}
.sun-rock{fill:var(--sun-rock)}.plan-pillars,.plan-statues{fill:var(--sun-rock)}.sun-axis{fill:none;stroke:var(--accent);stroke-width:1;stroke-dasharray:6 6}.sun-disc{fill:var(--accent)}.sun-labels{fill:var(--sun-label);font:25px var(--body)}.plan-measure{fill:none;stroke:var(--text);stroke-width:1.3}.sun-beam{transform-origin:0 320px}.sun-view{background:var(--stage)}
.solar-detail{max-width:1280px;margin:auto;padding:7rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem}.solar-title h2{font-size:3rem;margin:1rem 0 1.5rem}.solar-title>p:last-child{font-size:1rem;color:var(--muted)}.calendar{padding-top:2.5rem}.calendar>p{font-size:.875rem;color:var(--muted);margin-top:1rem}.calendar-row{margin-top:2rem}.calendar-row>span{font-size:.8rem}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem;margin-top:.75rem}.day{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);font-size:.875rem;color:var(--muted)}.day.lit{background:var(--text);color:var(--bg);border-color:var(--text)}.day.festival{outline:2px solid var(--accent);outline-offset:3px}.calendar-key{display:flex;gap:2rem;margin-top:1.6rem;font-size:.625rem;color:var(--muted);flex-wrap:wrap}.calendar-key span{display:flex;align-items:center;gap:.5rem}.calendar-key span:before{content:'';display:inline-block;width:12px;height:12px;background:var(--text)}.calendar-key .festival-key:before{background:none;border:2px solid var(--accent)}
.explore{background:var(--stage);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:5rem 5rem 4rem}.explore-head{max-width:1100px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:.8rem 5rem}.explore-head .eyebrow{grid-column:1/-1}.explore-head h2{font-size:3rem}.explore-head p:last-child{font-size:.9375rem;color:var(--muted)}.explorer-figure{max-width:1040px;margin:1rem auto 0}.explorer-figure svg{width:100%;height:auto;max-height:570px}.explorer-figure figcaption{font-size:.75rem;text-align:center;color:var(--muted);margin-top:.6rem}.explore-controls{max-width:700px;margin:2rem auto 0}.explore-buttons{display:flex;align-items:center;gap:.75rem;font-size:.8rem}.explore-buttons button{min-height:44px}.explore-buttons output{margin-left:auto;color:var(--accent);font-weight:500}.explore-controls input[type=range]{accent-color:var(--accent);width:100%;height:44px;cursor:pointer;margin:.6rem 0 0}.range-labels{display:flex;justify-content:space-between;font-size:.6875rem;color:var(--muted)}.explore-controls>p{font-size:.875rem;text-align:center;min-height:3em;margin-top:1.5rem}.explorer-figure .old-temple{opacity:1}.explorer-figure[data-explore-state='1'] .old-temple{opacity:.6}.explorer-figure[data-explore-state='2'] .old-temple,.explorer-figure[data-explore-state='3'] .old-temple,.explorer-figure[data-explore-state='4'] .old-temple{opacity:0}.explorer-figure[data-explore-state='2'] .moving-temple{opacity:1;transform:translate(589px,423.4375px)}.explorer-figure[data-explore-state='2'] .move-path,.explorer-figure[data-explore-state='2'] .old-ghost{opacity:1}.explorer-figure[data-explore-state='3'] .new-hill,.explorer-figure[data-explore-state='3'] .new-temple,.explorer-figure[data-explore-state='4'] .new-hill,.explorer-figure[data-explore-state='4'] .new-temple{opacity:1}.explorer-figure[data-explore-state='3'] .hill-fill{fill-opacity:0}.explorer-figure[data-explore-state='3'] .hill-hatch{opacity:0}.explorer-figure[data-explore-state='4'] .measure-lines,.explorer-figure[data-explore-state='4'] .section-labels,.explorer-figure[data-explore-state='4'] .section-labels text:first-child,.explorer-figure[data-explore-state='4'] .old-ghost{opacity:1}.explorer-figure[data-explore-state='4'] .lake-layer{opacity:.35}
.ending{max-width:1280px;margin:auto;padding:7rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem}.ending h2{font-size:3.2rem;margin-top:1rem}.ending-copy{padding-top:2rem;font-size:1rem;color:var(--muted)}.closing-photo{max-width:1600px;margin:auto}.closing-photo img{width:100%;height:auto}.closing-photo figcaption{padding:1rem 5rem;font-size:.75rem;line-height:1.5;color:var(--muted)}.sources{max-width:1280px;margin:auto;padding:5rem 5rem 4rem}.sources h2{font-size:2.7rem}.sources h2 a{text-decoration:none}.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;margin-top:3rem;font-size:.875rem;line-height:1.6}.source-grid h3{margin-bottom:1rem}.source-grid ol{margin:0;padding-left:1.5rem}.source-grid li{padding:0 0 1.2rem .2rem;scroll-margin-top:5rem}.source-grid p{color:var(--muted)}.source-grid p+h3{margin-top:2.3rem}.photo-credits{list-style:none;padding:0}.photo-credits li{font-size:.75rem;line-height:1.6;padding:0 0 1rem}footer{border-top:1px solid var(--line);padding:2rem 3rem;display:flex;gap:2rem;align-items:center;justify-content:space-between;font-size:.6875rem;color:var(--muted)}
.rail{display:none}.to-top{position:fixed;right:1rem;bottom:1rem;z-index:25;width:50px;height:50px;border-radius:50%;padding:3px;background:var(--surface);color:var(--text);border:1px solid var(--line);font-size:1.1rem;line-height:1}.to-top span{display:block;font-size:.55rem;margin-top:4px}.copy-field{position:fixed;bottom:5rem;right:1rem;background:var(--surface);color:var(--text);z-index:50;max-width:calc(100% - 2rem);width:500px;padding:1rem;border:1px solid var(--line)}
@media(min-width:1350px){.rail{display:flex;position:fixed;right:.7rem;top:50%;transform:translateY(-50%);flex-direction:column;gap:0;align-items:flex-end;z-index:20;padding:.4rem;background:var(--bar);border:1px solid var(--line);border-radius:20px}.rail-dot{display:flex;position:relative;align-items:center;justify-content:flex-end;height:27px;width:20px;text-decoration:none}.dot{display:block;width:5px;height:5px;border:1px solid var(--muted);border-radius:50%}.rail-dot[aria-current=true] .dot{background:var(--text);width:7px;height:7px;border-color:var(--text)}.rail-label{position:absolute;right:27px;top:50%;transform:translateY(-50%);white-space:nowrap;padding:.4rem .7rem;border:1px solid var(--line);background:var(--bar);font-size:.6875rem;opacity:0;pointer-events:none}.rail-dot:hover .rail-label,.rail-dot:focus-visible .rail-label{opacity:1}}
@media(min-width:1700px){.hero-content{padding-left:max(6rem,calc((100% - 1400px)/2))}.hero h1{font-size:10rem}.enhanced .step{padding-left:5rem;padding-right:4rem}}
@media(max-width:1100px){.topbar{padding:0 1.5rem}.home-sub,.home-dot{display:none}.hero-content{padding-left:4rem;padding-right:4rem}.hero h1{font-size:7.3rem}.hero h1 span{font-size:2.7rem}.intro,.solar-detail,.ending,.sources{padding-left:3rem;padding-right:3rem;column-gap:3rem}.enhanced .scroll-story{grid-template-columns:40% 60%}.enhanced .step{padding-left:2.5rem;padding-right:2rem}.enhanced .step h2{font-size:2.4rem}.enhanced .step p:not(.eyebrow){font-size:.9375rem}.stage>figcaption{left:1.5rem;right:1.5rem}.explore{padding-left:3rem;padding-right:3rem}.distance-summary{gap:3rem}.distance-summary strong{font-size:3.7rem}}
@media(max-width:760px){:root{--header:3.25rem}body{font-size:1rem}.topbar{padding:0 1rem}.topbar nav{display:none}.home{font-size:.6875rem}.top-actions{gap:.5rem}.hero{min-height:0}.hero-photo{position:relative;height:auto;padding-bottom:0}.hero-photo img{width:100%;height:auto;min-height:0;object-fit:contain}.hero-photo:after{background:linear-gradient(180deg,transparent 65%,var(--hero-bg) 100%)}.hero-photo figcaption{top:.5rem;right:.5rem;font-size:.5rem;max-width:92%;padding:.2rem .4rem}.hero-content{margin-top:-1rem;padding:0 1.5rem 2.5rem;min-height:0;display:block}.hero .eyebrow{font-size:.625rem;margin-bottom:1rem}.hero h1{font-size:4.7rem;line-height:.9}.hero h1 span{font-size:2.05rem;margin-top:1rem;max-width:22rem;line-height:1.05}.hero-deck{font-size:.875rem;line-height:1.6;margin-top:1.1rem;max-width:32rem}.hero-bottom{gap:1.5rem;margin-top:1.3rem;flex-wrap:wrap;font-size:.6875rem}.hero-bottom a{gap:1rem}.intro{display:block;padding:3.5rem 1.5rem 2.5rem}.intro h2{font-size:2.75rem;max-width:25rem}.intro-copy{padding-top:1.7rem}.large-copy{font-size:1.65rem}.intro-copy>p+p{font-size:.9375rem}.distance-summary{gap:2rem;flex-wrap:wrap;margin:2rem 0 1rem;padding:1.5rem 0}.distance-summary strong{font-size:3.5rem}.distance-summary strong span{font-size:1.8rem}.distance-summary p{margin:0;max-width:100%;flex-basis:100%;font-size:.8125rem}.share-line{gap:1.3rem;font-size:.6875rem}.enhanced .scroll-story{display:block}.enhanced .sticky-stage{height:36svh;max-height:320px;min-height:205px;top:var(--header);position:sticky;width:100%;z-index:5}.enhanced .story-steps{margin-top:calc(-36svh);position:relative}.enhanced .step{min-height:100svh;display:flex;align-items:flex-end;padding:calc(36svh + 4.5rem) 1.5rem 4rem;margin:0;scroll-margin-top:calc(36svh + 1rem)}.enhanced .step h2{font-size:2.45rem;margin-bottom:1.1rem;max-width:27rem}.enhanced .step p:not(.eyebrow){font-size:.9375rem;line-height:1.65}.enhanced .step:not(.active) .step-copy{opacity:.7}.stage-view{inset:2rem .75rem 3.9rem}.stage-meter{top:.6rem;left:1rem;right:1rem;font-size:.625rem}.stage>figcaption{bottom:.5rem;left:1rem;right:1rem;font-size:.625rem;line-height:1.35}.stage>figcaption>span{display:block;white-space:normal;max-width:100%;line-height:1.35}.stage>figcaption small{font-size:.5rem;margin-top:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section-view,.sun-view{inset:1.6rem .5rem 3.7rem}.section-view svg{max-width:580px;margin:auto}.section-labels{font-size:26px}.sun-labels{font-size:27px}.step{padding:3rem 1.5rem}.step h2{font-size:2.5rem}.solar-detail{display:block;padding:3.5rem 1.5rem}.solar-title h2{font-size:2.5rem}.solar-title>p:last-child{font-size:.9375rem}.calendar{padding-top:2.5rem;max-width:32rem}.calendar-key{gap:1rem}.explore{padding:3.5rem 1.5rem 2.5rem}.explore-head{display:block}.explore-head h2{font-size:2.5rem;margin:1rem 0 1.5rem}.explore-head p:last-child{font-size:.9375rem}.explorer-figure{margin-top:2rem}.explorer-figure figcaption{font-size:.625rem}.explore-controls{margin-top:1.5rem}.explore-buttons{flex-wrap:wrap;gap:.5rem}.explore-buttons button{padding:.5rem .7rem;font-size:.75rem}.explore-buttons output{flex-basis:100%;margin:0;padding-top:.8rem;font-size:.8125rem}.explore-controls>p{font-size:.8125rem;min-height:4em}.ending{display:block;padding:3.5rem 1.5rem}.ending h2{font-size:2.7rem;max-width:30rem}.ending-copy{padding-top:1.5rem;font-size:.9375rem}.closing-photo figcaption{padding:.8rem 1.5rem;font-size:.625rem}.sources{padding:3.5rem 1.5rem 2.5rem}.sources h2{font-size:2.5rem}.source-grid{display:block;margin-top:2rem}.source-grid>div+div{margin-top:2.5rem}footer{padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:1rem;font-size:.625rem}.to-top{right:.6rem;bottom:calc(.6rem + env(safe-area-inset-bottom));width:44px;height:44px}.to-top span{font-size:.5rem}.rail{display:none}}
@media(max-width:370px){.hero h1{font-size:4rem}.hero h1 span{font-size:1.8rem}.hero-content{padding-left:1.25rem;padding-right:1.25rem}.hero-bottom{display:block}.hero-bottom a{display:flex;width:fit-content}.hero-deck{font-size:.875rem}.enhanced .step{padding-left:1.25rem;padding-right:1.25rem}.enhanced .step h2{font-size:2.2rem}.hero-content .view-alone{margin-top:.3rem}}
@media(max-width:760px) and (max-height:700px){.enhanced .sticky-stage{height:32svh;min-height:185px}.enhanced .story-steps{margin-top:calc(-32svh)}.enhanced .step{padding-top:calc(32svh + 4rem);scroll-margin-top:calc(32svh + 1rem)}.stage>figcaption{font-size:.5625rem}.stage-view{bottom:3.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.enhanced .step:not(.active) .step-copy{opacity:1}}
@media print{.topbar,.rail,.share-line,.to-top,.explore,.hero-bottom{display:none!important}.hero{margin-top:0;min-height:0}.hero-photo{position:relative}.hero-photo img{height:auto}.hero-content{min-height:0;padding:2rem;color:var(--text)}.hero h1{font-size:4rem}.hero h1 span{font-size:2rem}.hero-deck{color:var(--text)}.enhanced .scroll-story{display:block}.enhanced .sticky-stage{display:none}.enhanced .step{display:block;min-height:0;padding:2rem}.enhanced .step-copy{opacity:1!important}.enhanced .static-figure,.enhanced .static-note{display:block}.intro,.solar-detail,.ending,.sources{padding:2rem;display:block}.source-grid{display:block}.static-figure img{max-height:18cm}.hero-photo:after{display:none}}

html:not(.enhanced) .explore,html:not(.enhanced) .view-alone,html:not(.enhanced) .share-line{display:none}

/* Keep the phone reading area directly below the pinned image. */
.stage-view{transition:none}
@media(max-width:760px){.enhanced .story-steps{margin-top:0}.enhanced .step{display:block;min-height:85svh;padding:3rem 1.5rem 5rem}.measure-lines text{font-size:38px}.section-labels{font-size:32px}.sun-labels{font-size:34px}}
@media(max-width:760px) and (max-height:700px){.enhanced .step{padding-top:2.5rem;padding-bottom:4rem}}
/* At high zoom or in a very short window, read the photographs in the text flow. */
@media(max-height:500px){.enhanced .scroll-story{display:block}.enhanced .sticky-stage{display:none}.enhanced .story-steps{margin-top:0}.enhanced .step{display:block;min-height:0;padding:3rem 1.5rem;scroll-margin-top:1rem}.enhanced .step-copy{opacity:1!important}.enhanced .static-figure,.enhanced .static-note{display:block}.static-figure img{max-height:none}.rail{display:none}}

.hero .eyebrow{width:fit-content;background:var(--hero-bg);padding:.25rem .5rem}

/* One WebGL context is shared by the story and the replay. */
.scene-host,.scene-heading,.explore-scene-host{display:none}
.has-three .scene-host{display:block;position:absolute;inset:0 0 3.8rem;overflow:hidden}
.rescue-canvas{display:block;width:100%;height:100%}
.has-three .scene-heading{display:flex;flex-direction:column;gap:.5rem;position:absolute;top:4.2rem;left:1.5rem;right:3rem;z-index:2;pointer-events:none}
.scene-heading>span{font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.scene-heading strong{font:500 1.125rem var(--body);color:var(--text);max-width:26rem}
.stage.has-three .stage-view{display:none}
.stage.has-three .photo-view.active:not([data-view=facade]){display:block;inset:auto 1.5rem 6.8rem auto;width:29%;height:23%;border:5px solid var(--stage);box-shadow:0 0 0 1px var(--line);z-index:2}
.stage.has-three .photo-view img{object-fit:cover}
.stage.has-three .sun-view.active{display:grid;inset:4rem 1.5rem 6.8rem}
.stage.has-three[data-scene=sun] .scene-host,.stage.has-three[data-scene=sun] .scene-heading{display:none}
.explorer-figure.has-three>.relocation-svg{display:none}
.has-three .explore-scene-host{display:block;height:570px;position:relative;overflow:hidden}
@media(max-width:760px){
 .has-three .scene-host{inset:1.65rem 0 3.15rem}
 .has-three .scene-heading{top:1.8rem;left:1rem;right:1rem;gap:.2rem}
 .scene-heading>span{font-size:.5rem;letter-spacing:.07em}
 .scene-heading strong{font-size:.65rem;max-width:100%;background:var(--stage);width:fit-content;padding:.15rem .3rem;margin-left:-.3rem}
 .stage.has-three .photo-view.active:not([data-view=facade]){display:none}
 .stage.has-three .sun-view.active{inset:1.6rem .5rem 3.7rem}
 .has-three .explore-scene-host{height:310px;margin:0 -1.5rem}
 .enhanced .step[data-scene=dismantle] .static-figure,.enhanced .step[data-scene=lift] .static-figure,.enhanced .step[data-scene=dome] .static-figure{display:block;margin-top:2rem}
 .stage.has-three>figcaption{font-size:.625rem}
 .stage.has-three>figcaption small{font-size:.5rem}
}
@media(max-height:500px){.scene-host,.scene-heading{display:none!important}.has-three .explore-scene-host{height:300px}}
@media print{.scene-host,.scene-heading,.explore-scene-host{display:none!important}}

.scene-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.scene-labels span{position:absolute;top:0;left:0;background:var(--stage);border:1px solid var(--line);padding:.3rem .5rem;font-size:.6875rem;color:var(--text);white-space:nowrap}.scene-labels span:before{content:'';display:block;width:1px;height:15px;background:var(--accent);position:absolute;bottom:100%;left:50%}@media(max-width:760px){.scene-labels span{font-size:.5rem;padding:.2rem .35rem}.scene-labels span:before{height:8px}}

.scene-heading{align-items:flex-start}.scene-heading>span,.scene-heading strong{background:var(--stage);padding:.2rem .35rem;width:fit-content}
