/* Kung Fu Granny theme. PS2-era, loud, chunky. */

@font-face{font-family:"Craze Retro";src:url("../fonts/craze-retro.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Opsilon";src:url("../fonts/opsilon.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
	--ink:#0f0716;
	--bg:#150a1e;
	--bg2:#1d0f2a;
	--panel:#241236;
	--line:#4a2a66;
	--text:#f4eefa;
	--muted:#b7a6c9;
	--yellow:#ffe036;
	--pink:#ff3d8b;
	--red:#e8262a;
	--radius:6px;
	--shadow:0 6px 0 rgba(0,0,0,.45);
	--f-display:"Craze Retro","Impact","Arial Black",sans-serif;
	--f-head:"Opsilon","Trebuchet MS",Impact,sans-serif;
	--f-label:"Opsilon","Trebuchet MS",sans-serif;
	--f-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	--wrap:1180px;
	--hdr:68px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr) + 12px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.65 var(--f-body);overflow-x:hidden}
img,svg,video,iframe{max-width:100%;display:block}
img{height:auto}
a{color:var(--yellow);text-underline-offset:3px}
a:hover{color:#fff}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.2em}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:8px;top:-60px;background:var(--yellow);color:#000;padding:10px 16px;z-index:200;font-weight:700}
.skip-link:focus{top:8px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.wrap--narrow{max-width:900px}
.muted{color:var(--muted)}
.section{padding:clamp(56px,9vw,112px) 0;position:relative}

/* ---------- type ---------- */
.h1,.h2,.h3,.h4,.card__t,.weapon__name{font-family:var(--f-head);font-weight:400;line-height:1.1;letter-spacing:.03em;text-transform:uppercase;margin:0 0 .5em;text-wrap:balance}
.h1{font-size:clamp(2.4rem,6vw,4.6rem)}
.h2{font-size:clamp(2rem,4.6vw,3.4rem)}
.h3{font-size:clamp(1.5rem,3vw,2.2rem)}
.h4,.card__t,.weapon__name{font-size:1.35rem}
.hl-yellow{color:var(--yellow)}
.hl-pink{color:var(--pink)}
.lead{font-size:clamp(1.1rem,1.6vw,1.3rem);color:#e6dcf1;max-width:60ch}
.kicker{font-family:var(--f-label);font-size:.95rem;letter-spacing:.18em;text-transform:uppercase;color:var(--yellow);margin:0 0 .8em}
.kicker--pink{color:var(--pink)}
.chip{display:inline-block;font-family:var(--f-label);letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;padding:6px 12px;border:2px solid var(--ink);background:var(--yellow);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.chip--pink{background:var(--pink);color:#fff}

/* PS2 pixel text: fill + ring fonts layered via data-t */
.px{position:relative;display:inline-block;font-family:var(--f-label);color:var(--yellow);letter-spacing:.08em;line-height:1;text-transform:uppercase;text-shadow:2px 0 0 var(--ink),-2px 0 0 var(--ink),0 2px 0 var(--ink),0 -2px 0 var(--ink),2px 2px 0 var(--ink),-2px -2px 0 var(--ink),2px -2px 0 var(--ink),-2px 2px 0 var(--ink)}

.hud{background:var(--panel);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line),var(--shadow);border-radius:var(--radius)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--f-head);font-size:1.05rem;letter-spacing:.03em;padding:.7em 1.3em;border:3px solid var(--ink);border-radius:var(--radius);text-decoration:none;cursor:pointer;color:var(--text);background:transparent;box-shadow:0 5px 0 var(--ink);transition:transform .08s,box-shadow .08s,background .15s;line-height:1.1}
.btn svg{width:1.2em;height:1.2em;flex:none}
.btn:hover{transform:translateY(2px);box-shadow:0 3px 0 var(--ink)}
.btn:active{transform:translateY(5px);box-shadow:0 0 0 var(--ink)}
.btn--yellow{background:var(--yellow);color:var(--ink)}
.btn--yellow:hover{background:#fff27a;color:var(--ink)}
.btn--ghost{background:var(--panel);border-color:var(--line);box-shadow:0 5px 0 var(--ink);color:var(--text)}
.btn--ghost:hover{background:#33194a;color:#fff}
.btn--lg{font-size:1.25rem;padding:.8em 1.5em}
.btn--xl{font-size:clamp(1.3rem,3vw,1.8rem);padding:.85em 1.7em}
.btn--sm{font-size:.9rem;padding:.55em 1em;box-shadow:0 3px 0 var(--ink)}
.is-disabled{opacity:.9;cursor:default}
.is-disabled:hover{transform:none;box-shadow:0 5px 0 var(--ink);background:var(--yellow)}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(15,7,22,.92);backdrop-filter:blur(8px);border-bottom:3px solid var(--ink);box-shadow:0 2px 0 var(--line)}
.site-header__in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:var(--hdr)}
.brand{font-family:var(--f-display);font-size:1.5rem;line-height:1;text-decoration:none;color:var(--text);white-space:nowrap}
.brand__a{color:var(--text)}
.brand__b{color:var(--yellow)}
.brand img{max-height:44px;width:auto}
.site-nav{display:flex;align-items:center;gap:22px}
.site-nav__list{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
.site-nav__list a{display:block;padding:8px 12px;color:var(--text);text-decoration:none;font-family:var(--f-label);letter-spacing:.1em;text-transform:uppercase;font-size:.95rem;border-radius:4px}
.site-nav__list a:hover,.site-nav__list .current-menu-item>a{color:var(--ink);background:var(--yellow)}
.nav-toggle{display:none;background:var(--panel);border:3px solid var(--ink);border-radius:var(--radius);width:48px;height:44px;cursor:pointer;padding:0;position:relative}
.nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{position:absolute;left:11px;width:20px;height:3px;background:var(--yellow);content:"";transition:transform .2s,opacity .2s}
.nav-toggle__bars{top:18px}
.nav-toggle__bars::before{left:0;top:-7px}
.nav-toggle__bars::after{left:0;top:7px}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::before{transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::after{transform:translateY(-7px) rotate(-45deg)}

@media (max-width:1020px){
	.nav-toggle{display:block}
	.site-nav{position:absolute;left:0;right:0;top:100%;background:var(--ink);border-bottom:3px solid var(--line);flex-direction:column;align-items:stretch;padding:16px 20px 22px;gap:14px;display:none}
	.site-nav.is-open{display:flex}
	.site-nav__list{flex-direction:column}
	.site-nav__list a{padding:12px 10px;font-size:1.05rem}
	.site-nav__cta .btn{width:100%}
}

/* ---------- hero ---------- */
.hero{position:relative;min-height:min(92vh,880px);display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;border-bottom:4px solid var(--ink)}
.hero__art,.hero__art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 40%;z-index:-3}
.hero__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,7,22,.88) 0%,rgba(15,7,22,.55) 38%,rgba(15,7,22,0) 68%),linear-gradient(0deg,rgba(15,7,22,.92) 0%,rgba(15,7,22,0) 38%)}
.hero__grain{position:absolute;inset:0;z-index:-1;opacity:.18;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.55) 0 1px,transparent 1px 3px)}
.hero__in{padding-top:120px;padding-bottom:clamp(64px,9vw,110px)}
.logo{font-family:var(--f-display);font-weight:400;margin:.35em 0 .1em;line-height:.88;display:flex;flex-direction:column;align-items:flex-start;text-transform:uppercase}
.logo__a{font-size:clamp(3.2rem,10vw,8rem);color:var(--text);text-shadow:0 5px 0 var(--ink),0 0 0 var(--ink),4px 4px 0 var(--ink),-3px 3px 0 var(--ink)}
.logo__b{font-size:clamp(3.8rem,13vw,10.5rem);color:var(--yellow);text-shadow:0 6px 0 var(--ink),5px 5px 0 var(--ink),-4px 4px 0 var(--ink),0 0 40px rgba(255,61,139,.45)}
.logo--sm{margin:0 0 .6em;flex-direction:row;gap:.35em;align-items:baseline}
.logo--sm .logo__a,.logo--sm .logo__b{font-size:2rem;text-shadow:0 3px 0 var(--ink)}
.hero__tag{font-family:var(--f-head);font-size:clamp(1.5rem,3.4vw,2.4rem);color:var(--pink);margin:.2em 0 .5em;text-shadow:0 3px 0 var(--ink)}
.hero__lead{font-size:clamp(1.05rem,1.8vw,1.3rem);max-width:46ch;text-shadow:0 2px 6px rgba(0,0,0,.8)}
.hero__cta{display:flex;flex-wrap:wrap;gap:16px;margin:1.6em 0 1.4em}
.hero__meta{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;padding:0;font-size:1.05rem}
.scroll-cue{position:absolute;left:50%;bottom:18px;width:26px;height:44px;margin-left:-13px;border:3px solid var(--yellow);border-radius:14px;opacity:.8}
.scroll-cue__dot{position:absolute;left:50%;top:7px;width:5px;height:9px;margin-left:-2.5px;background:var(--yellow);border-radius:3px;animation:cue 1.6s infinite}
@keyframes cue{0%{transform:translateY(0);opacity:1}80%{transform:translateY(14px);opacity:0}100%{opacity:0}}
@media (max-width:700px){
	.hero{min-height:88vh}
	.hero__art img{object-position:50% 20%}
	.hero__shade{background:linear-gradient(0deg,rgba(15,7,22,.96) 0%,rgba(15,7,22,.7) 45%,rgba(15,7,22,.1) 80%)}
	.scroll-cue{display:none}
}

