/* MACHINE EPK — WEB / scroll page */
:root{
  --black: #0A0A0A;
  --ink: #050505;
  --red: #FF1A1A;
  --red-deep: #B40D0D;
  --bone: #F0F0F0;
  --gray-1: #B8B8B8;
  --gray-2: #6A6A6A;
  --gray-3: #2A2A2A;
  --gray-4: #161616;
  --pad-x: clamp(20px, 4vw, 80px);
  --pad-y: clamp(80px, 12vw, 180px);
  --max-w: 1640px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{ scroll-behavior:smooth; scroll-padding-top: 80px; }
html,body{
  background:var(--black); color:var(--bone);
  font-family:"Space Grotesk", system-ui, sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none;}

/* Global grain overlay */
body::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:200;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.10 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  opacity:0.45; mix-blend-mode:overlay;
}

/* --------- Fixed nav --------- */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:150;
  display:flex; align-items:center; gap:24px;
  padding: 18px var(--pad-x);
  background:linear-gradient(180deg, rgba(10,10,10,0.92), rgba(10,10,10,0.6) 70%, transparent);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
}
.nav .brand{
  font-family:"Bebas Neue", sans-serif; font-size:30px; letter-spacing:0.04em;
  display:flex; align-items:center; gap:10px;
}
.nav .brand .dot{ width:8px; height:8px; background:var(--red); border-radius:50%; box-shadow:0 0 14px var(--red);
  animation: pulse 1.4s ease-in-out infinite;}
.nav .brand .red{ color:var(--red);}
.nav .links{ display:flex; gap:6px; margin-left:auto; align-items:center;}
.nav .links a{
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--gray-1); padding:8px 12px; border-radius:4px;
  transition: color .2s, background .2s;
  display:flex; align-items:center; gap:8px;
}
.nav .links a .n{ color:var(--gray-2); font-size:10px;}
.nav .links a:hover{ color:var(--bone); background:rgba(255,255,255,0.05);}
.nav .links a.active{ color:var(--red);}
.nav .links a.active .n{ color:var(--red);}
.nav .cta{
  margin-left:auto; padding:10px 18px; border:1px solid var(--red); color:var(--red);
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.18em; text-transform:uppercase;
  transition: all .2s;
}
.nav .cta:hover{ background:var(--red); color:var(--black);}

@media(max-width: 980px){
  .nav .links{ display:none; }
}

/* Scroll progress bar */
.progress{ position:fixed; top:0; left:0; height:2px; background:var(--red); z-index:160; width:0; box-shadow:0 0 10px var(--red);}

/* --------- Generic section --------- */
section{
  position:relative;
  padding: var(--pad-y) var(--pad-x);
  max-width: var(--max-w); margin: 0 auto;
}
section.full{ max-width: none; padding: 0; }

.section-label{
  display:inline-flex; align-items:center; gap:14px;
  font-family:"JetBrains Mono", monospace;
  font-size:13px; letter-spacing:0.24em; text-transform:uppercase;
  color:var(--red);
  margin-bottom:24px;
}
.section-label::before{ content:""; width:48px; height:1.5px; background:var(--red);}
.section-label .num{ color:var(--gray-2); margin-left:8px;}

.display{
  font-family:"Bebas Neue", sans-serif;
  font-weight:400;
  letter-spacing:-0.01em;
  line-height:0.85;
  color:var(--bone);
  text-transform:uppercase;
}
.display .red{ color:var(--red);}
.body{
  font-family:"Space Grotesk", sans-serif;
  font-size:18px; line-height:1.6; color:var(--gray-1);
}
.mono{ font-family:"JetBrains Mono", monospace; font-size:13px; letter-spacing:0.18em; text-transform:uppercase;}

/* Reveal animations driven by IntersectionObserver */
[data-reveal]{ opacity:0; transform:translateY(28px); transition: opacity .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1);}
[data-reveal="right"]{ transform:translateX(-40px);}
[data-reveal="scale"]{ transform:scale(.94); opacity:0;}
[data-reveal].in{ opacity:1; transform:none;}

@keyframes pulse{ 0%,100%{ opacity:.5; transform:scale(.85)} 50%{opacity:1; transform:scale(1.15)} }

