@font-face{
  font-family:"Pricedown";
  src:url("assets/fonts/Pricedown-Bl.otf") format("opentype");
  font-weight:400 900;
  font-style:normal;
  font-display:swap;
}
:root {
  --ink:#0b0d09;
  --ink-soft:#171a13;
  --cream:#efe4c9;
  --paper:#d8cfb7;
  --green:#4d6a32;
  --green-bright:#7fa34a;
  --green-deep:#26351e;
  --orange:#d98f2b;
  --red:#9a2e25;
  --blue:#5d7d91;
  --line:rgba(239,228,201,.2);
  --shadow:0 18px 45px rgba(0,0,0,.38);
  --outline:3px solid #080907;
  --display:"Pricedown", Impact, "Arial Black", sans-serif;
  --condensed:"Oswald", "Arial Narrow", sans-serif;
  --marker:"Pirata One", Georgia, serif;
}
/* GTA-inspired title system: local Pricedown for titles + blackletter subtitle. */
.display-logo-main,.brand-main,.boot-logo,h2,.mission-copy h3,.join-steps h3,.accordion summary,.street-quote p{font-synthesis:none;text-rendering:geometricPrecision}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--condensed);font-size:18px;line-height:1.65;overflow-x:hidden}
body.is-loading{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
.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}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto;position:relative;z-index:2}
.section{padding:110px 0;position:relative;overflow:hidden}
.dark-section{background:var(--ink);color:var(--cream)}
.page-noise{position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.13;mix-blend-mode:multiply;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='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:999;background:repeating-linear-gradient(to bottom,transparent 0 3px,rgba(0,0,0,.055) 3px 4px);mix-blend-mode:multiply}

.boot-screen{position:fixed;inset:0;background:#050604;color:var(--cream);z-index:2000;display:grid;place-content:center;text-align:center;transition:opacity .55s ease,visibility .55s ease}
.boot-screen.done{opacity:0;visibility:hidden}
.boot-logo{font:400 clamp(36px,8.5vw,96px)/.95 var(--display);letter-spacing:.04em;word-spacing:.12em;color:#f4efe4;-webkit-text-stroke:clamp(2px,.35vw,5px) #050604;paint-order:stroke fill;text-shadow:0 7px 0 #050604,7px 12px 0 rgba(0,0,0,.55);text-transform:uppercase}
.boot-logo span{display:block;font-family:var(--marker);font-size:.72em;color:var(--green-bright);letter-spacing:.04em;text-transform:none;transform:rotate(-5deg);margin-top:.22em;-webkit-text-stroke:clamp(1px,.18vw,3px) #050604;text-shadow:3px 5px 0 #050604}
.boot-copy{text-transform:uppercase;letter-spacing:.23em;font-size:12px;margin-top:45px}
.boot-track{width:min(340px,70vw);height:13px;border:3px solid var(--cream);margin:14px auto 0;padding:2px}
.boot-track i{display:block;height:100%;width:0;background:var(--green-bright);animation:boot 1.25s ease forwards}
@keyframes boot{to{width:100%}}

.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:16px clamp(20px,4vw,56px);color:#fff;transition:.25s;background:linear-gradient(to bottom,rgba(0,0,0,.75),transparent)}
.site-header.scrolled{background:rgba(8,9,7,.92);backdrop-filter:blur(8px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.brand{display:inline-flex;flex-direction:column;align-items:center;width:auto;min-width:118px;line-height:.85;filter:drop-shadow(0 4px 0 #000);gap:4px}
.brand-main{font:400 18px/.9 var(--display);letter-spacing:.06em;word-spacing:.14em;text-transform:uppercase;white-space:nowrap;-webkit-text-stroke:1.5px #000;paint-order:stroke fill;color:#f0eadb;text-shadow:0 3px 0 #000}
.brand-script{font:400 28px/.85 var(--marker);letter-spacing:.04em;transform:rotate(-6deg);color:var(--green-bright);-webkit-text-stroke:1.25px #000;paint-order:stroke fill;text-shadow:2px 3px 0 #000}
.main-nav{display:flex;align-items:center;gap:26px;text-transform:uppercase;font-weight:700;font-size:14px;letter-spacing:.11em}
.main-nav a{position:relative;text-shadow:0 2px 0 #000}
.main-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:3px;background:var(--green-bright);transition:.2s}
.main-nav a:hover:after{right:0}
.nav-cta{padding:10px 16px;background:var(--green);border:2px solid #fff;box-shadow:3px 3px 0 #000;transform:skew(-4deg)}
.menu-toggle{display:none;background:transparent;border:0;width:44px;height:44px;padding:10px}
.menu-toggle span:not(.sr-only){display:block;height:3px;background:#fff;margin:5px 0;box-shadow:1px 1px 0 #000}

.hero{min-height:100vh;min-height:760px;position:relative;background:#292c24;color:#fff;display:flex;align-items:center;overflow:hidden;padding-bottom:88px}
.hero-bg{position:absolute;inset:0;background:url('assets/vlad-street-empty.jpeg') center/cover no-repeat;filter:saturate(.65) contrast(1.1) sepia(.12);transform:scale(1.04)}
.hero-shadow{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,3,2,.88) 0%,rgba(4,5,4,.45) 38%,rgba(0,0,0,.12) 58%,rgba(0,0,0,.25) 100%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 42%)}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 58% 52%,transparent 0 18%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.45) 100%)}
.hero-content{padding-top:80px;padding-bottom:28px;z-index:4}
.eyebrow,.section-kicker{text-transform:uppercase;font-weight:700;letter-spacing:.18em;font-size:13px}
.eyebrow{margin-bottom:20px;color:#fff}.eyebrow span{color:var(--orange)}
.display-logo{margin:0;width:max-content;position:relative;line-height:.9;filter:drop-shadow(10px 12px 0 rgba(0,0,0,.65))}
.display-logo-main{display:block;font:400 clamp(52px,10vw,140px)/.9 var(--display);letter-spacing:.05em;word-spacing:.16em;text-transform:uppercase;color:#f3eee4;-webkit-text-stroke:clamp(3px,.4vw,6px) #090a08;paint-order:stroke fill;text-shadow:0 clamp(5px,.55vw,9px) 0 #090a08,clamp(6px,.7vw,11px) clamp(10px,1vw,16px) 0 #43522d,clamp(10px,1.1vw,18px) clamp(16px,1.5vw,24px) 0 #090a08}
.display-logo-line2{margin-top:.02em}
.display-logo-script{display:block;font:400 clamp(62px,8.2vw,116px)/.9 var(--display);letter-spacing:.08em;color:var(--green-bright);-webkit-text-stroke:clamp(2px,.3vw,4px) #090a08;paint-order:stroke fill;transform:rotate(-4deg) translate(4%,6%);text-shadow:4px 6px 0 #0a0b09;text-transform:uppercase;margin-top:.08em}
.hero-lede{font-size:clamp(19px,2vw,25px);line-height:1.65;max-width:600px;margin:55px 0 30px;text-shadow:0 2px 2px #000;color:#f1ebdf}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px;position:relative;z-index:8}
.game-button{display:inline-flex;align-items:center;justify-content:center;min-width:170px;padding:14px 22px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;position:relative;border:3px solid #0b0c09;box-shadow:6px 6px 0 #0b0c09;transform:skew(-4deg);transition:.18s}
.game-button span{transform:skew(4deg)}
.game-button.primary{background:var(--green-bright);color:#111}
.game-button.secondary{background:var(--cream);color:#111}
.game-button:hover{transform:skew(-4deg) translate(-2px,-2px);box-shadow:9px 9px 0 #0b0c09}
.hero-character{position:absolute;left:62%;bottom:5%;width:min(610px,51vw);height:min(93vh,950px);z-index:3;transform:translateX(-50%);filter:drop-shadow(10px 18px 0 rgba(0,0,0,.35));pointer-events:none}
.hero-character .vlad-model,.hero-character model-viewer{width:100%;height:100%;background:transparent;outline:none;pointer-events:none;--poster-color:transparent;--progress-bar-color:#7fa34a;--progress-bar-height:3px}
.respect-meter{position:absolute;left:auto;right:4.5vw;top:auto;bottom:64px;transform:none;z-index:8;width:min(280px,24vw);text-align:right;text-transform:uppercase;font-weight:800;text-shadow:2px 2px 0 #000}
.respect-label{display:flex;gap:8px;align-items:center;justify-content:flex-end}.respect-label span{color:var(--orange)}
.respect-track{height:18px;border:4px solid #080907;background:#707083;margin-top:6px;box-shadow:3px 3px 0 rgba(0,0,0,.6);padding:2px;margin-left:auto}
.respect-track i{display:block;width:72%;height:100%;background:linear-gradient(90deg,var(--orange),#e6bf4d)}
.hud{position:absolute;z-index:6;font-family:var(--display);letter-spacing:.06em;text-shadow:3px 3px 0 #000;-webkit-text-stroke:1px #000}
.hud-top-right{right:4vw;top:94px;text-align:right}
.hud-time{font-size:28px;color:#eee}.hud-cash{font-size:34px;color:#6d9a55;letter-spacing:.08em}
.hud-stars{font-size:21px;color:#d0a64d;letter-spacing:3px}.hud-stars .off{color:#4c4d48}
.minimap{left:4vw;bottom:72px;width:150px;height:150px;filter:drop-shadow(5px 6px 0 rgba(0,0,0,.7));z-index:8}
.map-ring{fill:#070807;stroke:#ddd8ce;stroke-width:5}.map-ground{fill:#89908a}.map-road{fill:none;stroke:#171916;stroke-width:14}.map-road.thin{stroke-width:8}.map-block{fill:#e8e5dc}.player-dot{fill:#f1bd37;stroke:#000;stroke-width:3}.player-arrow{fill:#fff;stroke:#000;stroke-width:2}.map-north{fill:#fff;font:900 19px var(--display);stroke:#000;stroke-width:4;paint-order:stroke}
.ticker{position:absolute;left:0;right:0;bottom:0;height:44px;background:var(--ink);border-top:4px solid var(--cream);border-bottom:4px solid var(--cream);display:flex;align-items:center;overflow:hidden;z-index:7;color:var(--cream);font-weight:800;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
.ticker span{padding:0 35px;animation:ticker 18s linear infinite}.ticker span:after{content:"★";margin-left:70px;color:var(--orange)}
@keyframes ticker{to{transform:translateX(-550%)}}

.section-kicker{color:var(--green-deep);margin-bottom:22px}.section-kicker.light{color:var(--green-bright)}
h2{font:400 clamp(50px,7.6vw,92px)/1.05 var(--display);letter-spacing:.04em;word-spacing:.18em;text-transform:uppercase;margin:0;-webkit-text-stroke:1.5px currentColor;paint-order:stroke fill}
h2 em{display:inline-block;font-family:var(--marker);font-weight:400;text-transform:none;color:var(--green);letter-spacing:.04em;margin-left:.22em;padding-inline:.04em;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;filter:drop-shadow(3px 4px 0 rgba(0,0,0,.22))}
.dark-section h2 em,.section-heading.light h2 em,.final-cta h2 em{color:var(--green-bright);-webkit-text-stroke:2px #080907}
.section-heading p{font-size:21px;line-height:1.6;color:#595a52;margin:28px 0 0}.section-heading.light p{color:#bdb8aa}
.section-heading.centered{text-align:center;max-width:750px;margin:0 auto 60px}

.street-intro{background:linear-gradient(135deg,#d7ceb9,#efe6d3)}
.street-intro:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:36px 36px;transform:skewY(-4deg) scale(1.1)}
.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:75px}
.street-frame{position:relative;background:#070807;padding:12px;transform:rotate(-2deg);box-shadow:var(--shadow)}
.street-frame:after{content:"";position:absolute;inset:12px;background:linear-gradient(0deg,rgba(26,22,13,.45),transparent 45%);pointer-events:none}
.street-frame img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.75) contrast(1.12) sepia(.12);width:100%;display:block}
.frame-label{position:absolute;z-index:3;top:-22px;left:28px;background:var(--green-bright);border:3px solid #000;padding:7px 16px;font-family:var(--display);font-size:24px;letter-spacing:.06em;transform:skew(-7deg);box-shadow:4px 4px 0 #000}
.corner{position:absolute;width:34px;height:34px;z-index:4;border-color:var(--orange)}.corner.tl{top:22px;left:22px;border-left:5px solid;border-top:5px solid}.corner.tr{top:22px;right:22px;border-right:5px solid;border-top:5px solid}.corner.bl{bottom:22px;left:22px;border-left:5px solid;border-bottom:5px solid}.corner.br{bottom:22px;right:22px;border-right:5px solid;border-bottom:5px solid}
.intro-copy p{font-size:25px;line-height:1.6;max-width:470px}.mission-prompt{display:inline-flex;align-items:center;gap:11px;text-transform:uppercase;font-weight:700;letter-spacing:.06em;font-size:14px;margin-top:18px}.button-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:3px solid var(--ink);font-weight:800;background:#5f86ad;color:#fff;box-shadow:2px 2px 0 #000}

.persona{padding:130px 0;background:radial-gradient(circle at 20% 30%,#31382a 0,transparent 34%),var(--ink)}
.persona:after{content:"PERSONA / PERSONA / PERSONA /";position:absolute;top:70px;left:-50px;white-space:nowrap;font:900 160px/.85 var(--display);letter-spacing:.08em;color:rgba(255,255,255,.025);transform:rotate(-8deg);pointer-events:none}
.persona-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}
.portrait-card{background:#c9c0a7;border:5px solid #050604;box-shadow:13px 14px 0 rgba(125,159,74,.75);transform:rotate(-2deg);position:relative}
.portrait-header,.portrait-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#0a0b09;color:var(--cream);font-weight:800;letter-spacing:.12em;font-size:13px}
.portrait-card img{width:100%;aspect-ratio:1/1.05;object-fit:cover;object-position:center 10%;background:radial-gradient(circle,#b6b19f,#757a69);filter:saturate(.72) contrast(1.12) sepia(.08)}
.health-line{width:50%;height:10px;background:#6e6d7f;border:2px solid #000}.health-line i{display:block;width:87%;height:100%;background:var(--red)}
.persona-copy h2{margin-bottom:8px}
.persona-copy .large-copy{font-size:clamp(21px,2.2vw,30px);line-height:1.55;max-width:690px;margin:28px 0 0;color:#d3cdbf}
.trait-list{list-style:none;padding:0;margin:45px 0 0;border-top:1px solid var(--line)}
.trait-list li{display:flex;gap:18px;padding:16px 4px;border-bottom:1px solid var(--line);text-transform:uppercase;font-weight:700;letter-spacing:.05em}
.trait-list span{color:var(--orange);font-family:var(--display)}

.stats{background:#e6dcc7}
.stats:after{content:"";position:absolute;width:450px;height:450px;border:70px solid rgba(77,106,50,.06);border-radius:50%;right:-160px;top:-160px}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stat-card{background:#cbc2ad;border:4px solid var(--ink);padding:28px 24px;box-shadow:7px 8px 0 var(--ink);position:relative;overflow:hidden;transition:.2s}
.stat-card:hover{transform:translate(-3px,-3px);box-shadow:10px 11px 0 var(--ink)}
.stat-icon{position:absolute;right:-8px;top:-22px;font:900 90px var(--display);color:rgba(0,0,0,.08)}
.stat-card strong{display:block;font:900 clamp(45px,6vw,78px)/1.05 var(--display);letter-spacing:.04em}
.stat-card span{text-transform:uppercase;font-weight:700;letter-spacing:.08em;font-size:14px}
.stat-bar{height:12px;border:3px solid var(--ink);margin-top:25px;background:#7d7b84}.stat-bar i{display:block;height:100%;width:var(--fill);background:var(--green)}

.missions{background:linear-gradient(rgba(8,9,7,.92),rgba(8,9,7,.98)),url('assets/vlad-street.jpeg') center/cover fixed}
.mission-city{position:absolute;inset:auto 0 0;height:38%;opacity:.13;background:linear-gradient(135deg,transparent 0 20%,#72855e 20% 22%,transparent 22% 35%,#72855e 35% 37%,transparent 37%),repeating-linear-gradient(90deg,transparent 0 80px,rgba(255,255,255,.09) 80px 83px)}
.mission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.mission-card{background:#cbc1aa;color:var(--ink);border:4px solid #000;display:grid;grid-template-columns:175px 1fr;min-height:220px;position:relative;box-shadow:8px 8px 0 rgba(127,163,74,.6);transition:.25s;overflow:hidden}
.mission-card:hover,.mission-card:focus{transform:translate(-4px,-4px) rotate(-.5deg);box-shadow:13px 13px 0 rgba(127,163,74,.8);outline:none}
.mission-number{position:absolute;right:12px;top:4px;font:900 78px/.9 var(--display);color:rgba(0,0,0,.08);z-index:0}
.mission-art{position:relative;border-right:4px solid #000;overflow:hidden;background:#304326;display:grid;place-items:center}
.mission-art:before,.mission-art:after{content:"";position:absolute}
.mission-art span{font:900 38px var(--display);color:var(--cream);-webkit-text-stroke:2px #000;z-index:3;transform:rotate(-8deg)}
.mission-wake{background:linear-gradient(#d98332 0 40%,#554333 40% 57%,#272c22 57%)}.mission-wake:before{width:75px;height:75px;border-radius:50%;background:#f0c15a;top:25px;right:18px}.mission-wake:after{left:0;right:0;bottom:25px;height:55px;background:repeating-linear-gradient(90deg,#171a14 0 24px,#3d4833 24px 42px);clip-path:polygon(0 100%,0 45%,15% 45%,15% 15%,35% 15%,35% 60%,55% 60%,55% 0,75% 0,75% 40%,100% 40%,100% 100%)}
.mission-spread{background:radial-gradient(circle at 35% 30%,#688d4d 0 5%,transparent 6%),radial-gradient(circle at 70% 60%,#d7a63a 0 5%,transparent 6%),#273522}.mission-spread:before{width:140px;height:140px;border:9px solid #0b0c09;border-radius:50%;box-shadow:0 0 0 6px #dad5c8}.mission-spread:after{width:65px;height:12px;background:#dcd8cd;transform:rotate(40deg);box-shadow:0 -25px 0 #dcd8cd,0 25px 0 #dcd8cd}
.mission-takeover{background:linear-gradient(145deg,#20241d 50%,#6e7c5e 50%)}.mission-takeover:before{width:90px;height:125px;background:repeating-linear-gradient(90deg,#bbb4a1 0 18px,#726f64 18px 24px);bottom:0;left:18px;clip-path:polygon(0 100%,0 30%,20% 30%,20% 0,45% 0,45% 42%,72% 42%,72% 18%,100% 18%,100% 100%)}
.mission-legend{background:radial-gradient(circle,#5d723f 0 30%,#172015 31% 100%)}.mission-legend:before{width:100px;height:100px;border:9px double #d6c36a;border-radius:50%}.mission-legend span{font-size:60px;color:#d8bd53}
.mission-copy{padding:30px 26px;z-index:2}.mission-copy small{text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--green-deep)}.mission-copy h3{font:400 37px/1.1 var(--display);letter-spacing:.05em;word-spacing:.12em;text-transform:uppercase;margin:8px 0 14px}.mission-copy p{font-size:17px;line-height:1.55;margin:0;color:#41423c}
.mission-status{position:absolute;right:0;bottom:0;background:var(--green);color:#fff;padding:5px 14px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em;border-left:3px solid #000;border-top:3px solid #000}.mission-status.locked{background:#4f504b;color:#ddd}

.gallery{background:#ddd2bc}.gallery-grid{display:grid;grid-template-columns:.8fr 1.35fr;grid-template-rows:auto auto;gap:25px;margin-top:45px}.gallery-card{margin:0;background:#0a0b09;padding:10px;border:4px solid #000;box-shadow:8px 8px 0 rgba(0,0,0,.25);position:relative}.gallery-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.08) sepia(.12)}.gallery-card figcaption{position:absolute;left:18px;bottom:18px;background:#0a0b09;color:#fff;padding:7px 12px;text-transform:uppercase;font-size:12px;letter-spacing:.1em}.gallery-tall{grid-row:1/3}.gallery-tall img{aspect-ratio:3/4}.gallery-wide img{aspect-ratio:3/2;object-fit:cover;object-position:center 40%}.gallery-wide figcaption{left:auto;right:18px}.street-quote{margin:0;background:var(--green);color:var(--cream);border:4px solid #000;box-shadow:8px 8px 0 #000;padding:28px 40px;position:relative;overflow:hidden}.street-quote .quote-mark{position:absolute;right:20px;top:-50px;font:200px/1 Georgia;color:rgba(255,255,255,.12)}.street-quote p{font:400 clamp(30px,4vw,52px)/1.15 var(--display);letter-spacing:.04em;word-spacing:.14em;text-transform:uppercase;margin:0 0 16px}.street-quote cite{font-family:var(--marker);font-size:24px;letter-spacing:.04em;color:#d9d2c2}

.join{background:#0b0d09}.join-radar{position:absolute;width:620px;height:620px;left:-250px;top:10%;border:1px solid rgba(128,164,75,.12);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 58px,rgba(128,164,75,.09) 59px 61px);opacity:.7}.join-radar:before,.join-radar:after{content:"";position:absolute;background:rgba(128,164,75,.16)}.join-radar:before{width:1px;height:100%;left:50%}.join-radar:after{height:1px;width:100%;top:50%}
.join-steps{list-style:none;padding:0;margin:0 auto;max-width:900px;counter-reset:join;display:grid;gap:14px}.join-steps li{display:grid;grid-template-columns:74px 1fr 58px;align-items:center;gap:22px;border:3px solid rgba(239,228,201,.32);background:rgba(255,255,255,.035);padding:18px 22px;transition:.2s}.join-steps li:hover{background:rgba(127,163,74,.12);border-color:var(--green-bright);transform:translateX(5px)}.step-number{display:grid;place-items:center;width:58px;height:58px;border:3px solid #000;background:var(--green-bright);color:#111;font:900 30px var(--display);letter-spacing:.04em;box-shadow:4px 4px 0 #000}.join-steps h3{margin:0;font:400 26px/1.15 var(--display);letter-spacing:.05em;word-spacing:.12em;text-transform:uppercase}.join-steps p{margin:6px 0 0;line-height:1.5;color:#aaa397}.step-key{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:3px solid var(--cream);font-weight:800;font-size:13px}.contract-strip{max-width:900px;margin:30px auto 0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;background:#ded5bf;color:#111;border:4px solid #000;box-shadow:7px 7px 0 var(--green);padding:11px 13px;gap:12px}.contract-strip>span{font-weight:900;letter-spacing:.12em;font-size:12px}.contract-strip code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;background:rgba(0,0,0,.07);padding:7px 10px}.copy-contract{border:3px solid #000;background:var(--orange);text-transform:uppercase;font-weight:800;padding:6px 12px;cursor:pointer;box-shadow:3px 3px 0 #000}.copy-contract.copied{background:var(--green-bright)}

.faq{background:#eee4cf}.faq-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:90px;align-items:start}.accordion{border-top:4px solid var(--ink)}.accordion details{border-bottom:4px solid var(--ink)}.accordion summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font:400 clamp(24px,3vw,38px)/1.15 var(--display);letter-spacing:.04em;word-spacing:.14em;text-transform:uppercase;padding:28px 8px}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-family:var(--condensed);font-size:38px;font-weight:400;transition:.2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{margin:4px 50px 28px 8px;font-size:20px;line-height:1.6;color:#55564e;max-width:700px}

.final-cta{min-height:750px;position:relative;background:#151812;color:#fff;display:flex;align-items:center;overflow:hidden;padding:100px 0}.final-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,5,3,.95),rgba(5,6,4,.6) 50%,rgba(5,6,4,.18)),url('assets/vlad-street.jpeg') center/cover;filter:saturate(.55) contrast(1.12)}.final-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 65%)}.final-content{z-index:3}.final-content h2{margin-bottom:6px}.final-content p{font-size:24px;line-height:1.55;max-width:560px;color:#ddd6c8;margin:28px 0 35px}.game-button.huge{font-size:20px;padding:18px 30px}.final-character{position:absolute;right:8vw;bottom:-12%;height:94%;width:auto;z-index:2;filter:drop-shadow(18px 20px 0 rgba(0,0,0,.45)) saturate(.75);pointer-events:none;object-fit:contain}.mission-passed{position:absolute;z-index:5;top:110px;right:9vw;font:900 clamp(45px,7vw,82px)/1.05 var(--display);letter-spacing:.06em;color:#d3ae4d;-webkit-text-stroke:4px #050604;text-shadow:5px 5px 0 #000;transform:rotate(-4deg)}

.site-footer{background:#060705;color:#c9c1b2;padding:54px 0}.footer-grid{display:grid;grid-template-columns:150px 1fr auto;gap:28px;align-items:center}.footer-brand{width:105px}.social-links{display:flex;gap:10px}.social-links a{border:2px solid #565a50;padding:7px 12px;text-transform:uppercase;font-size:12px;letter-spacing:.1em}.social-links a:hover{border-color:var(--green-bright);color:var(--green-bright)}.site-footer p{grid-column:2/4;margin:0;max-width:780px;font-size:14px;color:#7d7c74}.copyright{text-transform:uppercase;letter-spacing:.1em;font-size:12px;color:#7d7c74;justify-self:end}

.reveal-up,.reveal-left,.reveal-right{opacity:0;transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal-up{transform:translateY(55px)}.reveal-left{transform:translateX(-55px)}.reveal-right{transform:translateX(55px)}.is-visible{opacity:1;transform:none}

@media (max-width:1000px){
  .hero-character{left:64%;right:auto;width:min(420px,68vw);height:70vh;opacity:.98}.respect-meter{left:auto;right:4vw;transform:none;top:auto;bottom:60px;width:min(260px,32vw)}.hud-top-right{top:92px}.intro-grid,.persona-grid{gap:50px}.stats-grid{grid-template-columns:repeat(2,1fr)}.mission-grid{grid-template-columns:1fr}.faq-grid{gap:45px}.final-character{right:-4vw;width:min(380px,55vw);height:62vh;opacity:.9}
}
@media (max-width:760px){
  body{font-size:17px}.shell{width:min(100% - 26px,1180px)}.section{padding:78px 0}.site-header{padding:12px 16px;background:rgba(8,9,7,.88)}.brand{width:auto;min-width:0}.brand-main{font-size:14px}.brand-script{font-size:22px}.menu-toggle{display:block}.main-nav{position:absolute;top:68px;left:12px;right:12px;display:grid;background:#0a0b09;border:3px solid #e7e0d2;padding:16px;gap:4px;transform:translateY(-15px);opacity:0;visibility:hidden;transition:.2s;box-shadow:7px 7px 0 #000}.main-nav.open{opacity:1;visibility:visible;transform:none}.main-nav a{padding:12px}.nav-cta{margin-top:6px;text-align:center}.hero{min-height:760px;align-items:flex-start;padding-top:125px;padding-bottom:110px}.hero-bg{background-position:58% center}.hero-shadow{background:linear-gradient(90deg,rgba(2,3,2,.9),rgba(4,5,4,.5)),linear-gradient(0deg,rgba(0,0,0,.8),transparent)}.hero-content{padding-top:45px;padding-bottom:20px}.display-logo-main{font-size:clamp(48px,16vw,88px)}.display-logo-script{font-size:clamp(42px,14vw,72px)}.hero-lede{font-size:19px;margin-top:50px;max-width:92%}.hero-character{left:60%;right:auto;width:min(290px,78vw);height:52vh;bottom:90px;opacity:.98}.hud-top-right{top:80px;right:16px}.hud-time{font-size:19px}.hud-cash{font-size:24px}.hud-stars{font-size:14px}.respect-meter{top:auto;bottom:56px;left:auto;right:16px;width:min(220px,55vw)}.respect-label{font-size:12px}.respect-track{height:15px;border-width:3px}.minimap{width:105px;height:105px;bottom:62px;left:16px}.ticker{height:38px}.intro-grid,.persona-grid,.faq-grid{grid-template-columns:1fr}.street-frame{transform:none}.intro-copy{padding-top:15px}.persona-grid{gap:60px}.persona-copy{order:-1}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:22px 18px}.stat-card strong{font-size:45px}.mission-card{grid-template-columns:120px 1fr;min-height:205px}.mission-copy{padding:25px 18px}.mission-copy h3{font-size:30px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:auto}.gallery-tall{grid-row:auto}.gallery-tall img{aspect-ratio:4/3}.join-steps li{grid-template-columns:58px 1fr;gap:14px;padding:16px 14px}.step-number{width:48px;height:48px;font-size:24px}.step-key{display:none}.contract-strip{grid-template-columns:1fr auto}.contract-strip>span{grid-column:1/3}.final-cta{min-height:680px;align-items:flex-start;padding-top:100px}.final-character{width:min(260px,70vw);height:46vh;right:-5vw;bottom:0;opacity:.9}.mission-passed{top:auto;bottom:40px;right:20px;font-size:40px}.footer-grid{grid-template-columns:1fr;justify-items:start}.site-footer p{grid-column:auto}.copyright{justify-self:start}
}
@media (max-width:470px){
  .hero-actions{display:grid;grid-template-columns:1fr 1fr}.game-button{min-width:0;padding:12px 9px;font-size:14px}.stats-grid{grid-template-columns:1fr}.mission-card{grid-template-columns:1fr}.mission-art{height:145px;border-right:0;border-bottom:4px solid #000}.gallery-card figcaption{position:static}.contract-strip{display:flex;flex-wrap:wrap}.contract-strip code{width:100%}.copy-contract{margin-left:auto}h2{font-size:50px}.final-content p{font-size:20px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.boot-screen{display:none}.reveal-up,.reveal-left,.reveal-right{opacity:1;transform:none}}