/* ---------- marquee ---------- */
.marquee{background:var(--yellow);color:var(--ink);border-bottom:4px solid var(--ink);overflow:hidden;white-space:nowrap}
.marquee__track{display:inline-flex;gap:28px;padding:14px 0;font-family:var(--f-head);font-size:1.7rem;text-transform:uppercase;animation:marq 28s linear infinite;will-change:transform}
.marquee i{font-style:normal;color:var(--pink)}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- pitch ---------- */
.pitch{background:radial-gradient(900px 400px at 85% 10%,rgba(255,61,139,.18),transparent 70%),var(--bg)}
.pitch__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,5vw,72px);align-items:center}
.pitch__stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stat{padding:22px 18px;text-align:center;display:flex;flex-direction:column;gap:6px}
.stat__n{font-size:3.4rem;margin:0 auto}
.stat__l{font-family:var(--f-head);font-size:1.15rem}
.stat__s{font-size:.85rem;color:var(--muted);line-height:1.3}
@media (max-width:860px){.pitch__grid{grid-template-columns:1fr}}

/* ---------- features ---------- */
.features{background:var(--bg2);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.section__head{text-align:center;margin:0 auto clamp(32px,5vw,64px);max-width:760px}
.section__head .lead{margin-left:auto;margin-right:auto}
.feature{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center;margin-bottom:clamp(48px,8vw,96px)}
.feature--flip .feature__media{order:2}
.shot{margin:0}
.shot__link{display:block;border:4px solid var(--ink);box-shadow:0 0 0 3px var(--line),10px 12px 0 rgba(0,0,0,.45);border-radius:4px;overflow:hidden;background:#000;line-height:0}
.shot__img{width:100%;height:auto;transition:transform .5s}
.shot__link:hover .shot__img{transform:scale(1.04)}
.shot__cap{padding:12px 0 0;font-size:.95rem}
.shot--tilt-l{transform:rotate(-1.4deg)}
.shot--tilt-r{transform:rotate(1.4deg)}
.ticks{list-style:none;padding:0}
.ticks li{position:relative;padding-left:1.6em;margin-bottom:.45em}
.ticks li::before{content:"";position:absolute;left:0;top:.5em;width:.75em;height:.75em;background:var(--pink);border:2px solid var(--ink);transform:rotate(45deg)}
.ticks--cols{columns:2;column-gap:28px}
.ticks--cols li{break-inside:avoid}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{padding:24px 22px}
.card__n{font-size:1.6rem;margin-bottom:12px}
.card p{margin:0;color:#d9cce8;font-size:1rem}
@media (max-width:960px){.cards{grid-template-columns:1fr 1fr}}
@media (max-width:860px){
	.feature,.feature--flip{grid-template-columns:1fr}
	.feature--flip .feature__media{order:0}
	.shot--tilt-l,.shot--tilt-r{transform:none}
}
@media (max-width:620px){.cards{grid-template-columns:1fr}.ticks--cols{columns:1}}

/* ---------- band ---------- */
.band{position:relative;min-height:clamp(320px,50vw,560px);display:flex;align-items:center;overflow:hidden;isolation:isolate}
.band__img,.band__img img{position:absolute;inset:0;width:100%;height:120%;object-fit:cover;z-index:-2}
.band__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,7,22,.9),rgba(15,7,22,.2))}
.band__quote{font-family:var(--f-head);font-size:clamp(1.8rem,4.6vw,3.6rem);line-height:1.08;max-width:18em;text-shadow:0 4px 0 var(--ink)}

