@font-face{font-family:Anton;src:url('assets/Anton-Regular.ttf') format('truetype');font-display:swap}
:root{font-family:Arial,Helvetica,sans-serif;color:#fff;background:#b7a2d1;font-synthesis:none;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:5px}button:disabled{opacity:.3;cursor:default}button{touch-action:manipulation}body::before{content:'';position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 5% 0%,#eee4f2,transparent 58%),linear-gradient(125deg,#bca0db,#9371b4 70%,#69558f)}
#experience{height:1000vh}.viewport{height:100vh;height:100svh;position:sticky;top:0;display:flex;align-items:center;justify-content:center;overflow:hidden;perspective:1600px}.stage{--base:#6833bd;--mx:0;--my:0;position:relative;isolation:isolate;width:min(96vw,164vh);aspect-ratio:720/410;container-type:inline-size;background:var(--base);box-shadow:0 2.5vw 4vw -1.3vw #25133380;border:1px solid #ffffff24;border-radius:3px;overflow:hidden;perspective:1300px}.colorwash{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 52% 78%,#a270ef,transparent 70%)}.grain{position:absolute;inset:0;z-index:1;opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}
header{position:absolute;top:5.5%;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;z-index:10}.logo{display:flex;align-items:center;gap:.7cqw;font-size:2.4cqw;letter-spacing:-.13cqw;font-weight:800}.logo>svg{width:2.6cqw;height:2.6cqw}.logo-light{font-weight:400}.logo i{font-size:.65cqw;font-style:normal;vertical-align:top;position:relative;top:.35cqw;margin-left:.2cqw}nav{display:flex;gap:2cqw;align-items:center;font-size:1.02cqw}nav>a,nav>button:not(.pill){color:#ffffffa6;padding:0}nav>a:hover,nav>button:hover{color:#fff}.pill{display:inline-flex;align-items:center;justify-content:center;gap:1.1cqw;background:#fff;color:#282031;padding:.95cqw 1.7cqw;border-radius:20cqw;font-size:1.02cqw;line-height:1.3;white-space:nowrap;box-shadow:0 .3cqw 1cqw #00000005;transition:transform .2s,box-shadow .2s}.pill>span{font-size:1.5em;line-height:.7}.pill:hover{transform:translateY(-3px);box-shadow:0 .5cqw 1.5cqw #0002}nav>.pill{margin-left:1.2cqw}.tabs{position:absolute;top:16.6%;left:50%;transform:translateX(-50%);display:flex;gap:1cqw;z-index:8}.tabs>.pill{font-size:.94cqw;padding:.7cqw 1.6cqw}.tabs>.muted{background:#ffffff1a;color:#fff;border:1px solid #ffffff22}.eyebrow{font-size:.73cqw;letter-spacing:.13cqw;font-weight:600;line-height:1.7;color:#ffffffa3}.spark{font-size:1.4em;color:#e8d9ff;margin-right:.4cqw}.intro{position:absolute;left:5%;top:34%;z-index:5;max-width:23%}.intro>.eyebrow{font-size:.65cqw;letter-spacing:.06cqw;white-space:nowrap}.intro h1{font-family:Anton,sans-serif;font-size:3.3cqw;font-weight:400;letter-spacing:-.04cqw;line-height:1.12;margin:1.15cqw 0 1.4cqw}.intro p{font-size:1.04cqw;line-height:1.7;color:#ffffffbd;max-width:17cqw;min-height:5.4cqw;margin:0}.text-link{padding:0;font-size:.91cqw;margin-top:1.6cqw;display:flex;align-items:center;gap:1cqw;border-bottom:1px solid #ffffff40;padding-bottom:.5cqw}.text-link>span{font-size:1.4em}.text-link:hover{border-color:#fff}
.art{position:absolute;inset:0;pointer-events:none;perspective:1200px}.word{position:absolute;left:51%;top:55%;font-family:Anton,sans-serif;font-weight:400;line-height:1;letter-spacing:-.65cqw;white-space:nowrap;color:#ffffffed;will-change:transform,opacity}.hero-object{position:absolute;width:39%;aspect-ratio:1;left:31.5%;top:26%;z-index:3;will-change:transform,opacity}.parallax-object{width:100%;height:100%;transform:translate3d(calc(var(--mx)*13px),calc(var(--my)*10px),35px) rotateY(calc(var(--mx)*8deg)) rotateX(calc(var(--my)*-6deg));transition:transform .12s ease-out;filter:drop-shadow(1cqw 2cqw 1.2cqw #190d323b)}.hero-object .sprite{animation:hover-float 6s ease-in-out infinite}.sprite{width:100%;aspect-ratio:1;background-image:url('assets/categories-atlas.webp.avif');background-size:500% 200%;background-repeat:no-repeat;background-position:var(--sx) var(--sy)}.object-shadow{position:absolute;width:29%;height:5%;left:37%;top:80%;border-radius:50%;background:#170a3b40;filter:blur(15px);transform:translateX(calc(var(--mx)*-5px));z-index:-1}.orbit{position:absolute;border:1px solid #ffffff19;border-radius:50%;left:30%;top:29%;width:43%;height:48%;transform:rotate(-27deg);z-index:-1}.orbit-two{transform:rotate(25deg);width:47%;height:42%;left:28%;top:31%;border-style:dashed;border-color:#ffffff17}.art-star{position:absolute;color:#ffffff6e;z-index:1}.star-one{left:31%;top:31%;font-size:3cqw;animation:star-turn 18s linear infinite}.star-two{left:69%;top:72%;font-size:2cqw}.satellite-layer{position:absolute;inset:0;z-index:4;pointer-events:none;will-change:opacity}.satellite{position:absolute;aspect-ratio:1;width:8%;filter:drop-shadow(.5cqw 1cqw .6cqw #180b342f);transform:translate3d(calc(var(--mx)*var(--depth)*1px),calc(var(--my)*var(--depth)*1px),0);transition:transform .18s ease-out}.satellite>.satellite-sprite{width:100%;height:100%;background-image:url('assets/satellites-atlas.webp.avif');background-size:500% 200%;background-position:var(--sx) var(--sy);animation:drift 7s ease-in-out infinite;transform:rotate(var(--turn,15deg))}.satellite.s1{left:29%;top:19%;width:7%;--depth:-16;--turn:-25deg;filter:blur(.35px) drop-shadow(.4cqw .7cqw .7cqw #0003)}.satellite.s2{left:70%;top:24%;width:6.5%;--depth:22;--turn:28deg}.satellite.s3{left:24.5%;top:74%;width:10%;--depth:30;--turn:-32deg;filter:blur(1.1px) drop-shadow(.6cqw 1cqw .7cqw #0003)}.satellite.s4{left:70%;top:76%;width:5.5%;--depth:-10;--turn:45deg}.satellite.s2>.satellite-sprite{animation-delay:-2s}.satellite.s3>.satellite-sprite{animation-delay:-4s}.satellite.s4>.satellite-sprite{animation-delay:-1s}@keyframes hover-float{50%{transform:translateY(-2%) rotate(1.4deg)}}@keyframes drift{50%{transform:translateY(-14%) rotate(calc(var(--turn) + 12deg))}}@keyframes star-turn{to{transform:rotate(360deg)}}
.category-info{position:absolute;right:5%;top:35%;width:15%;z-index:6}.category-info .eyebrow{font-size:.65cqw;letter-spacing:.1cqw}.index{font-family:Anton,sans-serif;font-size:3.6cqw;line-height:1.1;margin:1.2cqw 0 .85cqw}.index-total{font:400 1.2cqw Arial;color:#ffffff6e}.category-info h2{font-size:1.55cqw;letter-spacing:-.04cqw;font-weight:500;margin:0 0 1.2cqw}.tags{display:flex;flex-wrap:wrap;gap:.55cqw;max-width:13cqw}.tags button{font-size:.8cqw;line-height:1.2;border:1px solid #ffffff40;padding:.55cqw .85cqw;border-radius:10cqw;transition:background .2s}.tags button:hover{background:#fff;color:#302340}.arrows{display:flex;gap:.75cqw;margin-top:2cqw}.arrows button{display:flex;align-items:center;justify-content:center;border:1px solid #ffffff40;border-radius:50%;width:3.1cqw;height:3.1cqw;font-size:1.5cqw}.arrows button:not(:disabled):hover{background:#fff;color:#32203a}
footer{position:absolute;left:5%;right:5%;bottom:5.5%;display:flex;justify-content:space-between;align-items:center;z-index:8}.brand-line{font-size:.85cqw;line-height:1.5;color:#ffffff7e}.brand-line strong{font-weight:400;color:#fff}.journey{position:absolute;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:1.1cqw}.progress-dots{display:flex;gap:.5cqw}.progress-dots button{position:relative;width:1.4cqw;height:1.8cqw;padding:0}.progress-dots button:after{content:'';position:absolute;left:25%;top:35%;width:.5cqw;height:.5cqw;background:#ffffff50;border-radius:50%;transition:background .2s,transform .2s}.progress-dots button[aria-current=true]:after{background:#fff;transform:scale(1.5)}.progress-dots button:hover:after{background:#fff}.scroll-label{display:flex;align-items:center;gap:.8cqw;font-size:.55cqw;letter-spacing:.15cqw;color:#ffffff9c}.scroll-mouse{display:inline-block;width:.6cqw;height:1cqw;border:1px solid #ffffff85;border-radius:5px;position:relative}.scroll-mouse:after{content:'';position:absolute;top:2px;left:50%;height:3px;width:1px;background:#fff}.explore{min-width:14cqw;font-size:1.05cqw;padding:1.1cqw 1.9cqw;justify-content:space-between}.outer-caption{position:absolute;bottom:3%;left:4%;right:4%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#ffffff8f}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body:has(dialog[open]){overflow:hidden}dialog{background:#faf8fc;color:#30243b;border:1px solid #ffffff80;padding:36px;border-radius:22px;max-width:min(1000px,calc(100vw - 32px));max-height:90svh;width:100%;box-shadow:0 30px 120px #0005}dialog::backdrop{background:#190d2e9c;backdrop-filter:blur(12px)}dialog .eyebrow{font-size:10px;color:#88739b;letter-spacing:2px}dialog h2{font-size:32px;line-height:1.15;letter-spacing:-1.3px;margin:12px 0 10px}dialog>p{font-size:14px;color:#83738e;line-height:1.7}.close{position:absolute;right:16px;top:13px;z-index:10;font-size:25px;border-radius:50%;height:34px;width:34px;background:#e9e3ef;color:#574664}.close:hover{background:#d7c8e6}dialog button:focus-visible,dialog input:focus-visible{outline-color:#8e55d6}.search{display:flex;align-items:center;gap:12px;background:#f0ebf5;border:1px solid #e3dce9;border-radius:12px;padding:12px 16px;margin:24px 0}.search svg{width:18px;height:18px;fill:none;stroke:#8d76a2;stroke-width:1.7}.search input{border:0;background:none;outline:none;min-width:0;flex:1;color:#39274c;font-size:14px}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.category-card{position:relative;border-radius:14px;background:var(--card-color);height:208px;padding:16px;text-align:left;color:white;overflow:hidden;transition:transform .25s,box-shadow .25s}.category-card:hover{transform:translateY(-5px) rotate(-1deg);box-shadow:0 12px 25px #41276020}.category-card strong{font-size:16px;font-weight:600;position:relative;z-index:1}.category-card .sprite{position:absolute;width:94%;left:3%;top:28px;filter:drop-shadow(0 8px 7px #0002);transition:transform .3s}.category-card:hover .sprite{transform:scale(1.07) rotate(3deg)}.category-card .card-bottom{position:absolute;bottom:13px;left:16px;right:16px;display:flex;justify-content:space-between;font-size:10px;color:#ffffffbc}.category-card[hidden]{display:none}#empty-search{padding:30px;text-align:center}.dialog-button{background:#332043;color:#fff;border-radius:30px;padding:13px 23px;font-size:13px;display:inline-flex;gap:20px;align-items:center;margin-top:24px}.dialog-button:hover{background:#6736a4}#about{max-width:560px;padding:45px}#about h2{font:400 48px/1.1 Anton;letter-spacing:-.5px}#detail{padding:0;max-width:800px}.detail-hero{position:relative;display:flex;align-items:center;min-height:260px;background:var(--detail-color);color:white;overflow:hidden}.detail-art{width:38%;flex-shrink:0;padding:15px}.detail-copy{padding:25px 30px 25px 10px}.detail-copy h2{font:400 52px/1.2 Anton;letter-spacing:0}.detail-copy p{font-size:14px;line-height:1.7;max-width:310px;color:#ffffffba}.detail-copy .eyebrow{color:#ffffff9c;font-size:9px}.detail-body{padding:26px 32px 32px}.detail-body h3{font-size:16px;margin:0 0 20px}.detail-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.detail-tabs button{border:1px solid #d8cce4;color:#695379;border-radius:30px;padding:9px 16px;font-size:12px}.detail-tabs button[aria-selected=true]{background:#6a36a8;color:#fff;border-color:#6a36a8}#ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.idea{padding:18px;border:1px solid #e9e1ef;border-radius:12px;background:#f4f0f8}.idea .idea-number{font-size:10px;color:#b296c9;letter-spacing:1px}.idea h4{font-size:14px;margin:12px 0 7px}.idea p{font-size:12px;line-height:1.6;color:#8a7996;margin:0}
@media(min-width:1500px){.stage{max-width:1600px}}@media(max-width:850px){.stage{width:98vw}nav{gap:1.5cqw}.intro p{font-size:1.15cqw}.eyebrow{font-size:.8cqw}}
@media(max-width:900px) and (orientation:portrait){#experience{height:1000svh}.stage{width:100%;height:88svh;min-height:0;max-height:950px;aspect-ratio:auto;border-radius:0}.logo{font-size:5.7cqw;gap:1.4cqw;letter-spacing:-.35cqw}.logo>svg{width:6.5cqw;height:6.5cqw}.logo i{font-size:1.5cqw;top:.5cqw}header{left:6%;right:6%;top:4%}nav>a,nav>button:not(.pill){display:none}nav>.pill{font-size:0;padding:2.5cqw;gap:0;width:9cqw;height:9cqw}nav>.pill>span{font-size:5cqw}.tabs{top:13%;width:100%;justify-content:center;gap:2cqw}.tabs>.pill{font-size:2.5cqw;padding:1.8cqw 3.6cqw}.intro{top:23%;left:7%;max-width:55%;pointer-events:none}.intro>.eyebrow{font-size:1.5cqw;letter-spacing:.08cqw}.intro h1{font-size:6.2cqw;line-height:1.08;margin:2cqw 0 2.3cqw}.intro p{font-size:2.25cqw;max-width:39cqw;min-height:10cqw;line-height:1.55}.text-link{display:none}.category-info{top:24%;right:7%;width:24%}.category-info .eyebrow{font-size:1.5cqw;letter-spacing:.15cqw}.index{font-size:7cqw;margin:2.8cqw 0 1.7cqw}.index-total{font-size:3cqw}.category-info h2{font-size:3.6cqw;margin-bottom:2cqw}.tags{gap:1cqw;max-width:26cqw}.tags button{font-size:1.9cqw;padding:1.2cqw 2cqw}.arrows{gap:1.5cqw;margin-top:3cqw}.arrows button{width:7cqw;height:7cqw;font-size:4cqw}.word{top:63%;left:50%;font-size:var(--mobile-font)!important;letter-spacing:-1cqw}.hero-object{width:min(64cqw,34svh);left:calc(50% - min(32cqw,17svh));top:43%}.orbit{top:48%;left:12%;width:76%;height:25%}.orbit-two{top:50%;left:7%;width:85%;height:20%}.object-shadow{top:77%;left:27%;width:46%;height:3%}.star-one{top:46%;left:14%;font-size:5cqw}.star-two{left:84%;top:73%;font-size:4cqw}.satellite.s1{left:9%;top:45%;width:11%}.satellite.s2{left:82%;top:48%;width:11%}.satellite.s3{left:5%;top:72%;width:16%}.satellite.s4{left:83%;top:74%;width:10%}.parallax-object{transform:none}.brand-line{font-size:2cqw;line-height:1.5}.explore{font-size:2.8cqw;padding:2.8cqw 4cqw;min-width:37cqw}.journey{bottom:15cqw;gap:2.3cqw;width:80%}.progress-dots{gap:1.5cqw}.progress-dots button{width:3.5cqw;height:4.5cqw}.progress-dots button:after{width:1.1cqw;height:1.1cqw}.scroll-label{font-size:1.35cqw;letter-spacing:.3cqw;gap:1.5cqw}.scroll-mouse{width:1.5cqw;height:2.3cqw}footer{bottom:4%;left:7%;right:7%}.outer-caption{font-size:6px;letter-spacing:1px;bottom:2%}.outer-caption>span:last-child{display:none}dialog{padding:26px 18px;border-radius:18px}dialog h2{font-size:26px;max-width:90%}.category-grid{grid-template-columns:repeat(2,1fr);gap:10px}.category-card{height:200px}.category-card strong{font-size:15px}.category-card .sprite{width:90%;left:5%;top:33px}dialog>p{font-size:12px}#about{padding:32px}#about h2{font-size:38px}.detail-hero{min-height:210px}.detail-art{width:40%;padding:5px}.detail-copy{padding:20px 20px 20px 3px}.detail-copy h2{font-size:32px;max-width:100%;letter-spacing:-.5px}.detail-copy .eyebrow{font-size:7px;letter-spacing:1px}.detail-copy p{font-size:11px}.detail-body{padding:22px}.detail-tabs{gap:6px}.detail-tabs button{font-size:11px;padding:8px 12px}#ideas{grid-template-columns:1fr}.idea{padding:14px}.idea h4{margin:6px 0}.detail-body h3{font-size:15px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.parallax-object,.satellite{transform:none!important}}

.satellite.s2>.satellite-sprite,.satellite.s3>.satellite-sprite{background-image:url("assets/satellites-extra.webp.avif");background-size:500% 400%}

/* Minimal editorial composition: quiet UI, expressive lettering, ink and dimensional objects. */
@font-face{font-family:Caveat;src:url('assets/Caveat.ttf') format('truetype');font-weight:400 700;font-display:swap}
.intro{top:39%;max-width:24%}.intro h1{font-size:3.2cqw;line-height:1.2;text-transform:uppercase;margin:0;letter-spacing:-.05cqw}.intro>.handwritten{font:600 2.7cqw/1.1 Caveat,cursive;color:#ffffffd9;margin:1.3cqw 0 0;min-height:0;max-width:23cqw;transform:rotate(-7deg);transform-origin:left center;white-space:nowrap}.intro>.sr-only{width:1px;height:1px;max-width:1px;min-height:0;margin:-1px}.tags[hidden]{display:none}.category-info{top:43%;right:5%;width:12%}.index{font-size:4cqw;margin:0}.arrows{margin-top:1.6cqw}.all-link{font-size:.9cqw;padding:0;display:flex;gap:1cqw;align-items:center;color:#ffffffb8}.all-link:hover{color:#fff}.explore{min-width:11cqw}.ink-splatter{position:absolute;left:27%;top:21%;width:49%;height:64%;fill:#20112b;opacity:.64;z-index:1;mix-blend-mode:multiply;will-change:transform;pointer-events:none}.word{text-shadow:0 .1cqw 0 #ffffff22;letter-spacing:-.8cqw}.hero-object{width:36%;left:33%;top:27%}.orbit{opacity:.45}.orbit-two{opacity:.3}.star-one{top:25%;left:39%;font-size:2cqw}.star-two{font-size:1.3cqw}.satellite.s1{left:29%;top:20%;width:6.5%}.satellite.s2{left:72%;top:28%;width:6%}.satellite.s3{left:26%;top:73%;width:8.5%}.journey{gap:.7cqw}.scroll-label{font-size:.5cqw;color:#ffffff75}
@media(max-width:900px) and (orientation:portrait){nav>button:not(.pill){display:block;font-size:2.5cqw}nav>.pill{font-size:2.5cqw;width:auto;height:auto;padding:2.3cqw 3.2cqw;gap:2cqw}nav>.pill>span{font-size:3.7cqw}nav{gap:3cqw}.intro{top:23%;left:7%;max-width:60%}.intro h1{font-size:6.7cqw;line-height:1.16}.intro>.handwritten{font-size:5.4cqw;max-width:60cqw;margin-top:2.4cqw}.category-info{top:24%;right:8%;width:19%}.index{font-size:8cqw}.index-total{font-size:3cqw}.arrows{margin-top:3cqw;gap:2cqw}.hero-object{width:min(66cqw,35svh);left:calc(50% - min(33cqw,17.5svh));top:42%}.word{top:61%}.ink-splatter{left:6%;top:38%;width:88%;height:42%}.satellite.s1{left:10%;top:41%;width:12%}.satellite.s2{left:81%;top:47%;width:12%}.satellite.s3{left:7%;top:72%;width:15%}.star-one{left:79%;top:38%;font-size:4cqw}.star-two{left:85%;top:70%;font-size:3cqw}.all-link{font-size:2.4cqw;gap:1.5cqw}.explore{min-width:28cqw;font-size:3cqw}.journey{gap:2cqw}.scroll-label{font-size:1.25cqw}}

.category-card strong{position:absolute;top:15px;left:16px;right:10px;z-index:2;line-height:1.15}.category-card .sprite{top:35px}.word{font-style:normal}

/* Each category is a native stopping point. Keep wheel, touch and keyboard input native. */
html{scroll-snap-type:y mandatory;scroll-padding-top:0}
#experience{position:relative}
.category-snap-point{position:absolute;left:0;width:1px;height:1px;pointer-events:none;scroll-snap-align:start;scroll-snap-stop:always}

/* Two exploration choices; the future virtual experience is a placeholder only. */
.explore-modes{display:flex;align-items:stretch;gap:.7cqw;margin-left:auto}
.mode-button{min-height:3.7cqw;padding:.8cqw 1.2cqw;gap:.7cqw;font-size:.92cqw}
.mode-button>svg{width:1.45cqw;height:1.45cqw;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.mode-button>.mode-copy{font-size:inherit;line-height:1.25;text-align:left}
.mode-copy small{display:block;font-size:.65cqw;line-height:1.3;opacity:.7;letter-spacing:.04cqw;margin-top:.15cqw}
.mode-button>.mode-arrow{font-size:1.4cqw;margin-left:.3cqw}
.mode-virtual:disabled{opacity:1;background:#ffffff12;color:#fff;border:1px solid #ffffff55;box-shadow:none;cursor:not-allowed}
.mode-virtual:disabled:hover{transform:none;box-shadow:none}
@media(max-width:900px) and (orientation:portrait){
 footer>.all-link{display:none}
 .explore-modes{width:100%;gap:2cqw}
 .mode-button{flex:1;min-width:0;min-height:12cqw;justify-content:center;padding:2cqw 2.5cqw;gap:2cqw;font-size:2.8cqw}
 .mode-button>svg{width:4cqw;height:4cqw}
 .mode-button>.mode-arrow{font-size:4cqw;margin-left:0}
 .mode-copy small{font-size:2.1cqw;margin-top:.5cqw;letter-spacing:.05cqw}
 .journey{bottom:calc(100% + 3cqw)}
}

/* Retain the original art direction while keeping navigation usable at every size. */
.stage,.viewport{overflow:clip}
html{-webkit-text-size-adjust:100%}
nav>button,.mode-button,.close{min-height:44px}
.close{width:44px;height:44px}
nav>button:not(.pill){min-width:44px}
.progress-dots button{min-width:20px;min-height:32px}
.progress-dots button:after{left:50%;top:50%;translate:-50% -50%}
.journey{left:44%}
dialog{overflow:auto;overscroll-behavior:contain;max-height:calc(100dvh - 32px)}
.search input{font-size:16px}
@media(max-width:900px) and (orientation:portrait){
 .stage{width:min(100%,650px);height:96svh}
 .journey{left:50%}
 .progress-dots{gap:0}
 .progress-dots button{width:7.4cqw;min-width:24px;height:32px}
 .progress-dots button:after{width:1.2cqw;height:1.2cqw}
 .logo{font-size:clamp(22px,5.7cqw,36px)}
 nav>.pill,nav>button:not(.pill){font-size:clamp(11px,2.5cqw,16px)}
 .mode-button{font-size:clamp(11px,2.8cqw,17px);min-height:48px}
 .mode-copy small{font-size:clamp(9px,2.1cqw,13px)}
 header{top:max(4%,env(safe-area-inset-top))}
 footer{bottom:max(3%,env(safe-area-inset-bottom))}
}
@media(max-width:900px) and (orientation:landscape){
 .stage{width:100%;height:100svh;aspect-ratio:auto;border-radius:0}
 header{top:max(3%,env(safe-area-inset-top));left:max(4%,env(safe-area-inset-left));right:max(4%,env(safe-area-inset-right))}
 .logo{font-size:24px}.logo>svg{width:26px;height:26px}
 nav>button:not(.pill),nav>.pill{font-size:12px}
 nav>.pill{padding:10px 16px;gap:12px}
 .hero-object{width:min(40cqw,65svh);left:calc(50% - min(20cqw,32.5svh));top:24%}
 .intro{top:34%;left:4%}.intro h1{font-size:3.5cqw}
 .intro>.handwritten{font-size:3cqw}
 .word{top:54%}.category-info{top:40%}
 footer{bottom:max(3%,env(safe-area-inset-bottom));left:4%;right:4%}
 footer>.all-link{display:none}
 .journey{left:23%;gap:0}.progress-dots{gap:0}
 .progress-dots button{width:3.4cqw;min-width:20px;height:32px}
 .scroll-label{font-size:7px}
 .explore-modes{gap:8px}
 .mode-button{font-size:11px;padding:9px 12px;gap:8px}
 .mode-copy small{font-size:9px}.mode-button>svg{width:17px;height:17px}
 .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Full-bleed showcase. The stable page interval avoids jumps from mobile browser bars. */
html{scrollbar-width:none}
html::-webkit-scrollbar{display:none}
#experience{height:1000vh;height:calc(900svh + 100dvh)}
.viewport{height:100vh;height:100dvh}
.stage{width:100%;height:100%;max-width:none;max-height:none;min-height:0;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}
.category-snap-point{width:100%;height:100svh;scroll-snap-stop:normal}
.scene[hidden]{display:none}
.art .scene[data-active="true"] .hero-object,.art .scene[data-active="true"] .word{pointer-events:auto;cursor:pointer}
.art:focus-visible{outline:none}
.art:focus-visible .scene[data-active="true"] .hero-object{outline:3px solid #fff;outline-offset:8px;border-radius:24px}
@media(min-width:901px){.hero-object{width:min(36cqw,60dvh);left:calc(51% - min(18cqw,30dvh))}}