/* ============================================================ */
/* HERO                                                          */
/* ============================================================ */
.hero{
  position:relative; min-height:100vh; padding: 0;
  max-width:none;
  display:flex; flex-direction:column; justify-content:flex-end;
  overflow:hidden;
}
.hero .portrait-bg{
  position:absolute; right:0; top:0; bottom:0; width:62%;
  background: url("assets/photo-09693.jpeg") right center / cover no-repeat;
  filter: contrast(1.08) brightness(0.9) saturate(0.9);
  z-index:1;
  mask-image: linear-gradient(90deg, transparent 0%, black 25%, black 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 25%, black 100%);
}
.hero .red-fog{
  position:absolute; right:-15%; top:-15%; width:90%; height:120%; z-index:1;
  background:radial-gradient(ellipse 50% 60% at 50% 50%, rgba(255,26,26,0.16), transparent 70%);
}
.hero .light-bar{
  position:absolute; left:50%; top:-10%; width:1px; height:120%;
  background:linear-gradient(180deg, transparent, rgba(255,255,255,0.5), transparent);
  transform:translateX(-50%) rotate(8deg);
  filter:blur(1px); z-index:2;
}
.hero .hero-grid{
  position:absolute; inset:0; pointer-events:none; z-index:1;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 80px 80px;
  mask-image: radial-gradient(ellipse 80% 80% at 30% 50%, black, transparent 75%);
}
.hero .hero-inner{
  position:relative; z-index:5;
  padding: 0 var(--pad-x) clamp(60px, 10vw, 120px);
  max-width: var(--max-w); width:100%; margin:0 auto;
}
.hero .pill{
  display:inline-flex; align-items:center; gap:10px;
  border:1px solid rgba(240,240,240,0.25); padding:8px 14px; border-radius:999px;
  margin-bottom:28px;
}
.hero .pill .dot{ width:8px; height:8px; background:var(--red); border-radius:50%; box-shadow:0 0 12px var(--red);
  animation: pulse 1.4s ease-in-out infinite;}
.hero .pill span:not(.dot){ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; text-transform:uppercase; color:var(--bone);}

.hero h1{
  font-family:"Bebas Neue", sans-serif;
  font-size: clamp(110px, 22vw, 460px);
  line-height: 0.78; letter-spacing:-0.04em;
  color: var(--bone); margin:0;
}
.hero h1 .red{ color:var(--red);}

.hero .row{
  display:flex; align-items:flex-end; justify-content:space-between; margin-top:28px; gap:24px; flex-wrap:wrap;
}
.hero .row .subtitle{ font-family:"JetBrains Mono", monospace; font-size:clamp(14px, 1.1vw, 18px); letter-spacing:0.3em; color:var(--gray-1); text-transform:uppercase;}
.hero .row .descrip{ font-family:"Space Grotesk", sans-serif; font-size:clamp(14px,1.1vw,18px); color:var(--gray-1); margin-top:8px; letter-spacing:0.02em;}
.hero .row .meta{ font-family:"JetBrains Mono", monospace; font-size:13px; letter-spacing:0.18em; color:var(--gray-2); text-transform:uppercase; text-align:right;}
.hero .row .meta b{ color:var(--bone); display:block; font-weight:500;}

.hero .corner-mark{
  position:absolute; top:80px; left:var(--pad-x); z-index:6;
  display:flex; align-items:center; gap:14px;
  font-family:"JetBrains Mono", monospace; font-size:13px; letter-spacing:0.22em; color:var(--bone); text-transform:uppercase;
}
.hero .corner-mark .m{ width:14px; height:14px; background:var(--red); border-radius:50%; box-shadow:0 0 14px var(--red);}
.hero .scroll-hint{
  position:absolute; right:var(--pad-x); bottom:30px; z-index:6;
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--gray-1); text-transform:uppercase;
  display:flex; align-items:center; gap:10px;
}
.hero .scroll-hint .arr{ display:inline-block; animation: bobble 1.6s ease-in-out infinite;}
@keyframes bobble{ 0%,100%{ transform: translateY(0);} 50%{ transform: translateY(6px);} }

/* ============================================================ */
/* BIO                                                           */
/* ============================================================ */
.bio{ display:grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(40px, 5vw, 90px); align-items:start;}
@media(max-width: 1100px){ .bio{ grid-template-columns: 1fr;} }

.bio .image-frame{
  position:relative; width:100%; aspect-ratio: 4/5; background:#0E0E0E; overflow:hidden;
}
.bio .image-frame img{ width:100%; height:100%; object-fit:cover; object-position:center 18%;
  filter:contrast(1.05) saturate(0.85) brightness(0.92);}