/* ---------- gallery ---------- */
.gallery__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gal{position:relative;display:block;border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:4px;overflow:hidden;background:#000;line-height:0;aspect-ratio:16/10}
.gal--big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.gal__img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal:hover .gal__img,.gal:focus-visible .gal__img{transform:scale(1.06)}
.gal__cap{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 12px;line-height:1.2;font-family:var(--f-label);letter-spacing:.08em;text-transform:uppercase;font-size:.9rem;color:#fff;background:linear-gradient(0deg,rgba(15,7,22,.92),transparent);transform:translateY(40%);opacity:0;transition:.25s}
.gal:hover .gal__cap,.gal:focus-visible .gal__cap{transform:none;opacity:1}
@media (max-width:860px){.gallery__grid{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.gallery__grid{grid-template-columns:1fr}.gal--big{grid-column:auto;grid-row:auto;aspect-ratio:16/10}.gal__cap{transform:none;opacity:1}}

/* ---------- video ---------- */
.video{position:relative;aspect-ratio:16/9;border:4px solid var(--ink);box-shadow:0 0 0 3px var(--line),10px 12px 0 rgba(0,0,0,.45);border-radius:4px;overflow:hidden;background:#000}
.video__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(.6)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video__play,.video__soon{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:20px}
.video__play{background:none;border:0;cursor:pointer;color:var(--text)}
.video__icon{width:86px;height:86px;border-radius:50%;background:var(--yellow);border:4px solid var(--ink);display:grid;place-items:center;box-shadow:0 6px 0 var(--ink);transition:transform .15s}
.video__icon svg{width:40px;height:40px;color:var(--ink);margin-left:5px}
.video__play:hover .video__icon{transform:scale(1.08)}
.video__label{font-size:clamp(1.4rem,3.5vw,2.4rem)}
.video__hint{font-size:1rem;color:#e6dcf1}

/* ---------- heat ---------- */
.heat{background:linear-gradient(180deg,var(--bg),#1c0a24);border-top:4px solid var(--ink)}
.heat__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,72px);align-items:start}
.heat__gauge{position:sticky;top:calc(var(--hdr) + 24px)}
.gauge{padding:26px 22px 18px;text-align:center}
.gauge__svg{width:100%;height:auto}
.gauge__needle{transform-origin:100px 104px;transform:rotate(-90deg);transition:transform .8s cubic-bezier(.3,1.6,.5,1)}
.gauge[data-level="1"] .gauge__needle{transform:rotate(-54deg)}
.gauge[data-level="2"] .gauge__needle{transform:rotate(-18deg)}
.gauge[data-level="3"] .gauge__needle{transform:rotate(18deg)}
.gauge[data-level="4"] .gauge__needle{transform:rotate(54deg)}
.gauge[data-level="5"] .gauge__needle{transform:rotate(86deg)}
.gauge__label{font-size:1.7rem;margin-top:6px}
.gauge__hint{text-align:center;margin-top:16px;font-size:.95rem}
.levels{list-style:none;padding:0;display:grid;gap:10px;margin-bottom:1.6em}
.level{display:flex;gap:16px;align-items:center;width:100%;text-align:left;padding:12px 14px;background:var(--panel);color:var(--text);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:var(--radius);cursor:pointer;font:inherit;transition:background .15s,transform .1s}
.level:hover{background:#33194a}
.level[aria-pressed="true"]{background:#3a1b52;box-shadow:0 0 0 3px var(--yellow)}
.level__n{font-size:2rem;min-width:1.2em;text-align:center}
.level__b{display:flex;flex-direction:column;line-height:1.35}
.level__b strong{font-family:var(--f-head);font-weight:400;font-size:1.2rem}
.level__b span{font-size:.95rem;color:#d9cce8}
@media (max-width:860px){.heat__grid{grid-template-columns:1fr}.heat__gauge{position:static}.gauge{max-width:420px;margin:0 auto}}

/* ---------- arsenal ---------- */
.arsenal{background:var(--bg2);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.weapons{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.weapon{padding:22px;position:relative}
.weapon__key{position:absolute;right:16px;top:14px;font-size:1.6rem;opacity:.9}
.weapon__ico{display:flex;align-items:center;height:64px;margin-bottom:10px}
.weapon__ico img{height:48px;width:auto;image-rendering:pixelated}
.weapon__fist{font-size:1.7rem}
.weapon p{margin:0;font-size:1rem;color:#d9cce8}
@media (max-width:960px){.weapons{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.weapons{grid-template-columns:1fr}}

/* ---------- about ---------- */
.about__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(28px,5vw,72px);align-items:center}
.about__card{padding:14px;max-width:420px;margin:0 auto;transform:rotate(-2deg)}
.about__card img{width:100%;border:3px solid var(--ink);border-radius:4px}
.about__facts{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;padding:14px 0 4px;margin:0}
.about__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.4em}
@media (max-width:860px){.about__grid{grid-template-columns:1fr}.about__card{max-width:320px}}

/* ---------- wishlist ---------- */
.wishlist{position:relative;text-align:center;padding:clamp(72px,12vw,150px) 0;isolation:isolate;overflow:hidden;border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.wishlist__art{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,7,22,.88),rgba(15,7,22,.7)),url("../img/shots/police-chase.webp") center/cover}
.wishlist__in .lead{margin-left:auto;margin-right:auto}
.wishlist__title{margin-bottom:.4em}
.wishlist__cta{margin:1.6em 0 1em}
.wishlist__widget{display:flex;justify-content:center;margin-top:28px}
.wishlist__widget iframe{max-width:100%;border:0}

/* ---------- faq ---------- */
.qa{background:var(--panel);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:var(--radius);margin-bottom:12px}
.qa summary{cursor:pointer;list-style:none;padding:18px 54px 18px 20px;font-family:var(--f-head);font-size:1.25rem;line-height:1.25;position:relative}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.8rem;color:var(--yellow);line-height:1}
.qa[open] summary::after{content:"\2212"}
.qa p{padding:0 20px 18px;margin:0;color:#e0d4ee}

/* ---------- footer ---------- */
.site-footer{background:var(--ink);border-top:4px solid var(--line);padding:clamp(40px,6vw,72px) 0 28px}
.site-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:32px}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:.45em}
.site-footer a{color:var(--text);text-decoration:none}
.site-footer a:hover{color:var(--yellow);text-decoration:underline}
.footer-h{font-family:var(--f-label);font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.95rem;color:var(--yellow);margin:0 0 1em}
.partner{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:40px;padding:20px 22px;border:2px dashed var(--line);border-radius:var(--radius);background:rgba(255,255,255,.02)}
.partner__label{font-family:var(--f-label);letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;color:var(--muted)}
.partner__logo{display:block;line-height:0}
.partner__logo img{height:44px;width:auto}
.partner__text{font-size:.95rem;color:var(--muted)}
.site-footer__legal{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.site-footer__legal p{margin:0}
@media (max-width:900px){.site-footer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.site-footer__grid{grid-template-columns:1fr}}

/* ---------- inner pages ---------- */
.pagehead{padding:clamp(48px,8vw,96px) 0 clamp(28px,4vw,44px);background:radial-gradient(800px 320px at 90% 0,rgba(255,61,139,.2),transparent 70%),var(--bg2);border-bottom:4px solid var(--ink)}
.crumbs{font-size:.9rem;color:var(--muted);margin-bottom:1.4em}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--yellow)}
.pagehead__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:1.6em}
.prose{padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(48px,8vw,96px);max-width:880px}
.prose h2{font-family:var(--f-head);font-weight:400;font-size:1.8rem;line-height:1.1;margin:1.6em 0 .5em}
.prose h3{font-family:var(--f-head);font-weight:400;font-size:1.4rem;margin:1.4em 0 .4em}
.entry__thumb{border:3px solid var(--ink);margin-bottom:1.5em}
.postnav{display:flex;justify-content:space-between;gap:20px;margin-top:3em;padding-top:1.5em;border-top:1px solid var(--line)}
.posts{display:grid;gap:20px;padding:clamp(32px,5vw,56px) 0}
.posts .card h2{margin-bottom:.3em}
.posts .card a{text-decoration:none}
.more{display:inline-flex;align-items:center;gap:.4em;font-family:var(--f-head)}
.more svg{width:1em;height:1em}
.pager{padding-bottom:64px;text-align:center}
.pager .page-numbers{display:inline-block;padding:8px 14px;margin:2px;background:var(--panel);border:2px solid var(--line);text-decoration:none;border-radius:4px}
.pager .current{background:var(--yellow);color:var(--ink);border-color:var(--ink)}
.notfound{min-height:60vh;display:flex;align-items:center}
.tablewrap{overflow-x:auto;margin:1em 0;border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:var(--radius)}
.tbl{width:100%;border-collapse:collapse;font-size:.98rem;background:var(--panel)}
.tbl th,.tbl td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-family:var(--f-label);font-weight:400;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;color:var(--yellow);background:#1a0c27}
.tbl tr:last-child td{border-bottom:0}
.cr{margin-bottom:2.4em}

/* ---------- press kit ---------- */
.press{display:grid;grid-template-columns:200px 1fr;gap:clamp(24px,4vw,56px);padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(48px,8vw,96px)}
.press__nav{position:sticky;top:calc(var(--hdr) + 20px);align-self:start}
.press__nav ul{list-style:none;padding:0;margin:0;border-left:3px solid var(--line)}
.press__nav a{display:block;padding:7px 14px;color:var(--muted);text-decoration:none;font-size:.95rem}
.press__nav a:hover{color:var(--yellow)}
.press__main{min-width:0}
.pk{margin-bottom:clamp(36px,6vw,64px)}
.pk__head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:1em}
.pk__head .h3{margin:0}
.pk__note{padding:20px 22px}
.pk__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.pk__shot{margin:0;background:var(--panel);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:var(--radius);overflow:hidden}
.pk__shot a:first-child{display:block;line-height:0}
.pk__shot img{width:100%;height:auto}
.pk__shot figcaption{padding:8px}
.facts{margin:0;padding:6px 20px}
.facts__row{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.facts__row:last-child{border-bottom:0}
.facts dt{font-family:var(--f-label);letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;color:var(--yellow);padding-top:3px}
.facts dd{margin:0;overflow-wrap:anywhere}
.copy{padding:18px 20px;margin-bottom:16px}
.copy__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:.6em}
.copy__head .h4{margin:0}
.copy p:last-child{margin-bottom:0}
.dls{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:16px}
.dl{display:grid;grid-template-columns:24px 1fr;column-gap:10px;align-items:center;padding:12px 14px;background:var(--panel);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--line);border-radius:var(--radius);color:var(--text);text-decoration:none;line-height:1.3}
.dl:hover{background:#33194a;color:#fff}
.dl svg{width:22px;height:22px;color:var(--yellow);grid-row:span 2}
.dl__t{font-weight:600;font-size:.95rem}
.dl__m{font-size:.8rem;color:var(--muted)}
.logos{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.logos__tile{display:grid;place-items:center;padding:28px;border:3px solid var(--ink);border-radius:var(--radius)}
.logos__tile--dark{background:#0f0716}
.logos__tile--light{background:#e9e2f0}
.logos__tile img{max-height:120px;width:auto}
.contact{padding:22px}
.contact__mail{font-family:var(--f-head);font-size:clamp(1.3rem,3vw,2rem);margin:0 0 .4em}
.contact__mail a{display:inline-flex;gap:.5em;align-items:center;text-decoration:none}
.contact__mail svg{width:1em;height:1em}
.contact__social{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;margin:1em 0 0}
@media (max-width:960px){.press{grid-template-columns:1fr}.press__nav{display:none}}
@media (max-width:560px){.pk__grid,.logos{grid-template-columns:1fr}.facts__row{grid-template-columns:1fr;gap:2px}}

/* ---------- lightbox ---------- */
.lb{position:fixed;inset:0;z-index:500;background:rgba(10,4,16,.94);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:56px 16px 16px}
.lb[hidden]{display:none}
.lb img{max-width:100%;max-height:calc(100vh - 120px);width:auto;height:auto;border:4px solid var(--ink);box-shadow:0 0 0 3px var(--line)}
.lb__cap{margin-top:14px;font-family:var(--f-label);letter-spacing:.1em;text-transform:uppercase;color:var(--text);text-align:center}
.lb button{position:absolute;background:var(--yellow);color:var(--ink);border:3px solid var(--ink);border-radius:var(--radius);width:48px;height:48px;font:700 1.6rem/1 var(--f-body);cursor:pointer;box-shadow:0 4px 0 var(--ink)}
.lb__x{top:12px;right:12px}
.lb__p{left:12px;top:50%}
.lb__n{right:12px;top:50%}

/* ---------- reveal ---------- */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.marquee__track,.scroll-cue__dot{animation:none}
	.js .reveal{opacity:1;transform:none;transition:none}
	.gauge__needle,.shot__img,.gal__img{transition:none}
}

.gallery__filter{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 24px}
.tagbtn{font-family:var(--f-label);letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;padding:7px 14px;background:var(--panel);color:var(--text);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer}
.tagbtn:hover{background:#33194a}
.tagbtn.is-on{background:var(--yellow);color:var(--ink);border-color:var(--ink)}
.gal[hidden]{display:none}
