:root{--ink:#05070b;--paper:#e9edf2;--muted:#96a0ad;--blue:#367fbb;--blue2:#132b43;--line:rgba(255,255,255,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:"DM Sans",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);position:absolute;z-index:10;width:100%}.brand{display:flex;gap:12px;align-items:center;letter-spacing:.16em}.brand b{display:block;font-size:.92rem}.brand b i{color:#56a4df;font-style:normal}.brand small{display:block;font-size:.48rem;letter-spacing:.5em;margin-top:2px}.mark{font-size:2rem;line-height:1;color:white;filter:drop-shadow(0 0 10px rgba(84,161,218,.3))}.nav nav{display:flex;gap:2.2rem;font-size:.82rem;color:#c5ccd5}.nav nav a:hover{color:white}.nav-cta{border-bottom:1px solid #fff;padding:8px 0;font-size:.76rem;text-transform:uppercase;letter-spacing:.16em}
.hero{min-height:100vh;display:grid;grid-template-columns:55% 45%;align-items:center;padding:130px 7vw 70px;position:relative;background:radial-gradient(circle at 75% 45%,#102a43 0,#07111d 24%,#05070b 55%)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,11,.5),transparent 55%),repeating-linear-gradient(90deg,transparent 0,transparent calc(10vw - 1px),rgba(255,255,255,.025) 10vw);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;color:#72a8d0;margin:0 0 28px}.hero h1,.manifesto h2,.feature h2,.about h2,.closing h2{font-family:"Playfair Display",serif;font-weight:600;margin:0;line-height:.92}.hero h1{font-size:clamp(4rem,8vw,8.6rem);letter-spacing:-.045em}.hero h1 em,.about h2 em{font-weight:500;color:#719bc0}.lede{max-width:560px;font-size:1.1rem;line-height:1.75;color:#aeb7c2;margin:35px 0}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:16px 20px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;border:1px solid var(--line);transition:.25s}.button:hover{transform:translateY(-2px);border-color:#789bb8}.button.primary{background:#dbe4ec;color:#08101a;border-color:#dbe4ec}.button.ghost{background:rgba(255,255,255,.02)}.hero-art{height:min(72vh,760px);position:relative;display:flex;align-items:center;justify-content:center}.moon{position:absolute;width:min(32vw,470px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 38%,#95b8d3,#315d7e 45%,#102235 71%);filter:blur(.2px);box-shadow:0 0 90px rgba(65,132,184,.22)}.door{position:relative;width:min(18vw,250px);height:min(55vh,560px);margin-top:90px;background:linear-gradient(90deg,#090c11,#17191d 48%,#090b0e);box-shadow:-30px 20px 80px #000;border:1px solid #28313c}.door span{position:absolute;top:50px;left:50%;transform:translateX(-50%);font-family:"Playfair Display";letter-spacing:.25em;color:#8995a0}.door .light{position:absolute;right:10px;top:50%;width:5px;height:5px;border-radius:50%;background:#8cb8d7;box-shadow:0 0 14px #8cb8d7}.hero-art p{position:absolute;right:-2vw;bottom:1vw;color:#8ba0b2;font-family:"Playfair Display";font-style:italic;font-size:1.2rem}.scroll-note{position:absolute;bottom:32px;left:5vw;font-size:.58rem;letter-spacing:.25em;color:#6e7884}.scroll-note span{margin-left:16px}
.manifesto{padding:130px 7vw;border-top:1px solid var(--line)}.section-num{font-size:.66rem;letter-spacing:.22em;color:#667584;margin-bottom:50px}.manifesto>h2{font-size:clamp(4rem,9vw,9rem);letter-spacing:-.04em}.manifesto>h2 span{color:#477da7;font-style:italic}.formats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:100px;border-top:1px solid var(--line)}.formats article{padding:35px 5vw 15px 0;border-right:1px solid var(--line);min-height:220px}.formats article+article{padding-left:3vw}.formats article:last-child{border-right:0}.formats article>span{color:#497ba2;font-size:.7rem}.formats h3{font-family:"Playfair Display";font-size:2rem;margin:18px 0}.formats p{color:#8e99a4;line-height:1.7;max-width:300px}
.feature{padding:140px 8vw;display:grid;grid-template-columns:46% 54%;gap:8vw;align-items:center;background:linear-gradient(130deg,#07111b,#0d1c2b 55%,#05070b);position:relative}.book-wrap{min-height:670px;display:flex;align-items:center;justify-content:center;position:relative}.book-wrap img{width:min(75%,390px);max-height:620px;object-fit:cover;box-shadow:-28px 30px 70px rgba(0,0,0,.7);transform:perspective(1000px) rotateY(7deg);position:relative;z-index:2}.book-glow{position:absolute;width:70%;aspect-ratio:1;background:#2a78ad;filter:blur(110px);opacity:.25}.feature-copy{max-width:640px}.feature h2{font-size:clamp(4rem,7vw,7rem);letter-spacing:-.045em}.genre{font-family:"Playfair Display";font-style:italic;color:#6f99ba;font-size:1.2rem;margin:16px 0 45px}.feature blockquote{font-family:"Playfair Display";font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.25;margin:0 0 35px;padding-left:25px;border-left:1px solid #5c8eb4}.feature-copy>p:not(.eyebrow):not(.genre){color:#9ca7b1;line-height:1.75}.story-tags{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0}.story-tags span{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border:1px solid var(--line);color:#9ab0c0}.text-link{display:inline-flex;gap:30px;margin-top:18px;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;border-bottom:1px solid #698caa;padding-bottom:8px}
.about{padding:130px 7vw;display:grid;grid-template-columns:18% 47% 35%;align-items:end;border-bottom:1px solid var(--line)}.about h2{font-size:clamp(4rem,7vw,7rem);letter-spacing:-.04em}.about div>p{color:#99a4ae;line-height:1.8;max-width:620px;margin-top:38px}.principle{font-size:.66rem;line-height:2.1;letter-spacing:.16em;color:#657786;border-left:1px solid var(--line);padding-left:3vw;margin-left:3vw}.closing{text-align:center;padding:150px 20px;background:radial-gradient(circle at 50% 45%,#142e45 0,#07111b 30%,#05070b 65%)}.mark.large{font-size:5rem;display:block;margin-bottom:45px}.closing h2{font-size:clamp(4rem,9vw,9rem);letter-spacing:-.05em;margin-bottom:60px}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px 5vw;border-top:1px solid var(--line);font-size:.58rem;letter-spacing:.16em;color:#7e8994}.reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:850px){.nav{height:72px}.nav nav,.nav-cta{display:none}.hero{grid-template-columns:1fr;padding:120px 6vw 70px}.hero-copy{z-index:3}.hero h1{font-size:clamp(3.5rem,17vw,6rem)}.hero-art{position:absolute;inset:20% -10% 0 38%;opacity:.52}.moon{width:80vw}.door{width:38vw}.hero-art p{display:none}.manifesto,.feature,.about{padding:95px 6vw}.manifesto>h2{font-size:16vw}.formats{grid-template-columns:1fr;margin-top:65px}.formats article,.formats article+article{padding:28px 0;border-right:0;border-bottom:1px solid var(--line);min-height:0}.feature{grid-template-columns:1fr;gap:25px}.book-wrap{min-height:520px}.book-wrap img{width:min(78%,320px);max-height:510px}.about{grid-template-columns:1fr;gap:45px}.principle{margin:0;padding-left:20px}.closing h2{font-size:17vw}footer{flex-direction:column;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button{transition:none}}
/* Keep content readable without animation support and give every device navigation. */
.reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.reveal.visible{animation:appear .7s ease both}@keyframes appear{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}
.feature{grid-template-columns:minmax(0,46fr) minmax(0,54fr)}
a:focus-visible{outline:2px solid #9acdf3;outline-offset:6px}
.brand small{font-size:.56rem;letter-spacing:.28em}
.button{max-width:100%;overflow-wrap:anywhere}
@media(max-width:850px){.nav{height:auto;min-height:104px;flex-wrap:wrap;gap:12px;padding-top:15px;padding-bottom:12px}.nav nav{display:flex;width:100%;gap:24px;flex-wrap:wrap}.nav nav a{padding:8px 0}.hero{padding-top:160px}.feature{grid-template-columns:minmax(0,1fr)}.hero-art{inset:20% 0 0 38%}}
.hero{overflow:hidden}
.door-shadow{position:absolute;width:64%;height:71%;bottom:2%;left:18%;fill:#03070d;opacity:.34;filter:blur(2px) drop-shadow(0 0 7px rgba(84,124,156,.16));pointer-events:none}.door>span,.door>.light{z-index:1}

