/* Campaign art and motion. Palette and typography stay shared with the portal. */
:root{--accent:#b9d6b4}
.availability>.plan-price{font-size:26px;font-weight:700;letter-spacing:-.7px;color:#e0edd8}
.availability>.plan-price small{font-size:10px;font-weight:400;letter-spacing:0}
.pass-offer{display:flex;flex-direction:column;align-items:start;margin-top:25px;padding-left:17px;border-left:2px solid #b9d6b47a}
.pass-offer>span{font-size:11px;color:#ccddc2}
.pass-offer strong{font-size:30px;letter-spacing:-1px;color:#e0edd8;margin:4px 0}
.pass-offer small{font-size:9px;color:#a1b494}
.hero-content h1:first-child,.section-heading h2:first-child,.pass-copy h2:first-child,.join-copy h2:first-child,.portal-heading h1:first-child,.section-intro h2:first-child,.product-content h3:first-child{margin-top:0}
.header{height:106px;max-width:1440px;padding:0 60px}
body:has(#login-view:not([hidden])) .header{position:absolute;top:0;left:50%;transform:translateX(-50%);width:100%;z-index:3}
.brand img{height:58px;width:48px;filter:drop-shadow(0 3px 8px #0009)}
.brand>span{font-size:23px;letter-spacing:.7px}
.brand small{font-size:8px;letter-spacing:5px;color:#c2cec1}
.header .public-nav{gap:30px}
.public-nav a{font-size:12px;font-weight:700;color:#c5cdc5;position:relative;padding:12px 0}
.public-nav a:after{content:'';position:absolute;bottom:3px;left:0;right:100%;height:2px;background:var(--accent);transition:right .25s}
.public-nav a:hover:after{right:0}
.header-login{border-radius:4px;font-size:11px;font-weight:700;padding:12px 21px;border-color:#cce3c66b;background:#b9d6b419;backdrop-filter:blur(12px)}
.landing-hero{height:100svh;min-height:766px;max-height:1006px;padding:171px max(60px,calc((100vw - 1220px)/2)) 90px;border:0;overflow:clip}
.landing-hero:before{display:none}
.hero-scene{position:absolute;inset:-106px 0 0;z-index:-2;background:url('/assets/scavenge-hero-v3.png') 64% center/cover;transform-origin:70% 45%;animation:scene-arrival 1.5s ease-out both}
.landing-hero:after{inset:-106px 0 0;background:linear-gradient(90deg,#0a100ee0 0%,#0a100e8c 28%,#0a100e16 55%,transparent 70%),linear-gradient(0deg,#0b0d0e 0%,#0b0d0e22 22%,transparent 65%,#0b0d0e2b 83%,#0b0d0e8a 100%)}
.hero-content{max-width:590px;padding-bottom:15px;animation:content-arrival .8s .1s both}
.hero-kicker{font-size:8px;letter-spacing:2px;color:#d0dfc9;gap:12px}
.hero-kicker:before{display:none}
.hero-kicker-mark{display:grid;place-items:center;border:1px solid #b9d6b477;transform:skew(-7deg);width:29px;height:29px;font-size:10px;font-weight:800;letter-spacing:-.5px;background:#a6cf9b17}
.hero-content h1{font-size:clamp(54px,5.3vw,79px);line-height:1.04;letter-spacing:-3.7px;margin:24px 0 25px;font-weight:800;text-shadow:0 5px 25px #0003}
.hero-content h1 span{color:#c5e2b7}
.hero-content>p{font-size:13px;line-height:1.9;color:#c0cbbd;max-width:335px}
.hero-content>p strong{font-weight:700;color:#e1e9dc}
.hero-actions{margin-top:31px;gap:27px}
.primary{position:relative;overflow:hidden;transition:transform .25s,background .25s,box-shadow .25s}
.primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px #b9d6b427}
.hero-actions .primary{background:#c0ddb3;border:1px solid #e0efd2;border-radius:4px;min-width:185px;padding:16px 22px;font-size:11px;letter-spacing:.8px;box-shadow:0 0 35px #b9d6b41a}
.hero-actions .primary:after{content:'';position:absolute;inset:-50% auto -50% -80%;width:50%;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:skewX(-20deg);animation:button-light 7s 2s infinite}
.hero-secondary{display:flex;gap:10px;align-items:center;background:transparent;border:0;color:#e0e9db;font-size:11px;font-weight:700;padding:10px 0}
.play-ring{display:grid;place-items:center;width:34px;height:34px;border:1px solid #c4d7bc70;border-radius:50%;font-size:16px;transition:background .2s}
.hero-secondary:hover .play-ring{background:#b9d6b429}
.hero-bottom{left:max(60px,calc((100vw - 1220px)/2));right:max(60px,calc((100vw - 1220px)/2));bottom:44px}
.hero-bottom>a{font-size:8px;letter-spacing:1.5px;font-weight:700}
.hero-bottom>a>span{margin-left:13px}
.scroll-cue{display:flex;align-items:center;gap:11px}
.hero-bottom .scroll-cue>span{margin-left:0;display:grid;place-items:center;width:24px;height:35px;border:1px solid #b9d6b43b;border-radius:15px;font-size:15px;animation:scroll-nudge 2s infinite}
.hero-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}
.hero-atmosphere i{position:absolute;width:3px;height:3px;background:#e2e8bb;border-radius:50%;box-shadow:0 0 8px #d6e7a6;opacity:0;animation:drift 10s infinite linear}
.hero-atmosphere i:nth-child(1){left:49%;bottom:12%;animation-delay:1s}
.hero-atmosphere i:nth-child(2){left:72%;bottom:5%;animation-delay:4s}
.hero-atmosphere i:nth-child(3){left:90%;bottom:32%;animation-delay:6s;width:2px;height:2px}
.hero-atmosphere i:nth-child(4){left:32%;bottom:21%;animation-delay:2.5s;width:2px;height:2px}
.hero-atmosphere i:nth-child(5){left:60%;bottom:3%;animation-delay:7s}
.hero-atmosphere i:nth-child(6){left:82%;bottom:8%;animation-delay:9s;width:2px;height:2px}
.discovery{position:relative;z-index:1;max-width:1220px;margin:-5px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.discovery-card{position:relative;isolation:isolate;overflow:hidden;min-height:116px;border:1px solid #b9d6b426;border-radius:7px;padding:25px;display:flex;align-items:center;gap:18px;text-align:left;background:#141d16;color:#e7efdf;transition:transform .3s,border-color .3s,box-shadow .3s}
.discovery-card:before{content:'';position:absolute;inset:0;z-index:-2;background-position:65% 45%;background-size:cover;opacity:.24;transition:opacity .3s,transform .5s}
.discovery-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#111b14ee,#111b1499)}
.discovery-vip:before{background-image:url('/assets/scavenge-vip-v3.png')}
.discovery-pass:before{background-image:url('/assets/scavenge-pass-v3.png')}
.discovery-rank:before{background-image:url('/assets/scavenge-hero-v3.png')}
.discovery-card:hover{transform:translateY(-6px);border-color:#b9d6b470;box-shadow:0 10px 28px #0004}
.discovery-card:hover:before{opacity:.55;transform:scale(1.06)}
.discovery-card small{display:block;color:#9bae96;letter-spacing:1.2px;font-size:7px;font-weight:700;margin-bottom:8px}
.discovery-card strong{font-size:17px;letter-spacing:-.4px}
.discovery-icon{font-size:33px;color:#bad8a9;font-weight:400;line-height:1}
.discovery-arrow{margin-left:auto;color:#b4c9a9;font-size:21px}
.home-section{max-width:1220px;padding:100px 0}
.section-heading{margin-bottom:35px}
.section-heading h2,.pass-copy h2,.join-copy h2{font-size:48px;line-height:1.05;letter-spacing:-2px}
.section-heading>p{font-size:12px;max-width:320px}
.home-vip{grid-template-columns:1.1fr 1fr;border-radius:10px;background:linear-gradient(135deg,#1c281d,#111713 65%);box-shadow:0 20px 60px #0002}
.vip-visual{min-height:385px;background:#172016;overflow:hidden}
.vip-visual:before{display:none}
.vip-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none;transition:transform .9s}
.home-vip:hover .vip-visual img{transform:scale(1.045)}
.vip-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0c130de0,transparent 30%),linear-gradient(90deg,transparent 70%,#15201744)}
.vip-visual>span{z-index:1;bottom:19px;left:23px;right:15px;letter-spacing:.9px;font-size:6px;color:#b6c6aa}
.vip-copy{padding:46px 45px;align-self:center}
.vip-copy h3{font-size:33px;line-height:1.2;letter-spacing:-1.2px;margin:20px 0}
.vip-copy>p{font-size:12px}
.availability{margin-top:25px}
.availability button{background:#b9d6b410;border-color:#b9d6b42b;color:#a5b69d}
.pass-band{position:relative;isolation:isolate;overflow:hidden;background:#131a13;border-color:#b9d6b422}
.pass-band:before{content:'';position:absolute;inset:0;z-index:-2;background:url('/assets/scavenge-pass-v3.png') center 40%/cover}
.pass-band:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b130df5,#0b130da1 35%,#0b130d00 70%),linear-gradient(0deg,#0b0d0e99,transparent 30%,transparent 80%,#0b0d0e44)}
.home-pass{position:relative;min-height:520px;display:flex;align-items:center;padding-top:75px;padding-bottom:75px}
.pass-copy{max-width:480px}
.pass-copy h2{font-size:65px;line-height:1.02;letter-spacing:-3px;margin:22px 0}
.pass-copy>p{max-width:320px;color:#bdcbbb;font-size:12px}
.pass-copy .tag{background:#182818a6;border-color:#b9d6b43d;color:#c7daba;font-size:8px;backdrop-filter:blur(8px)}
.pass-visual{display:none}
.concept-caption{position:absolute;right:0;bottom:24px;font-size:6px;color:#b8c8b1;letter-spacing:1px}
.join-section{gap:100px;padding-top:95px;padding-bottom:95px}
.join-copy h2{font-size:40px;line-height:1.1}
.join-copy>p{max-width:355px}
.join-steps{border:1px solid #b9d6b41c;border-radius:9px;background:linear-gradient(140deg,#1a251c,#101712);padding:12px 27px}
.join-steps li,.join-steps li:first-child{padding:23px 0}
.join-steps li:last-child{border:0}
.join-steps li:before{display:grid;place-items:center;width:35px;height:35px;font-size:13px;background:#b9d6b40b;border:1px solid #b9d6b42d;border-radius:6px}
.join-steps h3{font-size:13px}
.join-steps p{font-size:11px}
.welcome{background-image:linear-gradient(90deg,#111c16f5,#111c16ae 48%,#111c1600),url('/assets/scavenge-hero-v3.png');background-position:65% 40%}
.vip-art{background:linear-gradient(0deg,#0b100dbf,#0b100d15),url('/assets/scavenge-vip-v3.png') center/cover}
.pass-art{background:linear-gradient(0deg,#0b100dbf,#0b100d15),url('/assets/scavenge-pass-v3.png') center/cover}
.product-mark{font-size:75px;text-shadow:0 4px 30px #000}
.motion-ready .reveal{opacity:0;transform:translateY(25px);transition:opacity .7s,transform .7s}
.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes scene-arrival{from{transform:scale(1.04);opacity:.5}to{transform:scale(1);opacity:1}}
@keyframes content-arrival{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes button-light{0%,75%{left:-80%}100%{left:150%}}
@keyframes scroll-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@keyframes drift{0%{transform:translate(0,0);opacity:0}20%{opacity:.65}80%{opacity:.35}100%{transform:translate(-80px,-260px);opacity:0}}
@media(min-width:1700px){.hero-scene{background-position:center 42%}.hero-content h1{font-size:85px}.landing-hero{max-height:980px}}
@media(max-width:1320px){.discovery{margin-left:40px;margin-right:40px}.home-section{margin-left:40px;margin-right:40px}.header{padding:0 40px}.landing-hero{padding-left:50px;padding-right:50px}.hero-bottom{left:50px;right:50px}.discovery-card{padding:23px 20px;gap:13px}.discovery-card strong{font-size:15px}.discovery-icon{font-size:28px}.hero-content h1{font-size:67px}}
@media(max-width:1000px){.header{height:96px;padding:0 28px;gap:20px}.header .public-nav{gap:18px}.brand>span{font-size:19px}.brand img{width:36px;height:46px}.public-nav a{font-size:10px}.header-login{padding:10px 13px;font-size:10px}.hero-scene{background-position:60% center;inset:-96px 0 0}.landing-hero{min-height:650px;height:auto;padding:75px 35px 110px}.hero-content h1{font-size:61px}.hero-content>p{font-size:12px;max-width:300px}.hero-bottom{left:35px;right:35px}.discovery{margin-left:25px;margin-right:25px;gap:10px}.discovery-card{padding:20px 15px;gap:11px}.discovery-card strong{font-size:13px}.discovery-card small{font-size:6px;letter-spacing:.8px}.discovery-icon{display:none}.home-section{margin:0 30px;padding:75px 0}.home-vip{grid-template-columns:1fr 1fr}.vip-copy{padding:32px}.vip-copy h3{font-size:28px}.section-heading h2{font-size:42px}.home-pass{min-height:480px}.pass-copy h2{font-size:55px}.join-section{gap:40px}.join-copy h2{font-size:34px}}
@media(max-width:640px){.header{height:auto;min-height:125px;padding:18px 20px;gap:17px}.brand>span{font-size:19px}.header .public-nav{gap:12px}.header-login{margin-left:auto}.public-nav a{padding:5px 0;font-size:10px}.landing-hero{min-height:700px;padding:220px 24px 85px;align-items:end}.hero-scene{inset:-125px 0 0;background-position:65% top;background-size:auto 650px;background-repeat:no-repeat;background-color:#0b0d0e}.landing-hero:after{inset:-125px 0 0;background:linear-gradient(0deg,#0b0d0e 0%,#0b0d0eeb 23%,#0b0d0e94 48%,#0b0d0e00 77%,#0b0d0e88 100%)}.hero-content{padding:0;max-width:100%;position:relative}.hero-kicker{font-size:6px;letter-spacing:1.5px;gap:8px}.hero-kicker-mark{width:23px;height:23px;font-size:8px}.hero-content h1{font-size:clamp(43px,12vw,65px);letter-spacing:-2px;margin:17px 0;line-height:1.02}.hero-content>p{font-size:11px;max-width:300px;line-height:1.8}.hero-actions{gap:20px;margin-top:25px}.hero-actions .primary{min-width:155px;padding:13px 16px;font-size:9px}.hero-secondary{font-size:10px;gap:7px}.play-ring{width:28px;height:28px}.hero-bottom{left:24px;right:24px;bottom:25px}.hero-bottom>a{font-size:6px;letter-spacing:.7px}.hero-bottom .scroll-cue>span{width:18px;height:27px;font-size:12px}.discovery{margin:0 20px;grid-template-columns:1fr;gap:9px}.discovery-card{min-height:83px;padding:19px 22px;gap:17px}.discovery-icon{display:block;font-size:28px}.discovery-card small{font-size:7px;letter-spacing:1px;margin-bottom:4px}.discovery-card strong{font-size:16px}.home-section{margin:0 20px;padding:60px 0}.section-heading{gap:18px}.section-heading h2{font-size:38px}.section-heading>p{font-size:11px}.home-vip{grid-template-columns:1fr}.vip-visual{min-height:280px}.vip-copy{padding:30px 27px}.vip-copy h3{font-size:29px}.vip-visual>span{font-size:5px;letter-spacing:.6px}.home-pass{min-height:640px;align-items:end;padding-bottom:55px;padding-top:270px}.pass-band:before{background-position:64% top;background-size:auto 520px;background-repeat:no-repeat}.pass-band:after{background:linear-gradient(0deg,#0b130dfc 0%,#0b130de0 30%,#0b130d33 70%,transparent)}.pass-copy h2{font-size:50px;letter-spacing:-2px;margin:18px 0}.pass-copy>p{font-size:11px;max-width:300px}.pass-copy .eyebrow{font-size:7px}.pass-copy .tag{font-size:7px;margin-top:22px}.concept-caption{right:0;bottom:18px;font-size:5px}.join-section{gap:30px}.join-copy h2{font-size:34px}.join-steps{padding:8px 22px}.availability{gap:10px}.availability>span{font-size:11px}.availability button{font-size:9px;padding:11px}.hero-atmosphere{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