.bio .image-frame::before{
  content:""; position:absolute; inset:18px; border:1px solid rgba(240,240,240,0.1); pointer-events:none; z-index:2;
}
.bio .image-frame::after{
  content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 55%, rgba(10,10,10,0.85) 100%);
}
.bio .img-meta{
  position:absolute; bottom:22px; left:24px; right:24px; z-index:3;
  display:flex; justify-content:space-between;
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.2em; color:var(--bone); text-transform:uppercase;
}
.bio .img-meta .l{ opacity:0.8;}
.bio .img-meta .r{ color:var(--red);}

.bio .data-strip{
  display:grid; grid-template-columns: repeat(3,1fr); gap:0; margin-top:22px;
  border-top:1px solid rgba(240,240,240,0.18); border-bottom:1px solid rgba(240,240,240,0.18);
}
.bio .data-cell{ padding:18px 0; }
.bio .data-cell + .data-cell{ border-left:1px solid rgba(240,240,240,0.18); padding-left:20px;}
.bio .data-cell .k{ font-family:"JetBrains Mono", monospace; font-size:10px; letter-spacing:0.22em; color:var(--gray-2); text-transform:uppercase; margin-bottom:8px;}
.bio .data-cell .v{ font-family:"Bebas Neue", sans-serif; font-size: clamp(22px, 2.2vw, 32px); letter-spacing:0.02em; color:var(--bone); line-height:1;}
.bio .data-cell .v .r{ color:var(--red);}

.bio h2{
  font-family:"Bebas Neue", sans-serif;
  font-size: clamp(60px, 9vw, 170px); line-height:0.84; letter-spacing:-0.02em; color:var(--bone); margin-bottom:18px;
}
.bio h2 .red{ color:var(--red);}
.bio .divider{ height:2px; background:var(--red); width:100px; margin: 24px 0 36px;}
.bio .lead{
  font-family:"Space Grotesk", sans-serif;
  font-size: clamp(18px, 1.5vw, 24px); line-height:1.5; color:var(--bone); font-weight:400;
}
.bio .lead b{ color:var(--red); font-weight:600;}
.bio .body-copy{
  font-family:"Space Grotesk", sans-serif;
  font-size: clamp(15px, 1.15vw, 18px); line-height:1.65; color:var(--gray-1); margin-top:22px;
}
.bio .body-copy b{ color:var(--bone); font-weight:600;}
.bio .quote{
  margin-top:36px; padding-left:18px; border-left:2px solid var(--red);
  font-family:"JetBrains Mono", monospace; font-size:13px; letter-spacing:0.2em; color:var(--red); text-transform:uppercase;
}

/* ============================================================ */
/* DISCOGRAPHY                                                   */
/* ============================================================ */
.disco .head{ display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap; margin-bottom:50px;}
.disco h2{ font-family:"Bebas Neue", sans-serif; font-size:clamp(60px, 9vw, 170px); line-height:0.84; color:var(--bone); letter-spacing:-0.02em;}
.disco h2 .red{ color:var(--red);}
.disco .head .right{ text-align:right;}
.disco .head .right .big{ font-family:"Bebas Neue", sans-serif; font-size:clamp(56px, 6vw, 90px); line-height:1; color:var(--red);}
.disco .head .right .lbl{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.2em; color:var(--gray-1); text-transform:uppercase;}

.disco .grid{
  display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:24px;
}
@media(max-width: 1100px){ .disco .grid{ grid-template-columns: repeat(3, 1fr);} }
@media(max-width: 800px){ .disco .grid{ grid-template-columns: repeat(2, 1fr);} }
@media(max-width: 480px){ .disco .grid{ grid-template-columns: 1fr;} }

