@font-face{font-family:Inter;src:local('Inter');font-display:swap}
:root{color-scheme:light dark;--page:#edf1f3;--ink:#151c22;--muted:#646f77;--quiet:#8c969d;--line:rgba(31,51,65,.16);--glass:rgba(244,249,251,.26);--glass-edge:rgba(255,255,255,.82);--shadow:rgba(31,53,67,.12);--tint:#b3d8ea;--solid:#162128;--solid-text:#f4f8fa;--header-ink:#14232e;--theme-wash:rgba(237,241,243,.2)}
@media(prefers-color-scheme:dark){:root{--page:#090d11;--ink:#f1f5f7;--muted:#a1adb6;--quiet:#788792;--line:rgba(221,236,246,.16);--glass:rgba(182,215,234,.065);--glass-edge:rgba(235,249,255,.42);--shadow:rgba(0,0,0,.25);--tint:#a8d5ec;--solid:#e3f1f8;--solid-text:#121b22;--header-ink:#e6f4fb;--theme-wash:rgba(9,13,17,.15)}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--page);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}::selection{color:#0c1e2b;background:#badbed}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #37a2e2;outline-offset:6px}button:disabled{cursor:default;opacity:.4}button[hidden],div[hidden],[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:10px;left:10px;z-index:99;padding:16px;background:var(--solid);color:var(--solid-text);transform:translateY(-160%)}.skip-link:focus{transform:none}.section-wrap{max-width:1440px;margin:auto;padding-inline:6.25vw}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:1.5;margin:0 0 30px}.quiet{color:var(--quiet)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.065em;font-weight:600}h2{font-size:clamp(3.5rem,6.1vw,6.75rem);line-height:1.01;margin-bottom:32px}.glass{position:relative;isolation:isolate;background:var(--glass);border:1px solid var(--glass-edge);border-bottom-color:rgba(115,151,176,.24);border-right-color:rgba(162,193,212,.26);box-shadow:inset 1px 1px 1px rgba(255,255,255,.75),inset -1px -1px 2px rgba(107,148,177,.3),inset 0 0 12px rgba(255,255,255,.09),0 8px 30px -10px var(--shadow);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5)}.glass:before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,20%) var(--light-y,0%),rgba(255,255,255,.34),transparent 55%),linear-gradient(140deg,rgba(255,255,255,.08) 15%,transparent 40%,rgba(170,216,248,.05) 72%,rgba(255,255,255,.19))}.glass:after{content:'';position:absolute;inset:1px;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px 1px rgba(255,255,255,.38),inset 0 -1px 1px rgba(255,255,255,.22);z-index:1}.site-header{position:absolute;top:0;left:0;width:100%;height:112px;padding:30px 4vw;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:20;color:var(--header-ink)}.wordmark{display:flex;align-items:center;font-size:3.15rem;font-weight:750;letter-spacing:-.1em;line-height:1}.wordmark-symbol{display:inline-block;white-space:nowrap}.wordmark-dot{padding-right:0}.wordmark-name{margin-left:17px;font-size:1rem;font-weight:650;letter-spacing:-.04em}.nav-capsule{display:flex;align-items:center;gap:5px;padding:6px;border-radius:100px}.nav-capsule a{font-size:.875rem;font-weight:500;padding:12px 20px;border-radius:100px;transition:background .25s}.nav-capsule a:hover{background:rgba(255,255,255,.22)}.header-twitch{display:flex;gap:12px;align-items:center;padding:14px 20px;border-radius:100px;font-size:.875rem;font-weight:600}.small{width:15px;height:15px}.header-twitch>svg:first-child{width:18px;height:18px}.hero{min-height:800px;height:100svh;position:relative;max-height:1400px;overflow:clip;display:flex;align-items:center}.hero-scene{position:absolute;inset:0;transform-origin:65% 30%;will-change:transform}.hero-image{position:absolute;width:72%;height:100%;right:0;object-fit:cover;object-position:50% 28%;filter:saturate(.62);mask-image:linear-gradient(to right,transparent,#000 25%);-webkit-mask-image:linear-gradient(to right,transparent,#000 25%)}.refraction-canvas{position:absolute;right:0;width:72%;height:100%;opacity:0;mask-image:linear-gradient(to right,transparent,#000 25%);-webkit-mask-image:linear-gradient(to right,transparent,#000 25%);transition:opacity .8s}.refraction-canvas.ready{opacity:1}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--page) 0%,color-mix(in srgb,var(--page) 93%,transparent) 19%,transparent 68%),linear-gradient(0deg,var(--page) 0%,transparent 28%),var(--theme-wash)}.hero-content{position:relative;z-index:2;padding:135px 0 130px 6.25vw;width:65%;max-width:1000px;will-change:transform,opacity}.hero-content .eyebrow{display:flex;gap:12px;align-items:center}.eyebrow-line{width:28px;height:1px;background:currentColor}.hero h1{font-size:clamp(5.2rem,9.7vw,10.5rem);line-height:.97;margin:0 0 35px;font-weight:650}.title-period{color:var(--muted)}.hero-description{font-size:clamp(1rem,1.2vw,1.25rem);color:var(--muted);line-height:1.6;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:58px;padding:17px 25px;border-radius:100px;font-size:.9375rem;font-weight:550;transition:transform .3s,box-shadow .3s}.button:hover{transform:translateY(-3px);box-shadow:0 9px 24px -10px var(--shadow)}.button svg{width:20px;height:20px}.button-arrow{margin-left:12px}.primary-button{background:var(--solid);color:var(--solid-text);box-shadow:inset 0 1px 1px rgba(255,255,255,.3)}.hero-nameplate{position:absolute;z-index:3;right:7vw;bottom:19%;display:flex;align-items:center;gap:16px;padding:16px 24px 16px 14px;border-radius:27px;color:#f8fcff;background:rgba(139,171,187,.12);will-change:transform}.nameplate-monogram{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:16px;font-size:2rem;font-weight:700;letter-spacing:-.1em;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 1px rgba(255,255,255,.45)}.hero-nameplate strong{display:block;font-size:.9375rem;font-weight:600;letter-spacing:-.02em;margin-bottom:4px}.hero-nameplate small{font-size:.75rem;color:#d9e7ee}.hero-nameplate>svg{margin-left:16px}.hero-bottom{position:absolute;bottom:35px;left:6.25vw;right:6.25vw;display:flex;align-items:center;justify-content:space-between;z-index:3}.scroll-cue{display:flex;align-items:center;gap:16px;font-size:.8125rem}.scroll-circle{display:flex;align-items:center;justify-content:center;border-radius:50%;width:44px;height:44px}.scroll-circle svg{width:16px;height:16px}.hero-coordinate{font-size:.75rem;letter-spacing:.16em;color:var(--muted)}.section-heading{max-width:1440px;margin:0 auto;padding:140px 6.25vw 65px;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:0 70px}.section-heading>.eyebrow{grid-column:1/-1}.section-heading h2{grid-column:1/-1;margin-bottom:0}.section-heading>p:last-child{justify-self:end;color:var(--muted);font-size:1rem;line-height:1.7;margin-bottom:8px}.reel-scroll{height:175svh;position:relative;padding:0 3vw}.reel-sticky{position:sticky;top:4svh;height:90svh;min-height:520px;display:flex;align-items:center;perspective:1800px}.reel-stage{position:relative;width:100%;height:100%;min-height:520px;overflow:hidden;border-radius:34px;background:#12202a;color:#fff;transform-origin:50% 70%;will-change:transform,opacity;isolation:isolate;box-shadow:0 25px 60px -40px rgba(0,0,0,.5)}.reel-image{position:absolute;inset:-8%;background:url('/assets/haeschmaenjr.webp') center 55%/cover;filter:saturate(.45);transform:scale(1.04);opacity:.6;transition:opacity 1.2s}.media-mount{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity 1s}.media-playing .media-mount{opacity:1}.media-playing .reel-image{opacity:0}.media-mount iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}.media-mount video{width:100%;height:100%;object-fit:cover;display:block}.reel-vignette{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(4,13,20,.67),rgba(4,13,20,.05) 80%),linear-gradient(0deg,rgba(0,7,13,.6),transparent 60%);pointer-events:none}.reel-top{position:absolute;top:32px;left:32px;right:32px;z-index:3;display:flex;align-items:center;justify-content:space-between}.media-label{display:flex;align-items:center;gap:9px;border-radius:50px;padding:10px 16px;font-size:.875rem;font-weight:550}.media-label svg{width:19px;height:19px}.reel-index{font-size:.75rem;letter-spacing:.14em}.reel-copy{position:absolute;bottom:65px;left:6.5vw;z-index:3;max-width:70%;pointer-events:none}.reel-copy .button{pointer-events:auto}.reel-copy .eyebrow{margin-bottom:20px;color:#d9e8ef}.reel-copy h3{font-size:clamp(3.75rem,8vw,8.75rem);line-height:.98;margin:0 0 32px}.reel-copy .button{background:rgba(188,212,228,.12)}.media-controls{position:absolute;right:32px;bottom:35px;z-index:5;display:flex;gap:3px;align-items:center;padding:6px;border-radius:40px;background:rgba(177,205,226,.12);backdrop-filter:blur(20px)}.media-controls button{border:0;background:none;height:40px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 12px;font-size:.8125rem;border-radius:30px}.media-controls button:hover{background:rgba(255,255,255,.13)}.media-controls svg{width:17px;height:17px}.control-divider{height:16px;width:1px;background:rgba(255,255,255,.22)}.media-note{position:absolute;right:35px;bottom:90px;z-index:5;font-size:.8125rem;line-height:1.6;max-width:260px;text-align:right;color:#e7f1f8;margin:0}.twitch-scroll{height:150svh;position:relative;padding:0 6.25vw;margin-top:-25svh}.twitch-sticky{position:sticky;top:8svh;height:80svh;min-height:520px;perspective:1800px}.twitch-stage{transform-origin:50% 50%}.twitch-poster{background-position:center 80%;filter:saturate(.3) hue-rotate(15deg);opacity:.55}.about{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;padding-block:140px 170px}.about-portrait{position:relative;padding-bottom:23px;perspective:1000px}.portrait-frame{aspect-ratio:1;overflow:hidden;border-radius:26px;transform:rotate(-3deg);box-shadow:0 26px 70px -30px var(--shadow)}.portrait-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.7);transition:transform 1s}.about-portrait:hover img{transform:scale(1.045)}.portrait-caption{position:absolute;bottom:0;left:8%;right:-2%;padding:20px;border-radius:20px;text-align:center;font-size:.8125rem;transform:rotate(3deg);color:var(--ink);background:color-mix(in srgb,var(--page) 55%,transparent)}.about-copy p:not(.eyebrow){max-width:470px;font-size:1.0625rem;line-height:1.8;color:var(--muted)}.text-link{display:inline-flex;gap:24px;align-items:center;font-size:.9375rem;margin-top:14px;border-bottom:1px solid var(--ink);padding-bottom:10px}.text-link svg{width:19px;height:19px;transition:transform .25s}.text-link:hover svg{transform:translate(3px,-3px)}.connect{padding-block:0 125px;display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start}.connect-intro h2{font-size:clamp(3.4rem,5.5vw,6rem)}.connect-intro>p:last-child{color:var(--muted);font-size:1rem;line-height:1.8}.social-links{padding-top:34px}.social-link{border-top:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:27px 0;transition:padding .35s}.social-link:last-child{border-bottom:1px solid var(--line)}.social-link:hover{padding-left:12px}.social-icon{width:52px;height:52px;border-radius:17px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.social-icon svg{width:23px;height:23px}.social-text{display:flex;flex-direction:column;gap:7px}.social-text strong{font-size:1.375rem;letter-spacing:-.035em;font-weight:550}.social-text>span{font-size:.8125rem;line-height:1.5;color:var(--muted)}.social-handle{display:none}.social-arrow{width:22px;height:22px;margin-left:auto;transition:transform .35s}.social-link:hover .social-arrow{transform:translate(4px,-4px)}.site-footer{padding:0 6.25vw 30px;overflow:clip}.footer-wordmark{display:flex;align-items:center;justify-content:space-between;font-size:clamp(3.2rem,11.4vw,12rem);font-weight:650;letter-spacing:-.065em;line-height:1.2;padding-block:24px 40px;border-top:1px solid var(--line)}.footer-wordmark>span{font-weight:300;letter-spacing:0;font-size:.6em;transition:transform .35s}.footer-wordmark:hover>span{transform:translate(5px,-5px)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted)}.theme-status{display:flex;align-items:center;gap:9px}.theme-status>span{font-size:1rem}.js .reveal{opacity:0;transform:translateY(32px);transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:1650px){.hero-content{padding-left:max(6.25vw,calc((100vw - 1500px)/2))}.social-handle{display:block;font-size:.75rem;color:var(--muted);margin-left:auto}.social-arrow{margin-left:10px}}
@media(max-width:1050px){.wordmark-name{display:none}.hero{min-height:740px}.hero-content{width:75%}.hero-image,.refraction-canvas{width:83%}.hero h1{font-size:11.5vw}.hero-nameplate{right:5vw;bottom:16%;padding:13px 17px 13px 12px;gap:12px}.hero-nameplate small{font-size:.75rem}.hero-nameplate>svg{display:none}.hero-shade{background:linear-gradient(90deg,var(--page),color-mix(in srgb,var(--page) 86%,transparent) 16%,transparent 80%),linear-gradient(0deg,var(--page),transparent 25%),var(--theme-wash)}.about{gap:6vw;padding-block:100px 130px}.connect{grid-template-columns:1fr;gap:30px}.social-links{padding-top:0}.social-handle{display:block;margin-left:auto;font-size:.8125rem;color:var(--muted)}.social-arrow{margin-left:10px}.connect-intro{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.connect-intro .eyebrow{grid-column:1/-1}.connect-intro>p:last-child{align-self:end;justify-self:end}.section-heading{padding-top:100px}.reel-copy{bottom:95px}.media-controls{bottom:26px}}
@media(max-width:650px){html{scroll-padding-top:30px}.site-header{height:96px;padding:22px 6vw;gap:14px}.wordmark{font-size:2.9rem}.wordmark-dot{padding-right:0}.nav-capsule{gap:0;margin-left:auto;padding:4px}.nav-capsule a{font-size:.75rem;padding:10px 12px}.nav-capsule a:nth-child(2){display:none}.header-twitch{padding:13px;gap:0}.header-twitch span,.header-twitch .small{display:none}.hero{height:100svh;min-height:720px;max-height:1050px;align-items:flex-end}.hero-image,.refraction-canvas{width:100%;height:77%;top:0;object-position:54% 15%;mask-image:none;-webkit-mask-image:none}.hero-image{filter:saturate(.6)}.hero-shade{background:linear-gradient(0deg,var(--page) 7%,color-mix(in srgb,var(--page) 94%,transparent) 25%,color-mix(in srgb,var(--page) 58%,transparent) 49%,transparent 78%),var(--theme-wash)}.hero-content{padding:0 6.25vw 130px;width:100%;max-width:none}.hero .eyebrow{font-size:.75rem;letter-spacing:.15em;margin-bottom:19px}.hero h1{font-size:clamp(3.5rem,16.5vw,7rem);line-height:.97;margin-bottom:24px}.hero-description{font-size:.9375rem;line-height:1.6;margin-bottom:25px;color:var(--muted)}.button{font-size:.8125rem;min-height:54px;padding:15px 21px}.hero .button{gap:11px}.button-arrow{margin-left:0}.hero-nameplate{top:27%;bottom:auto;right:6vw;border-radius:19px;padding:11px 15px 11px 10px;gap:10px}.nameplate-monogram{width:37px;height:37px;font-size:1.6rem;border-radius:11px}.hero-nameplate strong{font-size:.75rem;margin-bottom:0}.hero-nameplate small{display:none}.hero-bottom{bottom:25px;left:6.25vw;right:6.25vw}.hero-coordinate{font-size:.75rem;letter-spacing:.08em;max-width:115px;text-align:right;line-height:1.6}.scroll-cue{font-size:.75rem;gap:10px}.scroll-circle{width:40px;height:40px}.section-heading{padding:85px 6.25vw 40px;display:block}.eyebrow{font-size:.75rem;margin-bottom:25px}h2{font-size:clamp(2.8rem,10.5vw,4rem);line-height:1.03}.section-heading>p:last-child{font-size:.9375rem;margin:25px 0 0}.reel-scroll{padding:0 4vw;height:145svh}.reel-sticky{height:78svh;min-height:510px;top:8svh}.reel-stage{border-radius:24px;min-height:510px}.reel-top{top:20px;left:20px;right:20px}.media-label{padding:9px 13px;font-size:.75rem;gap:8px}.media-label svg{width:17px;height:17px}.reel-index{font-size:.75rem}.reel-copy{left:7vw;bottom:100px;max-width:90%}.reel-copy h3{font-size:clamp(3.4rem,13vw,5rem);margin-bottom:25px}.reel-copy .eyebrow{font-size:.75rem;letter-spacing:.15em;margin-bottom:20px}.media-controls{bottom:22px;right:20px}.media-controls button{font-size:.75rem;padding:0 10px}.media-note{left:24px;right:24px;bottom:25px;text-align:left;font-size:.75rem;max-width:80%;line-height:1.5}.twitch-scroll{padding:0 4vw;height:135svh;margin-top:-17svh}.twitch-sticky{height:78svh;min-height:510px;top:10svh}.about{grid-template-columns:1fr;gap:70px;padding-top:55px;padding-bottom:100px}.about-portrait{margin:0 4vw}.portrait-caption{font-size:.75rem;padding:18px 10px;left:4%;right:-4%}.about-copy p:not(.eyebrow){font-size:1rem;line-height:1.75}.about-copy h2{font-size:3.7rem}.connect{padding-bottom:70px;gap:15px}.connect-intro{display:block}.connect-intro h2{font-size:clamp(2.7rem,10.8vw,3.5rem)}.connect-intro>p:last-child{font-size:.9375rem}.social-link{gap:16px;padding-block:24px}.social-icon{width:46px;height:46px;border-radius:15px}.social-text strong{font-size:1.25rem}.social-text>span{font-size:.75rem;max-width:215px}.social-handle{display:none}.social-arrow{width:19px;height:19px;margin-left:auto}.site-footer{padding-bottom:24px}.footer-wordmark{font-size:10.65vw;padding-block:22px 27px}.footer-bottom{display:grid;grid-template-columns:1fr auto;font-size:.75rem;gap:15px}.footer-bottom>span:nth-child(2){justify-self:end}.theme-status{justify-self:end}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.reel-scroll,.twitch-scroll{height:auto;padding-bottom:35px;margin-top:0}.reel-sticky,.twitch-sticky{position:relative;top:auto;height:80svh}.hero-scene,.hero-content,.hero-nameplate,.reel-stage{transform:none!important;opacity:1!important;will-change:auto}.refraction-canvas{display:none}.hero-image{transform:none!important}}
@media(prefers-reduced-transparency:reduce){.glass{background:var(--page);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.hero-nameplate,.reel-stage .glass{background:#192b36;color:white}.refraction-canvas{display:none}.portrait-caption{background:var(--page)}}

.hero-preview{position:absolute;z-index:3;right:6.25vw;top:18%;width:230px;border-radius:22px;padding:7px;background:rgba(134,170,193,.12);color:#f8fcff;transform:rotate(4deg);overflow:hidden}
.hero-preview video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:15px;background:#11202a}
.hero-preview-caption{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 1px;gap:8px;font-size:.75rem}
.hero-preview-caption button{display:flex;align-items:center;justify-content:center;border:0;background:rgba(230,248,255,.12);border-radius:50%;min-width:36px;min-height:36px}
.hero-preview-caption svg{width:15px;height:15px}
.media-note:not(:empty){background:rgba(7,17,24,.65);padding:9px 13px;border-radius:12px;backdrop-filter:blur(10px)}
@media(max-width:1050px){.hero-preview{width:185px;right:5vw;top:20%}.hero-preview-caption>a{max-width:90px;line-height:1.35}}
@media(max-width:650px){.hero-preview{width:155px;right:6vw;top:21%;border-radius:19px;padding:5px}.hero-preview video{border-radius:13px}.hero-preview-caption{padding:3px 4px 0;font-size:.75rem}.hero-preview-caption>a{max-width:94px;line-height:1.25}.hero-preview-caption button{min-width:30px;min-height:32px}.hero-nameplate{display:none}.media-note{bottom:85px;max-width:85%}}

[data-media="youtube"] .reel-image{background-image:url('/assets/haeschmaenjr.webp');opacity:.7}
.twitch-poster{background-image:url('/assets/twitch-poster.webp');background-position:center;opacity:.65}
.media-note:not(:empty){bottom:auto;top:93px}
@media(max-width:650px){.media-note:not(:empty){top:80px}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero-controls{display:flex;align-items:center;gap:2px}
.hero-preview-caption button{min-width:32px;min-height:36px}
.hero-preview .media-note:not(:empty){top:12px;left:12px;right:12px;bottom:auto;font-size:.75rem;text-align:center;max-width:100%;padding:8px}
@media(max-width:650px){.hero-preview{width:175px}.hero-preview-caption>a{max-width:72px}.hero-controls{gap:0}.hero-preview-caption button{min-width:32px;min-height:36px}}
@media(prefers-reduced-motion:reduce){.hero-preview{transform:none!important}}

/* The opening mark travels into the existing header; the page stays scrollable. */
.brand-intro{display:none}
.js .brand-intro{display:block;height:100svh;position:relative}
.js .site-header{top:100svh}
.intro-cover{position:fixed;inset:0;background:var(--page);z-index:21;pointer-events:none;will-change:opacity}
.intro-wordmark{display:none;position:fixed;left:4vw;top:30px;z-index:50;font-size:3.15rem;font-weight:750;letter-spacing:-.07em;line-height:1;white-space:nowrap;color:#fff;mix-blend-mode:difference;text-decoration:none;-webkit-font-smoothing:antialiased}
.js .intro-wordmark{display:block;visibility:hidden}
.intro-ready .intro-wordmark{visibility:visible}
.intro-initial{display:inline-block;letter-spacing:-.1em}
.intro-tail{position:absolute;left:100%;top:0;display:block;transform-origin:left center;pointer-events:none}
.intro-dot{position:absolute;left:100%;top:0;display:block;letter-spacing:-.1em;opacity:0;pointer-events:none}
.intro-complete .intro-wordmark:after{content:"";position:absolute;inset:-8px -18px -8px -8px}
.intro-continue{position:fixed;bottom:max(40px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:24;display:flex;flex-direction:column;align-items:center;gap:13px;padding:12px 22px;color:var(--muted);font-size:.75rem;letter-spacing:.08em}
.intro-continue svg{width:21px;height:21px}
.js .wordmark-symbol{visibility:hidden}
.js .wordmark-name,.js .nav-capsule,.js .header-twitch{opacity:var(--header-reveal,0)}
.intro-complete .intro-cover,.intro-complete .intro-continue{visibility:hidden;pointer-events:none}
.intro-complete .wordmark-symbol{visibility:hidden}
.intro-complete .intro-tail{visibility:hidden}
.hero-preview-caption>a{line-height:1.25}
.hero-preview-caption>a:hover{text-decoration:underline;text-underline-offset:3px}

/* Live video and chat remain fully visible and use Twitch's own controls. */
.stream-section{padding-block:110px 0}
.stream-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:18px 26px;margin-bottom:36px}
.stream-heading h2{margin:0}
.stream-heading>p{margin:0;color:var(--muted);font-size:.875rem}
.stream-heading>.text-link{margin-left:auto}
#stream-status[data-state="online"]{color:var(--ink)}
#stream-status[data-state="online"]:before{content:'';display:inline-block;width:7px;height:7px;margin-right:9px;vertical-align:2px;border-radius:50%;background:#50ae82}
.stream-layout{display:grid;grid-template-columns:minmax(400px,1fr) 320px;gap:22px;align-items:stretch}
.stream-video-column{min-width:0}
.live-player-shell{position:relative;display:none;min-height:300px;aspect-ratio:16/9;background:#0e0e10}
.js .live-player-shell{display:block}
#live-player{position:absolute;inset:0;height:100%;min-height:300px;width:100%}
#live-player iframe{display:block;width:100%;height:100%;min-height:300px;border:0}
.stream-fallback{font-size:.875rem;line-height:1.7;color:var(--muted);margin:18px 0 0}
.stream-fallback a{white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.stream-chat-column{min-width:0;border:1px solid var(--line);display:flex;flex-direction:column;background:var(--glass)}
.chat-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}
.chat-heading h3{font-size:.9375rem;letter-spacing:-.01em;margin:0;font-weight:550}
.chat-heading a{display:grid;place-items:center;min-width:30px;min-height:30px}
.chat-heading svg{width:18px;height:18px}
#live-chat{position:relative;flex:1;min-height:330px}.chat-fallback{display:block;padding:24px 18px;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
#live-chat iframe{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:330px;border:0}

/* One gaming tab: favorite games first, devices second. */
.gaming-profile{grid-column:1/-1;width:100%;margin-top:-15px}
.profile-tablist{display:grid;grid-template-columns:1fr 1fr;width:min(100%,360px);padding:6px;border-radius:100px;position:relative;isolation:isolate;margin-bottom:32px}
.profile-tablist button{position:relative;z-index:2;min-height:50px;padding:13px 16px;border:0;border-radius:100px;background:transparent;font-size:.875rem;line-height:1.4;color:var(--muted);transition:color .3s}
.profile-tablist button[aria-selected="true"]{color:var(--ink);font-weight:600}
.profile-tab-indicator{position:absolute;z-index:0;top:6px;bottom:6px;left:6px;width:calc((100% - 12px)/2);border-radius:100px;background:color-mix(in srgb,var(--page) 72%,transparent);box-shadow:inset 0 1px 1px var(--glass-edge),0 3px 12px var(--shadow);border:1px solid var(--line);transition:transform .38s cubic-bezier(.22,.7,.22,1)}
.profile-tablist[data-active="other"] .profile-tab-indicator{transform:translateX(100%)}
.profile-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0;animation:profile-panel-enter .4s ease both;outline-offset:8px}
.profile-panel h3{font-size:clamp(1.65rem,2.9vw,3rem);line-height:1.15;margin:0 0 30px;letter-spacing:-.045em;font-weight:550}
.favorite-games{display:grid;grid-template-columns:1fr 1fr;gap:0 48px;list-style:none;margin:0;padding:0}
.favorite-games li{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;min-height:108px;padding:22px 0;border-top:1px solid var(--line)}
.favorite-games h4{flex:1;min-width:130px;font-size:clamp(1.05rem,1.55vw,1.45rem);font-weight:550;line-height:1.4;letter-spacing:-.025em;margin:0}
.favorite-games li:last-child{grid-column:1/-1}
.game-logo{display:grid;place-items:center;flex-shrink:0;width:122px;height:64px;padding:12px;background:#181f25;border-radius:10px}
.game-logo img{display:block;width:100%;height:100%;object-fit:contain}
.game-logo.fc img{width:73px}
.next-game{font-size:.8125rem;color:var(--muted);white-space:nowrap}
.next-game strong{font-weight:550;color:var(--ink);margin-left:4px}
.game-credit{font-size:.6875rem;line-height:1.7;color:var(--muted);margin:10px 0 0}
.game-credit a{text-decoration:underline;text-underline-offset:3px}
.devices-section{margin-top:45px;padding-top:42px;border-top:1px solid var(--line)}
.device-list{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:30px;margin:0}
.device-list>div+div{padding-left:30px;border-left:1px solid var(--line)}
.device-list dt{font-size:.75rem;color:var(--muted);margin-bottom:14px}
.device-list dd{font-size:clamp(1.15rem,2.2vw,2rem);line-height:1.25;font-weight:550;letter-spacing:-.04em;margin:0}
.other-panel{display:grid;grid-template-columns:1fr 1fr;gap:45px;min-height:240px;align-items:center}
.other-panel>div+div{border-left:1px solid var(--line);padding-left:45px}
.other-panel h3{margin-bottom:16px}
.other-panel p{font-size:.9375rem;color:var(--muted);line-height:1.6;margin:0}
.easter-egg{display:table;margin:35px auto 0;padding:10px 8px;font-size:.625rem;color:var(--muted);text-underline-offset:3px}
.easter-egg:hover{text-decoration:underline}
@keyframes profile-panel-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){
 .stream-layout{grid-template-columns:minmax(0,1fr)}
 .stream-chat-column{height:430px}
 .stream-section{padding-top:90px}
 .favorite-games{column-gap:30px}
 .game-logo{width:104px}
}
@media(max-width:650px){
 .intro-wordmark{font-size:2.9rem}
 .intro-continue{bottom:28px}
 .stream-section{padding-top:70px}
 .stream-heading{gap:12px 18px;margin-bottom:26px}
 .stream-heading h2{font-size:3.5rem}
 .stream-heading>.text-link{width:100%;margin-left:0;font-size:.875rem}
 .stream-video-column{margin-inline:-6.25vw}
 .stream-fallback{padding-inline:6.25vw}
 .stream-chat-column{height:420px}
 .gaming-profile{margin-top:-20px}
 .profile-tablist{margin-bottom:26px}
 .profile-panel{padding:30px 0}
 .profile-panel h3{font-size:1.65rem;margin-bottom:25px}
 .favorite-games{grid-template-columns:1fr;gap:0}
 .favorite-games li{padding:19px 0;min-height:90px}
 .favorite-games h4{font-size:1.15rem}
 .favorite-games li:last-child{align-items:start;flex-direction:column;gap:10px}
 .favorite-games li:last-child h4{flex:none}
 .game-logo{width:116px;height:60px}
 .devices-section{margin-top:30px;padding-top:30px}
 .device-list{grid-template-columns:1fr;gap:0}
 .device-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:15px 0}
 .device-list>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
 .device-list dt{margin:0}
 .device-list dd{font-size:1.2rem;text-align:right}
 .other-panel{grid-template-columns:1fr;gap:30px;min-height:0}
 .other-panel>div+div{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}
 .other-panel h3{margin-bottom:12px}
}
@media(max-width:399px){.js .live-player-shell{display:none}}
@media(prefers-reduced-motion:reduce){
 .js .brand-intro{display:none}
 .js .site-header{top:0}
 .js .wordmark-symbol{visibility:hidden}
 .js .wordmark-name,.js .nav-capsule,.js .header-twitch{opacity:1}
 .profile-panel{animation:none}
 .profile-tab-indicator{transition:none}
}
@media(prefers-reduced-transparency:reduce){.profile-tab-indicator{background:var(--page)}}

/* Chapters share the existing page material and overlap through native sticky layout. */
.chapter-track{position:relative}
.js .chapter-track{--chapter-overlap:58svh;z-index:var(--chapter-order);padding-bottom:var(--chapter-overlap);margin-bottom:calc(-1 * var(--chapter-overlap))}
.js .chapter-track:last-child{padding-bottom:0;margin-bottom:0}
.js .chapter-panel{position:sticky;top:var(--chapter-top,0px);isolation:isolate;transform-origin:center bottom;overflow-anchor:none}
.js .chapter-panel:not(.hero){min-height:100svh}
.chapter-panel:not(.hero):before{content:'';position:absolute;inset:0 calc(50% - 50vw);z-index:-1;pointer-events:none;background:var(--page);border-radius:var(--chapter-radius,0px) var(--chapter-radius,0px) 0 0;box-shadow:0 -1px 0 var(--line),0 -24px 65px -42px var(--shadow)}
.js .stream-section{padding-bottom:90px}
.chapter-monogram{position:absolute;display:block;pointer-events:none;user-select:none;font-weight:750;line-height:.85;letter-spacing:-.1em;color:var(--ink);opacity:.027;z-index:0}
.about-monogram{font-size:clamp(30rem,72vw,85rem);right:-.06em;top:5%;clip-path:inset(0 0 0 0)}
.connect-monogram{font-size:clamp(22rem,45vw,52rem);left:-.4em;bottom:-.15em;opacity:.022}
.about>:not(.chapter-monogram),.connect>:not(.chapter-monogram){position:relative;z-index:1}

/* A one-second reveal, once per session. Scrolling cancels it immediately. */
.intro-glyph,.intro-reveal-tail,.dot-progress,.dot-glyph{display:block}
.intro-glyph,.dot-glyph{transform-origin:50% 85%}
.page-intro .intro-glyph{animation:wordmark-arrive .8s cubic-bezier(.16,1,.3,1) .1s both}
.page-intro .intro-reveal-tail{animation:wordmark-uncover .9s cubic-bezier(.16,1,.3,1) .15s both}
.page-intro .intro-continue{animation:intro-cue .5s ease .5s both}
@keyframes wordmark-arrive{from{clip-path:inset(100% 0 0 0);opacity:0;translate:0 .15em}to{clip-path:inset(0);opacity:1;translate:0 0}}
@keyframes wordmark-uncover{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0);opacity:1}}
@keyframes intro-cue{from{opacity:0}to{opacity:1}}
.dot-progress{transform:translate(calc(var(--read-progress,0) * .08em),calc(var(--read-progress,0) * -.025em)) scaleX(calc(1 + var(--read-progress,0) * .07)) scaleY(calc(1 - var(--read-progress,0) * .07));transform-origin:50% 85%}
.brand-secret{position:absolute;top:calc(100% + 16px);left:0;font-size:12px;line-height:1.4;font-weight:500;letter-spacing:.015em;white-space:nowrap;opacity:0;pointer-events:none;visibility:hidden}
.dot-party .brand-secret{visibility:visible;animation:secret-caption 1.8s ease both}
.dot-party .intro-glyph{animation:haesch-nod 1.65s cubic-bezier(.3,0,.3,1) both}
.dot-party .dot-glyph{animation:move-your-dot 1.65s cubic-bezier(.3,0,.3,1) both}
@keyframes haesch-nod{0%,100%{transform:none}18%{transform:rotate(-7deg) translateX(-2px)}36%{transform:rotate(6deg)}54%{transform:rotate(-4deg)}78%{transform:rotate(3deg)}}
@keyframes move-your-dot{0%,100%{transform:none}16%{transform:translate(10px,-22px) scale(.9,1.1)}30%{transform:translate(17px,0) scale(1.3,.7)}48%{transform:translate(-24px,-32px) scale(.85,1.15)}63%{transform:translate(-12px,-2px) scale(1.2,.8)}80%{transform:translate(4px,-12px)}94%{transform:translate(0,0) scale(1.15,.85)}}
@keyframes secret-caption{0%,100%{opacity:0}18%,80%{opacity:1}}

/* Larger monochrome social typography, without changing the destinations or handles. */
.connect{display:block;padding-top:85px;padding-bottom:110px}
.connect-intro{display:block;margin-bottom:32px}
.connect-intro h2{font-size:clamp(2.8rem,5.5vw,6rem)}
.social-links{position:relative;padding:0}
.social-link{position:relative;min-height:clamp(126px,12vw,172px);gap:25px;padding:22px 0;transition:opacity .45s ease;color:var(--ink)}
.social-link:hover{padding-left:0}
.social-icon{width:28px;height:28px;border:0;box-shadow:none;background:none;border-radius:0;opacity:.6}
.social-icon svg{width:24px;height:24px}
.social-text{gap:7px;min-width:0}
.social-text strong{display:block;width:max-content;font-size:clamp(2.8rem,6.8vw,7.2rem);line-height:.94;letter-spacing:-.065em;font-weight:600;text-transform:uppercase;transform-origin:left center;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.social-text>span{font-size:.875rem;line-height:1.4;transition:opacity .4s}
.social-arrow{margin-left:auto!important;width:24px;height:24px;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .4s}
.social-link:focus-visible{z-index:3}
.social-links[data-active] .social-link{opacity:.3}
.social-links[data-active] .social-link.is-active{opacity:1;z-index:2}
.social-links[data-active] .social-link:not(.is-active) .social-text strong{transform:scale(.97)}
.social-link.is-active .social-text strong{transform:translateX(8px) scale(1.16)}
.social-link.is-active .social-arrow{transform:translate(5px,-5px);opacity:1}

/* Artwork is revealed only through a soft, cursor-sized mask inside each game. */
.favorite-games li{display:block;padding:0;min-height:0}
.game-button{--spot-x:50%;--spot-y:50%;--spot-radius:125px;display:block;position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:136px;text-align:left;padding:24px 10px;border:0;border-radius:12px;background:transparent;color:var(--ink);touch-action:manipulation}
.game-button:focus-visible{outline-offset:2px}
.game-foreground{position:relative;z-index:2;display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;pointer-events:none}
.game-title{flex:1;min-width:125px;width:fit-content;font-size:clamp(1.05rem,1.55vw,1.45rem);font-weight:550;line-height:1.4;letter-spacing:-.025em;padding:4px 7px;margin-left:-7px;background:var(--page);border-radius:5px;box-shadow:0 0 12px 5px var(--page)}
.game-foreground .game-logo{position:relative;z-index:1}
.game-foreground .next-game{position:relative;background:var(--page);padding:5px 8px;border-radius:5px;box-shadow:0 0 12px 5px var(--page)}
.game-spotlight{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .35s ease;mask-image:radial-gradient(circle var(--spot-radius) at var(--spot-x) var(--spot-y),#000 0%,#000 28%,rgba(0,0,0,.7) 57%,transparent 100%);-webkit-mask-image:radial-gradient(circle var(--spot-radius) at var(--spot-x) var(--spot-y),#000 0%,#000 28%,rgba(0,0,0,.7) 57%,transparent 100%)}
.game-art{position:absolute;inset:-6px;width:calc(100% + 12px);height:calc(100% + 12px);object-fit:cover;object-position:var(--art-position,50% 48%);transform:translate(var(--art-x,0px),var(--art-y,0px));pointer-events:none}
.game-button.is-spotlit .game-spotlight,.game-button:focus-visible .game-spotlight{opacity:.92}
.game-button.is-spotlit{--spot-radius:clamp(100px,12vw,160px)}
@supports not ((mask-image:radial-gradient(#000,transparent)) or (-webkit-mask-image:radial-gradient(#000,transparent))){.game-spotlight{display:none}}
@media(hover:hover) and (pointer:fine){
 .social-link:hover .social-text strong{transform:translateX(8px) scale(1.16)}
}
@media(max-width:650px){
 .js .chapter-track{--chapter-overlap:35svh}
 .js .stream-section{padding-bottom:65px}
 .about-monogram{font-size:125vw;right:-.12em;top:15%}
 .connect-monogram{font-size:105vw;left:-.35em;bottom:0}
 .connect{padding-top:60px;padding-bottom:70px}
 .connect-intro{margin-bottom:22px}
 .social-link{min-height:110px;gap:14px;padding:22px 0}
 .social-text strong{font-size:clamp(2.3rem,9.2vw,3.5rem)}
 .social-text>span{font-size:.875rem}
 .social-icon{width:20px;height:20px}
 .social-icon svg{width:19px;height:19px}
 .social-arrow{width:19px;height:19px}
 .social-link.is-active .social-text strong{transform:translateX(3px) scale(1.07)}
 .game-button{min-height:118px;padding:20px 6px}
 .game-title{font-size:1.15rem}
 .game-foreground{gap:12px 18px}
 .game-foreground .next-game{font-size:.8125rem}
 .favorite-games li:last-child{display:block}
 .favorite-games li:last-child .game-foreground{align-items:flex-start;flex-direction:column}
 .favorite-games li:last-child .game-title{flex:none}
}
@media(prefers-reduced-motion:reduce){
 .js .chapter-track{padding-bottom:0;margin-bottom:0}
 .js .chapter-panel{position:relative;top:auto;transform:none!important}
 .chapter-panel:not(.hero):before{border-radius:0}
 .chapter-monogram{transform:none!important}
 .page-intro .intro-glyph,.page-intro .intro-reveal-tail,.page-intro .intro-continue{animation:none}
 .dot-progress,.dot-party .dot-glyph,.dot-party .intro-glyph{transform:none;animation:none}
 .dot-party .brand-secret{animation:none;opacity:1}
 .social-link,.social-text strong,.social-arrow,.game-spotlight{transition:none}
 .social-text strong,.social-link:hover .social-text strong,.social-link.is-active .social-text strong{transform:none!important}
 .game-art{transform:none}
}
.intro-wordmark{touch-action:manipulation;user-select:none}
@media(prefers-reduced-transparency:reduce){.chapter-monogram{display:none}.game-title,.game-foreground .next-game{box-shadow:none}}

/* The punctuation stretches only while the page is moving. */
.dot-progress{transform:none;position:relative}
.dot-progress:after{content:"";position:absolute;left:.055em;bottom:.075em;width:.115em;height:.115em;border-radius:999px;background:currentColor;opacity:0;transition:width .22s ease,opacity .12s ease}
.intro-complete .is-scrolling:not(.dot-party) .dot-progress:after{opacity:1;width:calc(.115em + var(--read-progress,0) * .65em)}
.intro-complete .is-scrolling:not(.dot-party) .dot-glyph{opacity:0}
.dot-glyph{transition:opacity .12s ease}
/* Compact text backing leaves the artwork visible on every card. */
.game-title{flex:0 1 auto;min-width:0;background:transparent;box-shadow:none;text-shadow:0 1px 5px var(--page),0 0 10px var(--page),0 0 18px var(--page)}
.game-foreground{min-height:88px;align-items:flex-end}
.game-button{min-height:160px}
.game-button.is-spotlit .game-title,.game-button:focus-visible .game-title{color:#fff;text-shadow:0 1px 4px #000,0 0 9px #000}
.game-spotlight{background:#17131f}
.game-art{filter:brightness(.8)}
.gta-trigger{display:block;border:1px solid var(--line);background:transparent;padding:12px 17px;border-radius:999px;margin:0 0 20px 10px;min-height:44px;white-space:normal}
.gta-trigger:hover{background:var(--glass)}
.game-dialog{position:fixed;max-width:720px;width:calc(100% - 32px);max-height:85svh;padding:0;border:1px solid var(--glass-edge);border-radius:24px;background:var(--page);color:var(--ink);box-shadow:0 24px 100px #0006;overflow:auto;overscroll-behavior:contain}
.game-dialog::backdrop{background:#08091499;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.dialog-art{display:block;width:100%;height:auto;max-height:42svh;object-fit:contain;background:#111}
.dialog-close{position:sticky;top:12px;float:right;margin:12px 12px -56px 0;z-index:2;width:44px;height:44px;border:1px solid #ffffff70;border-radius:50%;background:#111c;color:#fff;font-size:28px;line-height:1}
.dialog-copy{padding:28px clamp(22px,5vw,40px) 36px}
.dialog-copy .eyebrow{margin-bottom:16px;color:var(--muted)}
.dialog-copy h2{font-size:clamp(2rem,6vw,3rem);line-height:1.1;margin-bottom:20px}
.dialog-copy p:not(.eyebrow){font-size:1rem;line-height:1.65}
.dialog-copy .dialog-modes{color:var(--muted);margin-bottom:0}
.sunset-reset{position:fixed;z-index:49;right:20px;bottom:max(20px,env(safe-area-inset-bottom));border-radius:999px;padding:12px 18px;color:var(--ink);font-size:.875rem}
:root.gta-sunset{color-scheme:dark;--page:#261336;--ink:#fff0e7;--muted:#ebc3d3;--quiet:#c296bf;--line:#fcb09040;--glass:#d875ad22;--glass-edge:#ffd1b380;--shadow:#17091e60;--tint:#ffad77;--solid:#ffb178;--solid-text:#301533;--header-ink:#ffe9db;--theme-wash:#b6498833}
.gta-sunset body{background:linear-gradient(155deg,#27143d,#8c4269 52%,#f6a26d)}
.gta-sunset .chapter-panel:before{background:linear-gradient(160deg,#29143d 5%,#67335b 58%,#bc6a72 100%)}
.gta-sunset .intro-cover{background:linear-gradient(150deg,#28123f,#ab5578 65%,#ffb678)}
.gta-sunset .hero-shade{background:linear-gradient(90deg,#29143dec,transparent 85%),linear-gradient(0deg,#9b5279aa,transparent 70%)}
.gta-sunset .reel-vignette{background:linear-gradient(90deg,#301239bb,transparent),linear-gradient(0deg,#e7835555,transparent 70%)}
.gta-sunset .site-footer,.gta-sunset .game-dialog{background:linear-gradient(155deg,#311744,#713a63 65%,#ac6270)}
.gta-sunset .game-logo{background:#301a3e}
.gta-sunset .gta-trigger[aria-pressed="true"]{background:linear-gradient(110deg,#8245a4,#ec9770);color:#fff;border-color:#ffc6a5}
@media(hover:none){.game-spotlight{opacity:.8;--spot-x:82%;--spot-y:45%;--spot-radius:115px}.game-title{color:var(--ink);text-shadow:0 1px 5px var(--page),0 0 12px var(--page)}}
@media(prefers-reduced-motion:reduce){.dot-progress:after,.dot-glyph{transition:none}}

.device-button{display:inline-block;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;padding:8px 0;border:0;border-bottom:1px solid var(--line);background:transparent;min-height:44px;transition:border-color .2s ease}
.device-button:hover{border-color:currentColor}
.device-dialog .dialog-art{width:100%;height:clamp(200px,38svh,380px);max-height:none;object-fit:contain;padding:24px;background:#f3f3f3}
.sunset-palms{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s}
.gta-sunset .sunset-palms{visibility:visible;opacity:.11}
.sunset-palms:before,.sunset-palms:after{content:'';position:absolute;bottom:-6vh;background:url('https://toppng.com/uploads/preview/survival-tree-outlines-obsession-palm-tree-line-art-11562869958akcfis3oyn.png') center bottom/contain no-repeat;filter:grayscale(1) brightness(.25);width:min(48vw,660px);height:88vh}
.sunset-palms:before{left:-12vw;transform:rotate(-6deg)}
.sunset-palms:after{right:-14vw;transform:scaleX(-1) rotate(-5deg);height:73vh}
@media(max-width:700px){.sunset-palms:before,.sunset-palms:after{width:70vw;height:65vh}.sunset-palms:before{left:-30vw}.sunset-palms:after{right:-32vw;height:50vh}.gta-sunset .sunset-palms{opacity:.09}}
@media(prefers-reduced-motion:reduce){.sunset-palms,.device-button{transition:none}}

.gta-sunset .chapter-panel:not(.hero):after{content:'';position:absolute;inset:0 calc(50% - 50vw);z-index:-1;pointer-events:none;opacity:.12;background:url('https://toppng.com/uploads/preview/survival-tree-outlines-obsession-palm-tree-line-art-11562869958akcfis3oyn.png') right -12vw bottom -8vh/min(55vw,650px) 85vh no-repeat;filter:grayscale(1) brightness(.25)}
@media(max-width:700px){.gta-sunset .chapter-panel:not(.hero):after{opacity:.1;background-size:90vw 75vh;background-position:right -30vw bottom}}

/* Keep the dock below the system status area; never paint behind the cutout. */
.island-safe-probe{position:fixed;width:0;height:0;padding-top:env(safe-area-inset-top,0px);visibility:hidden;pointer-events:none}
.island-progress{position:fixed;z-index:100;left:50%;top:calc(env(safe-area-inset-top,0px) + 8px);transform:translateX(-50%);width:132px;height:30px;background:#000;color:#fff;border:0;border-radius:999px;pointer-events:none;isolation:isolate;contain:layout paint;box-shadow:none;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.island-percent{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:35px;text-align:right;font-size:12px;line-height:1;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0}
.island-track{position:absolute;left:14px;right:54px;top:14px;height:2px;border-radius:999px;overflow:hidden;background:#ffffff40}
.island-fill{display:block;width:100%;height:100%;background:#fff;transform:scaleX(var(--island-progress,0));transform-origin:left center}
.island-mode .site-header{padding-top:calc(env(safe-area-inset-top) + 16px);height:calc(env(safe-area-inset-top) + 82px)}
.island-mode.intro-complete .intro-wordmark{top:calc(env(safe-area-inset-top) + 16px)!important}
.island-mode .game-dialog{max-height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 40px)}
