:root{--green:#76ef00;--pink:#ff67bf;--ink:#101310;--white:#fff;--body:'Space Grotesk',Arial,sans-serif;--display:'Anton',Impact,'Arial Narrow',sans-serif;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--white);font-family:var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:6px}
button:disabled{cursor:default}::selection{background:var(--pink);color:var(--ink)}
.masthead{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 5%;border-bottom:1px solid #ffffff30}
.wordmark{text-decoration:none;font:44px/.9 var(--display);letter-spacing:-1px}
.author{font-size:12px;letter-spacing:.14em}
.hero{isolation:isolate;position:relative;overflow:hidden;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;min-height:720px;padding:42px max(5%,calc((100vw - 1500px)/2));}
.reaction-field{position:absolute;inset:-6px 0;z-index:-2;overflow:hidden;pointer-events:none;user-select:none;display:flex;flex-direction:column;justify-content:space-between;gap:2px}
.reaction-row{min-height:0;flex:1;display:flex;align-items:center;white-space:nowrap;font-family:var(--display);line-height:1.15}
.reaction-track{display:flex;width:max-content;animation:ticker var(--duration,45s) linear var(--delay) infinite var(--direction);will-change:transform}
.reaction-track>span{flex:none;display:block;padding-right:.6em}
.reaction-stars{display:inline-block;margin:0 .5em;font-family:Arial,sans-serif;font-size:1.05em;line-height:1;letter-spacing:.08em;vertical-align:-.035em;white-space:nowrap}
.row-size-0{font-size:clamp(25px,3.2vw,48px);letter-spacing:.01em}
.row-size-1{font-size:clamp(34px,4.4vw,64px);letter-spacing:-.01em}
.row-size-2{font:700 clamp(17px,2vw,29px)/1.1 var(--body);letter-spacing:.08em}
.row-green{color:var(--green);opacity:.82}.row-pink{color:var(--pink);opacity:.78}.row-yellow{color:#ffed00;opacity:.76}.row-white{color:#edf4e8;opacity:.64}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#101310a3 0%,#10131091 27%,#10131038 49%,transparent 69%)}
@keyframes ticker{to{transform:translate3d(-50%,0,0)}}
.motion-paused .reaction-track,.reader-open .reaction-track,.rings-idle .reaction-track{animation-play-state:paused}
.pitch{position:relative;z-index:1;padding:25px 0}
h1{margin:0 0 42px;font:clamp(74px,8.7vw,139px)/1.02 var(--display);letter-spacing:-.03em;text-shadow:0 3px 25px #10131080}
h1 span{color:var(--green)}
.actions{display:flex;align-items:stretch;gap:14px}
.actions a{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:60px;padding:17px 24px;font-size:16px;font-weight:700;text-decoration:none;transition:background .2s,transform .2s}
.actions a:hover{transform:translateY(-3px)}
.download{background:var(--green);color:var(--ink)}.download:hover{background:var(--pink)}
.preview-link{background:var(--ink);border:1px solid #ffffff88;min-width:128px}.preview-link:hover{background:#292f26}
.actions a span{font-size:23px;font-weight:400;line-height:1}
.cover-area{min-width:0;min-height:610px;display:grid;place-items:center;position:relative;z-index:2}
.cover{display:block;width:min(75%,350px);transform:rotate(5deg);box-shadow:-18px 24px 50px #000b;transition:transform .45s}
.cover:hover{transform:rotate(1deg) translateY(-6px)}.cover img{display:block;width:100%;height:auto}
.motion-toggle{position:absolute;right:5%;bottom:15px;z-index:3;width:44px;height:44px;background:#101310b3;border:1px solid #ffffff36;border-radius:50%;color:#d0d8cb;font-size:17px;display:grid;place-items:center}
.blurb{display:grid;grid-template-columns:.9fr 1fr;gap:8%;padding:85px max(5%,calc((100vw - 1500px)/2)) 90px;background:var(--green);color:var(--ink)}
.blurb-lead{font:clamp(34px,3.5vw,54px)/1.14 var(--display);letter-spacing:-.018em;margin:0;max-width:600px}
.blurb-story{font-size:17px;line-height:1.7;max-width:640px}.blurb-story p{margin:0 0 1.4em}.blurb-story p:last-child{margin-bottom:0}
footer{margin:0 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 0;color:#abb3a6}
footer p{font-size:12px;line-height:1.6;margin:0}footer a{font-size:14px;text-underline-offset:5px;white-space:nowrap}
.reader{width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fffdf7;color:var(--ink);overflow:hidden;color-scheme:light}.reader[open]{display:flex;flex-direction:column}.reader::backdrop{background:#101310ed}.reader-header{display:flex;align-items:center;gap:25px;background:var(--ink);color:var(--white);min-height:83px;padding:15px 5%;flex-shrink:0}.reader-brand{font:34px/1 var(--display);color:var(--green);text-decoration:none}.reader-header>span{font-size:12px;letter-spacing:.08em}.close-reader{margin-left:auto;border:0;background:none;color:var(--white);font-size:12px;min-height:44px;display:flex;align-items:center;gap:18px}.close-reader span{font-size:28px}.chapter-nav{display:flex;justify-content:center;gap:12px;flex-shrink:0;background:var(--green);padding:12px 20px}.chapter-nav button{min-height:45px;border:0;background:none;color:var(--ink);padding:8px 15px;font-size:13px;font-weight:600}.chapter-nav button>span{margin-left:9px}.chapter-nav button[aria-current=true]{background:var(--ink);color:var(--white)}.reader-scroll{overflow:auto;overscroll-behavior:contain;flex:1;scroll-behavior:smooth}.reader-content{max-width:740px;margin:auto;padding:60px 30px 30px}.preview-chapter[hidden]{display:none}.preview-chapter h2{font:clamp(40px,7vw,70px)/1.1 var(--display);text-transform:uppercase;letter-spacing:-.015em;margin:0 0 40px}.chapter-prose{font:19px/1.8 Georgia,'Times New Roman',serif}.chapter-prose p{margin:0 0 1.1em}.chapter-prose p:not(.no-indent){text-indent:1.5em}.reader-bottom{max-width:680px;padding:25px 0 70px;margin:auto;display:flex;gap:30px;align-items:center;justify-content:space-between;border-top:1px solid #10131033}.reader-bottom button{border:0;background:var(--ink);color:#fff;padding:18px 22px;min-height:52px;font-size:12px}.reader-bottom a{font-size:12px;font-weight:700;text-underline-offset:4px}.reader-open{overflow:hidden}.reader-loading{font:18px/1.6 var(--body)}
@media(min-width:1550px){.hero{min-height:790px}.cover-area{min-height:700px}.cover{width:370px}}
@media(max-width:1000px){.hero{min-height:620px;padding-top:35px;padding-bottom:35px}.cover-area{min-height:520px}.cover{width:80%}.actions{gap:10px}.actions a{padding:16px 18px;gap:15px;font-size:14px}.preview-link{min-width:100px}.blurb{gap:7%;padding-top:65px;padding-bottom:65px}}
@media(max-width:760px){
 .masthead{height:77px;margin:0 6%}.wordmark{font-size:35px}.author{font-size:12px}
 .hero{grid-template-columns:1.12fr 1fr;grid-template-rows:1fr auto;gap:22px 12px;padding:32px 6% 68px;min-height:530px}
 .pitch{display:contents}
 h1{grid-column:1;grid-row:1;position:relative;z-index:1;font-size:clamp(42px,9.5vw,72px);line-height:1.06;letter-spacing:-.025em;margin:0}
 .cover-area{grid-column:2;grid-row:1;min-height:310px}
 .cover{width:92%;max-width:235px}.cover:hover{transform:rotate(5deg)}
 .actions{grid-column:1/-1;grid-row:2;position:relative;z-index:2;gap:12px}
 .actions a{flex:1;min-height:58px;font-size:16px;padding:16px 20px}
 .actions .download{flex:1.4}.preview-link{min-width:0}
 .hero::before{background:linear-gradient(90deg,#10131096 0%,#10131085 24%,transparent 67%)}
 .motion-toggle{right:6%;bottom:12px;width:40px;height:40px}
 .blurb{display:block;padding:42px 6% 47px}.blurb-lead{font-size:clamp(32px,6vw,44px);max-width:620px;margin-bottom:32px}.blurb-story{font-size:16px;line-height:1.75}
 footer{margin:0 6%;display:block;padding:24px 0}footer p{margin-bottom:14px}
 .reader-header{min-height:72px;gap:15px;padding:12px 6%}.reader-header>span:not(.reader-brand){font-size:12px;max-width:112px;line-height:1.4}.reader-brand{font-size:30px}.close-reader{font-size:12px;gap:10px}
 .chapter-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:10px 8px}.chapter-nav button{font-size:12px;padding:8px 5px}.chapter-nav button>span{display:block;font-size:14px;line-height:1.25;margin:4px 0 0}
 .reader-content{padding:40px 24px 25px}.preview-chapter h2{font-size:47px;margin-bottom:27px}.chapter-prose{font-size:18px;line-height:1.8}.reader-bottom{margin:0 24px;gap:20px;flex-wrap:wrap;padding-bottom:45px}.reader-bottom a{font-size:14px}
}
@media(max-width:430px){.hero{min-height:460px;gap:20px 7px;padding-top:30px}.cover-area{min-height:260px}.actions a{padding:15px;font-size:14px;gap:12px}}
@media(prefers-reduced-motion:reduce){html,.reader-scroll{scroll-behavior:auto}.reaction-track{animation:none;will-change:auto}.cover,.actions a{transition:none}.motion-toggle{display:none}}

/* The cover and reactions occupy exactly one screen before the blurb. */

.masthead{display:none}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(20px,3vh,30px);padding:28px 5% 78px}
.hero::before{background:radial-gradient(ellipse at center,#10131055,transparent 65%)}
.pitch{order:2;display:block;flex:none;padding:0;z-index:2}
.cover-area{order:1;display:grid;min-height:0;flex:none;width:100%}
.cover{width:min(70vw,calc((100vh - 208px)*.625),390px);width:min(70vw,calc((100dvh - 208px)*.625),390px);max-width:none}
.actions{display:flex;gap:12px;width:min(90vw,420px)}
.actions a{flex:1;min-width:0;min-height:58px;padding:16px 20px;font-size:16px;gap:12px}
.actions .download{flex:1.15}
.blurb-cue{position:absolute;z-index:3;bottom:max(14px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:64px;min-height:48px;color:var(--green);text-decoration:none;font-size:14px;font-weight:600;letter-spacing:.06em;text-shadow:0 0 10px #76ef0033}
.blurb-arrow{font-size:24px;line-height:1;animation:blurb-pulse 2.6s ease-in-out infinite}
.blurb-cue:hover{text-shadow:0 0 13px #76ef0090}
@keyframes blurb-pulse{0%,100%{opacity:.5;transform:translateY(-1px)}50%{opacity:1;transform:translateY(3px)}}
.motion-toggle{bottom:max(18px,env(safe-area-inset-bottom))}
.motion-paused .blurb-arrow,.reader-open .blurb-arrow,.rings-idle .blurb-arrow{animation-play-state:paused}
@media(max-width:430px){.actions a{font-size:14px;padding:14px 12px;gap:8px}.hero{padding-top:24px;gap:22px}}
@media(max-height:520px) and (min-aspect-ratio:1/1){.hero{flex-direction:row;gap:7vw;padding:22px 6% 72px}.cover-area{width:auto}.cover{width:min(32vw,calc((100vh - 110px)*.625),300px);width:min(32vw,calc((100dvh - 110px)*.625),300px)}.actions{flex-direction:column;width:min(34vw,240px)}.actions a{flex:none;min-height:48px;padding:12px 18px}.actions .download{flex:none}}
@media(prefers-reduced-motion:reduce){.blurb-arrow{animation:none;opacity:1}}

/* Measured pixels override viewport units on mobile; units remain the no-script fallback. */
@media(max-width:760px), (max-height:520px) and (pointer:coarse){
 html,body{overflow-x:clip;background:var(--ink)}
 .hero{height:100vh;height:100lvh;height:var(--mobile-screen-height,100lvh);min-height:100dvh;min-height:var(--mobile-screen-height,100dvh)}
 .cover{width:min(52.5vw,calc((100vh - 208px)*.46875),292.5px);width:min(52.5vw,calc((var(--mobile-visible-height,100dvh) - 208px)*.46875),292.5px)}
 .blurb-cue{top:calc(100vh - max(14px,env(safe-area-inset-bottom)) - 48px);top:calc(var(--mobile-visible-height,100dvh) - max(14px,env(safe-area-inset-bottom)) - 48px);bottom:auto}
 .motion-toggle{top:calc(100vh - max(18px,env(safe-area-inset-bottom)) - 44px);top:calc(var(--mobile-visible-height,100dvh) - max(18px,env(safe-area-inset-bottom)) - 44px);bottom:auto}
}
@media(max-width:760px) and (max-height:520px) and (min-aspect-ratio:1/1), (pointer:coarse) and (max-height:520px) and (min-aspect-ratio:1/1){
 .cover{width:min(24vw,calc((100vh - 110px)*.46875),225px);width:min(24vw,calc((var(--mobile-visible-height,100dvh) - 110px)*.46875),225px)}
}