.track-card{
  position:relative; display:flex; flex-direction:column; gap:14px; background:#0E0E0E;
  border:1px solid rgba(240,240,240,0.08); padding:16px;
  transition: transform .35s cubic-bezier(.2,.7,.2,1), border-color .3s;
  cursor:pointer;
}
.track-card:hover{ border-color:var(--red); transform:translateY(-6px);}
.track-card .cover{
  position:relative; width:100%; aspect-ratio:1; background:#1a1a1a; overflow:hidden;
}
.track-card .cover img{ width:100%; height:100%; object-fit:cover; filter:contrast(1.02); transition: transform .6s;}
.track-card:hover .cover img{ transform:scale(1.05);}
.track-card .num-tag{
  position:absolute; top:8px; left:10px; z-index:2;
  font-family:"Bebas Neue", sans-serif; font-size:54px; line-height:1;
  color:var(--red); text-shadow:0 0 16px rgba(0,0,0,0.85);
}
.track-card .meta{ display:flex; flex-direction:column; gap:4px; min-height: 48px;}
.track-card .title{ font-family:"Bebas Neue", sans-serif; font-size: clamp(22px, 1.8vw, 30px); color:var(--bone); line-height:1; letter-spacing:0.01em;}
.track-card .feat{ font-family:"JetBrains Mono", monospace; font-size:10px; letter-spacing:0.18em; color:var(--gray-1); text-transform:uppercase;}
.track-card .feat .ft{ color:var(--red);}
.track-card .play{
  position:absolute; right:14px; bottom:14px; z-index:3;
  width:44px; height:44px; border-radius:50%; background:var(--red);
  display:flex; align-items:center; justify-content:center;
  opacity:0; transform:scale(.7); transition: all .3s; pointer-events:none;
}
.track-card:hover .play{ opacity:1; transform:scale(1);}
.track-card .play::before{
  content:""; width:0; height:0; border-style:solid; border-width:7px 0 7px 10px;
  border-color: transparent transparent transparent var(--black); margin-left:2px;
}

.disco .ticker-bottom{
  display:flex; justify-content:space-between; align-items:center; margin-top:30px;
  border-top:1px solid rgba(240,240,240,0.15); padding-top:18px; gap:16px; flex-wrap:wrap;
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.18em; color:var(--gray-1); text-transform:uppercase;
}
.disco .ticker-bottom .red{ color:var(--red);}

/* Streaming platforms */
.platforms{
  margin-top: 36px; padding-top: 22px; border-top: 1px solid rgba(240,240,240,0.15);
}
.platforms-label{
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--gray-1); text-transform:uppercase;
  margin-bottom:18px; display:flex; align-items:center; gap:10px;
}
.platforms-label .red{ color:var(--red);}
.platforms-row{
  display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:14px;
}
@media(max-width:900px){ .platforms-row{ grid-template-columns: repeat(2,1fr);} }
@media(max-width:480px){ .platforms-row{ grid-template-columns: 1fr;} }

.platform{
  display:flex; align-items:center; gap:16px;
  padding: 18px 22px; background:#0E0E0E;
  border:1px solid rgba(240,240,240,0.12);
  transition: all .25s cubic-bezier(.2,.7,.2,1);
  position:relative;
}
.platform::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:0; background:var(--red);
  transition: width .25s;
}
.platform:hover{ border-color:var(--red); transform:translateY(-3px); background:#140000;}
.platform:hover::before{ width:3px;}
.platform .p-ico{
  width:32px; height:32px; display:flex; align-items:center; justify-content:center;
  color:var(--bone); transition: color .25s;
}
.platform .p-ico svg{ width:26px; height:26px;}
.platform:hover .p-ico{ color:var(--red);}
.platform .p-label{
  flex:1; font-family:"Bebas Neue", sans-serif; font-size:24px; letter-spacing:0.04em; color:var(--bone); line-height:1;
}
.platform .p-arr{ font-family:"JetBrains Mono", monospace; font-size:14px; color:var(--gray-2); transition: all .25s;}
.platform:hover .p-arr{ color:var(--red); transform: translate(3px,-3px);}

/* ============================================================ */
/* METRICS                                                       */
/* ============================================================ */
.metrics{ position:relative;}
.metrics .wave{
  position:absolute; left:0; right:0; bottom:0; height:55%; display:flex; align-items:flex-end; gap:2px;
  padding:0 var(--pad-x); z-index:0; opacity:0.18; pointer-events:none;
}
.metrics .wave .bar{
  flex:1; background:linear-gradient(180deg, var(--red) 0%, var(--red) 60%, transparent 100%);
}
.metrics .inner{ position:relative; z-index:2;}

.metrics .head{ display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; margin-bottom:50px;}
.metrics h2{ font-family:"Bebas Neue", sans-serif; font-size: clamp(56px, 8.5vw, 150px); line-height:0.84; color:var(--bone); letter-spacing:-0.02em;}
.metrics h2 .red{ color:var(--red);}
.metrics .head .ts{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.18em; color:var(--gray-1); text-transform:uppercase; text-align:right; line-height:1.7;}

.metrics .stats{ display:grid; grid-template-columns: repeat(3,1fr); gap:0; border-top:1px solid rgba(240,240,240,0.2); border-bottom:1px solid rgba(240,240,240,0.2);}
@media(max-width: 900px){ .metrics .stats{ grid-template-columns: 1fr;} }
.metrics .stat{
  padding:30px 28px; position:relative;
  display:flex; flex-direction:column; gap:12px;
}
.metrics .stat + .stat{ border-left:1px solid rgba(240,240,240,0.2);}
@media(max-width: 900px){ .metrics .stat + .stat{ border-left:none; border-top:1px solid rgba(240,240,240,0.2);} }

.metrics .stat .src{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--red); text-transform:uppercase;}
.metrics .stat .big{ font-family:"Bebas Neue", sans-serif; font-size: clamp(80px, 9vw, 180px); line-height:0.84; color:var(--bone); letter-spacing:-0.02em;}
.metrics .stat .lbl{ font-family:"JetBrains Mono", monospace; font-size:13px; letter-spacing:0.18em; color:var(--gray-1); text-transform:uppercase;}
.metrics .stat .bar{ height:3px; width:0%; background:var(--red); margin-top:10px; transition: width 1.6s cubic-bezier(.2,.7,.2,1);}
.metrics .stat.in .bar{ width: var(--bar, 60%);}

