:root { --void:#070a0c; --panel:#11171b; --paper:#ebe6da; --ink:#171b1d; --ice:#93d8dc; --amber:#d7a75a; --line:#425159; }
* { box-sizing:border-box; }
body { min-width:320px; margin:0; color:#ecf0ee; background:#050709; font-family:Arial,Helvetica,sans-serif; }
.gw-page { width:min(1280px,calc(100% - 32px)); margin:24px auto; overflow:hidden; background:var(--void); box-shadow:0 30px 90px #000b; }
.hero { position:relative; min-height:940px; display:flex; flex-direction:column; padding:26px clamp(24px,6vw,78px) 54px; background:radial-gradient(circle at 74% 20%,#284e593b,transparent 32rem),var(--void); }
.hero nav,.gw-page footer { display:flex; justify-content:space-between; gap:20px; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; }
.hero nav a,.gw-page footer a { color:#d9ece9; }
.hero nav a,.gw-page footer a { display:inline-flex; min-height:44px; align-items:center; padding-inline:8px; margin-inline:-8px; text-underline-offset:4px; }
.hero-copy { position:relative; z-index:2; max-width:1100px; margin:108px 0 42px; }
.eyebrow,.section-label,.half>span { margin:0 0 18px; color:var(--ice); font-size:10px; font-weight:800; letter-spacing:2.1px; }
.hero h1 { max-width:1060px; margin:0; font:700 clamp(58px,8.3vw,112px)/.89 Georgia,serif; letter-spacing:-4px; }
.deck { max-width:830px; margin:30px 0 0; color:#ced7d4; font:clamp(18px,2.1vw,25px)/1.55 Georgia,serif; }
figure { margin:0; }
.hero-image { position:relative; z-index:1; width:calc(100% + clamp(48px,12vw,156px)); margin:auto calc(clamp(24px,6vw,78px) * -1) -54px; }
.hero-image img { display:block; width:100%; height:auto; border-top:1px solid #49646b; }
figcaption { padding:10px 0; color:#9eaba8; font-size:11px; line-height:1.4; }
.hero-image figcaption { padding-inline:clamp(24px,6vw,78px); }
.priority { padding:clamp(58px,8vw,100px) clamp(24px,7vw,90px); color:var(--ink); background:var(--paper); }
.priority h2,.architecture h2,.witness h2,.unknowns h2,.constraint h2,.timeline h2,.sources h2 { max-width:920px; margin:0; font:700 clamp(42px,6.2vw,78px)/.94 Georgia,serif; letter-spacing:-2px; }
.priority .section-label,.unknowns .section-label { color:#795627; }
.priority-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(26px,6vw,90px); margin:46px 0 0; }
.priority-grid p { margin:0; font:18px/1.7 Georgia,serif; }
.priority-grid a,.systems a,.unknown-grid a { font-weight:700; text-decoration-thickness:2px; text-underline-offset:3px; }
.architecture { display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(40px,7vw,100px); padding:clamp(66px,9vw,116px) clamp(24px,7vw,90px); background:linear-gradient(145deg,#0a1114,#142128); }
.architecture-intro>p:last-child { max-width:540px; color:#c3cecd; line-height:1.75; }
.systems { margin:0; padding:0; list-style:none; }
.systems li { display:grid; grid-template-columns:44px 1fr; gap:18px; padding:24px 0; border-top:1px solid var(--line); }
.systems li>span { color:var(--amber); font-size:11px; font-weight:bold; }
.systems h3 { margin:0 0 8px; font-size:24px; }
.systems p { margin:0; color:#bdc7c6; line-height:1.6; }
.turnaround { display:grid; grid-template-columns:1fr 80px 1fr; color:var(--ink); background:#d5a65b; }
.half { padding:clamp(48px,7vw,86px); }
.half>span { color:#533a17; }
.half strong { display:block; max-width:460px; font:700 clamp(30px,4vw,52px)/1 Georgia,serif; }
.half p { max-width:480px; line-height:1.65; }
.midpoint { display:grid; place-items:center; border-inline:1px solid #755425; }
.midpoint span { display:grid; width:48px; height:48px; place-items:center; border:1px solid #755425; border-radius:50%; font-weight:bold; }
.constraint { padding:clamp(58px,8vw,100px) clamp(24px,7vw,90px); color:var(--ink); background:#c7d9d6; }
.constraint .section-label { color:#4a6868; }
.constraint>p:not(.section-label) { max-width:900px; margin:30px 0 0; font:19px/1.7 Georgia,serif; }
.witness { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:clamp(40px,7vw,90px); padding:clamp(48px,7vw,92px); background:#0c1012; }
.witness img { display:block; width:100%; height:auto; border:1px solid #435158; }
.witness>div>p:not(.section-label) { color:#c3ccca; line-height:1.7; }
blockquote { margin:34px 0 0; padding:24px 0 0; border-top:1px solid var(--amber); color:#f0d5a6; font:italic 24px/1.35 Georgia,serif; }
.unknowns { padding:clamp(60px,8vw,100px) clamp(24px,7vw,90px); color:var(--ink); background:#e4dfd3; }
.unknown-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:50px; background:#877f70; border:1px solid #877f70; }
.unknown-grid article { min-height:250px; padding:28px; background:#f4f0e7; }
.unknown-grid h3 { margin:0 0 24px; font:700 25px/1 Georgia,serif; }
.unknown-grid p { margin:0; line-height:1.6; }
.timeline { padding:clamp(58px,8vw,100px) clamp(24px,7vw,90px); background:#11171b; }
.timeline-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:48px; }
.timeline article { padding:30px; border-top:7px solid #a95e4a; background:#20292e; }.timeline article.rescue { border-color:#74c2c6; }
.timeline article>span { color:#e7a48f; font-size:10px; font-weight:800; letter-spacing:2px; }.timeline article.rescue>span { color:#9bdde0; }
.timeline ol { margin:28px 0 0; padding:0; list-style:none; }.timeline li { display:grid; grid-template-columns:68px 1fr; gap:14px; padding:15px 0; border-top:1px solid #4b5b62; line-height:1.55; }.timeline li b { color:#e2b976; }
.sources { display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; padding:clamp(52px,8vw,96px) clamp(24px,7vw,90px); color:var(--ink); background:#d4cdbf; }
.sources .section-label { color:#765628; }.sources ul { margin:0; padding:0; list-style:none; }.sources li { border-top:1px solid #8b8376; }.sources a { display:block; padding:21px 4px; text-decoration:none; }.sources a:hover,.sources a:focus-visible { color:#fff; background:#23343a; outline:5px solid #23343a; }.sources strong,.sources span { display:block; }.sources span { margin-top:7px; font:15px/1.5 Georgia,serif; }
.gw-page footer { padding:14px clamp(20px,4vw,50px); color:#9eaaa8; background:#080b0d; }
.gw-page h1,.gw-page h2,.gw-page h3 { text-wrap:balance; }
.gw-page p,.gw-page li,.gw-page figcaption,.gw-page blockquote { text-wrap:pretty; }
@media (max-width:850px) { .architecture,.witness,.sources { grid-template-columns:1fr; } .unknown-grid { grid-template-columns:1fr 1fr; } .turnaround { grid-template-columns:1fr; } .midpoint { min-height:72px; border:0; border-block:1px solid #755425; } }
@media (max-width:620px) { .gw-page { width:100%; margin:0; box-shadow:none; } .hero { min-height:0; } .hero-copy { margin-top:68px; } .hero h1 { font-size:54px; letter-spacing:-2px; } .priority-grid,.unknown-grid,.timeline-grid { grid-template-columns:1fr; } .architecture,.witness,.priority,.constraint,.unknowns,.timeline,.sources { padding-inline:22px; } .gw-page footer { align-items:flex-start; flex-direction:column; padding-block:4px; } }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important; } }
