@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{--paper:#e4e0d6;--muted:#a6a09a}body{font-family:'IBM Plex Mono',monospace;font-size:14px}header a,.tiny,.eyebrow,.index,.slot-number,.slot-label,.locked,.road-status,footer{font-family:'IBM Plex Mono',monospace}header a{font-weight:600;font-size:12px;letter-spacing:1.5px}.tiny{font-size:9px}.hero h1,.collection-intro h2,.piece h3,.road-intro h1,.journal-intro h1,.post h2,dialog h2,.grey-ending h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:-.025em;text-transform:uppercase}.hero{min-height:calc(100svh - 94px);padding-top:26px}.hero-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,23%);gap:3.5vw;flex:1;align-items:center}.hero-art{padding:30px 0}.hero-art img{max-height:72svh;width:100%}.hero-art a{width:100%}.hero h1{font-size:clamp(48px,5.5vw,88px);line-height:.9;overflow-wrap:anywhere}.hero-description{line-height:1.9;font-size:13px;color:var(--muted);margin-top:25px}.signature{display:block;font-size:23px;margin-top:26px}.hero-bottom{padding:15px 0 24px}.catchline{font-size:10px;letter-spacing:1.4px}.collection-intro h2{font-size:clamp(65px,9vw,128px);line-height:.92}.piece{grid-template-columns:minmax(0,1fr) 230px;padding-left:12vw;padding-right:12vw}.piece:nth-child(even){grid-template-columns:230px minmax(0,1fr)}.piece-visual img{max-height:62svh;max-width:760px;margin:auto}.piece h3{font-size:48px;line-height:1}.road-intro{padding-left:6vw;padding-right:6vw}.road-intro h1{font-size:clamp(85px,13vw,190px);line-height:.84;letter-spacing:-.035em;margin:26px 0 36px;max-width:none}.road-intro h1 span{display:inline-block;transform:scaleX(1.13);transform-origin:left;text-shadow:3px 0 #ff313144,-3px 1px #8b000044}.road-intro .intro-copy{max-width:630px}.road-world .path-base{stroke:#8f2020;stroke-width:16;filter:url(#trail-noise);opacity:.45;stroke-dasharray:2 4}.road-world .path-echo{stroke:#ee2323;stroke-width:7;stroke-dasharray:1 17;filter:url(#trail-noise);opacity:.6;transform:translateX(10px)}.road-world .path-core{stroke:#d53c3c;stroke-width:2;stroke-dasharray:2 7;opacity:.8;animation:signal-travel 12s linear infinite}@keyframes signal-travel{to{stroke-dashoffset:-150}}.road-slot{width:330px}.road-row{height:370px}.frame{background:#070707}.empty-inner{height:150px;overflow:hidden;position:relative;background:radial-gradient(ellipse,#37101055,transparent 65%),#070707}.empty-inner:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#ed22220b 3px 4px);animation:scan-drift 7s linear infinite}.signal-code{display:flex;gap:5px;justify-content:center;width:100%;padding:0 8px;position:relative}.signal-digit{font-family:'Barlow Condensed';font-weight:600;color:var(--red);font-size:40px;line-height:1;width:25px;display:block;animation:digit-drift 4.7s steps(1,end) infinite;animation-delay:var(--delay);text-shadow:2px 0 #ff665c66,-2px 0 #720000}.signal-digit:nth-child(3n){color:#f07e74}.signal-caption{font-size:8px;letter-spacing:3px;color:#ab3737}.locked{font-size:7px;letter-spacing:2px}@keyframes digit-drift{0%,38%,44%,79%,86%,100%{transform:translate(0,0);opacity:1;filter:none}40%{transform:translate(3px,-3px) skewX(-12deg);opacity:.65}82%{transform:translate(-3px,2px);filter:blur(.5px)}}@keyframes scan-drift{to{background-position:0 80px}}.flower-subscribe{position:fixed;right:20px;bottom:25px;z-index:20;border:0;background:transparent;color:var(--red);padding:0;width:100px;animation:flower-float 7s ease-in-out infinite}.flower-subscribe img{width:85px;height:85px;object-fit:cover;border-radius:50%;mix-blend-mode:screen;filter:contrast(1.5);display:block;margin:auto;box-shadow:0 0 35px #fb171716}.flower-subscribe span{font-size:8px;letter-spacing:1px;display:block;background:#080808dd;padding:7px 4px;border-bottom:1px solid #792626}.flower-subscribe:hover img{filter:contrast(2) drop-shadow(2px 0 #ed2727);transform:rotate(-6deg)}@keyframes flower-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-12px) rotate(3deg)}}#fog-layer{position:fixed;inset:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .3s}#fog-canvas{position:absolute;bottom:0;width:100%;height:85vh;mask-image:linear-gradient(transparent,#000 27%)}.fog-eye{position:absolute;width:160px;left:calc(50% - 80px);bottom:19%;fill:none;stroke:#ed1414;stroke-width:2.2;filter:drop-shadow(4px 0 #ed141477);opacity:0;animation:eye-visit 120s linear infinite;transform-origin:center}.fog-eye ellipse{fill:#df1111;stroke:none}.fog-eye .eye-slit{stroke:#250303;stroke-width:6}@keyframes eye-visit{0%,95%,100%{opacity:0;transform:scaleY(.05)}95.5%{opacity:.8;transform:scaleY(1) translateX(-3px)}96%{opacity:.2;transform:scaleY(.05)}96.6%,98%{opacity:.85;transform:scaleY(1)}98.2%{opacity:.6;transform:scaleY(.08) translateX(6px)}98.5%,99%{opacity:.8;transform:scaleY(1)}}.grey-ending{position:relative;min-height:65svh;padding:120px 8vw 80px;background:linear-gradient(#08080800,#999 80%);text-align:center}.grey-ending h2{font-size:clamp(65px,9vw,120px);line-height:.9;margin:25px 0;color:#151313}.grey-ending .eyebrow{color:#551717}.grey-ending .signature{color:#211}body[data-page=home] footer{background:color-mix(in srgb,#080808,#999 calc(var(--fog,0)*100%));padding-right:140px;position:relative;z-index:5}.journal-intro h1{line-height:.85;font-size:clamp(80px,12vw,160px)}.journal-catchline{color:var(--red);margin-top:30px}.post{max-width:860px;padding:30px 40px;border:0}.post h2{font-size:clamp(55px,7vw,90px);line-height:.95;margin:25px 0 40px}.post-body{font-size:16px;line-height:2;max-width:680px;margin:40px auto;color:#c9c4bc}.post-body:first-letter{font-family:'Barlow Condensed';font-size:65px;float:left;line-height:.8;padding:10px 12px 0 0;color:var(--red)}.post-art img{max-height:600px;object-fit:contain;margin:auto;display:block}.post-signoff{display:flex;justify-content:space-between;align-items:center;margin:45px 0;color:var(--muted);font-size:11px}.post-signoff .signature{margin:0}.gothic-line{display:flex;align-items:center;gap:16px;color:#a64141;margin:28px 0;font-family:serif;font-size:30px}.gothic-line i{flex:1;height:1px;background:linear-gradient(90deg,transparent,#823030,transparent)}.gothic-line b{font-weight:400;font-size:25px}.empty-journal{max-width:800px;margin:auto;text-align:center}dialog h2{font-size:80px;line-height:.88}footer{line-height:1.8;padding-right:145px}
@media(max-width:650px){body{font-size:13px}header a{font-size:10px}.hero-stage{grid-template-columns:1fr;gap:8px}.hero{min-height:0}.hero-art{padding:30px 0 10px}.hero-art img{max-height:60svh}.hero-story{padding:5px 0 30px}.hero h1{font-size:60px;max-width:90%}.hero-description{margin-top:18px;max-width:290px}.hero-story .signature{margin-top:15px}.catchline{max-width:180px;font-size:9px}.piece,.piece:nth-child(even){grid-template-columns:1fr;padding:35px 6vw 75px}.piece h3{font-size:40px}.road-intro h1{font-size:clamp(75px,20vw,125px)}.road-intro h1 span{transform:scaleX(1.06)}.road-slot{width:235px}.road-row{height:325px}.signal-digit{font-size:30px;width:20px}.signal-code{gap:2px}.empty-inner{height:130px}.flower-subscribe{width:72px;right:10px;bottom:16px}.flower-subscribe img{width:63px;height:63px}.flower-subscribe span{font-size:7px;letter-spacing:0}.post{padding:20px 6vw}.post-body{font-size:14px}.post-signoff{gap:20px}.grey-ending{padding-top:100px}footer,body[data-page=home] footer{padding-right:100px}.fog-eye{width:120px;left:calc(50% - 60px)}}
@media(prefers-reduced-motion:reduce){.road-world .path-base,.road-world .path-echo{filter:none}.signal-digit,.flower-subscribe,.empty-inner:after,.road-world .path-core{animation:none}.fog-eye{animation:none;opacity:.25;transform:none}}
@media(min-width:651px){.road-intro h1{transform:scaleX(1.22);transform-origin:left;max-width:80%}}
.flower-subscribe:before{content:'';position:absolute;inset:0 8px 24px;background:url('assets/flower-red-web.png') center/cover;border-radius:50%;mix-blend-mode:screen;pointer-events:none;opacity:0;clip-path:inset(42% 0 42% 0);animation:flower-glitch 11s steps(1,end) infinite}
@keyframes flower-glitch{0%,86%,90%,100%{opacity:0;transform:none}87%{opacity:.7;transform:translateX(5px)}88%{opacity:.6;transform:translateX(-5px);clip-path:inset(20% 0 67% 0)}89%{opacity:.4;transform:translateX(3px)}}
@media(prefers-reduced-motion:reduce){.flower-subscribe:before{animation:none}}
body[data-page=home] footer{color:color-mix(in srgb,var(--muted),#242020 calc(var(--fog,0)*100%))}body[data-page=home] footer a,body[data-page=home] footer button{color:inherit}
/* Gothic revision: original pixel title, blackletter headings, restrained art copy. */
:root{--paper:#ded6c8;--muted:#a9968c}
body{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;background:#080404;background-image:radial-gradient(ellipse at 20% 35%,#4e080818,transparent 65%),radial-gradient(ellipse at 85% 65%,#5c090914,transparent 55%)}
body:before{opacity:.085;mix-blend-mode:screen;filter:sepia(1) saturate(8) hue-rotate(315deg)}body:after{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#c8181805 3px 4px),repeating-linear-gradient(90deg,transparent 0 4px,#90141405 4px 5px)}header,main,footer{position:relative;z-index:1}header{background:#080404e8}
header a{font-family:'UnifrakturCook',Georgia,serif;font-size:21px;letter-spacing:0}.tiny,.eyebrow,.index,.slot-number,.locked,.road-status,.see-more,.signal-caption{font-family:'Space Mono',monospace}
body[data-font] h1,body[data-font] h2,body[data-font] h3,.hero h1,.collection-intro h2,.piece h3,.journal-intro h1,.post h2,dialog h2{font-family:'UnifrakturCook',Georgia,serif!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important}
.hero h1{font-size:clamp(40px,4.5vw,72px)!important;line-height:1.1!important}.hero-description{font-size:22px;line-height:1.8}.catchline{font-size:22px;letter-spacing:0}.collection-intro{padding-top:65px;padding-bottom:10px}.collection-intro h2{font-size:clamp(60px,8vw,100px)!important;line-height:1.1!important}.piece h3{font-size:46px!important;line-height:1.15!important}.piece p{font-size:21px;line-height:1.7}.auction{font-family:'Space Mono';font-size:10px}
.road-intro{text-align:center;padding:65px 6vw 40px}.road-intro h1,body[data-font] .road-intro h1{font-family:'VT323',monospace!important;font-weight:400!important;font-size:clamp(76px,10vw,145px)!important;line-height:1.02!important;letter-spacing:0!important;text-transform:none!important;margin:25px auto;transform:none!important;max-width:none!important}.road-intro h1 span{transform:none!important;text-shadow:none}.road-intro .intro-copy{font-size:21px;max-width:650px;margin:24px auto;line-height:1.8}.road-status{text-align:left}
.signal-code{gap:3px}.signal-digit{font-family:'VT323',monospace!important;font-weight:400;color:#ed2424;font-size:30px;line-height:1;width:19px;text-shadow:none;animation:digit-drift 1.3s steps(1,end) infinite;animation-delay:var(--delay)}.signal-digit:nth-child(3n){color:#bd4942}.signal-caption{font-size:7px;letter-spacing:2px;color:#913737}.slot-label{font-family:'UnifrakturCook';font-size:19px;text-transform:lowercase}
.flower-subscribe span{font-family:'UnifrakturCook';font-size:16px;letter-spacing:0;background:#080404dd}.fog-eye,.grey-ending{display:none!important}#fog-layer[hidden]{display:none}#fog-canvas{height:100vh;mask-image:none}.road-end{height:35vh;background:radial-gradient(ellipse at bottom,#3d0707,transparent 65%)}body[data-page=road] footer{background:#080000;z-index:5}body[data-page=home] footer{background:#080404;color:var(--muted)}
.journal-intro h1{font-size:clamp(75px,10vw,140px)!important;line-height:1.1!important}.post h2{font-size:clamp(45px,6vw,80px)!important;line-height:1.15!important}.post-body{font-size:23px;line-height:1.8;color:#d2c6b9}.post-body:first-letter{font-family:'UnifrakturCook';font-size:70px}.post-signoff{font-size:20px}.gothic-line{color:#a64141}dialog h2{font-size:80px!important;line-height:1.05!important}dialog p{font-size:21px}footer{font-family:'Space Mono';font-size:9px}footer button{font-family:'UnifrakturCook';font-size:17px}
@media(max-width:650px){header a{font-size:17px}.hero h1{font-size:48px!important}.hero-description{font-size:21px}.piece h3{font-size:40px!important}.road-intro{padding-top:45px}.road-intro h1,body[data-font] .road-intro h1{font-size:clamp(64px,17vw,100px)!important}.road-intro .intro-copy{font-size:19px}.signal-digit{font-size:25px;width:14px}.signal-code{gap:2px}.flower-subscribe span{font-size:12px}.post-body{font-size:21px}dialog h2{font-size:65px!important}}
/* The final placeholder is the concealed horizon; publishing extends it. */
.road-row:last-child .frame{opacity:0}.road-row:last-child .slot-number,.road-row:last-child .slot-label{opacity:0}
/* Use the journal's legible serif across the site. */
body,header a,.tiny,.eyebrow,.index,.slot-number,.slot-label,.locked,.road-status,.see-more,.signal-caption,footer,footer button,.flower-subscribe span,.post-body:first-letter{font-family:'Cormorant Garamond',Georgia,serif!important}
body[data-font] h1,body[data-font] h2,body[data-font] h3,.hero h1,.collection-intro h2,.piece h3,.journal-intro h1,.post h2,dialog h2{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500!important;letter-spacing:-.025em!important}
header a{font-size:23px;font-weight:500}.tiny{font-size:13px;letter-spacing:1px}.eyebrow,.index,.slot-number,.road-status{font-size:13px;letter-spacing:2px}.locked,.signal-caption{font-size:10px}.see-more{font-size:13px}.flower-subscribe span{font-size:18px}footer{font-size:15px;letter-spacing:.5px}footer button{font-size:17px}
header .buy,header .buy .tiny{font-family:'Silkscreen',monospace!important;color:var(--green)}header .buy{font-size:14px}header .buy .tiny{font-size:8px;color:#719745}
.road-intro h1,body[data-font] .road-intro h1{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500!important;font-size:clamp(22px,6.6vw,105px)!important;line-height:1.2!important;letter-spacing:-.035em!important;white-space:nowrap;margin:40px auto 25px}.road-intro h1 span{display:inline}.road-intro .intro-copy{font-size:22px}.road-status{font-size:12px}.signal-digit{font-family:'VT323',monospace!important}
#fog-layer{transition:opacity .7s ease-out}#fog-canvas{mask-image:linear-gradient(transparent 0%,#000 16%)}body[data-page=road] footer{background:linear-gradient(#08000000,#080000)}
@media(max-width:650px){header a{font-size:20px}.tiny{font-size:11px}header .buy{font-size:11px}.road-intro h1,body[data-font] .road-intro h1{font-size:clamp(20px,6.4vw,43px)!important;margin:30px auto 20px}.road-intro .intro-copy{font-size:20px}.road-status{font-size:10px;letter-spacing:.4px}.flower-subscribe span{font-size:14px}footer{font-size:13px}.slot-number{font-size:11px}}
/* End-of-road atmosphere is attached to the road, never the viewport. */
.road-row:last-child .frame,.road-row:last-child .slot-number,.road-row:last-child .slot-label{opacity:1}
#fog-layer{position:absolute;inset:auto 0 auto 0;opacity:1!important;transition:none;overflow:hidden;z-index:4;pointer-events:none}#fog-canvas{position:absolute;inset:0;width:100%;height:100%;mask-image:none}.road-world{overflow:visible}.road-end{height:180px;background:none}
.road-intro h1 span.title-apl{color:var(--red)}.road-intro h1 span.title-xcopy{color:var(--red);position:relative;display:inline-block}
.title-xcopy:before,.title-xcopy:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;color:#f32b2b;opacity:.5}
.title-xcopy:before{filter:url(#trail-noise);opacity:.22;animation:xcopy-noise 6s steps(1,end) infinite}.title-xcopy:after{clip-path:inset(48% 0 39% 0);animation:xcopy-tear 4.7s steps(1,end) infinite}
@keyframes xcopy-tear{0%,74%,80%,100%{transform:none;opacity:0}75%{transform:translateX(3px);opacity:.7}77%{transform:translateX(-2px);clip-path:inset(28% 0 63% 0);opacity:.45}79%{transform:translateX(1px);opacity:.4}}
@keyframes xcopy-noise{0%,100%{opacity:.15;transform:none}40%{opacity:.3;transform:translateX(1px)}70%{opacity:.2;transform:translateX(-1px)}}
@media(prefers-reduced-motion:reduce){.title-xcopy:before,.title-xcopy:after{animation:none;filter:none;opacity:0}}
.road-row .frame,.road-row .slot-number,.road-row .slot-label{opacity:1}
#fog-layer{left:50%;right:auto;transform:translateX(-50%)}#fog-canvas{mask-image:linear-gradient(transparent 0%,#000 18%,#000 73%,transparent 100%)}
/* Smog reaches the document edge beneath the transparent footer. */
body[data-page=road] footer{background:transparent!important;color:#c6b7a9}#fog-canvas{mask-image:linear-gradient(transparent 0%,#000 18%,#000 100%)}
/* Featured art and its next action share a compact layout. */
.hero{min-height:0;padding-top:24px;padding-bottom:38px;border-bottom:1px solid #332020}.hero-stage{flex:initial;grid-template-columns:minmax(0,1fr) minmax(250px,24%);gap:3vw;margin-top:24px;align-items:center}.hero-art{padding:0;min-height:0}.hero-art img{max-height:calc(100svh - 195px);object-fit:contain}.hero-story{padding:12px 0}.hero-see-more{display:inline-flex;margin-top:36px;gap:18px;padding:10px 0;border-bottom:1px solid #722b2b;width:max-content}.hero-see-more span{font-size:26px}.hero-story .signature{margin-top:22px}.collection-intro{padding-top:65px}
@media(max-width:800px){.hero-stage{grid-template-columns:1fr;gap:22px;margin-top:20px}.hero-art img{max-height:65svh}.hero-story{padding:0 90px 0 0}.hero h1{font-size:48px!important}.hero-see-more{margin-top:20px}.hero{padding-bottom:32px}.hero-description{max-width:100%;margin-top:16px}.hero-story .signature{margin-top:16px}}
/* Sparse pixels over near-black replace the uniform red wash. */
body{background:#070505;background-image:none}body:before{background-image:var(--infection-noise);background-size:256px 256px;image-rendering:pixelated;opacity:.65;mix-blend-mode:normal;filter:none;z-index:0}body:after{background:radial-gradient(ellipse at 50% 0%,#3b070710,transparent 60%);z-index:0}header{background:#070505e8}
header a{position:relative;z-index:2}.nav-glitch-label{display:inline-block;white-space:nowrap}.road-link .nav-glitch-label{min-width:12.3em}.buy .nav-glitch-label{min-width:9ch}.road-link:hover,.road-link:focus-visible{color:#ed2424;text-shadow:2px 0 #ed242455,-1px 0 #a4070744}.buy:hover,.buy:focus-visible{color:#b9ff75;text-shadow:0 0 12px #72ff4c88,2px 0 #39ff5055}.buy.nav-infected .nav-glitch-label{animation:matrix-jitter .47s steps(1,end) infinite}.road-link.nav-infected .nav-glitch-label{animation:nav-red-tear .6s steps(1,end) infinite}
@keyframes matrix-jitter{0%,70%,100%{transform:none}25%{transform:translateX(1px);text-shadow:-2px 0 #1c9d17,0 0 10px #9cff66}75%{transform:translateY(-1px)}}@keyframes nav-red-tear{0%,65%,100%{transform:none;filter:none}30%{transform:translateX(-1px);text-shadow:3px 0 #fb35357a}70%{transform:translateX(2px);filter:contrast(1.4)}}
#infection-veins{position:absolute;top:0;left:0;width:100%;height:360px;overflow:hidden;pointer-events:none;z-index:1;display:none}body[data-page=home] #infection-veins{display:block}#infection-veins path{fill:none;stroke:#d82424;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100;animation:vein-grow 4s ease-out forwards,vein-pulse 11s ease-in-out infinite;animation-delay:var(--vein-delay),5s}
@keyframes vein-grow{to{stroke-dashoffset:0}}@keyframes vein-pulse{0%,100%{stroke:#7f1717}50%{stroke:#cc2424}}
@media(max-width:650px){#infection-veins{height:240px}.road-link .nav-glitch-label{min-width:0}.buy .nav-glitch-label{min-width:8ch}}
@media(prefers-reduced-motion:reduce){.buy.nav-infected .nav-glitch-label,.road-link.nav-infected .nav-glitch-label{animation:none}#infection-veins path{animation:none;stroke-dashoffset:0}}
header .road-link .nav-glitch-label{color:inherit;margin-left:0}
/* Let the latest work own the opening screen. */
.hero{min-height:calc(100svh - 94px);padding:20px 2.5vw 58px;position:relative;display:flex;flex-direction:column}.hero-top{font-size:14px;color:#d3c6b7;letter-spacing:1.1px}.hero-top span:first-child{color:#eedbcb}.hero-stage{flex:1;grid-template-columns:minmax(0,1fr) minmax(200px,20%);gap:2.5vw;margin-top:18px}.hero-art img{max-height:calc(100svh - 155px);width:100%;object-fit:contain}.hero-story .hero-description{font-size:21px}.hero h1{font-size:clamp(40px,4.3vw,72px)!important}.hand-scroll{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);color:#d6cbbc;width:39px;height:57px;opacity:.7;filter:drop-shadow(0 0 7px #8298b633)}.hand-scroll svg{width:100%;height:100%;animation:hand-beckon 3.8s ease-in-out infinite}.hand-scroll:hover{color:#f2e7d7;opacity:1}@keyframes hand-beckon{0%,100%{transform:translateY(-3px) rotate(-3deg)}50%{transform:translateY(4px) rotate(2deg)}}
#artifacts{background:radial-gradient(ellipse at 18% 35%,#263a601b,transparent 55%),radial-gradient(ellipse at 88% 70%,#35203d22,transparent 60%)}#artifacts .collection-intro .eyebrow{color:#a3a6b5}#artifacts .piece{position:relative;border-color:#2d303938}#artifacts .piece-visual:before{content:'';position:absolute;inset:-30px -25px;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,#8a9cb423,transparent 68%);filter:blur(25px);pointer-events:none;animation:moon-haze 12s ease-in-out infinite}#artifacts .piece-visual{isolation:isolate}#artifacts .piece-visual img{box-shadow:0 0 50px -15px #5b729555,0 0 110px -45px #72548250}#artifacts .piece h3{color:#dfdfdf}#artifacts .piece p{color:#acaab5}@keyframes moon-haze{0%,100%{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}}
@media(max-width:800px){.hero-stage{grid-template-columns:1fr;flex:initial}.hero{min-height:0;padding:20px 5vw 78px}.hero-art img{max-height:65svh}.hero-top{font-size:11px;gap:18px;line-height:1.5}.hero-story{padding-right:75px}.hero h1{font-size:48px!important}.hand-scroll{bottom:12px}}
@media(prefers-reduced-motion:reduce){.hand-scroll svg,#artifacts .piece-visual:before{animation:none}}
/* Static organic infestation and compact navigation. */
.static-veins{display:none;position:absolute;top:0;left:0;width:100%;height:min(850px,100svh);background:url('assets/veins-static.png') center top/cover no-repeat;pointer-events:none;z-index:1;opacity:.45;mix-blend-mode:screen;mask-image:linear-gradient(#000 0%,#000 45%,transparent 100%)}
body[data-page=home] .static-veins{display:block}
header .road-link{display:inline-flex;align-items:center;justify-content:center;gap:10px}
header .road-link .nav-glitch-label{min-width:0}
header .road-link>span:last-child{margin-left:0}
.hero-top,.hero-top span{color:#eedbcb!important;font-size:15px;letter-spacing:1.1px}
.hand-scroll{width:45px;height:67px;opacity:.9}
.hand-scroll img{width:100%;height:100%;object-fit:contain;animation:hand-beckon 3.8s ease-in-out infinite;filter:drop-shadow(0 0 5px #a3adb230)}
@media(max-width:800px){.hero-top,.hero-top span{font-size:12px}.static-veins{height:650px;opacity:.35}.hand-scroll{height:60px}}
@media(prefers-reduced-motion:reduce){.hand-scroll img{animation:none}}
/* The road leaves a small, stationary imprint around its entrance. */
header .road-link .static-veins{position:absolute;left:50%;top:-26px;transform:translateX(-50%);width:440px;max-width:85vw;height:190px;margin:0;z-index:-1;opacity:.28;background:url('assets/veins-static.png') center/100% 100% no-repeat;mix-blend-mode:screen;mask-image:radial-gradient(ellipse at 50% 28%,#000 8%,#0009 35%,transparent 70%);pointer-events:none}
header .road-link{isolation:isolate}
header .road-link .nav-glitch-label,header .road-link>span:last-child{position:relative;z-index:1}
@media(max-width:650px){header .road-link .static-veins{width:340px;height:140px;top:-6px;opacity:.24}}
/* Scrambled title retains its original width while the signal breaks up. */
.road-intro h1 .title-xcopy .xcopy-sizing{visibility:hidden}
.road-intro h1 .title-xcopy .xcopy-live{position:absolute;inset:0;display:block;text-align:center}
.title-xcopy.xcopy-burst .xcopy-live{animation:xcopy-scramble .22s steps(1,end) infinite;text-shadow:3px 0 #ff535380,-3px 0 #85000099}
.title-xcopy.xcopy-burst:before{opacity:.55}
.title-xcopy.xcopy-burst:after{opacity:.8;animation:xcopy-tear .24s steps(1,end) infinite}
@keyframes xcopy-scramble{0%,100%{transform:none}25%{transform:translate(2px,-1px) skewX(-3deg)}65%{transform:translate(-2px,1px)}}
@media(prefers-reduced-motion:reduce){.title-xcopy.xcopy-burst .xcopy-live{animation:none;text-shadow:none}}
.hero-top .license-zero{font-family:Georgia,serif;font-size:1em;letter-spacing:0;color:inherit}
.hero-top .license-zero{font-family:'UnifrakturCook',Georgia,serif!important;font-weight:700;font-size:1.12em;letter-spacing:0}
.hero-top .license-zero{font-family:'Silkscreen',monospace!important;font-weight:400;font-size:.9em;letter-spacing:0}
/* Actual falling binary trails, with readable text above the rain. */
header .buy{isolation:isolate}
.buy .matrix-rain{position:absolute;inset:-24px -16px -35px;overflow:hidden;pointer-events:none;z-index:-1;opacity:0;transition:opacity .15s;mask-image:linear-gradient(transparent,#000 20%,#000 75%,transparent)}
.buy.nav-infected .matrix-rain{opacity:.85}
.matrix-rain i{position:absolute;left:calc(var(--column)*7.1%);top:-150px;white-space:pre;font-family:'Silkscreen',monospace;font-size:10px;line-height:12px;font-style:normal;color:#45c63b;text-shadow:0 0 6px #42fa55;animation:binary-fall var(--speed) linear infinite;animation-delay:var(--offset);animation-play-state:paused}
.buy.nav-infected .matrix-rain i{animation-play-state:running}
.buy.nav-infected .nav-glitch-label{animation:none;text-shadow:0 0 8px #a0ff6588}
@keyframes binary-fall{from{transform:translateY(0)}to{transform:translateY(250px)}}
@media(prefers-reduced-motion:reduce){.buy .matrix-rain{display:none}}
/* Selected torn-screen roots surround the road entrance. */
header .road-link .static-veins{background-image:url('assets/vein-rupture-first.png');background-size:contain;background-position:center;background-repeat:no-repeat;width:470px;max-width:88vw;height:235px;top:50%;transform:translate(-50%,-46%);opacity:.9;mix-blend-mode:normal;mask-image:none}
@media(max-width:650px){header .road-link .static-veins{width:345px;height:173px;top:50%;transform:translate(-50%,-42%);opacity:.85}}
/* Darker rupture, with its opening centered behind the navigation label. */
header .road-link .static-veins{filter:brightness(.48) saturate(.7);opacity:.85;transform:translate(-50%,-38%)}
.hero-top .license-zero{font-family:Georgia,serif!important;font-weight:400;font-size:1em;position:relative;display:inline-block;letter-spacing:0}
.hero-top .license-zero:after{content:'';position:absolute;left:47%;top:16%;width:1px;height:70%;background:currentColor;transform:rotate(32deg);transform-origin:center;pointer-events:none}
@media(max-width:650px){header .road-link .static-veins{transform:translate(-50%,-34%)}}
/* The final frame dissolves into the anchored smog rather than ending abruptly. */
body[data-page=road] .road-row:last-child .frame{mask-image:linear-gradient(to bottom,#000 0%,#000 30%,#000b 55%,#0003 82%,transparent 100%)}
body[data-page=road] .road-row:last-child .slot-number{opacity:.65}
/* Bold slashed-zero silhouette matching the supplied reference. */
.hero-top .license-zero{font-family:Arial,sans-serif!important;font-weight:900;font-size:.94em;line-height:1;transform:scaleX(.82);margin:0 -.03em;vertical-align:baseline}
.hero-top .license-zero:after{left:43%;top:-5%;width:.15em;height:110%;background:currentColor;transform:rotate(33deg)}
/* Wider opening gives the road label more breathing room. */
header .road-link .static-veins{width:570px;height:235px;background-size:100% 100%;max-width:92vw}
@media(max-width:650px){header .road-link .static-veins{width:380px;height:173px;max-width:96vw}}
.hero-top .license-zero{font-family:Arial,sans-serif!important;font-weight:400;font-size:.94em;transform:scaleX(.88);margin:0}
.hero-top .license-zero:after{left:47%;top:0;width:1px;height:100%;transform:rotate(33deg)}
/* Frame numbers follow the outer edge; titles reveal toward the open center. */
.road-row.left .slot-number{text-align:left}
.road-row.right .slot-number{text-align:right}
@media(min-width:801px){
 .road-slot .slot-label{position:absolute;top:50%;margin:0;width:clamp(150px,22vw,280px);font-size:28px;line-height:1.15;text-transform:none;color:var(--paper);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .4s ease}
 .road-row.left .slot-label{left:calc(100% + 35px);text-align:left;transform:translate(-12px,-50%)}
 .road-row.right .slot-label{right:calc(100% + 35px);text-align:right;transform:translate(12px,-50%)}
 .road-slot:hover .slot-label,.road-slot:focus-within .slot-label{opacity:1;transform:translate(0,-50%)}
}
@media(max-width:800px),(hover:none){.road-slot .slot-label{position:static;width:auto;margin-top:16px;opacity:1;transform:none;font-size:23px;text-transform:none;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.road-slot .slot-label{transition:none}}
/* Side labels occupy the open middle of the road. */
@media(min-width:801px){
 .road-slot .slot-number,.road-slot .slot-label{position:absolute;top:50%;width:clamp(150px,22vw,280px);margin:0;color:var(--red);font-family:'Cormorant Garamond',Georgia,serif!important;line-height:1.15;letter-spacing:1px;text-transform:none;transform:translateY(-50%)}
 .road-slot .slot-number{font-size:30px;transition:opacity .35s,transform .45s}
 .road-slot .slot-label{font-size:34px;opacity:0;transition:opacity .5s,transform .65s,filter .65s;filter:blur(3px) drop-shadow(0 0 9px #ff641466)}
 .road-row.left .slot-number,.road-row.left .slot-label{left:calc(100% + 38px);right:auto;text-align:left}
 .road-row.right .slot-number,.road-row.right .slot-label{right:calc(100% + 38px);left:auto;text-align:right}
 .road-row.left .slot-label{transform:translate(-14px,-50%)}
 .road-row.right .slot-label{transform:translate(14px,-50%)}
 .road-slot:has(.slot-label):hover .slot-number,.road-slot:has(.slot-label):focus-within .slot-number{opacity:0;transform:translateY(-60%)}
 .road-slot:hover .slot-label,.road-slot:focus-within .slot-label{opacity:1;transform:translate(0,-50%);filter:blur(0);animation:title-ember-reveal .7s ease-out both}
}
@keyframes title-ember-reveal{0%{clip-path:inset(0 100% 0 0);text-shadow:0 0 14px #ffb34a,0 0 25px #ed2424}45%{text-shadow:0 0 6px #ff682d}100%{clip-path:inset(0);text-shadow:none}}
@media(max-width:800px),(hover:none){.road-slot .slot-number{position:static;width:auto;transform:none;font-size:19px;text-align:center!important}.road-slot .slot-label{position:static;width:auto;transform:none;font-size:26px;color:var(--red);opacity:1;filter:none;animation:none;text-align:center}}
@media(prefers-reduced-motion:reduce){.road-slot .slot-label,.road-slot .slot-number{transition:none;animation:none!important;filter:none}}
/* Keep the moonlight glow tight to the actual artwork, without letterbox panels. */
#artifacts .piece-visual img{width:auto;max-width:100%;height:auto;margin-inline:auto}
#artifacts .piece-visual:before{inset:0 8%;opacity:.4}
/* Persistent red pixels, independent of canvas privacy settings. */
body:before{background-image:url('assets/red-noise.svg');background-repeat:repeat;background-size:256px 256px;opacity:.8}
body:before{background-image:url('assets/red-noise.png')!important;opacity:.45!important;filter:none!important;mix-blend-mode:normal!important}

/* Road counters use the same clear treatment as the landing-page labels. */
.road-status,.road-status span{color:#eedbcb;font-size:15px;font-weight:600;letter-spacing:1.1px;line-height:1.6}.road-status{gap:24px}
@media(max-width:800px){.road-status,.road-status span{font-size:12px}.road-status{flex-wrap:wrap;gap:10px 20px}}

.newsletter-form label{display:block;font-size:20px;margin:24px 0 10px;color:var(--paper)}.newsletter-fields{display:flex;gap:12px}.newsletter-fields input{min-width:0;flex:1;background:#120b0b;border:1px solid #70504a;color:var(--paper);padding:14px;font-size:20px}.newsletter-fields button{background:#b51b1b;color:#fff0e8;border:0;padding:14px 20px;font-size:17px;letter-spacing:1px}.signup-trap{position:absolute;left:-9999px}.signup-note{font-size:14px!important;line-height:1.5!important}@media(max-width:650px){.newsletter-fields{flex-direction:column}.newsletter-fields button{width:100%}dialog h2{font-size:60px!important}}

@media(max-width:650px){body[data-page] footer,footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:24px 110px 24px 5vw;align-items:center}footer>span:first-child{grid-column:1;white-space:nowrap;font-size:12px}footer>a{grid-column:1;grid-row:2}footer>span:last-child{grid-column:2;grid-row:1 / 3;white-space:nowrap;align-self:center;margin:0}header .road-link{min-height:48px}}

/* Keep large desktop screens at the established composition scale. */
@media(min-width:801px){.hero{max-width:1600px;margin-inline:auto;min-height:0;padding-top:22px;padding-bottom:20px}.hero-stage{flex:none;gap:40px;grid-template-columns:minmax(0,1fr) 300px;margin-top:28px}.hero-art{padding:20px 0 0}.hero-art img{max-height:780px;width:100%;height:auto}.hero h1{font-size:60px!important}.hero-story .hero-description{font-size:21px}.hand-scroll{position:relative;left:auto;bottom:auto;transform:none;align-self:center;margin-top:24px;flex-shrink:0;height:68px}header{min-height:110px;height:110px}header .road-link .static-veins{top:55%;transform:translate(-50%,-34%)}.piece,.collection-intro,.road-intro{max-width:1600px;margin-inline:auto}}

@media(min-width:801px){.road-intro{max-width:none;margin-inline:0}}

@media(min-width:1800px){.hero{max-width:2100px;width:94%;padding-top:26px}.hero-stage{margin-top:56px;grid-template-columns:minmax(0,1fr) 330px;gap:44px}.hero-art img{max-height:980px}.hero h1{font-size:66px!important}}
@media(min-width:801px) and (max-width:1800px),(min-width:801px) and (max-height:1000px){.road-intro{padding-top:28px;padding-bottom:16px}.road-intro h1,body[data-font] .road-intro h1{font-size:clamp(38px,4.8vw,78px)!important;margin:18px auto 16px}.road-intro .intro-copy{margin:14px auto 20px;font-size:21px;line-height:1.5}.road-status{padding-top:18px;margin-top:18px}.road-row{height:340px}}
