/* Overhaul: collector installation rather than a SaaS-style landing.
   VARIANCE 10 / MOTION 9 / DENSITY 3. Brand accent remains yellow.
   Phone and cards are WebGL geometry; illustrated characters are billboard planes. */
.hero{min-height:max(800px,100dvh);max-height:1200px;background:radial-gradient(ellipse at 55% 48%,#24251b 0%,var(--bg) 58%)}
.hero-mural{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;font-weight:950;letter-spacing:-.1em;line-height:.74;font-size:24vw;color:var(--text);opacity:.075}
.hero-mural span:first-child{position:absolute;top:15%;left:-1.4%}.hero-mural span:last-child{position:absolute;right:-.6%;bottom:12%;font-size:21vw}
.portal-stage{z-index:1}.portal-stage:after{background:linear-gradient(0deg,var(--bg),transparent 20%);z-index:2}.portal-halo{right:14%;top:2%;width:65vw;height:80vh;background:radial-gradient(ellipse,rgba(255,204,23,.12),transparent 66%)}
#portal-art{right:16%;top:0;width:68%;height:94%;object-fit:contain;transition:opacity .6s}
[data-portal3d="ready"] #portal-art{opacity:0;pointer-events:none}
[data-portal3d="fallback"] #portal-canvas{opacity:0}
.hero-copy{position:absolute;inset:0;width:100%;max-width:none;padding:0;margin:0;pointer-events:none}
.hero-copy .eyebrow{position:absolute;left:48px;top:120px;font-size:10px;max-width:190px;line-height:1.6}
.hero-copy h1{position:absolute;left:48px;bottom:195px;font-size:clamp(34px,3.3vw,52px);line-height:1.03;letter-spacing:-.055em}
.hero-description{position:absolute;left:48px;bottom:86px;font-size:13px;max-width:250px;line-height:1.6;margin:0}
.hero-actions{position:absolute;right:48px;bottom:90px;align-items:end;margin:0;pointer-events:auto}.hero-actions .button{border-radius:6px;min-width:220px}
.hero-bottom{left:48px;right:48px;bottom:28px}.hero-bottom button{border-radius:5px!important}.site-header{height:80px}.brand{font-weight:800}.desktop-nav{font-size:12px;gap:24px}.desktop-nav small{font-size:8px}
.universes{padding:45px 0 65px}.worlds-heading{display:block}.worlds-heading h2{font-size:18px;font-weight:500;letter-spacing:-.03em;max-width:none}.worlds-heading p{display:none}.world-list{border-top:0;margin-top:24px;padding-top:0;column-gap:40px;row-gap:18px;font-size:21px;color:var(--text);line-height:1.2}.world-list span:nth-child(2n){font-style:italic}
.collector-room{position:relative;padding:80px 0 60px;perspective:1200px;isolation:isolate}.collector-room:before{content:"";position:absolute;inset:19% 0 18%;z-index:-1;background:radial-gradient(ellipse,#40341b66,transparent 65%);pointer-events:none}
.room-title{text-align:center}.room-title h2{font-size:clamp(44px,5vw,76px);line-height:1}.room-title p{font-size:12px;color:var(--muted);margin-top:22px}
.feature-deck{position:relative;height:480px;max-width:1000px;margin:30px auto 0;perspective:1300px}
.collectible{--angle:0deg;--lift:0px;--hue:0deg;position:absolute;top:70px;left:50%;width:230px;height:330px;margin-left:-115px;border:1px solid #a8924e;border-radius:17px;padding:15px;background:linear-gradient(130deg,#444438,#131511 25%,#24261b 75%,#5d542c);color:#fff9d9;transform:translateX(var(--offset)) translateY(var(--lift)) rotateZ(var(--angle)) rotateY(-8deg);box-shadow:8px 18px 28px #0008,inset 0 0 0 5px #121710,inset 0 0 0 6px #8d7b46;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .3s;overflow:hidden;text-align:left}
.collectible:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#fff6 48%,transparent 60%);opacity:0;transform:translateX(-90%);pointer-events:none;transition:transform .8s,opacity .5s}
.collectible:hover:after,.collectible[aria-selected="true"]:after{transform:translateX(50%);opacity:.3}
.feature-scan{--angle:-19deg;--offset:-300px;--lift:28px;--hue:0deg;z-index:1}.feature-binder{--angle:-7deg;--offset:-102px;--lift:-1px;--hue:20deg;z-index:2}.feature-value{--angle:8deg;--offset:102px;--lift:4px;--hue:180deg;z-index:3}.feature-chase{--angle:20deg;--offset:300px;--lift:37px;--hue:295deg;z-index:4}
.collectible[aria-selected="true"],.collectible:hover{transform:translateX(var(--offset)) translateY(calc(var(--lift) - 42px)) rotateZ(calc(var(--angle) * .6)) rotateY(0deg) translateZ(45px);filter:brightness(1.16);z-index:5}
.card-art{position:absolute;inset:42px 14px 64px;background-image:url('/assets/portal-world.webp');background-size:cover;background-position:50% 25%;border:1px solid #b59e52;filter:hue-rotate(var(--hue));border-radius:6px}.feature-binder .card-art{background-image:url('/assets/collection-art.webp');background-position:61% 65%}.feature-value .card-art{background-position:20% 90%;background-size:130%}.feature-chase .card-art{background-position:70% 40%;background-size:150%}
.card-symbol{position:relative;display:block;font-size:20px;line-height:22px}.card-name{position:absolute;left:17px;bottom:31px;font-size:22px;font-weight:800;letter-spacing:-.045em}.card-kind{position:absolute;bottom:15px;left:18px;font-size:7px;letter-spacing:.2em;color:#c6c2a9}
.feature-readout{display:grid;grid-template-columns:45px 1fr auto;gap:24px;align-items:center;max-width:850px;margin:auto;padding:28px 0;border-top:1px solid var(--line)}.readout-mark{font-size:38px;color:var(--accent)}.feature-readout h3{font-size:22px;letter-spacing:-.035em}.feature-readout p{font-size:14px;color:var(--muted);max-width:540px;margin-top:12px}.screen-trigger{background:none;border-bottom:1px solid var(--accent);border-radius:0;padding:9px 0;font-size:11px;color:var(--accent);white-space:nowrap;align-self:end;margin-bottom:4px}
dialog{border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--bg);color:var(--text);width:min(430px,90vw);max-height:92dvh;overscroll-behavior:contain}dialog::backdrop{background:#050604d9;backdrop-filter:blur(12px)}dialog figure{max-width:280px;margin:auto}dialog img{width:100%;height:auto;border-radius:22px}dialog figcaption{font-size:10px;text-align:center;padding:18px 0;color:var(--muted)}#screen-close{display:block;margin-left:auto;margin-bottom:16px;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:6px;font-size:12px}
.future-section{padding-top:110px;padding-bottom:70px}.future-section>h2{font-size:clamp(38px,5.3vw,74px);max-width:700px}.future-grid{gap:70px;margin-top:55px;padding-inline:40px;perspective:1400px;grid-template-columns:1fr 1fr}
.future-item{position:relative;min-height:390px;border:1px solid #6d6d4c;border-radius:18px;padding:34px;background:linear-gradient(135deg,#363a29,var(--surface) 36%,var(--bg));transform:rotate(-4deg);box-shadow:8px 20px 0 -5px var(--bg),8px 20px 0 -4px var(--line),15px 34px 0 -8px var(--bg),15px 34px 0 -7px var(--line);overflow:hidden;transition:transform .5s}.future-item:after{content:"";position:absolute;right:-40px;bottom:-100px;width:300px;height:300px;border:1px solid var(--line);transform:rotate(35deg);pointer-events:none}.future-item:hover{transform:rotate(-1deg) translateY(-8px)}.shop-item{transform:rotate(5deg);margin-top:65px;padding:34px;background:linear-gradient(145deg,#35302a,var(--surface) 40%,var(--bg))}.shop-item:hover{transform:rotate(2deg) translateY(-8px)}.future-item h3{font-size:38px;margin-top:35px}.future-item p{font-size:14px;max-width:400px}.future-status{border-radius:4px;margin-top:25px}.soon-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.faq{padding-top:80px;padding-bottom:70px;border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr}.faq h2{font-size:26px;letter-spacing:-.045em}.download-section{padding:50px 0;display:flex;gap:25px;text-align:left;align-items:center;justify-content:space-between}.download-section img{width:45px;height:auto;margin:0;border-radius:9px}.download-section h2{font-size:24px;margin:0;max-width:290px;letter-spacing:-.04em;flex:1}.download-section h2 br{display:none}.download-section>p{display:none}.download-section .button{border-radius:6px;min-height:48px}.site-footer{padding-top:35px}
[data-theme="light"] .hero{background:radial-gradient(ellipse at 55% 48%,#e7e6d2,var(--bg) 62%)}[data-theme="light"] .future-item{background:linear-gradient(130deg,#e1e4ce,var(--surface),var(--bg))}
@media(min-width:1600px){.hero-copy{margin:0}.hero-copy h1,.hero-copy .eyebrow,.hero-description{left:max(48px,calc((100vw - 1500px)/2))}.hero-actions{right:max(48px,calc((100vw - 1500px)/2))}#portal-art{right:16%;width:68%}}
@media(min-width:768px) and (max-width:1100px){.hero-copy h1{font-size:34px;left:32px;bottom:185px}.hero-description{left:32px;max-width:190px;font-size:12px}.hero-actions{right:32px;bottom:90px}.hero-copy .eyebrow{left:32px}.feature-deck{transform:scale(.82);margin:-10px -10%;height:430px}.future-grid{padding-inline:20px;gap:35px}.future-item{padding:25px}.future-item h3{font-size:29px}.future-item p{font-size:13px}}
@media(max-width:767px){.hero{min-height:990px;max-height:none}.hero-mural{font-size:33vw;opacity:.075}.hero-mural span:first-child{top:36%;left:-3%}.hero-mural span:last-child{bottom:10%;right:0;font-size:27vw}.hero-copy{inset:0;padding:0;text-align:center}.hero-copy .eyebrow{display:none}.hero-copy h1{inset:135px 20px auto;font-size:38px;text-align:center;line-height:1}.hero-copy h1 span{display:inline}.hero-copy h1 span:after{content:' '}.hero-description{inset:225px 25px auto;max-width:300px;margin:auto;font-size:12px;line-height:1.6}.hero-actions{inset:300px 20px auto;align-items:center;gap:7px}.hero-actions .button{min-height:46px;min-width:210px}.hero-bottom{inset:auto 20px 20px}.portal-stage:after{background:linear-gradient(0deg,var(--bg),transparent 18%)}#portal-art{top:365px;right:-6%;width:112%;height:610px}.portal-halo{inset:360px -20% auto;width:140%;height:620px}.universes{padding:35px 0 40px}.worlds-heading h2{font-size:16px;max-width:300px}.world-list{font-size:18px;column-gap:22px;row-gap:16px}.collector-room{padding:50px 0 30px}.collector-room:before{inset:25% -20px 30%}.room-title h2{font-size:43px}.room-title p{font-size:11px}.feature-deck{height:330px;margin:20px -15px 0;transform:none;max-width:none}.collectible{width:145px;height:215px;margin-left:-72px;top:58px;padding:10px;border-radius:12px;box-shadow:5px 12px 20px #0007,inset 0 0 0 4px #151810,inset 0 0 0 5px #8d7b46}.feature-scan{--offset:-95px;--angle:-18deg;--lift:30px}.feature-binder{--offset:-32px;--angle:-7deg;--lift:4px}.feature-value{--offset:32px;--angle:8deg;--lift:7px}.feature-chase{--offset:95px;--angle:19deg;--lift:35px}.card-symbol{font-size:15px;line-height:18px}.card-art{inset:32px 10px 48px}.card-name{font-size:16px;left:13px;bottom:25px}.card-kind{font-size:5px;left:14px;bottom:14px}.collectible[aria-selected=true],.collectible:hover{transform:translateX(var(--offset)) translateY(calc(var(--lift) - 25px)) rotateZ(calc(var(--angle) * .6)) translateZ(20px)}.feature-readout{grid-template-columns:24px 1fr;gap:12px;padding:20px 0}.readout-mark{font-size:24px}.feature-readout h3{font-size:20px}.feature-readout p{font-size:13px;margin-top:10px}.screen-trigger{grid-column:2;justify-self:start;margin-top:6px}.future-section{padding:65px 0 55px}.future-section>h2{font-size:40px}.future-grid{grid-template-columns:1fr;padding:0 12px;gap:45px;margin-top:40px}.future-item{min-height:320px;padding:28px;transform:rotate(-3deg)}.shop-item{margin-top:0;transform:rotate(3deg)}.future-item h3{font-size:32px;margin-top:28px}.future-item p{font-size:13px}.faq{padding:40px 0;display:block}.faq h2{font-size:26px;margin-bottom:32px}.download-section{gap:15px;flex-wrap:wrap;padding:35px 0}.download-section img{width:38px}.download-section h2{font-size:21px;max-width:260px}.download-section .button{width:100%;margin-top:6px}.site-footer{padding-top:30px}}
@media(max-width:360px){.hero-copy h1{font-size:34px}.hero-copy h1 span{display:block}.hero-description{top:225px}.hero-actions{top:310px}.hero{min-height:970px}.collectible{width:130px;height:200px;margin-left:-65px}.feature-scan{--offset:-82px}.feature-binder{--offset:-27px}.feature-value{--offset:27px}.feature-chase{--offset:82px}.feature-deck{height:310px}.card-name{font-size:14px}}
@media(prefers-reduced-motion:reduce){.collectible,.future-item{transition:none}.collectible:hover{filter:none}}
/* Keep foreground typography legible while cards pass behind it. */
.site-header{background:linear-gradient(180deg,var(--bg),transparent)}
.hero-copy h1{background:linear-gradient(90deg,var(--bg) 65%,transparent);padding:10px 24px 10px 0}
@media(max-width:767px){.hero-copy h1{background:none;padding:0}.collector-room{overflow-x:clip}.collector-room:before{inset-inline:0}}
@media(max-width:767px){.hero-copy h1 span{display:block}}
main{overflow-x:clip}
@media(max-width:767px){.collector-room{overflow:visible}}
