:root{
  --night:#0d1425;--midnight:#111c34;--paper:#f7f0df;--muted:#b9c0c9;
  --amber:#f7d5a0;--cyan:#acd9de;--line:rgba(247,240,223,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--paper);background:var(--night);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 4% 1%,rgba(111,141,159,.12),transparent 42%),radial-gradient(ellipse at 95% 70%,rgba(141,113,141,.12),transparent 47%);pointer-events:none;z-index:-1}
a{color:inherit}a:focus-visible{outline:2px solid var(--amber);outline-offset:5px}
.skip-link{position:absolute;top:-80px;left:15px;z-index:50;background:var(--paper);color:var(--night);padding:12px}.skip-link:focus{top:10px}
.page-shell{max-width:1600px;margin:auto;overflow:hidden}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:5;padding:29px clamp(24px,6vw,102px);border-bottom:1px solid rgba(255,255,255,.065)}
.brand{display:inline-flex;gap:10px;align-items:center;text-decoration:none;font-size:clamp(25px,2.25vw,36px);font-weight:850;letter-spacing:-.083em;line-height:1}
.brand-star{font-size:32px;color:var(--amber);font-weight:400;letter-spacing:0;transform:rotate(-15deg)}
.brand-bang,.footer-brand span{color:#f0ab92}
.top-nav{display:flex;gap:clamp(15px,2.6vw,38px);align-items:center}
.top-nav a{font-size:12px;letter-spacing:.04em;text-decoration:none;color:rgba(240,240,235,.77);transition:color .2s}
.top-nav a:hover{color:#fff}
.top-nav .nav-special{color:var(--amber);border:1px solid rgba(251,210,155,.32);border-radius:30px;padding:12px 16px;white-space:nowrap}
.nav-special span{padding-left:5px}
.hero{min-height:705px;display:grid;grid-template-columns:minmax(0,47%) minmax(0,53%);position:relative}
.hero:after{content:"";pointer-events:none;position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(transparent,#0d1425)}
.hero-content{position:relative;z-index:3;align-self:center;padding:55px 15px 75px clamp(24px,6vw,102px)}
.eyebrow,.section-kicker,.hero-whisper,.door-number,.door-state{font-size:10px;font-weight:700;letter-spacing:.235em;line-height:1.65}
.eyebrow{color:#efd0a7;margin:0 0 24px}
.eyebrow-spark{font-size:18px;vertical-align:-1px;margin-right:11px}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:Georgia,"Iowan Old Style","Palatino Linotype",serif;font-weight:400;letter-spacing:-.055em}
h1{font-size:clamp(48px,5.6vw,94px);line-height:1.04;max-width:700px;margin-bottom:30px}
h1 em,h2 em{display:block;font-weight:400;color:#f0cb9c}
.hero-lede{max-width:490px;color:#c4c9cd;line-height:1.87;font-size:15px;margin-bottom:32px}
.primary-action{display:inline-flex;align-items:center;gap:28px;padding:15px 22px;text-decoration:none;font-size:12px;letter-spacing:.07em;font-weight:750;color:#1c2733;background:#f4d3a6;border:1px solid #ffe1b5;border-radius:8px;box-shadow:0 12px 40px rgba(246,194,129,.12);transition:transform .2s,background .2s}
.primary-action:hover{transform:translateY(-2px);background:#ffe3b6}
.hero-whisper{color:#8495aa;font-size:9px;letter-spacing:.18em;margin:23px 0 0}
.hero-whisper span{color:#ddbb95;padding-left:8px}
.world-art{min-height:705px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 55% 39%,rgba(144,173,178,.26),transparent 34%),linear-gradient(180deg,#162443 0%,#243852 46%,#4b5267 66%,#263d46 100%)}
.world-art:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 80%,rgba(236,173,146,.15),transparent 45%),radial-gradient(ellipse at 83% 7%,rgba(103,133,180,.27),transparent 50%);z-index:0}
.world-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d1425 0%,transparent 23%,transparent 85%,rgba(11,20,32,.28));z-index:6}
.world-glow{position:absolute;inset:-15%;background:radial-gradient(circle at 62% 60%,rgba(244,177,139,.17),transparent 41%);filter:blur(22px);z-index:0}
.moon-halo{position:absolute;top:12%;right:23%;width:245px;aspect-ratio:1;border-radius:50%;background:rgba(241,222,199,.08);box-shadow:0 0 0 37px rgba(240,223,202,.026),0 0 0 78px rgba(240,223,202,.018),0 0 120px rgba(249,224,183,.22);z-index:1}
.moon{position:absolute;top:15%;right:26%;width:198px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff7df,#f2dbb4 65%,#b8c1c4);box-shadow:0 0 45px rgba(250,224,187,.27);z-index:2}
.star{position:absolute;width:3px;height:3px;border-radius:50%;background:#f9edda;box-shadow:0 0 10px #f2dec0;z-index:2;animation:twinkle 5s ease-in-out infinite}
.star-1{left:18%;top:18%}.star-2{left:37%;top:9%;animation-delay:1s}.star-3{left:69%;top:12%;animation-delay:1.7s}
.star-4{left:88%;top:30%;animation-delay:3s}.star-5{left:33%;top:41%;animation-delay:2.2s}.star-6{left:57%;top:8%;animation-delay:1.2s}
.star-7{left:13%;top:44%;animation-delay:3.2s}.star-8{left:93%;top:14%;animation-delay:2.7s}.star-9{left:54%;top:28%;animation-delay:4s}
.mist{position:absolute;width:110%;height:125px;border-radius:50%;filter:blur(31px);background:rgba(194,174,155,.1);z-index:3}
.mist-1{top:64%;left:-25%}.mist-2{top:80%;left:12%;opacity:.8}
.hill{position:absolute;width:140%;left:-15%;border-radius:52% 52% 0 0;z-index:2}
.hill-far{height:260px;bottom:11%;transform:rotate(-8deg);background:linear-gradient(176deg,#6d7380,#334957)}
.hill-mid{height:215px;bottom:4%;left:19%;transform:rotate(6deg);background:linear-gradient(177deg,#425e5a,#1f353d);z-index:3}
.hill-front{height:135px;bottom:-7%;left:-14%;transform:rotate(3deg);background:#102b30;z-index:5}
.tree{position:absolute;z-index:4;width:15px;height:130px;background:#162e34;border-radius:4px;transform-origin:bottom}
.tree i{position:absolute;left:50%;bottom:28%;transform:translateX(-50%);width:105px;height:143px;background:#163a3b;clip-path:polygon(50% 0,99% 80%,68% 78%,100% 100%,0 100%,33% 78%,0 80%)}
.tree-one{bottom:14%;left:34%;transform:scale(.92)}.tree-two{bottom:11%;left:76%;transform:scale(1.27)}.tree-three{bottom:9%;left:8%;transform:scale(.65)}
.little-house{position:absolute;bottom:19%;left:51%;height:93px;width:115px;border-radius:7px 7px 4px 4px;background:linear-gradient(90deg,#273b3b,#172b35);z-index:4;transform:rotate(-3deg);box-shadow:12px 7px 0 rgba(7,20,28,.25)}
.roof{position:absolute;bottom:87%;left:-15%;width:130%;height:66px;background:#142e34;clip-path:polygon(49% 0,100% 85%,100% 100%,0 100%,0 84%);border-bottom:7px solid #263b3b}
.window{position:absolute;top:25px;left:48px;width:26px;height:34px;border:3px solid #20343b;border-radius:12px 12px 2px 2px;background:#f7c88e;box-shadow:0 0 20px rgba(255,188,103,.4),0 0 60px rgba(255,188,103,.24)}
.firefly{position:absolute;width:5px;height:5px;border-radius:50%;background:#f7d89b;box-shadow:0 0 17px 5px rgba(247,216,155,.27);z-index:5;animation:drift 6s ease-in-out infinite}
.firefly-1{left:47%;top:72%}.firefly-2{left:73%;top:74%;animation-delay:2s}.firefly-3{left:30%;top:69%;animation-delay:3.4s}
.art-note{position:absolute;bottom:26px;right:34px;z-index:8;font-size:9px;letter-spacing:.2em;color:#d3d3c5;opacity:.72}
.divider-orbit{display:flex;align-items:center;gap:18px;padding:0 clamp(24px,6vw,102px);color:#dec09e;font-size:18px;opacity:.8}
.divider-orbit:before,.divider-orbit:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.chapter-intro{text-align:center;padding:105px 24px 56px;max-width:830px;margin:0 auto}
.section-kicker{color:#d6b28e;font-size:10px}
h2{font-size:clamp(37px,4vw,63px);line-height:1.16;margin:16px 0 20px}
.chapter-intro p:last-child,.closing-note p:last-child{font-size:15px;line-height:1.9;color:#bdc6cb;max-width:635px;margin:0 auto}
.doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:35px clamp(24px,6vw,102px) 118px}
.door-card{position:relative;min-height:365px;padding:31px 26px;border:1px solid rgba(228,221,209,.15);border-radius:13px;background:linear-gradient(150deg,rgba(88,104,116,.14),rgba(21,33,53,.77));overflow:hidden}
.door-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-105px;background:radial-gradient(circle,rgba(226,169,128,.2),transparent 70%);pointer-events:none}
.door-motion:before{background:radial-gradient(circle,rgba(168,174,215,.24),transparent 70%)}
.door-conversation:before{background:radial-gradient(circle,rgba(139,198,177,.24),transparent 70%)}
.door-compass:before{background:radial-gradient(circle,rgba(165,185,238,.2),transparent 70%)}
.door-icon{font-size:34px;font-weight:300;color:#ecd2a2;line-height:1.6;margin-bottom:15px}
.door-number{color:#9cb1bf;margin-bottom:20px}
h3{font-family:Georgia,"Iowan Old Style",serif;font-size:27px;letter-spacing:-.035em;font-weight:400;line-height:1.1;margin-bottom:15px}
.door-card p:not(.door-number){font-size:13px;line-height:1.7;color:#bfcbce;margin-bottom:54px}
.door-state{display:block;position:absolute;bottom:27px;left:26px;right:19px;font-size:8px;color:#d0b99c;letter-spacing:.13em}
.closing-note{margin:0 auto 120px;padding:56px 25px 10px;text-align:center;max-width:790px;border-top:1px solid var(--line)}
.closing-spark{font-size:32px;color:#ddc39e;margin:0 0 23px}
.site-footer{border-top:1px solid var(--line);padding:32px clamp(24px,6vw,102px) 46px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;color:#8fa0ad}
.footer-brand{font-weight:850;letter-spacing:-.07em;color:#ece6db;font-size:20px}
.site-footer a{text-decoration:none;color:#d9bd9a}
@keyframes twinkle{50%{opacity:.3;transform:scale(.6)}}
@keyframes drift{50%{transform:translate(7px,-13px);opacity:.52}}
@media(max-width:1150px){.hero{grid-template-columns:1fr}.hero-content{max-width:920px;padding:80px 6vw 46px}.hero h1{max-width:760px}.world-art{min-height:470px}.hero:after{height:160px}.doors{grid-template-columns:repeat(2,minmax(0,1fr))}.door-card{min-height:300px}}
@media(max-width:660px){.site-header{padding:20px 19px;align-items:flex-start}.brand{font-size:26px}.brand-star{font-size:24px}.top-nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 15px;max-width:235px}.top-nav a{font-size:10px}.top-nav .nav-special{padding:7px 10px}.top-nav a:nth-child(2){display:none}.hero-content{padding:77px 25px 55px}.hero h1{font-size:clamp(48px,11vw,67px)}.hero-lede{font-size:14px}.world-art{min-height:435px}.moon-halo{width:175px;right:24%;top:12%}.moon{width:145px;right:27%;top:15%}.doors{grid-template-columns:1fr;gap:13px;margin:24px 22px 84px}.door-card{min-height:258px}.chapter-intro{padding:85px 23px 40px}.closing-note{margin-bottom:74px}.site-footer{flex-wrap:wrap;padding:30px 24px}.site-footer span:nth-child(2){order:3;width:100%}.art-note{right:20px;font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.star,.firefly{animation:none}.primary-action{transition:none}}
