/* The original supplied photograph is clipped only at display time; its cover is unchanged. */
html{scrollbar-gutter:stable}.intro-open,.intro-open body,.intro-pending{overflow:hidden!important}
.intro-pending body:before{content:'';position:fixed;inset:0;background:var(--navy);z-index:999}
.hero{overflow:clip}.hero .hero-kicker,.hero .title-line,.hero .hero-sub{animation:none}
.hero-image{width:32%;right:7%;top:17%;height:auto;aspect-ratio:.615;animation:none;mask-image:none;-webkit-mask-image:none;opacity:1;z-index:1}
.book-cutout{position:relative;width:100%;aspect-ratio:.615;isolation:isolate}
.book-cutout img{position:absolute;width:157.62%;max-width:none;height:auto;left:-29.48%;top:-40.88%;object-fit:fill;clip-path:polygon(18.9% 25.95%,23% 25.3%,76.8% 23.85%,81.3% 24.5%,81.85% 77.85%,23.1% 81.65%,18.9% 80.55%);mask-image:none!important;-webkit-mask-image:none!important}
.book-float{filter:drop-shadow(18px 30px 23px #0005);transform:rotate(5deg)}
.hero-edition{display:block;text-align:center;margin-top:34px;color:#adbdd4;font-size:12px;letter-spacing:2px}
.hero-light{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 76% 45%,#16499b66,transparent 56%)}
.hero-motion-controls{display:none;gap:20px;align-items:center}.hero-motion-controls button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;background:none;border:0;color:#c4cfe1;font-size:12px;white-space:nowrap}.hero-motion-controls button>span:first-child{font-size:18px;color:var(--orange);width:20px;text-align:center}.hero-motion-controls button:hover{color:var(--paper)}
.hero-motion-available .hero-motion-controls{display:flex}.hero-motion-controls button[hidden]{display:none}.hero-motion-available .hero-bottom{align-items:center;padding-top:14px;bottom:24px}.hero-motion-available .hero-coordinate{font-size:9px;letter-spacing:1px}
.hero-motion-enabled .book-float{animation:book-breathe 7s ease-in-out infinite}.hero.motion-paused .book-float,.hero.motion-suspended .book-float,.hero.intro-running .book-float{animation-play-state:paused}
@keyframes book-breathe{0%,100%{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-12px) rotate(3deg)}}
.opening-dialog{position:fixed;inset:0;margin:0;padding:0;border:0;width:100%;height:100dvh;max-width:none;max-height:none;overflow:clip;color:var(--paper);background:#061329;isolation:isolate;overscroll-behavior:none;touch-action:none}
.opening-dialog::backdrop{background:#061329}.opening-dialog[open]{display:block}.opening-dialog:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 55% 60%,#143f8da0,transparent 70%)}
.opening-top,.opening-bottom{position:absolute;left:4.3%;right:4.3%;display:flex;align-items:center;justify-content:space-between;z-index:5;gap:20px}.opening-top{top:22px}.opening-brand{font-size:12px;letter-spacing:1px}.opening-brand>span{margin-left:12px;color:#94a5c0;font-size:10px}.opening-controls{display:flex;align-items:center;gap:26px}.opening-controls button{min-height:44px;padding:8px 0;border:0;color:var(--paper);background:none;font-size:14px}.opening-controls button:first-child{color:#a8b7cc}
.opening-stage{position:absolute;inset:0;perspective:1200px}.opening-question{position:absolute;left:4%;right:4%;top:35%;margin:0;text-align:center;z-index:1;font-family:var(--display);font-size:clamp(60px,10vw,170px);font-weight:500;letter-spacing:-.02em;line-height:.92;outline:none;opacity:0}.opening-question>span,.opening-question>em{display:block}.opening-question>em{font-family:var(--serif);font-weight:400;color:var(--orange);font-size:.85em}
.opening-volume{position:absolute;width:min(37vw,40svh);left:50%;top:48%;opacity:0;filter:drop-shadow(28px 35px 24px #0005);will-change:transform,opacity}
.opening-thought{position:absolute;bottom:10%;left:5%;right:5%;margin:0;text-align:center;font-size:clamp(17px,1.7vw,25px);line-height:1.3;opacity:0}.opening-thought em{font-family:var(--serif);font-size:1.35em;color:var(--orange)}
.opening-bottom{bottom:23px;font-size:10px;letter-spacing:1.2px;color:#91a3bf}.opening-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#153057}.opening-progress>span{display:block;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left}
@media(max-width:1100px){.hero-motion-available .hero-coordinate{display:none}.hero-motion-available .hero-bottom{gap:14px}.hero-image{top:25%;right:5%;width:33%}}
@media(max-width:600px){.hero-image{width:150px;right:calc(50% - 75px);top:105px;aspect-ratio:.615}.hero-edition{display:none}.hero-motion-available .hero-bottom{display:flex;flex-wrap:wrap;bottom:17px;padding-top:10px;gap:2px}.hero-motion-available .hero-bottom>span:first-child{font-size:9px;width:100%}.hero-motion-controls{width:100%;justify-content:space-between;gap:12px}.opening-top{top:14px;left:5%;right:5%;gap:12px}.opening-brand{font-size:10px;white-space:nowrap}.opening-brand>span{display:none}.opening-controls{gap:14px}.opening-controls button{font-size:12px}.opening-question{font-size:15vw;top:36%;line-height:1}.opening-volume{width:min(64vw,37svh);top:46%}.opening-thought{bottom:15%;font-size:18px}.opening-bottom{left:5%;right:5%;bottom:25px;font-size:9px}.opening-caption{display:none}}
@media(prefers-reduced-motion:reduce){.hero:not(.motion-opt-in) .hero-image,.hero:not(.motion-opt-in) .book-float{animation:none!important;transform:none!important}}
/* The signup stays in the opening block, with room for text and keyboard zoom. */
.hero{height:auto;min-height:100svh;max-height:none;display:flex;align-items:center}
.hero .hero-content{position:relative;top:auto;bottom:auto;padding-top:clamp(150px,18svh,220px);padding-bottom:150px}
.hero-signup{margin-top:30px;width:510px;max-width:48%}
.hero-signup h2{font-family:var(--sans);font-size:20px;font-weight:500;line-height:1.35;letter-spacing:-.4px;margin:0 0 14px}
.hero-signup-fields{display:flex;align-items:stretch;gap:0;min-height:56px;border-radius:2px}
.hero-signup-fields input{min-width:0;width:100%;flex:1;border:1px solid #9eabc0;border-right:0;border-radius:2px 0 0 2px;padding:15px 17px;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.5}
.hero-signup-fields input::placeholder{color:#536176;opacity:1}
.hero-signup-fields button{display:flex;align-items:center;justify-content:center;gap:22px;flex-shrink:0;min-height:56px;border:1px solid var(--orange);border-radius:0 2px 2px 0;padding:14px 22px;background:var(--orange);color:var(--ink);font-size:16px;font-weight:600;transition:background .2s}
.hero-signup-fields button>span{font-size:21px;font-weight:400}
.hero-signup-fields button:hover{background:#ff9e5e;border-color:#ff9e5e}
.hero-signup-fields input:focus-visible{position:relative;z-index:1;outline-offset:2px}
.hero-signup-note{font-size:13px;line-height:1.5;color:#b6c3d7;margin:11px 0 0}
.hero-signup-status{font-size:14px;line-height:1.5;color:var(--paper);border-left:2px solid var(--orange);padding-left:12px;margin:14px 0 0}
.hero-signup-fields button:disabled{opacity:.6;cursor:default}
.signup-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:601px) and (max-width:900px){.hero-signup{max-width:65%;width:470px}.hero .hero-content{padding-top:160px;padding-bottom:125px}.hero-signup-fields button{padding-inline:19px;gap:15px}}
@media(max-width:600px){.hero-image{--craft-size:min(82vw,30svh);top:80px}.hero .hero-content{padding-top:calc(min(82vw,30svh) + 110px);padding-bottom:135px}.hero-signup{max-width:none;width:100%;margin-top:25px}.hero-signup h2{font-size:18px;margin-bottom:12px}.hero-signup-fields,.hero-signup-fields button{min-height:52px}.hero-signup-fields input{padding:13px 12px}.hero-signup-fields button{padding:12px 15px;gap:12px}.hero-signup-note{font-size:12px;line-height:1.5}}

/* Book and signup share the first block without overlapping. */
.hero .hero-content{width:100%;z-index:2;pointer-events:none}.hero-content a,.hero-content input,.hero-content button,.hero-signup-embed,.hero-signup-embed iframe{pointer-events:auto}.hero h1{font-size:clamp(80px,9.4vw,155px);max-width:62%}.hero .hero-content{padding-top:clamp(180px,23svh,250px);padding-bottom:160px}
@media(min-width:601px) and (max-width:900px){.hero h1{font-size:10vw}.hero-signup{max-width:56%}.hero-image{top:24%}}
@media(max-width:600px){.hero .hero-image{width:150px;right:calc(50% - 75px);top:115px}.hero .hero-content{padding-top:400px;padding-bottom:135px}.hero h1{font-size:15vw;max-width:none}.hero .hero-kicker{font-size:10px}.hero-signup{max-width:none}}
.opening-volume{transform:translate(-50%,-50%)}
#hero-title:focus{outline:none}
.opening-question{font-size:clamp(52px,8.8vw,142px)}
.opening-question>em{font-size:.94em;line-height:1.05}
@media(max-width:600px){.opening-question{font-size:12.5vw;line-height:1.05}.opening-question>em{font-size:.98em}}