.metrics .row2{
  display:grid; grid-template-columns: 1.4fr 1fr; gap:36px; margin-top:48px;
}
@media(max-width: 900px){ .metrics .row2{ grid-template-columns: 1fr;} }
.metrics .collabs .lbl{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--red); text-transform:uppercase; margin-bottom:18px;}
.metrics .chips{ display:flex; flex-wrap:wrap; gap:10px;}
.metrics .chip{
  font-family:"Bebas Neue", sans-serif; font-size: clamp(18px, 1.6vw, 26px); padding:6px 16px;
  border:1px solid rgba(240,240,240,0.25); color:var(--bone); letter-spacing:0.02em;
  transition: all .25s;
}
.metrics .chip:nth-child(3n){ color:var(--red); border-color:var(--red);}
.metrics .chip:hover{ background:var(--red); color:var(--black); border-color:var(--red);}

.metrics .callout{ background: #110000; border:1px solid var(--red); padding:24px 28px; position:relative;}
.metrics .callout::before{ content:""; position:absolute; left:-1px; top:-1px; width:20px; height:20px; border-top:2px solid var(--red); border-left:2px solid var(--red);}
.metrics .callout::after{ content:""; position:absolute; right:-1px; bottom:-1px; width:20px; height:20px; border-bottom:2px solid var(--red); border-right:2px solid var(--red);}
.metrics .callout .lbl{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--red); text-transform:uppercase;}
.metrics .callout .h{ font-family:"Bebas Neue", sans-serif; font-size: clamp(36px, 4vw, 56px); line-height:0.95; color:var(--bone); margin-top:10px;}
.metrics .callout .h em{ font-style:normal; color:var(--red);}
.metrics .callout .sub{ font-family:"Space Grotesk", sans-serif; font-size:15px; color:var(--gray-1); margin-top:10px;}

/* ============================================================ */
/* UPCOMING                                                      */
/* ============================================================ */
.upcoming .head{ display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; margin-bottom:48px;}
.upcoming h2{ font-family:"Bebas Neue", sans-serif; font-size: clamp(56px, 8vw, 130px); line-height:0.84; color:var(--bone); letter-spacing:-0.02em;}
.upcoming h2 .red{ color:var(--red);}
.upcoming .head .right{ text-align:right; font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--gray-1); text-transform:uppercase;}
.upcoming .head .right b{ font-family:"Bebas Neue", sans-serif; font-size: clamp(56px, 6vw, 80px); color:var(--red); display:block; letter-spacing:0.02em;}

.ep-grid{ display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:24px;}
@media(max-width: 1000px){ .ep-grid{ grid-template-columns: 1fr;} }

.ep-col{
  background:#0E0E0E; border:1px solid rgba(240,240,240,0.08); padding:22px;
  display:flex; flex-direction:column; position:relative;
}
.ep-col::before{ content:""; position:absolute; left:0; top:0; width:0; height:3px; background:var(--red); transition: width 1.4s cubic-bezier(.2,.7,.2,1);}
.ep-col.in::before{ width:100%;}

