/* Shared editorial pages and navigation for the Murf Games studio. */
#world{position:absolute;height:100svh;bottom:auto}.visual-fallback{position:absolute}.journey-footer{background:var(--cream)}body[data-chapter='2'] .journey-footer{background:var(--red)}
@media(max-width:700px){#world{height:max(844px,100svh)}}
html{scroll-padding-top:30px}.skip-content{position:fixed;top:-70px;left:20px;padding:14px 20px;z-index:90;background:var(--red);color:var(--cream)}.skip-content:focus{top:10px}.main-navigation{display:flex;align-items:center;gap:25px;margin-left:auto}.main-navigation>a{font-size:14px;text-decoration:none;white-space:nowrap;padding:12px 0;border-bottom:1px solid transparent}.main-navigation>a:hover,.main-navigation>a[aria-current=page]{border-bottom-color:currentColor}.main-navigation .header-actions{margin:0 0 0 10px;gap:24px}.main-navigation .header-actions button{font-size:14px}.main-navigation .header-actions span{margin-left:8px}.main-navigation .nav-contact{color:var(--red);margin-left:25px}.menu-toggle{display:none;background:transparent;font-size:14px;min-height:44px;padding:8px 0;align-items:center;gap:20px}.menu-toggle span{font-size:24px}.direction-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.direction{white-space:normal;line-height:1.4;font-size:13px;min-height:41px}.ending-content{bottom:30px}.ending .lede{max-width:430px}.client-strip{position:relative;z-index:12;background:var(--cream);color:var(--ink);padding:65px 6%;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:7%;align-items:center;border-bottom:1px solid #28272030;--line:#28272030}.client-intro .eyebrow{font-size:12px;letter-spacing:1.2px;margin:0 0 17px}.client-intro h2{font-size:clamp(33px,3.4vw,64px);line-height:.96}.under-link{font-size:14px;line-height:1.5;text-decoration:none;display:inline-flex;align-items:center;gap:34px;border-bottom:1px solid currentColor;padding:8px 0;min-height:44px}.under-link span{font-size:23px}.client-intro .under-link{margin-top:18px}.client-logo{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;text-decoration:none}.client-logo img{height:86px;width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .3s}.client-logo:hover img{transform:translateY(-5px)}.client-logo.svt img{width:170px;max-width:90%}.client-logo span{font-size:13px;color:#6e6b61}.site-footer{position:relative;z-index:12;background:var(--cream);color:var(--ink);display:flex;align-items:center;gap:32px;padding:36px 5%;border-top:1px solid #28272020}.footer-wordmark{color:var(--red)}.site-footer p{font-size:12px;line-height:1.55;margin:0}.site-footer nav{display:flex;align-items:center;gap:25px;margin-left:auto}.site-footer nav a{font-size:13px;text-decoration:none;min-height:44px;display:flex;align-items:center}.site-footer nav a:hover{text-decoration:underline;text-underline-offset:5px}.footer-signoff{font-size:12px;letter-spacing:1.2px;margin-left:20px}.content-page .masthead{margin:0 5%}.content-page main{position:relative;z-index:3}.page-hero{padding:65px 6% 64px;display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:10%;border-bottom:1px solid var(--line);margin-bottom:64px}.page-hero h1{font-size:clamp(80px,10.7vw,174px);line-height:.83}.page-hero .eyebrow{margin-bottom:26px}.hero-aside{max-width:400px;padding-bottom:3px}.hero-aside>p{font-size:17px;line-height:1.65;margin:0 0 22px}.hero-aside>p:first-child{font-size:23px;line-height:1.45}.hero-aside .under-link{margin-top:5px;color:var(--red)}.project-feature{display:grid;grid-template-columns:1.5fr 1fr;gap:6%;margin:0 6% 85px;align-items:center;scroll-margin-top:35px}.project-image{position:relative;overflow:hidden;background:#e4decf}.project-image>img{display:block;width:100%;height:auto;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-image>img{transform:scale(1.025)}.image-tag{position:absolute;left:17px;bottom:17px;color:var(--cream);background:var(--red);font-size:12px;letter-spacing:.8px;line-height:1.3;padding:8px 11px}.feature-copy .eyebrow{font-size:12px;margin-bottom:18px}.feature-copy h2{font-size:clamp(47px,5.1vw,87px);line-height:.9}.feature-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;margin:23px 0}.project-facts{margin:25px 0 0}.project-facts>div{border-top:1px solid var(--line);display:grid;grid-template-columns:75px 1fr;gap:22px;padding:13px 0;font-size:13px;line-height:1.5}.project-facts dt{color:var(--muted)}.project-facts dd{margin:0}.work-grid{margin:0 6%;display:grid;grid-template-columns:1fr 1fr;column-gap:6%;row-gap:70px}.project-card{scroll-margin-top:35px}.project-card .project-image{aspect-ratio:1.78}.project-card .project-image img{height:100%;object-fit:cover}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-top:24px}.card-heading h2{font-size:clamp(37px,4.1vw,69px);line-height:.91}.card-heading>span{font-size:12px;letter-spacing:.65px;line-height:1.4;color:var(--red);text-align:right;max-width:105px;padding-top:4px}.project-card>p{font-size:16px;line-height:1.65;max-width:570px;margin:20px 0 0}.browser-offer{padding:85px 6%;margin-top:90px;display:grid;grid-template-columns:1fr 2fr;gap:8%;border-top:1px solid var(--line)}.browser-offer h2{font-size:clamp(55px,6.6vw,109px);line-height:.9}.browser-offer p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:680px;margin:27px 0 15px}.browser-offer .under-link{color:var(--red)}.page-cta{padding:62px 6% 70px;background:var(--red);color:var(--cream);display:grid;grid-template-columns:1.4fr 1fr;column-gap:10%;align-items:end}.page-cta>p{font-family:Georgia,serif;font-style:italic;font-size:25px;grid-column:1/-1;margin:0 0 20px}.page-cta h2{font-size:clamp(52px,6.5vw,110px);line-height:.9}.page-cta .solid-button{max-width:460px;margin-bottom:5px}.about-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:8%;margin:55px 6% 70px;align-items:center}.about-hero h1{font-size:clamp(100px,13.7vw,230px);line-height:.82}.about-hero .eyebrow{margin-bottom:30px}.about-one-line{font-size:clamp(20px,2vw,31px);line-height:1.5;margin:30px 0}.about-location{font-size:12px;letter-spacing:1.6px}.portrait{margin:0;position:relative}.portrait>img{width:100%;height:auto;display:block}.portrait figcaption{background:var(--red);color:var(--cream);font-size:12px;letter-spacing:1px;padding:15px 20px}.about-story,.practice{margin:0 6%;padding:65px 0;display:grid;grid-template-columns:1fr 1.85fr;gap:10%;border-top:1px solid var(--line)}.about-story h2{font-size:clamp(42px,5vw,76px);line-height:.92;margin-bottom:29px}.about-story>div>p{font-size:18px;line-height:1.8;max-width:720px;margin:0 0 22px}.practice{padding-bottom:80px}.practice h2{font-size:clamp(48px,5.8vw,88px);line-height:.9}.practice-list article{display:flex;gap:25px;padding:25px 0;border-bottom:1px solid var(--line)}.practice-list article:first-child{padding-top:0}.practice-list article>span{font-family:var(--display);font-size:38px;color:var(--red);line-height:1}.practice-list h3{font-size:21px;line-height:1.35;margin:0 0 9px;font-weight:600}.practice-list p{font-size:16px;line-height:1.65;margin:0;max-width:550px}.youtube-hero{margin-bottom:55px}.channel-feature{display:grid;grid-template-columns:1.5fr 1fr;gap:7%;margin:0 6% 70px;align-items:center}.channel-art{position:relative;aspect-ratio:16/10;background:var(--red);color:var(--cream);display:grid;place-items:center;padding:18%}.channel-art>.brand-mark{width:100%;height:100%}.channel-play{position:absolute;inset:0;display:grid;place-items:center;background:#28272014;font-size:36px;color:var(--cream);text-decoration:none}.channel-play:hover{background:#28272030}.channel-handle{position:absolute;left:25px;bottom:22px;font-size:12px;letter-spacing:1px}.channel-copy h2{font-size:clamp(44px,5vw,85px);line-height:.92}.channel-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;margin:24px 0}.channel-copy .solid-button{margin-top:25px;max-width:380px}.video-shell{position:relative;aspect-ratio:16/9;background:#282720;overflow:hidden}.video-poster{width:100%;height:100%;padding:0;background:#282720;display:block;position:relative}.video-poster>img{width:100%;height:100%;object-fit:cover;display:block;opacity:.86;transition:opacity .3s,transform .5s}.video-poster:hover>img{opacity:1;transform:scale(1.025)}.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74px;height:74px;background:var(--red);color:var(--cream);border:1px solid var(--cream);border-radius:50%;display:grid;place-items:center;font-size:23px;padding-left:4px}.video-embed{position:absolute;inset:0;width:100%;height:100%;border:0}.video-title{font-size:21px;line-height:1.45;max-width:700px;font-weight:600;margin:20px 0 9px}.video-link{font-size:13px;line-height:1.5;text-underline-offset:4px;color:var(--red)}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;margin:0 6% 80px;padding-top:45px;border-top:1px solid var(--line)}.video-grid .video-title{font-size:19px}.channel-note{font-size:13px;color:var(--muted);line-height:1.5;margin-top:20px}.content-page .brand-mark{width:105px;height:48px}
@media(min-width:1700px){.content-page main{max-width:1740px;margin-left:auto;margin-right:auto}.project-feature{grid-template-columns:1.5fr 1fr}}
@media(max-width:1450px){.masthead .header-label{display:none}.footer-signoff{display:none}.masthead{gap:24px}.main-navigation{gap:23px}.main-navigation .header-actions{gap:23px}.main-navigation .nav-contact{margin-left:10px}}
@media(max-width:1000px){.main-navigation{gap:18px}.main-navigation .header-actions{gap:15px;margin-left:0}.main-navigation .header-actions button{font-size:13px}.page-hero{gap:7%;grid-template-columns:1.2fr 1fr}.page-hero h1{font-size:11.2vw}.hero-aside>p:first-child{font-size:21px}.project-feature{grid-template-columns:1.2fr 1fr;gap:5%}.feature-copy h2{font-size:5.5vw}.feature-copy>p:not(.eyebrow){font-size:15px}.project-facts{margin-top:17px}.project-facts>div{gap:10px}.client-strip{gap:5%}.client-logo img{height:67px}.client-logo.svt img{width:145px}.site-footer{gap:25px}.site-footer nav{gap:18px}.about-hero{gap:6%}.channel-feature{grid-template-columns:1.3fr 1fr;gap:5%}.channel-copy h2{font-size:5.8vw}}
@media(max-width:760px){.masthead,.content-page .masthead{margin:0 6%;height:78px;gap:14px}.menu-toggle{display:flex;margin-left:auto}.main-navigation{display:none;position:absolute;left:-1px;right:-1px;top:77px;background:var(--cream);color:var(--ink);margin:0;padding:16px 22px 23px;border:1px solid #28272030;box-shadow:0 18px 24px #28272013;align-items:stretch;gap:0;z-index:60}.menu-open .main-navigation{display:flex;flex-direction:column}.main-navigation>a{font-size:18px;padding:12px 0}.main-navigation .header-actions{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line)}.main-navigation .header-actions button{font-size:16px;text-align:left;max-width:none!important;padding:12px 0}.main-navigation .nav-contact{margin-left:0;color:var(--red)}.main-navigation .skip-link{border:0}.content-page .brand-mark{width:85px;height:39px}.client-strip{padding:40px 7%;grid-template-columns:1fr 1fr;gap:35px 30px}.client-intro{grid-column:1/-1}.client-intro h2{font-size:42px}.client-intro .under-link{margin-top:9px}.client-logo{gap:15px}.client-logo img{height:54px}.client-logo.svt img{height:54px;width:100px}.client-logo span{font-size:12px}.site-footer{padding:30px 7%;display:grid;grid-template-columns:90px 1fr;gap:24px}.site-footer .brand-mark{width:85px;height:39px}.site-footer nav{grid-column:1/-1;margin:0;justify-content:space-between;gap:12px;flex-wrap:wrap}.site-footer nav a{font-size:13px}.page-hero{display:block;padding:38px 7% 35px;margin-bottom:35px}.page-hero h1{font-size:clamp(68px,16vw,110px);line-height:.86}.page-hero .eyebrow{font-size:12px;margin-bottom:22px}.hero-aside{margin-top:30px;max-width:100%}.hero-aside>p,.hero-aside>p:first-child{font-size:16px;line-height:1.65;margin:0 0 15px}.project-feature{display:block;margin:0 7% 40px}.feature-copy{padding-top:27px}.feature-copy .eyebrow{font-size:12px;margin-bottom:15px}.feature-copy h2{font-size:54px;line-height:.91}.feature-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;margin:20px 0}.project-facts>div{font-size:14px;gap:15px;grid-template-columns:74px 1fr}.image-tag{font-size:12px;left:10px;bottom:10px;padding:6px 8px}.work-grid{margin:0 7%;grid-template-columns:1fr;gap:43px}.card-heading{margin-top:20px;gap:18px}.card-heading h2{font-size:44px;line-height:.93}.card-heading>span{font-size:12px;max-width:86px}.project-card>p{font-size:16px;line-height:1.65;margin-top:16px}.browser-offer{display:block;margin-top:45px;padding:38px 7% 44px}.browser-offer .eyebrow{margin-bottom:23px}.browser-offer h2{font-size:52px;line-height:.93}.browser-offer p:not(.eyebrow){font-size:16px;line-height:1.65;margin-top:22px}.page-cta{display:block;padding:40px 7% 44px}.page-cta>p{font-size:22px;margin-bottom:19px}.page-cta h2{font-size:54px;line-height:.95}.page-cta .solid-button{margin-top:28px;max-width:none}.about-hero{display:block;margin:36px 7% 35px}.about-hero .eyebrow{margin-bottom:26px}.about-hero h1{font-size:27vw;line-height:.84}.about-one-line{font-size:23px;margin:24px 0}.about-location{display:block;margin-bottom:30px}.portrait{width:100%;max-width:470px}.portrait figcaption{padding:13px 15px}.about-story,.practice{display:block;margin:0 7%;padding:36px 0}.about-story>.eyebrow{margin-bottom:25px}.about-story h2{font-size:44px;line-height:.95;margin-bottom:24px}.about-story>div>p{font-size:16px;line-height:1.75;margin-bottom:20px}.practice .eyebrow{margin-bottom:20px}.practice h2{font-size:51px;margin-bottom:30px}.practice-list article{gap:18px;padding:23px 0}.practice-list h3{font-size:20px}.practice-list p{font-size:16px}.practice-list article>span{font-size:34px}.channel-feature{display:block;margin:0 7% 40px}.channel-copy{padding-top:29px}.channel-copy h2{font-size:49px;line-height:.95}.channel-copy>p:not(.eyebrow){font-size:16px}.channel-copy .solid-button{max-width:none}.video-grid{grid-template-columns:1fr;gap:35px;margin:0 7% 45px;padding-top:30px}.video-title,.video-grid .video-title{font-size:19px;line-height:1.4}.video-play{width:61px;height:61px;font-size:20px}.channel-handle{left:18px;bottom:17px;font-size:12px}.ending-content{bottom:auto}.direction{font-size:13px}}
@media(max-width:360px){.page-hero h1{font-size:17vw}.card-heading h2{font-size:38px}.browser-offer h2{font-size:43px}.page-cta h2{font-size:45px}.about-story h2{font-size:38px}.client-intro h2{font-size:37px}.site-footer{grid-template-columns:78px 1fr}.site-footer nav{gap:12px}.client-logo img{height:44px}.content-page .brand-mark{width:72px;height:33px}}
@media(prefers-reduced-motion:reduce){.client-logo img,.project-image img,.video-poster img{transition:none!important}}
.youtube-hero h1{font-size:clamp(68px,7.8vw,136px)}
@media(max-width:760px){.youtube-hero h1{font-size:clamp(54px,14.4vw,106px)}}
/* One row of controls keeps the playfield clear on phones. */
.game-controls{display:grid;grid-template-columns:55px 55px 1fr 1fr;gap:8px}.game-controls .game-key{width:100%}.game-controls .jump-key{gap:12px}.game-key.fire-key{font-size:14px;letter-spacing:1px;display:flex;align-items:center;justify-content:center;gap:12px}.game-key:disabled{opacity:.42;box-shadow:none;cursor:default}.game-key:disabled:active{transform:none;background:var(--cream);color:var(--red)}.target-in-range .fire-key{background:var(--red);color:var(--cream)}.bomb-icon{width:15px;height:15px;border-radius:50%;background:currentColor;position:relative;display:inline-block}.bomb-icon:before{content:'';position:absolute;width:7px;height:5px;border-top:2px solid currentColor;border-right:2px solid currentColor;right:-2px;top:-4px;border-radius:0 4px 0 0;transform:rotate(-22deg)}
@media(max-width:700px){.game-controls{grid-template-columns:45px 45px 1fr 1fr;gap:7px}.game-key.fire-key,.game-controls .jump-key{font-size:12px;letter-spacing:.5px;gap:9px}.hud-label{font-size:11px;letter-spacing:.7px}#chapter-1 h2{font-size:clamp(52px,14vw,88px)}}
@media(max-width:360px){.game-controls{grid-template-columns:40px 40px 1fr 1fr;gap:6px}.game-key.fire-key,.game-controls .jump-key{gap:6px}.bomb-icon{width:12px;height:12px}}

/* A selected idea sends a brief signal to its explanation. */
.insight{position:relative;isolation:isolate}
.insight-frame{position:absolute;inset:-12px -16px;z-index:-1;pointer-events:none;border:1px solid var(--cream);border-left-width:3px;background:#f4efdf1a;box-shadow:0 0 24px #f4efdf16;opacity:0}
.insight.has-selection .insight-frame{opacity:.28}
.insight.has-selection{border-top-color:transparent}
.discovery.is-current{box-shadow:0 0 0 5px #d71920,0 0 0 7px var(--cream)}
.discovery.is-current .node-caption{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.insight-signal{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;overflow:visible;color:var(--cream)}
.insight-signal path{fill:none;stroke:currentColor;stroke-linecap:round;vector-effect:non-scaling-stroke}
.insight-signal-track{stroke-width:1;opacity:.4;stroke-dasharray:100;stroke-dashoffset:100}
.insight-signal-pulse{stroke-width:3;stroke-dasharray:8 100;stroke-dashoffset:8;filter:drop-shadow(0 0 5px #f4efdfaa)}
.insight-signal-arrival{fill:currentColor;opacity:0}
.motion-paused .insight-signal{display:none}
@media(prefers-reduced-motion:reduce){.insight-signal{display:none}}
@media(max-width:700px){.insight-frame{inset:-12px -10px}}

/* The ad break becomes a small, playable arena. */
body[data-chapter='1'] #world,body[data-chapter='1'] .visual-fallback{display:none}
#chapter-1.arena-chapter.active{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.6fr);gap:5%;align-items:start;min-height:calc(100svh - 179px);padding:36px 5% 30px}
.arena-chapter .chapter-copy{width:100%;max-width:none;padding-top:16px}
#chapter-1.arena-chapter h2{font-size:clamp(64px,6.7vw,112px);line-height:.86}
.arena-chapter .lede{max-width:330px;margin-top:30px}
#chapter-1.arena-chapter .small-thought{display:block;max-width:285px;margin-top:32px;font:italic 26px/1.35 Georgia,serif}
.arena-description{font-size:13px;line-height:1.6;max-width:235px;margin-top:27px;color:var(--muted)}
.arena-wrap{position:relative;min-width:0;z-index:6}
.arena-hud{display:flex;align-items:center;gap:22px;color:var(--red);min-height:82px;padding:0 4px 10px}
.arena-hud-main{flex:1;min-width:0}.arena-score{display:flex;gap:17px;align-items:center}.arena-hud #game-score{font:700 32px/1 var(--display);white-space:nowrap}.arena-hud #game-score small{font-size:18px;opacity:.55}.arena-hud .hud-label{font-size:11px;letter-spacing:1.2px}.arena-hud .text-link{margin-left:auto;font-size:13px}
.arena-health{display:flex;gap:5px;font-size:16px;letter-spacing:1px}.arena-health .empty{opacity:.18}
.arena-scene{position:relative;width:100%;height:clamp(390px,45vw,620px);isolation:isolate;overflow:hidden}
#arena-canvas{display:block;width:100%;height:100%;outline:none;touch-action:none;cursor:crosshair}#arena-canvas:focus-visible{outline:none}.arena-wrap:has(#arena-canvas:focus-visible) #arena-help{color:var(--red);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.arena-overlay{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:min(340px,75%);padding:24px 26px 22px;background:transparent;border:0;box-shadow:none;text-align:center}
.arena-overlay .eyebrow{justify-content:center;font-size:10px;letter-spacing:1.4px;margin-bottom:17px}.arena-overlay h3{font:800 58px/.9 var(--display);letter-spacing:-.5px;color:var(--red);margin:0}.arena-overlay>p:not(.eyebrow){font-size:14px;line-height:1.6;margin:18px 0 21px}.arena-overlay .solid-button{width:100%;min-height:55px;font-size:13px;letter-spacing:1px}.arena-overlay .solid-button:disabled{opacity:.5}.arena-loading{font-size:12px;margin-top:10px;display:block}
.arena-bottom{padding:15px 4px 0}.arena-bottom #game-status{font:italic 21px/1.4 Georgia,serif;color:var(--ink);margin:0;text-align:center;min-height:30px}.arena-bottom .control-help{margin-top:10px;line-height:1.7;font-size:12px}.arena-bottom .solid-button{margin:14px auto 0;max-width:400px;min-height:55px}.arena-controls{display:none;align-items:center;justify-content:space-between;gap:24px;margin-top:15px}.arena-dpad{display:grid;grid-template-columns:43px 43px 43px;grid-template-rows:38px 38px;gap:5px}.arena-key{color:var(--red);border:1px solid #d7192070;background:var(--cream);font-size:23px;touch-action:none;user-select:none}.arena-key:first-child{grid-column:2}.arena-key:nth-child(2){grid-row:2;grid-column:1}.arena-key:nth-child(3){grid-row:2;grid-column:2}.arena-key:nth-child(4){grid-row:2;grid-column:3}.arena-fire{width:108px;height:66px;display:flex;align-items:center;justify-content:center;gap:14px;background:var(--red);color:var(--cream);border:1px solid var(--red);font-size:14px;letter-spacing:1px;touch-action:none;user-select:none;box-shadow:0 5px 0 #941015}.arena-key.pressed{background:var(--red);color:var(--cream)}.arena-fire.pressed{transform:translateY(4px);box-shadow:none}.arena-controls button:disabled{opacity:.3;cursor:default}.arena-boss{width:100%;max-width:350px;display:flex;flex-direction:column;gap:5px;color:var(--red)}
.arena-boss-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;line-height:1}.arena-boss-heading>span{font:700 25px/1 var(--display);letter-spacing:.6px}.arena-boss-heading>strong{font:700 28px/1 var(--display);transform-origin:right center;white-space:nowrap}.arena-boss-heading small{font-size:16px;opacity:.6}
.arena-boss-segments{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;transform-origin:center}.arena-boss-segments span{height:15px;background:var(--red);border:1px solid var(--red);box-shadow:0 2px 0 #95131a}.arena-boss-segments span.empty{background:transparent;border-color:#28272040;box-shadow:none}
.arena-boss-caption{display:flex;gap:9px;align-items:baseline;min-height:13px;font-size:10px;line-height:1.3;letter-spacing:.6px;text-transform:uppercase}.arena-boss-caption strong{font-size:12px;line-height:1;display:inline-block}.arena-boss-caption strong:empty{display:none}.arena-boss.is-defeated .arena-boss-caption{color:var(--ink)}
.level-clear .arena-controls,.level-clear .arena-bottom .control-help{display:none}
@media(max-height:850px) and (min-width:1001px){.arena-scene{height:390px}#chapter-1.arena-chapter h2{font-size:clamp(64px,6vw,98px)}#chapter-1.arena-chapter{padding-top:22px}.arena-chapter .chapter-copy{padding-top:10px}}
@media(max-width:1000px) and (min-width:701px){#chapter-1.arena-chapter.active{gap:3%;grid-template-columns:minmax(0,.65fr) minmax(0,1.4fr);padding:24px 4% 30px}#chapter-1.arena-chapter h2{font-size:7.5vw}.arena-hud{gap:10px}.arena-score{gap:10px}.arena-hud .hud-label{max-width:95px;line-height:1.4}.arena-health{gap:2px;font-size:13px}.arena-scene{height:470px}.arena-overlay{width:80%;padding:20px}.arena-overlay h3{font-size:49px}}
@media(hover:none),(pointer:coarse){.arena-controls{display:flex}.arena-bottom .control-help{font-size:11px}}
@media(max-width:700px){#chapter-1.arena-chapter.active{display:block;padding:28px 6% 30px;min-height:0}.arena-chapter .chapter-copy{padding:0}.arena-chapter .eyebrow{margin-bottom:15px}#chapter-1.arena-chapter h2{font-size:clamp(46px,13vw,80px);max-width:500px}#chapter-1.arena-chapter h2 br:first-child{display:none}.arena-chapter .lede{font-size:15px;line-height:1.5;margin-top:17px}.arena-chapter .lede br{display:none}#chapter-1.arena-chapter .small-thought{font-size:20px;line-height:1.4;max-width:none;margin:14px 0 24px}.arena-description{display:none}.arena-hud{gap:11px;min-height:82px;padding-bottom:10px}.arena-hud .hud-label{font-size:9px;letter-spacing:.5px;max-width:99px;line-height:1.5}.arena-score{gap:10px}.arena-hud #game-score{font-size:27px}.arena-hud #game-score small{font-size:15px}.arena-health{gap:0;font-size:12px;letter-spacing:1px}.arena-hud .text-link{font-size:12px}.arena-scene{height:380px;margin:0 -4%;width:108%}.arena-overlay{width:75%;padding:19px 20px;top:46%}.arena-overlay .eyebrow{font-size:9px;letter-spacing:.7px}.arena-overlay h3{font-size:46px}.arena-overlay>p:not(.eyebrow){font-size:13px;margin:14px 0 16px}.arena-overlay .solid-button{min-height:49px}.arena-bottom{padding-top:13px}.arena-bottom #game-status{font-size:18px;min-height:0}.arena-controls{display:flex}.arena-bottom .control-help{font-size:11px;max-width:290px;margin:12px auto 0}.arena-boss-heading>span{font-size:20px;letter-spacing:.2px}.arena-boss-heading>strong{font-size:24px}.arena-boss-heading small{font-size:13px}.arena-boss-segments{gap:4px}.arena-boss-segments span{height:13px}.arena-boss-caption{gap:5px;font-size:9px;letter-spacing:0}.arena-boss-caption strong{font-size:11px}.arena-bottom .solid-button{max-width:none}}

.arena-hud .arena-pause{margin-left:auto;width:30px;font-size:19px;min-height:38px}.arena-hud .arena-pause:disabled{opacity:.3}.arena-hud #game-reset{margin-left:0}.arena-is-paused .arena-scene:after{content:'PAUSED';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:17px 26px;border:1px solid var(--red);background:#f4efdfeb;color:var(--red);font:700 35px/1 var(--display);letter-spacing:2px;pointer-events:none}.arena-touch-help{display:none}
@media(max-width:700px){.arena-scene{height:340px}.arena-wrap{scroll-margin-top:12px}.arena-desktop-help{display:none}.arena-touch-help{display:inline}.arena-hud{gap:8px}}
@media(hover:none),(pointer:coarse){.arena-desktop-help{display:none}.arena-touch-help{display:inline}}

/* v7: the arena fills the stage. HUD and hints sit in the empty corners around the isometric playfield. */
#chapter-1 #game-score,.arena-boss-heading>strong{font-variant-numeric:tabular-nums}
.arena-scene{-webkit-mask-image:linear-gradient(90deg,#0000,#000 4%,#000 96%,#0000),linear-gradient(#0000,#000 3%,#000 97%,#0000);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,#0000,#000 4%,#000 96%,#0000),linear-gradient(#0000,#000 3%,#000 97%,#0000);mask-composite:intersect}
.arena-overlay{isolation:isolate;width:min(420px,72%);padding:30px 36px 26px}
.arena-overlay:before{content:'';position:absolute;inset:-9% -16%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#f4efdf 62%,#f4efdfc7 78%,#f4efdf00)}
.arena-overlay h3{font-size:clamp(52px,5vw,78px)}
.control-help kbd{display:inline-block;min-width:21px;padding:3px 6px 2px;margin:0 1px;border:1px solid #d7192055;border-bottom-width:2px;border-radius:4px;background:#fffbed;color:var(--red);font:600 11px/1.2 var(--sans);text-align:center}
.arena-wrap:has(#arena-canvas:focus-visible) #arena-help{text-decoration:none}
@media(min-width:1001px){
 #chapter-1.arena-chapter.active{grid-template-columns:minmax(250px,.5fr) minmax(0,2fr);gap:3.5%;padding:20px 4% 18px 5%}
 #chapter-1.arena-chapter h2{font-size:clamp(52px,min(5.4vw,8.6svh),100px)}
 .arena-chapter .chapter-copy{padding-top:14px}
 #chapter-1.arena-chapter .small-thought{font-size:23px}
 .arena-scene{height:clamp(380px,calc(100svh - 460px),680px)}
}
@media(min-width:701px) and (max-width:1000px){
 #chapter-1.arena-chapter.active{display:block;padding:24px 5% 28px}
 .arena-chapter .chapter-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 6%;align-items:end;padding:0 0 18px}
 .arena-chapter .chapter-copy .eyebrow{grid-column:1/-1}
 #chapter-1.arena-chapter h2{font-size:clamp(56px,7.4vw,74px)}
 .arena-chapter .lede{margin:0;max-width:none}
 #chapter-1.arena-chapter .small-thought,.arena-description{display:none}
 .arena-scene{height:clamp(380px,calc(100svh - 480px),66vw)}
}
@media(min-width:701px) and (hover:hover) and (pointer:fine){
 .arena-hud{position:absolute;inset:0 0 auto;z-index:4;min-height:0;padding:8px 10px 0;align-items:flex-start;pointer-events:none}
 .arena-hud button{pointer-events:auto}
 .arena-bottom{position:absolute;inset:auto 0 0;z-index:4;padding:0 10px 8px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;pointer-events:none}
 .arena-bottom button{pointer-events:auto}
 .arena-bottom #game-status{text-align:left;max-width:48%;font-size:20px}
 .arena-bottom .control-help{margin:0;text-align:right;line-height:2}
 .arena-bottom #game-next{position:absolute;left:0;right:0;bottom:8px;margin:0 auto;width:min(400px,42%)}
 .level-clear .arena-bottom #game-status{max-width:28%}
}
@media(min-width:1001px) and (hover:hover) and (pointer:fine){.arena-scene{height:clamp(440px,calc(100svh - 217px),900px)}}
@media(max-width:700px){
 .arena-scene{height:clamp(300px,82vw,400px);width:100vw;margin:0 calc(50% - 50vw)}
 .arena-overlay{width:78%;padding:16px 18px}
 .arena-overlay:before{inset:-4% -12%;background:radial-gradient(closest-side,#f4efdf 58%,#f4efdfc0 78%,#f4efdf00)}
 .arena-overlay h3{font-size:48px}
 .footer-control{flex:0 0 auto}
}

/* Premium finish: crisper type, calmer motion curves, tactile controls. All CSS, nothing that runs per frame. */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-color:var(--red) var(--cream)}
h1,h2,h3{font-kerning:normal;text-rendering:optimizeLegibility}p{text-wrap:pretty}
::selection{background:var(--red);color:var(--cream)}
.solid-button{transition:background .25s ease,transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s cubic-bezier(.2,.8,.2,1)}
.solid-button>span{transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.solid-button:hover{box-shadow:0 18px 30px -18px #8f0e13}.solid-button:hover>span{transform:translateX(4px)}
.solid-button:active{transform:translateY(0) scale(.985);transition-duration:.1s}
.solid-button.cream:hover{box-shadow:0 18px 30px -18px #4d060980}
.under-link span{transition:transform .45s cubic-bezier(.2,.8,.2,1)}.under-link:hover span{transform:translate(3px,-3px)}
.main-navigation>a{position:relative;border-bottom:0}
.main-navigation>a:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.main-navigation>a:hover:after,.main-navigation>a[aria-current=page]:after{transform:scaleX(1);transform-origin:left}
.chapter:before{transition:height .3s ease,background .3s ease}.chapter:hover{color:var(--red)}
.direction{transition:background .2s ease,color .2s ease,border-color .2s ease}.direction:not(.active):hover{border-color:var(--red);background:#d719200d}
.arena-key,.arena-fire{transition:transform .12s ease,background .12s ease,box-shadow .12s ease}
.ending-content{backdrop-filter:none;background:#f4efdffa;box-shadow:0 30px 60px -40px #28272055}
@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}
::view-transition-old(root),::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
@media(max-width:760px){.main-navigation>a:after{display:none}.main-navigation>a[aria-current=page]{color:var(--red)}}