.ep-col .cover{
  width:100%; aspect-ratio:1; background:#1a1a1a; overflow:hidden;
  display:flex; align-items:center; justify-content:center; position:relative;
}
.ep-col .cover.a{ background: radial-gradient(ellipse at center, #2a0a0a, #0a0a0a);}
.ep-col .cover.b{ background: linear-gradient(135deg, #1a1a1a 0%, #0e0e0e 50%, #2a0a0a 100%);}
.ep-col .cover.c{ background: repeating-linear-gradient(45deg, #161616 0 14px, #0e0e0e 14px 28px);}
.ep-col .cover .glyph{ font-family:"Bebas Neue", sans-serif; font-size: clamp(140px, 18vw, 220px); color:var(--bone); line-height:0.8; letter-spacing:-0.04em; opacity:0.9;}
.ep-col .cover .glyph.red{ color:var(--red);}
.ep-col .cover .stamp{ position:absolute; top:14px; right:14px;
  font-family:"JetBrains Mono", monospace; font-size:10px; letter-spacing:0.2em; color:var(--bone); opacity:0.7;
  border:1px solid rgba(240,240,240,0.4); padding:4px 8px;}

.ep-col .meta{ margin-top:20px;}
.ep-col .ep-num{ font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.24em; color:var(--gray-2); text-transform:uppercase;}
.ep-col .ep-title{ font-family:"Bebas Neue", sans-serif; font-size: clamp(32px, 3vw, 46px); line-height:1; color:var(--red); letter-spacing:0.01em; margin-top:6px;}
.ep-col .ep-sub{ font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.22em; color:var(--gray-1); text-transform:uppercase; margin-top:10px; padding-bottom:14px; border-bottom:1px solid rgba(240,240,240,0.18);}

.ep-col ol{ list-style:none; margin-top:14px;}
.ep-col li{
  display:grid; grid-template-columns: 32px 1fr; gap:10px;
  font-family:"Space Grotesk", sans-serif; font-size:14px; color:var(--bone);
  padding:7px 0; border-bottom:1px solid rgba(240,240,240,0.06);
}
.ep-col li .n{ font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.1em; color:var(--gray-2); padding-top:2px;}
.ep-col li.tbd{ color:var(--gray-2);}
.ep-col li.tbd .t{ font-style:italic; opacity:0.65;}

/* ============================================================ */
/* VISION                                                        */
/* ============================================================ */
.vision-wrap{ position:relative; overflow:hidden;}
.vision-wrap .beam{
  position:absolute; inset:0; pointer-events:none; z-index:1;
  background:
    linear-gradient(115deg, transparent 38%, rgba(255,26,26,0.10) 50%, transparent 62%),
    linear-gradient(115deg, transparent 45%, rgba(255,255,255,0.06) 50%, transparent 56%);
}
.vision{ position:relative; z-index:2; display:grid; grid-template-columns: 1.2fr 1fr; gap: clamp(40px, 5vw, 90px); align-items:stretch;}
@media(max-width: 1100px){ .vision{ grid-template-columns:1fr;} }

.vision blockquote{
  font-family:"Bebas Neue", sans-serif;
  font-size: clamp(54px, 7vw, 130px); line-height:0.94; color:var(--bone);
  letter-spacing:-0.01em;
  margin-top:24px;
}
.vision blockquote .red{ color:var(--red);}
.vision blockquote .em{ font-style:italic; color:var(--red);}
.vision .support{ font-family:"Space Grotesk", sans-serif; font-size: clamp(16px, 1.3vw, 22px); line-height:1.55; color:var(--gray-1); margin-top:34px; max-width:700px;}
.vision .signature{ display:flex; gap:36px; margin-top:48px; padding-top:28px; border-top:1px solid rgba(240,240,240,0.15); flex-wrap:wrap;}
.vision .signature .cell .k{ font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.22em; color:var(--gray-2); text-transform:uppercase;}
.vision .signature .cell .v{ font-family:"Bebas Neue", sans-serif; font-size: clamp(28px, 3vw, 38px); color:var(--bone); margin-top:6px;}
.vision .signature .cell .v .red{ color:var(--red);}

.vision .img-frame{ position:relative; width:100%; height:100%; min-height:480px; overflow:hidden; background:#0E0E0E;}
.vision .img-frame img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 28%;
  filter:contrast(1.08) saturate(0.7) brightness(0.85);}
.vision .img-frame::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 40%, rgba(10,10,10,0.85) 100%);}
.vision .img-frame::before{ content:""; position:absolute; inset:18px; border:1px solid rgba(240,240,240,0.12); z-index:2; pointer-events:none;}
.vision .img-tag{ position:absolute; top:30px; left:30px; right:30px; z-index:3; display:flex; justify-content:space-between;
  font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.22em; color:var(--bone); text-transform:uppercase; opacity:0.85;}
.vision .img-tag .red{ color:var(--red);}
.vision .img-meta{ position:absolute; bottom:30px; left:30px; right:30px; z-index:3;
  display:flex; justify-content:space-between;
  font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--bone); text-transform:uppercase;}
.vision .img-meta .red{ color:var(--red);}

/* ============================================================ */
/* CONTACT                                                       */
/* ============================================================ */
.contact h2{ font-family:"Bebas Neue", sans-serif; font-size: clamp(80px, 14vw, 220px); line-height:0.84; letter-spacing:-0.03em; color:var(--bone); margin-top:18px;}
.contact h2 .red{ color:var(--red);}
.contact h2 .em{ -webkit-text-stroke:2px var(--bone); color:transparent;}
.contact .body-row{ display:grid; grid-template-columns: 1fr 1fr; gap: clamp(20px, 4vw, 80px); padding-top: clamp(40px, 5vw, 80px);}
@media(max-width: 900px){ .contact .body-row{ grid-template-columns:1fr;} }
.contact .col{ display:flex; flex-direction:column;}
.contact .item{ display:grid; grid-template-columns: 52px 1fr auto; gap:20px; align-items:center;
  padding:18px 0; border-bottom:1px solid rgba(240,240,240,0.18); transition: all .25s;}
.contact .item:hover{ border-color:var(--red); padding-left:8px;}
.contact .item .ico{ width:52px; height:52px; border:1px solid rgba(240,240,240,0.35);
  display:flex; align-items:center; justify-content:center; color:var(--bone); transition:all .25s;}
.contact .item:hover .ico{ border-color:var(--red); color:var(--red);}
.contact .item .ico svg{ width:22px; height:22px;}
.contact .item .v{ font-family:"Space Grotesk", sans-serif; font-size: clamp(16px, 1.4vw, 22px); color:var(--bone); font-weight:500; word-break: break-all;}
.contact .item .k{ font-family:"JetBrains Mono", monospace; font-size:10px; letter-spacing:0.22em; color:var(--gray-2); text-transform:uppercase; margin-bottom:4px;}
.contact .item .arr{ font-family:"JetBrains Mono", monospace; font-size:14px; color:var(--gray-2); transition: color .25s, transform .25s;}
.contact .item:hover .arr{ color:var(--red); transform: translateX(4px);}

.contact .footer-block{ margin-top: clamp(40px, 6vw, 80px); padding-top:32px; border-top:2px solid var(--red);
  display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap;}
.contact .footer-block .lbl{ font-family:"JetBrains Mono", monospace; font-size:12px; letter-spacing:0.22em; color:var(--gray-1); text-transform:uppercase; line-height:1.7;}
.contact .footer-block .lbl b{ color:var(--bone); font-weight:500;}
.contact .footer-block .mw{ font-family:"Bebas Neue", sans-serif; font-size: clamp(40px, 5vw, 72px); color:var(--bone); letter-spacing:0.01em; line-height:1;}
.contact .footer-block .mw .red{ color:var(--red);}

/* Divider — used between sections */
.divider-row{
  max-width: var(--max-w); margin: 0 auto; padding: 0 var(--pad-x);
  display:flex; justify-content:space-between; align-items:center;
  border-top: 1px solid rgba(240,240,240,0.1); padding-top:18px; padding-bottom:0;
  font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.22em; color:var(--gray-2); text-transform:uppercase;
}
.divider-row .l{ display:flex; align-items:center; gap:14px;}
.divider-row .l::before{ content:""; width:8px; height:8px; background:var(--red); border-radius:50%; box-shadow:0 0 10px var(--red);}

/* Footer */
.site-foot{
  max-width: var(--max-w); margin: 0 auto; padding: 30px var(--pad-x) 60px;
  display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap;
  font-family:"JetBrains Mono", monospace; font-size:11px; letter-spacing:0.22em; color:var(--gray-2); text-transform:uppercase;
}
