/*
Theme Name: Delta Octagon
Theme URI: https://deltaoctagon.com
Author: Delta Octagon
Description: Bespoke artist theme for Delta Octagon — music, biography, live bookings, visuals, merchandise, EPK and journal.
Version: 1.0.6
Text Domain: delta-octagon
*/

:root {
  --ink: #070707;
  --ink-2: #101010;
  --paper: #f3f1e8;
  --paper-2: #d8d5ca;
  --acid: #e7ff00;
  --line: rgba(243, 241, 232, 0.18);
  --line-dark: rgba(7, 7, 7, 0.18);
  --display: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  --ui: Inter, "Helvetica Neue", Arial, sans-serif;
  --serif: Georgia, "Times New Roman", serif;
  --background: #070707;
  --foreground: #f3f1e8;
  --card: #101010;
  --card-foreground: #f3f1e8;
  --popover: #101010;
  --popover-foreground: #f3f1e8;
  --primary: #e7ff00;
  --primary-foreground: #070707;
  --secondary: #1b1b1b;
  --secondary-foreground: #f3f1e8;
  --muted: #1b1b1b;
  --muted-foreground: #aaa89f;
  --accent: #e7ff00;
  --accent-foreground: #070707;
  --destructive: #ff5c62;
  --border: rgba(243, 241, 232, 0.18);
  --input: rgba(243, 241, 232, 0.22);
  --ring: #e7ff00;
  --radius: 0;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-card: var(--card);
  --color-card-foreground: var(--card-foreground);
  --color-popover: var(--popover);
  --color-popover-foreground: var(--popover-foreground);
  --color-primary: var(--primary);
  --color-primary-foreground: var(--primary-foreground);
  --color-secondary: var(--secondary);
  --color-secondary-foreground: var(--secondary-foreground);
  --color-muted: var(--muted);
  --color-muted-foreground: var(--muted-foreground);
  --color-accent: var(--accent);
  --color-accent-foreground: var(--accent-foreground);
  --color-destructive: var(--destructive);
  --color-border: var(--border);
  --color-input: var(--input);
  --color-ring: var(--ring);
  --font-sans: var(--ui);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ink); color: var(--paper); font: 16px/1.5 var(--ui); overflow-x: hidden; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--acid); color: var(--ink); }
.skip-link { position: fixed; z-index: 1000; top: 8px; left: 8px; padding: 12px 18px; background: var(--acid); color: var(--ink); transform: translateY(-160%); transition: transform .2s ease; font-weight: 900; }
.skip-link:focus { transform: translateY(0); }
.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; }

.announcement { min-height: 46px; background: var(--acid); color: var(--ink); display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 20px; padding: 0 clamp(22px, 3vw, 48px); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.announcement-centre { text-align: center; }
.announcement a { text-align: right; }
.announcement a:hover { text-decoration: underline; text-underline-offset: 4px; }

.site-header { height: 124px; display: grid; grid-template-columns: 220px minmax(0, 1fr) 270px; border-bottom: 1px solid var(--line); position: relative; z-index: 50; background: rgba(7,7,7,.96); }
.brand { display: flex; align-items: center; gap: 14px; padding: 0 clamp(22px, 3vw, 48px); border-right: 1px solid var(--line); }
.brand-name { font-family: var(--display); font-size: 1.1rem; line-height: .84; letter-spacing: -.06em; text-transform: uppercase; }
.brand-mark { width: 38px; aspect-ratio: 1; position: relative; background: var(--paper); display: grid; place-items: center; clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); flex: 0 0 auto; }
.brand-mark i { width: 26px; aspect-ratio: 1; background: var(--ink); clip-path: inherit; }
.primary-nav { display: flex; justify-content: center; align-items: stretch; }
.primary-nav > a, .nav-more > button { display: flex; align-items: center; justify-content: center; padding: 0 clamp(12px, 1.55vw, 25px); border: 0; background: transparent; color: var(--paper); font-size: .78rem; font-weight: 900; letter-spacing: .08em; cursor: pointer; white-space: nowrap; text-transform: uppercase; }
.primary-nav > a:hover, .nav-more > button:hover { color: var(--acid); }
.nav-more { position: relative; display: flex; }
.nav-more button span { color: var(--acid); margin-left: 8px; font-size: 1.25rem; transition: transform .2s; }
.nav-more button[aria-expanded="true"] span { transform: rotate(45deg); }
.nav-more-panel { display: none; position: absolute; top: 92px; left: 0; width: 250px; background: var(--acid); color: var(--ink); padding: 14px; box-shadow: 0 22px 60px rgba(0,0,0,.4); }
.nav-more-panel.is-open { display: grid; }
.nav-more-panel a { padding: 14px 10px; border-bottom: 1px solid rgba(0,0,0,.2); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.nav-more-panel a:last-child { border-bottom: 0; }
.nav-more-panel a:hover { padding-left: 16px; }
.header-actions { display: grid; grid-template-columns: 1fr 1.3fr; border-left: 1px solid var(--line); }
.header-actions > a { display: flex; justify-content: center; align-items: center; font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.header-actions > a:hover { color: var(--acid); }
.header-book { border-left: 1px solid var(--line); font-size: .88rem !important; }
.header-book span { color: var(--acid); margin-left: 20px; }
.menu-toggle { display: none; }

.hero { min-height: calc(100vh - 170px); display: grid; grid-template-columns: 48% 52%; position: relative; border-bottom: 1px solid var(--line); }
.hero-copy { padding: clamp(72px, 8vw, 135px) clamp(28px, 4vw, 70px) 120px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--line); position: relative; z-index: 2; }
.eyebrow { margin: 0 0 28px; font-size: .78rem; font-weight: 900; letter-spacing: .14em; color: var(--acid); text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); letter-spacing: -.065em; text-transform: uppercase; }
h1 { font-size: clamp(3.5rem, 6.6vw, 7.5rem); line-height: .82; margin-bottom: 38px; }
h1 em, h2 em, .signup-dialog em { display: inline-block; color: var(--acid); font-family: var(--serif); font-style: italic; font-weight: 400; letter-spacing: -.07em; text-transform: none; }
.hero-intro { max-width: 650px; color: rgba(243,241,232,.7); line-height: 1.7; font-size: clamp(1rem, 1.15vw, 1.15rem); margin-bottom: 35px; }
.button-row { display: flex; flex-wrap: wrap; gap: 14px; }
.button { min-height: 56px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.button:hover { transform: translateY(-2px); }
.button-acid { color: var(--ink); background: var(--acid); border-color: var(--acid); }
.button-acid:hover { background: var(--paper); border-color: var(--paper); }
.button-ghost { color: var(--paper); background: transparent; }
.button-ghost:hover { color: var(--ink); background: var(--paper); }
.button-light { color: var(--ink); background: var(--paper); border-color: var(--paper); }
.button-light:hover { background: var(--acid); border-color: var(--acid); }
.button-dark { color: var(--paper); background: var(--ink); border-color: var(--ink); width: 100%; }
.button-dark:hover { color: var(--ink); background: var(--paper); border-color: var(--paper); }

.hero-visual { background-image: linear-gradient(90deg, rgba(7,7,7,.34), transparent 55%), url("assets/images/delta-portrait.jpg"); background-size: cover; background-position: center 42%; min-height: 620px; position: relative; overflow: hidden; }
.hero-visual::before { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.03), rgba(0,0,0,.08) 55%, rgba(0,0,0,.84)); }
.hero-visual::after { content:""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(transparent, #000 30%, #000); }
.hero-scan { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, transparent 0 47%, rgba(231,255,0,.18) 50%, transparent 53%); background-size: 100% 180px; animation: scan 8s linear infinite; opacity: .5; }
@keyframes scan { to { background-position: 0 720px; } }
.hero-meta { position: absolute; z-index: 3; left: 34px; right: 34px; bottom: 45px; display: flex; justify-content: space-between; font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.signal-strip { position: absolute; z-index: 6; bottom: 0; left: 0; right: 0; height: 72px; display: flex; align-items: center; gap: 35px; padding: 0 clamp(28px, 4vw, 70px); background: rgba(7,7,7,.94); border-top: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.waveform { height: 38px; display: flex; align-items: center; gap: 5px; flex: 1; max-width: 420px; }
.waveform i { width: 5px; background: var(--acid); animation: pulse 1.6s ease-in-out infinite alternate; }
@keyframes pulse { 50% { height: 20%; } }
.signal-strip > span:last-child { margin-left: auto; }

.genre-ticker { height: 66px; background: var(--acid); color: var(--ink); display: flex; align-items: center; overflow: hidden; }
.genre-ticker > div { min-width: max-content; display: flex; align-items: center; animation: ticker 32s linear infinite; }
.ticker-pair { display: flex; align-items: center; }
.ticker-pair b { padding: 0 26px; font-family: var(--display); font-size: 1rem; letter-spacing: -.03em; text-transform: uppercase; }
.ticker-pair i { width: 10px; height: 10px; background: var(--ink); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
@keyframes ticker { to { transform: translateX(-50%); } }

.section { padding: clamp(88px, 10vw, 165px) clamp(25px, 5vw, 84px); }
.section-lined { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.section-heading { margin-bottom: clamp(50px, 7vw, 100px); }
.section-heading h2, .manifesto h2, .live h2, .booking h2 { font-size: clamp(3.6rem, 8vw, 8.8rem); line-height: .82; margin: 0; }
.section-heading-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 45px; }
.text-link { padding-bottom: 8px; border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 900; letter-spacing: .09em; white-space: nowrap; text-transform: uppercase; }
.text-link:hover { color: var(--acid); }

.latest { background: var(--ink-2); }
.latest-grid { display: grid; grid-template-columns: minmax(320px, 44%) 1fr; gap: clamp(50px, 8vw, 140px); align-items: center; }
.latest-art { margin: 0; position: relative; }
.latest-art::before { content:""; position: absolute; inset: -14px 14px 14px -14px; border: 1px solid var(--acid); }
.latest-art img { position: relative; z-index: 1; width: 100%; aspect-ratio: 1; object-fit: cover; }
.latest-art figcaption { margin-top: 16px; font-size: .75rem; font-weight: 900; letter-spacing: .12em; color: var(--acid); text-transform: uppercase; }
.latest-content { position: relative; }
.track-number { position: absolute; right: 0; top: -80px; font-family: var(--display); font-size: clamp(6rem, 12vw, 12.5rem); color: rgba(243,241,232,.05); line-height: 1; }
.latest-label { font-size: .78rem; font-weight: 900; letter-spacing: .14em; color: var(--acid); text-transform: uppercase; }
.latest-content h3 { font-size: clamp(3.2rem, 7vw, 7.3rem); line-height: .82; margin: 24px 0 30px; }
.latest-content > p:not(.latest-label) { max-width: 640px; color: rgba(243,241,232,.7); font-size: 1.08rem; line-height: 1.7; }
.soundcloud-embed { margin: 35px 0 25px; border: 1px solid var(--line); background: #171717; }
.soundcloud-embed iframe { display: block; width: 100%; height: 166px; border: 0; filter: grayscale(1) contrast(1.08); }
.platform-links { display: flex; flex-wrap: wrap; gap: 24px; }
.platform-links a { border-bottom: 1px solid var(--line); padding-bottom: 7px; font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.platform-links a:hover { color: var(--acid); }

.platform-logo-strip { --neon-social: #e7ff00; display: grid; grid-template-columns: 180px minmax(0, 1fr); align-items: stretch; min-height: 138px; border-top: 1px solid rgba(231,255,0,.35); border-bottom: 1px solid rgba(231,255,0,.35); background: #050505; }
.platform-logo-strip > p { margin: 0; padding: 30px clamp(22px, 3vw, 48px); display: flex; align-items: center; border-right: 1px solid rgba(231,255,0,.35); color: var(--neon-social); font-size: .75rem; font-weight: 900; letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; }
.platform-logo-track { min-width: 0; display: grid; grid-template-columns: repeat(9, minmax(92px, 1fr)); overflow-x: auto; scrollbar-color: var(--neon-social) #111; }
.platform-logo-track a { min-width: 92px; padding: 23px 10px 19px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; border-right: 1px solid rgba(231,255,0,.18); color: var(--neon-social); transition: color .2s, background .2s, box-shadow .2s; }
.platform-logo-track a:last-child { border-right: 0; }
.platform-logo-track img { width: 34px; height: 34px; object-fit: contain; transition: transform .2s, filter .2s; }
.platform-logo-track span { font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-align: center; text-transform: uppercase; white-space: nowrap; }
.platform-logo-track a:hover, .platform-logo-track a:focus-visible { color: var(--ink); background: var(--neon-social); box-shadow: 0 0 30px rgba(231,255,0,.24); outline: 0; }
.platform-logo-track a:hover img, .platform-logo-track a:focus-visible img { filter: brightness(0); transform: translateY(-2px) scale(1.08); }

.release-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 3vw, 48px); }
.release-image { display: block; position: relative; overflow: hidden; background: var(--ink-2); }
.release-image img { width: 100%; aspect-ratio: 1; object-fit: cover; transition: transform .65s cubic-bezier(.2,.8,.2,1), filter .4s; }
.release-card:hover img { transform: scale(1.045); filter: brightness(.72); }
.play-disc { position: absolute; right: 20px; bottom: 20px; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; background: var(--acid); color: var(--ink); opacity: 0; transform: translateY(10px); transition: opacity .25s, transform .25s; font-size: .9rem; padding-left: 3px; }
.release-card:hover .play-disc { opacity: 1; transform: translateY(0); }
.release-meta { display: flex; justify-content: space-between; margin: 18px 0 22px; padding-bottom: 14px; border-bottom: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: rgba(243,241,232,.6); text-transform: uppercase; }
.release-card h3 { font-size: clamp(1.8rem, 2.6vw, 3rem); line-height: .92; margin: 0 0 12px; }
.release-card > p { font-size: .75rem; font-weight: 900; letter-spacing: .12em; color: var(--acid); text-transform: uppercase; }
.release-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; text-align: center; font-family: var(--display); font-size: clamp(2rem, 4vw, 4.2rem); line-height: .82; letter-spacing: -.08em; color: var(--paper); text-shadow: 0 3px 20px #000; text-transform: uppercase; }
.release-overlay small { font: 900 .75rem var(--ui); letter-spacing: .18em; margin-bottom: 12px; }
.release-overlay em { color: var(--acid); font: 900 .75rem var(--ui); letter-spacing: .11em; margin-top: 16px; }

.bbc-feature { min-height: 560px; display: grid; grid-template-columns: .9fr 1.1fr; background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--line-dark); }
.bbc-feature-copy { padding: clamp(70px, 8vw, 130px) clamp(28px, 6vw, 100px); display: flex; flex-direction: column; justify-content: center; }
.bbc-feature-copy > p { margin: 0 0 70px; color: #65645b; font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.bbc-feature-copy > span { margin-bottom: 22px; font-size: .9rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.bbc-feature-copy h2 { margin: 0; font-size: clamp(3.1rem, 6vw, 6.8rem); line-height: .84; }
.bbc-feature-copy h2 em { color: var(--ink); font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; }
.bbc-feature-art { min-width: 0; margin: 0; padding: clamp(32px, 5vw, 76px); background: var(--ink); display: flex; flex-direction: column; justify-content: center; }
.bbc-feature-art img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid rgba(243,241,232,.18); }
.bbc-feature-art figcaption { margin-top: 22px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }

.manifesto { display: grid; grid-template-columns: 42% 58%; background: var(--paper); color: var(--ink); position: relative; }
.manifesto-portrait { min-height: 850px; background: #0a0a0a; position: relative; display: grid; place-items: center; padding: 10%; overflow: hidden; }
.manifesto-portrait::before { content:""; position: absolute; inset: 0; background: url("assets/images/circuit.webp") center/cover; opacity: .5; filter: grayscale(1); }
.portrait-crop { width: min(520px, 90%); aspect-ratio: 1; overflow: hidden; position: relative; clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); z-index: 2; background: #111; filter: grayscale(1) contrast(1.1); }
.portrait-crop::after { content:""; position: absolute; inset: 0; box-shadow: inset 0 0 0 10px var(--acid); clip-path: inherit; }
.portrait-crop img { position: absolute; width: 766%; max-width: none; left: -36%; top: -40%; }
.portrait-caption { position: absolute; z-index: 3; left: 8%; right: 8%; bottom: 36px; display: flex; justify-content: space-between; color: var(--paper); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.manifesto-copy { padding: clamp(80px, 9vw, 155px) clamp(35px, 7vw, 120px) 210px; }
.manifesto .eyebrow { color: #4d4d45; }
.manifesto h2 { font-size: clamp(3.4rem, 7vw, 7.4rem); }
.manifesto h2 em { color: var(--ink); }
.manifesto .lead { max-width: 820px; margin: 55px 0 34px; font-family: var(--serif); font-size: clamp(1.55rem, 2.3vw, 2.5rem); line-height: 1.23; }
.manifesto-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; margin-bottom: 42px; }
.manifesto-columns p { color: rgba(7,7,7,.68); line-height: 1.75; }
.manifesto-facts { position: absolute; left: 42%; right: 0; bottom: 0; min-height: 140px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line-dark); }
.manifesto-facts div { display: flex; flex-direction: column; justify-content: center; padding: 25px; border-right: 1px solid var(--line-dark); }
.manifesto-facts div:last-child { border-right: 0; }
.manifesto-facts strong { font-family: var(--display); font-size: 2.25rem; }
.manifesto-facts span { margin-top: 6px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

.live { min-height: 850px; position: relative; overflow: hidden; display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 80px; }
.live::after { content:""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.98) 0%, rgba(7,7,7,.74) 48%, rgba(7,7,7,.4)); z-index: 0; }
.live-backdrop { position: absolute; inset: 0; background: url("assets/images/graffiti.webp") center/cover; filter: grayscale(.8); transform: scale(1.03); }
.live-content, .live-formats { position: relative; z-index: 2; }
.live-content h2 { font-size: clamp(3.8rem, 7.2vw, 7.9rem); }
.live-content > p:not(.eyebrow) { max-width: 660px; color: rgba(243,241,232,.72); line-height: 1.75; font-size: 1.08rem; margin: 40px 0; }
.live-formats { background: rgba(7,7,7,.82); border: 1px solid var(--line); backdrop-filter: blur(16px); }
.live-formats div { display: grid; grid-template-columns: 42px 1fr; gap: 8px 15px; padding: 26px; border-bottom: 1px solid var(--line); }
.live-formats div:last-child { border-bottom: 0; }
.live-formats span { color: var(--acid); font-family: var(--display); grid-row: span 2; }
.live-formats strong { font-family: var(--display); font-size: 1.2rem; text-transform: uppercase; }
.live-formats small { color: rgba(243,241,232,.6); font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }

.section-light { background: var(--paper); color: var(--ink); }
.section-light .eyebrow { color: #4e4d46; }
.section-light h2 em { color: var(--ink); }
.section-intro { max-width: 470px; color: rgba(7,7,7,.65); line-height: 1.6; font: 1.4rem var(--serif); }
.visual-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; min-height: 560px; }
.visual-card { position: relative; overflow: hidden; min-height: 500px; border-left: 1px solid rgba(243,241,232,.24); color: var(--paper); }
.visual-card:first-child { border-left: 0; }
.visual-card::after { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,7,7,.08), rgba(7,7,7,.2) 45%, rgba(7,7,7,.95)); }
.visual-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s; }
.visual-card:hover img { transform: scale(1.04); }
.visual-index, .visual-card strong, .visual-card i { position: absolute; z-index: 2; left: 28px; right: 28px; }
.visual-index { top: 28px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-card strong { bottom: 65px; font-family: var(--display); font-size: clamp(1.6rem, 2.5vw, 2.75rem); line-height: .9; letter-spacing: -.06em; text-transform: uppercase; }
.visual-card i { bottom: 28px; font-style: normal; font-size: .75rem; font-weight: 900; letter-spacing: .09em; color: var(--acid); text-transform: uppercase; }

.merch { background: #0b0b0b; }
.merch-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.merch-card { margin: 0; }
.merch-visual { aspect-ratio: .86; background: #181818; overflow: hidden; position: relative; }
.merch-visual::after { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.65)); }
.merch-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s, filter .5s; }
.merch-card:hover img { transform: scale(1.04); filter: brightness(.78); }
.merch-visual-neon strong { position: absolute; z-index: 2; left: 28px; bottom: 26px; color: var(--paper); font-family: var(--display); font-size: clamp(2.4rem, 4vw, 5rem); line-height: .76; letter-spacing: -.08em; text-transform: uppercase; }
.merch-card p { display: flex; justify-content: space-between; gap: 16px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.merch-card small { color: var(--acid); font-size: inherit; }
.notify-link { margin-top: 45px; padding: 0 0 8px; color: var(--paper); background: none; border: 0; border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 900; letter-spacing: .08em; cursor: pointer; text-transform: uppercase; }
.notify-link:hover { color: var(--acid); }

.press { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 10vw, 180px); align-items: center; position: relative; }
.press-heading { position: relative; }
.press-heading h2 { font-size: clamp(3.6rem, 7vw, 7.5rem); line-height: .82; }
.press-heading h2 em { color: var(--acid); }
.octagon-outline { position: absolute; right: 5%; top: -10%; width: min(20vw,260px); aspect-ratio: 1; border: 1px solid rgba(231,255,0,.35); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
.press-items { border-top: 1px solid var(--line); }
.press-items a { display: grid; grid-template-columns: 50px 1fr 30px; gap: 15px; align-items: center; min-height: 86px; border-bottom: 1px solid var(--line); transition: color .2s, padding .2s; }
.press-items a:hover { color: var(--acid); padding-left: 10px; }
.press-items span, .press-items i { color: var(--acid); font-size: .78rem; font-weight: 900; font-style: normal; }
.press-items strong { font-family: var(--display); font-size: clamp(1.2rem, 2vw, 1.9rem); letter-spacing: -.04em; text-transform: uppercase; }

.journal { background: var(--paper); color: var(--ink); }
.journal .eyebrow { color: #57564f; }
.journal h2 em { color: var(--ink); }
.journal-status { padding: 10px 15px; border: 1px solid var(--line-dark); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.journal-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }
.journal-card { padding: clamp(30px, 4vw, 60px); border-right: 1px solid var(--line-dark); min-height: 360px; display: flex; flex-direction: column; }
.journal-card:last-child { border-right: 0; }
.journal-card > span { font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: #616056; text-transform: uppercase; }
.journal-card h3 { font-size: clamp(1.55rem, 2.4vw, 2.6rem); line-height: .98; margin: 45px 0; }
.journal-card a, .journal-card button { margin-top: auto; width: max-content; color: var(--ink); background: none; border: 0; padding: 0; font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; }
.journal-card a:hover, .journal-card button:hover { text-decoration: underline; text-underline-offset: 6px; }

.booking { display: grid; grid-template-columns: 1fr 1fr; background: var(--acid); color: var(--ink); }
.booking-copy { padding: clamp(80px, 9vw, 150px) clamp(28px, 6vw, 100px); border-right: 1px solid rgba(7,7,7,.2); }
.booking .eyebrow { color: #363900; }
.booking h2 { font-size: clamp(3.4rem, 6.6vw, 7rem); }
.booking h2 em { color: var(--ink); }
.booking-copy > p:last-child { max-width: 620px; margin: 40px 0 0; line-height: 1.7; }
.booking-form { padding: clamp(80px, 9vw, 150px) clamp(28px, 6vw, 100px); display: grid; grid-template-columns: 1fr 1fr; gap: 28px 22px; align-content: center; }
.field { display: flex; flex-direction: column; gap: 10px; }
.field-full { grid-column: 1 / -1; }
.field label { font-size: .78rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.field input, .field textarea, .booking-select { width: 100%; height: auto; color: var(--ink); background: transparent !important; border: 0; border-bottom: 1px solid rgba(7,7,7,.45); border-radius: 0; padding: 12px 0; outline: 0; font-size: 1rem; font-weight: 800; box-shadow: none; }
.field textarea { resize: vertical; min-height: 100px; }
.field [data-slot="native-select-wrapper"] { width: 100%; }
.field input:focus, .field textarea:focus, .booking-select:focus { border-bottom-color: var(--ink); box-shadow: 0 2px 0 var(--ink); }
.field input::placeholder, .field textarea::placeholder { color: rgba(7,7,7,.55); }
.form-note { margin: -10px 0 0; font-size: .78rem; line-height: 1.5; }

.site-footer { padding: 75px clamp(25px, 5vw, 84px) 38px; display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; border-top: 1px solid var(--line); }
.footer-brand { display: flex; gap: 18px; align-items: center; }
.footer-brand strong { font-family: var(--display); font-size: clamp(2.4rem, 4vw, 4rem); line-height: .78; letter-spacing: -.07em; text-transform: uppercase; }
.footer-brand .brand-mark { width: 60px; background: var(--acid); }
.footer-brand .brand-mark i { width: 42px; }
.footer-social { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.footer-social a { padding: 18px 10px 18px 0; border-bottom: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.footer-social a:hover { color: var(--acid); }
.footer-meta { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 25px; padding-top: 25px; border-top: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: rgba(243,241,232,.55); text-transform: uppercase; }
.footer-meta a:hover { color: var(--acid); }

.signup-dialog { width: min(680px, calc(100% - 30px)) !important; max-width: 680px !important; padding: clamp(35px, 6vw, 70px) !important; border: 1px solid var(--acid) !important; border-radius: 0 !important; background: var(--ink) !important; color: var(--paper) !important; box-shadow: 0 30px 100px rgba(0,0,0,.75) !important; }
.signup-dialog [data-slot="dialog-title"] { color: var(--paper); font: 900 clamp(2.6rem, 6vw, 4.5rem)/.85 var(--display); letter-spacing: -.065em; text-transform: uppercase; }
.signup-dialog [data-slot="dialog-description"] { color: rgba(243,241,232,.68); font-size: 1rem; line-height: 1.6; margin-top: 18px; }
.signup-form { display: grid; grid-template-columns: 1fr auto; margin: 30px 0 15px; }
.signup-form input { min-width: 0; border: 1px solid var(--line); background: #111; color: var(--paper); padding: 0 18px; outline: 0; }
.signup-form input:focus { border-color: var(--acid); }
.signup-dialog > small { color: rgba(243,241,232,.55); font-size: .78rem; }

@media (max-width: 1120px) {
  .site-header { grid-template-columns: 190px 1fr 200px; }
  .primary-nav > a, .nav-more > button { padding-inline: 10px; }
  .hero { grid-template-columns: 53% 47%; }
  .manifesto { grid-template-columns: 38% 62%; }
  .manifesto-facts { left: 38%; }
  .live { grid-template-columns: 1fr; }
  .live-formats { max-width: 680px; }
  .visual-grid { grid-template-columns: 1fr 1fr; }
  .visual-card-wide { grid-column: 1 / -1; min-height: 470px; }
  .press { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  .announcement { grid-template-columns: 1fr auto; min-height: 42px; padding-block: 7px; }
  .announcement-centre { display: none; }
  .site-header { height: 86px; grid-template-columns: 1fr auto; }
  .brand { border-right: 0; }
  .menu-toggle { display: grid; grid-template-columns: auto 24px; grid-template-rows: 1fr 1fr; align-items: center; gap: 0 12px; min-width: 112px; padding: 0 20px; background: transparent; color: var(--paper); border: 0; border-left: 1px solid var(--line); cursor: pointer; text-transform: uppercase; }
  .menu-toggle span { grid-row: 1 / 3; font-size: .78rem; font-weight: 900; letter-spacing: .1em; }
  .menu-toggle i { height: 1px; background: var(--paper); transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-5px) rotate(-45deg); }
  .primary-nav { display: none; position: fixed; top: 128px; left: 0; right: 0; bottom: 0; background: var(--ink); padding: 25px; flex-direction: column; align-items: stretch; overflow-y: auto; }
  .primary-nav.is-open { display: flex; }
  .primary-nav > a, .nav-more > button { min-height: 58px; justify-content: flex-start; border-bottom: 1px solid var(--line); font-family: var(--display); font-size: 1.4rem; }
  .nav-more { display: block; }
  .nav-more-panel { position: static; width: 100%; box-shadow: none; }
  .header-actions { display: none; }
  .hero { min-height: auto; grid-template-columns: 1fr; }
  .hero-copy { min-height: 680px; border-right: 0; background: linear-gradient(90deg, rgba(7,7,7,.97), rgba(7,7,7,.8) 65%, rgba(7,7,7,.3)), url("assets/images/delta-hero.webp") center/cover; }
  .hero-visual { min-height: 530px; }
  .latest-grid { grid-template-columns: 1fr; }
  .latest-art { max-width: 620px; }
  .release-grid { grid-template-columns: 1fr 1fr; }
  .release-card:last-child { grid-column: 1 / -1; width: calc(50% - 12px); }
  .manifesto { grid-template-columns: 1fr; }
  .manifesto-portrait { min-height: 700px; }
  .manifesto-facts { position: static; grid-column: 1 / -1; }
  .manifesto-copy { padding-bottom: 90px; }
  .visual-grid { grid-template-columns: 1fr; }
  .visual-card-wide { grid-column: auto; }
  .merch-grid { grid-template-columns: 1fr 1fr; }
  .merch-card:last-child { display: none; }
  .journal-grid { grid-template-columns: 1fr; }
  .journal-card { border-right: 0; border-bottom: 1px solid var(--line-dark); min-height: 280px; }
  .journal-card:last-child { border-bottom: 0; }
  .booking { grid-template-columns: 1fr; }
  .booking-copy { border-right: 0; border-bottom: 1px solid rgba(7,7,7,.2); }
  .site-footer { grid-template-columns: 1fr; }
  .platform-logo-strip { grid-template-columns: 1fr; }
  .platform-logo-strip > p { min-height: 58px; padding-block: 15px; border-right: 0; border-bottom: 1px solid rgba(231,255,0,.35); }
  .platform-logo-track { grid-template-columns: repeat(9, 108px); }
  .bbc-feature { grid-template-columns: 1fr; }
  .bbc-feature-copy > p { margin-bottom: 45px; }
}

@media (max-width: 600px) {
  .announcement { font-size: .68rem; letter-spacing: .08em; gap: 10px; padding-inline: 16px; }
  .announcement a { max-width: 145px; }
  .site-header { height: 78px; }
  .brand { padding-inline: 17px; }
  .brand-mark { width: 32px; }
  .brand-mark i { width: 22px; }
  .brand-name { font-size: .95rem; }
  .primary-nav { top: 120px; }
  .hero-copy { min-height: 610px; padding: 75px 22px 110px; }
  .hero-intro { font-size: 1rem; }
  .hero-visual { min-height: 430px; background-position: 57% center; }
  .hero-meta { left: 18px; right: 18px; bottom: 90px; }
  .signal-strip { height: 70px; padding-inline: 18px; gap: 15px; }
  .signal-strip > span:last-child { display: none; }
  .waveform { gap: 3px; }
  .waveform i { width: 3px; }
  .section { padding: 80px 20px; }
  .section-heading-row { align-items: flex-start; flex-direction: column; }
  .latest-art::before { inset: -8px 8px 8px -8px; }
  .track-number { top: -55px; }
  .soundcloud-embed iframe { height: 150px; }
  .release-grid { grid-template-columns: 1fr; }
  .release-card:last-child { grid-column: auto; width: 100%; }
  .manifesto-portrait { min-height: 520px; padding: 7%; }
  .manifesto-copy { padding: 75px 22px; }
  .manifesto-columns { grid-template-columns: 1fr; gap: 5px; }
  .manifesto-facts { grid-template-columns: 1fr 1fr; }
  .manifesto-facts div { border-bottom: 1px solid var(--line-dark); }
  .live { min-height: auto; grid-template-columns: 1fr; gap: 50px; }
  .live-formats div { padding: 20px 16px; }
  .visual-grid { min-height: 0; }
  .visual-card { min-height: 430px; border-left: 0; border-bottom: 1px solid var(--paper); }
  .merch-grid { grid-template-columns: 1fr; }
  .merch-card:last-child { display: block; }
  .press-items a { grid-template-columns: 35px 1fr 20px; }
  .booking-form { grid-template-columns: 1fr; }
  .field, .field-full { grid-column: 1; }
  .site-footer { gap: 55px; padding-inline: 20px; }
  .footer-social { grid-template-columns: 1fr 1fr; }
  .footer-meta { flex-direction: column; }
  .signup-form { grid-template-columns: 1fr; gap: 10px; }
  .signup-form input { min-height: 56px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

/* Inner-page system */
.sub-hero { min-height: 650px; padding: clamp(88px, 10vw, 155px) clamp(25px, 5vw, 84px); display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .55fr); gap: clamp(45px, 8vw, 130px); align-items: end; position: relative; isolation: isolate; overflow: hidden; border-bottom: 1px solid var(--line); background-position: center; background-size: cover; }
.sub-hero::before { content: ""; position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.99) 0%, rgba(7,7,7,.91) 52%, rgba(7,7,7,.38)); }
.sub-hero::after { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .25; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg, #000, transparent 72%); }
.sub-hero-music, .sub-hero-epk { background-image: url("assets/images/circuit.webp"); }
.sub-hero-bio, .sub-hero-journal { background-image: url("assets/images/graffiti.webp"); }
.sub-hero-live { background-image: url("assets/images/graffiti.webp"); background-position: center 62%; }
.sub-hero-visuals { background-image: url("assets/images/delta-hero.webp"); }
.sub-hero-merch { background-image: url("assets/images/new-eden.webp"); background-position: 70% center; }
.sub-hero h1 { margin: 0; font-size: clamp(4rem, 8.6vw, 9.5rem); }
.sub-hero > p, .sub-hero > div > p:last-child { margin: 0; color: rgba(243,241,232,.72); font-size: 1.08rem; line-height: 1.75; }
.sub-hero > div > .eyebrow { margin-bottom: 28px; }

.archive { padding-top: 70px; }
.archive-controls { display: grid; grid-template-columns: minmax(260px, .7fr) 1.3fr; gap: 30px 55px; align-items: end; margin-bottom: 60px; }
.archive-search { display: grid; gap: 10px; }
.archive-search > span { font-size: .78rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; color: var(--acid); }
.archive-search input { height: 54px; border: 1px solid var(--line); border-radius: 0; background: var(--ink-2); color: var(--paper); padding-inline: 16px; box-shadow: none; font-size: 1rem; }
.archive-search input:focus { border-color: var(--acid); }
.archive-filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.archive-filter { height: 42px; border: 1px solid var(--line) !important; border-radius: 0 !important; background: transparent !important; color: var(--paper) !important; padding-inline: 15px !important; font-size: .72rem !important; font-weight: 900 !important; letter-spacing: .08em; text-transform: uppercase; box-shadow: none !important; }
.archive-filter:hover, .archive-filter[aria-pressed="true"] { background: var(--acid) !important; border-color: var(--acid) !important; color: var(--ink) !important; }
.archive-list { border-top: 1px solid var(--line); }
.archive-row { min-height: 225px; display: grid; grid-template-columns: 50px 155px minmax(0, 1fr) auto; gap: clamp(20px, 3vw, 45px); align-items: center; border-bottom: 1px solid var(--line); padding: 28px 0; }
.archive-number { align-self: start; color: var(--acid); font-family: var(--display); font-size: 1rem; }
.archive-art { width: 155px; aspect-ratio: 1; overflow: hidden; background: #171717; }
.archive-art img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.archive-row:hover .archive-art img { transform: scale(1.045); }
.archive-art-type { display: grid; place-content: center; position: relative; border: 1px solid var(--line); background: linear-gradient(145deg, #171717, #090909); }
.archive-art-type::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(231,255,0,.32); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
.archive-art-type strong { color: var(--paper); font-family: var(--display); font-size: 2.2rem; letter-spacing: -.08em; }
.archive-art-type span { color: var(--acid); font-size: .72rem; font-weight: 900; text-align: center; }
.archive-copy > p { margin: 0 0 10px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.archive-copy h2 { margin: 0; font-size: clamp(2.1rem, 4vw, 4.8rem); line-height: .86; }
.archive-copy h2 a:hover { color: var(--acid); }
.archive-copy > span { display: block; margin-top: 8px; color: var(--paper-2); font: italic 1.1rem var(--serif); }
.archive-copy > small { display: block; max-width: 700px; margin-top: 14px; color: rgba(243,241,232,.62); font-size: .94rem; line-height: 1.55; }
.archive-open { padding-bottom: 7px; border-bottom: 1px solid currentColor; font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.archive-open:hover { color: var(--acid); }
.archive-empty { padding: 80px 0; text-align: center; }
.archive-empty strong { font: 900 2rem var(--display); text-transform: uppercase; }
.archive-empty p { color: rgba(243,241,232,.58); }
.archive-platforms { display: flex; align-items: center; justify-content: flex-end; gap: 24px; padding-top: 40px; }
.archive-platforms p { margin: 0 auto 0 0; color: rgba(243,241,232,.6); }
.archive-platforms a { font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; border-bottom: 1px solid currentColor; }
.archive-platforms a:hover { color: var(--acid); }

.release-detail-hero { min-height: calc(100vh - 170px); display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }
.release-detail-copy { padding: clamp(75px, 9vw, 145px) clamp(25px, 6vw, 100px); display: flex; flex-direction: column; justify-content: center; }
.back-link { width: max-content; margin-bottom: 80px; color: rgba(243,241,232,.62); font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.back-link:hover { color: var(--acid); }
.release-detail-copy h1 { margin: 0 0 20px; font-size: clamp(4rem, 8vw, 9rem); }
.release-detail-copy > p:not(.eyebrow, .release-subtitle) { max-width: 650px; margin: 20px 0 36px; color: rgba(243,241,232,.68); line-height: 1.72; font-size: 1.08rem; }
.release-subtitle { color: var(--acid); font: italic clamp(1.6rem, 3vw, 3rem) var(--serif); }
.release-detail-art { margin: 0; padding: clamp(35px, 6vw, 95px); background: var(--paper); color: var(--ink); display: flex; flex-direction: column; justify-content: center; }
.release-detail-art img { width: 100%; aspect-ratio: 1; object-fit: cover; box-shadow: 20px 20px 0 var(--acid); }
.release-detail-art figcaption { margin-top: 40px; font-size: .75rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.release-story { display: grid; grid-template-columns: 1fr .75fr; gap: clamp(50px, 9vw, 150px); background: var(--paper); color: var(--ink); }
.release-story h2, .release-player h2 { margin: 0; font-size: clamp(3.5rem, 7vw, 7.5rem); line-height: .84; }
.release-story h2 em { color: var(--ink); }
.release-story .eyebrow { color: #56564e; }
.release-story-copy { padding-top: 65px; }
.release-story-copy p { color: rgba(7,7,7,.68); font: 1.35rem/1.65 var(--serif); }
.release-player { background: var(--ink-2); }
.release-player h2 { margin-bottom: 50px; }
.release-player .soundcloud-embed { max-width: 980px; }
.release-player-note { max-width: 650px; color: rgba(243,241,232,.66); font-size: 1.1rem; }

.bio-chapter { padding: clamp(90px, 11vw, 175px) clamp(25px, 5vw, 84px); display: grid; grid-template-columns: 80px 1fr .85fr; gap: clamp(35px, 6vw, 100px); align-items: start; }
.bio-chapter-origin { background: var(--paper); color: var(--ink); }
.bio-number { color: var(--acid); font-family: var(--display); font-size: 1.15rem; }
.bio-chapter-origin .bio-number { color: #626350; }
.bio-chapter .eyebrow { color: inherit; opacity: .55; }
.bio-chapter h2 { margin: 0; font-size: clamp(3.6rem, 7vw, 7.7rem); line-height: .83; }
.bio-chapter-origin h2 em { color: var(--ink); }
.bio-prose { padding-top: 45px; }
.bio-prose p { color: rgba(243,241,232,.68); font-size: 1.08rem; line-height: 1.78; }
.bio-chapter-origin .bio-prose p { color: rgba(7,7,7,.67); }
.bio-image-band { height: min(70vw, 760px); min-height: 520px; position: relative; overflow: hidden; }
.bio-image-band::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.78), rgba(7,7,7,.15)); }
.bio-image-band img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.55); }
.bio-image-band blockquote { position: absolute; z-index: 2; left: clamp(25px, 8vw, 130px); bottom: clamp(45px, 10vw, 145px); width: min(850px, 80%); margin: 0; font: italic clamp(2.7rem, 6vw, 6.7rem)/.95 var(--serif); color: var(--paper); }
.bio-facts { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--acid); color: var(--ink); }
.bio-facts div { min-height: 190px; padding: 35px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(7,7,7,.23); }
.bio-facts div:last-child { border: 0; }
.bio-facts strong { font-family: var(--display); font-size: clamp(2.1rem, 4vw, 4rem); letter-spacing: -.06em; text-transform: uppercase; }
.bio-facts span { margin-top: 8px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.sub-cta, .merch-notify, .journal-follow { padding: clamp(85px, 10vw, 155px) clamp(25px, 5vw, 84px); background: var(--paper); color: var(--ink); display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: end; }
.sub-cta h2, .merch-notify h2, .journal-follow h2 { margin: 0; font-size: clamp(3.7rem, 7vw, 7.6rem); line-height: .83; }
.sub-cta h2 em, .merch-notify h2 em, .journal-follow h2 em { color: var(--ink); }
.sub-cta .eyebrow, .merch-notify .eyebrow, .journal-follow .eyebrow { color: #55564a; }
.sub-cta .button, .merch-notify .button, .journal-follow .button { width: auto; min-width: 230px; }

.live-system { min-height: 780px; display: grid; grid-template-columns: 1fr 1fr; background: var(--paper); color: var(--ink); }
.live-system-image { min-height: 650px; }
.live-system-image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.7); }
.live-system-copy { padding: clamp(75px, 9vw, 145px) clamp(30px, 7vw, 115px); display: flex; flex-direction: column; justify-content: center; }
.live-system-copy .eyebrow { color: #55564a; }
.live-system-copy h2 { margin: 0 0 50px; font-size: clamp(3.4rem, 6.5vw, 7rem); line-height: .83; }
.live-system-copy h2 em { color: var(--ink); }
.live-system-copy > p:not(.eyebrow) { color: rgba(7,7,7,.68); font-size: 1.08rem; line-height: 1.75; }
.format-list article { min-height: 175px; display: grid; grid-template-columns: 65px 1fr 1fr; gap: 35px; align-items: center; border-top: 1px solid var(--line); }
.format-list article:last-child { border-bottom: 1px solid var(--line); }
.format-list article span { color: var(--acid); font-family: var(--display); }
.format-list article h3 { margin: 0; font-size: clamp(1.8rem, 3vw, 3.4rem); line-height: .92; }
.format-list article p { margin: 0; color: rgba(243,241,232,.62); line-height: 1.65; }
.tech-strip { display: grid; grid-template-columns: 1fr 1fr 1fr 1.2fr; background: var(--acid); color: var(--ink); }
.tech-strip > * { min-height: 150px; padding: 28px; border-right: 1px solid rgba(7,7,7,.22); display: flex; flex-direction: column; justify-content: center; }
.tech-strip span { font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.tech-strip strong { margin-top: 8px; font-family: var(--display); font-size: 1.25rem; text-transform: uppercase; }
.tech-strip > a { align-items: center; font-size: .8rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.tech-strip > a:hover { background: var(--ink); color: var(--acid); }

.visual-channel-grid { display: grid; grid-template-columns: 1.25fr 1fr; grid-template-rows: 1fr 1fr; min-height: 1050px; }
.visual-channel { min-height: 520px; position: relative; overflow: hidden; border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); }
.visual-channel-main { grid-row: 1 / 3; }
.visual-channel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,7,7,.05), rgba(7,7,7,.18) 50%, rgba(7,7,7,.94)); }
.visual-channel img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s; }
.visual-channel:hover img { transform: scale(1.045); }
.visual-channel span, .visual-channel h2, .visual-channel i { position: absolute; z-index: 2; left: clamp(25px, 4vw, 65px); right: clamp(25px, 4vw, 65px); }
.visual-channel span { top: clamp(25px, 4vw, 60px); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-channel h2 { bottom: 85px; margin: 0; font-size: clamp(2.2rem, 4.6vw, 5.8rem); line-height: .84; }
.visual-channel i { bottom: 45px; color: var(--acid); font-size: .75rem; font-style: normal; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-manifesto { background: var(--paper); color: var(--ink); }
.visual-manifesto .eyebrow { color: #55564a; }
.visual-manifesto h2 { margin: 0 0 45px; font-size: clamp(4rem, 8vw, 8.5rem); line-height: .82; }
.visual-manifesto h2 em { color: var(--ink); }
.visual-manifesto > p:last-child { max-width: 760px; color: rgba(7,7,7,.66); font-size: 1.2rem; line-height: 1.7; }

.merch-ranges { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.merch-ranges article > div { aspect-ratio: .82; overflow: hidden; background: var(--ink-2); }
.merch-ranges article img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s, filter .4s; }
.merch-ranges article:hover img { transform: scale(1.04); filter: brightness(.76); }
.merch-ranges article > span { display: block; margin: 22px 0 16px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--acid); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.merch-ranges article h2 { margin: 0 0 15px; font-size: clamp(2rem, 3.2vw, 4rem); line-height: .9; }
.merch-ranges article p { color: rgba(243,241,232,.62); line-height: 1.65; }
.merch-ranges article small { color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.merch-notify p:not(.eyebrow) { max-width: 690px; margin: 30px 0 0; color: rgba(7,7,7,.65); line-height: 1.7; }

.epk-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(55px, 10vw, 170px); background: var(--paper); color: var(--ink); }
.epk-grid .eyebrow { color: #55564a; }
.epk-bio h2 { margin: 0 0 38px; font-size: clamp(3.6rem, 7vw, 7.8rem); }
.epk-bio > p:not(.eyebrow) { color: rgba(7,7,7,.68); font: 1.35rem/1.65 var(--serif); }
.epk-bio .text-link { display: inline-block; margin-top: 28px; }
.epk-facts { margin: 0; border-top: 1px solid var(--line-dark); }
.epk-facts div { padding: 23px 0; border-bottom: 1px solid var(--line-dark); }
.epk-facts dt { color: #626158; font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.epk-facts dd { margin: 6px 0 0; font-family: var(--display); font-size: 1.25rem; letter-spacing: -.03em; text-transform: uppercase; }
.epk-links { display: grid; grid-template-columns: repeat(5, 1fr); background: var(--acid); color: var(--ink); }
.epk-links a { min-height: 125px; display: grid; place-items: center; border-right: 1px solid rgba(7,7,7,.22); font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.epk-links a:hover { background: var(--ink); color: var(--acid); }
.epk-requests { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(55px, 9vw, 150px); }
.epk-requests h2 { margin: 0 0 35px; font-size: clamp(3.6rem, 7vw, 7.5rem); line-height: .83; }
.epk-requests > div > p:last-child { max-width: 600px; color: rgba(243,241,232,.63); line-height: 1.7; }
.epk-requests > div:last-child { border-top: 1px solid var(--line); }
.epk-requests a { min-height: 88px; display: grid; grid-template-columns: 45px 1fr 25px; gap: 15px; align-items: center; border-bottom: 1px solid var(--line); }
.epk-requests a:hover { color: var(--acid); padding-left: 8px; }
.epk-requests a span, .epk-requests a i { color: var(--acid); font-size: .75rem; font-style: normal; font-weight: 900; }
.epk-requests a strong { font-family: var(--display); font-size: clamp(1.2rem, 2vw, 2rem); text-transform: uppercase; }

.journal-archive { display: grid; grid-template-columns: 1fr 1fr; padding-bottom: 0; }
.journal-archive article { min-height: 465px; padding: clamp(35px, 5vw, 75px); display: flex; flex-direction: column; border-top: 1px solid var(--line); border-right: 1px solid var(--line); }
.journal-archive article:nth-child(even) { border-right: 0; }
.journal-archive article > span { color: var(--acid); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.journal-archive article > strong { margin: 30px 0 auto; color: rgba(243,241,232,.08); font-family: var(--display); font-size: 6rem; line-height: .8; }
.journal-archive article h2 { margin: 40px 0 22px; font-size: clamp(2rem, 3.6vw, 4.2rem); line-height: .9; }
.journal-archive article p { max-width: 600px; color: rgba(243,241,232,.62); line-height: 1.65; }
.journal-archive article small { margin-top: 20px; color: rgba(243,241,232,.45); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

.booking-page { min-height: calc(100vh - 170px); }
.booking-page .booking-copy, .booking-form-page { padding-top: clamp(85px, 8vw, 130px); padding-bottom: clamp(85px, 8vw, 130px); }
.booking-page h1 { margin: 0; font-size: clamp(3.5rem, 6.7vw, 7.2rem); line-height: .82; }
.booking-page h1 em { color: var(--ink); }
.booking-direct { margin-top: 60px; padding-top: 22px; border-top: 1px solid rgba(7,7,7,.3); display: flex; justify-content: space-between; gap: 20px; }
.booking-direct span, .booking-direct a { font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.booking-direct a:hover { text-decoration: underline; text-underline-offset: 5px; }

@media (max-width: 1000px) {
  .archive-row { grid-template-columns: 40px 125px 1fr; }
  .archive-art { width: 125px; }
  .archive-open { grid-column: 3; width: max-content; }
  .release-detail-hero { grid-template-columns: 1fr; }
  .release-detail-art { min-height: 700px; }
  .bio-chapter { grid-template-columns: 55px 1fr; }
  .bio-prose { grid-column: 2; }
  .live-system { grid-template-columns: .8fr 1.2fr; }
  .visual-channel-grid { min-height: 900px; }
  .tech-strip { grid-template-columns: 1fr 1fr; }
  .tech-strip > * { border-bottom: 1px solid rgba(7,7,7,.22); }
  .epk-grid, .epk-requests { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .sub-hero { min-height: 610px; grid-template-columns: 1fr; align-content: end; gap: 35px; }
  .sub-hero::before { background: linear-gradient(180deg, rgba(7,7,7,.48), rgba(7,7,7,.97) 76%); }
  .archive-controls { grid-template-columns: 1fr; }
  .archive-filters { justify-content: flex-start; }
  .archive-row { grid-template-columns: 32px 96px 1fr; gap: 16px; }
  .archive-art { width: 96px; }
  .archive-copy h2 { font-size: 2rem; }
  .archive-copy > small { display: none; }
  .archive-platforms { align-items: flex-start; flex-wrap: wrap; }
  .archive-platforms p { width: 100%; }
  .release-detail-art { min-height: auto; }
  .release-story { grid-template-columns: 1fr; }
  .release-story-copy { padding-top: 0; }
  .bio-chapter { grid-template-columns: 1fr; }
  .bio-prose { grid-column: auto; padding-top: 0; }
  .bio-image-band { min-height: 480px; }
  .bio-facts { grid-template-columns: 1fr 1fr; }
  .bio-facts div { min-height: 145px; border-bottom: 1px solid rgba(7,7,7,.23); }
  .sub-cta, .merch-notify, .journal-follow { grid-template-columns: 1fr; }
  .live-system { grid-template-columns: 1fr; }
  .live-system-image { min-height: 500px; }
  .format-list article { grid-template-columns: 40px 1fr; padding: 28px 0; }
  .format-list article p { grid-column: 2; }
  .visual-channel-grid { grid-template-columns: 1fr; grid-template-rows: none; min-height: auto; }
  .visual-channel, .visual-channel-main { grid-row: auto; min-height: 520px; border-left: 0; }
  .merch-ranges { grid-template-columns: 1fr; }
  .epk-links { grid-template-columns: 1fr 1fr; }
  .epk-links a { min-height: 95px; border-bottom: 1px solid rgba(7,7,7,.22); }
  .journal-archive { grid-template-columns: 1fr; }
  .journal-archive article { border-right: 0; min-height: 420px; }
  .booking-page { grid-template-columns: 1fr; }
}

@media (max-width: 500px) {
  .sub-hero { min-height: 550px; padding: 72px 20px; }
  .sub-hero h1 { font-size: clamp(3.25rem, 16vw, 5rem); }
  .archive-row { grid-template-columns: 28px 75px 1fr; }
  .archive-art { width: 75px; }
  .archive-copy h2 { font-size: 1.55rem; }
  .archive-copy > p { font-size: .66rem; }
  .archive-open { grid-column: 2 / -1; }
  .release-detail-copy { padding-inline: 20px; }
  .back-link { margin-bottom: 55px; }
  .release-detail-art { padding: 35px 20px 55px; }
  .release-detail-art img { box-shadow: 10px 10px 0 var(--acid); }
  .bio-chapter { padding-inline: 20px; }
  .bio-image-band blockquote { width: calc(100% - 40px); left: 20px; }
  .tech-strip { grid-template-columns: 1fr; }
  .tech-strip > * { min-height: 120px; }
  .epk-links { grid-template-columns: 1fr; }
  .epk-requests a { grid-template-columns: 32px 1fr 20px; }
  .booking-direct { flex-direction: column; }
}


/* Homepage professional refresh — September 2026 */
.listening-intro { color: rgba(243,241,232,.62); }
.track-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: clamp(70px,8vw,120px); border: 1px solid var(--line); background: var(--line); }
.track-card { min-width: 0; padding: clamp(22px,3vw,38px); background: #0b0b0b; }
.track-card-meta { min-height: 86px; display: grid; grid-template-columns: 34px 1fr; gap: 14px; align-items: start; }
.track-card-meta span { padding-top: 4px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .12em; }
.track-card-meta h3 { margin: 0; font-size: clamp(1.35rem,2vw,2rem); line-height: .95; letter-spacing: -.045em; text-transform: uppercase; }
.soundcloud-compact { margin: 18px 0 0; }
.soundcloud-compact iframe { height: 132px; }
.spotify-callout { min-height: 150px; padding: 30px clamp(25px,5vw,84px); display: flex; align-items: center; justify-content: space-between; gap: 32px; background: #1ed760; color: #050505; border-bottom: 1px solid rgba(0,0,0,.18); }
.spotify-callout > div { display: flex; align-items: center; gap: 24px; }
.spotify-icon { width: 54px; height: 54px; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50%; font-size: 2.2rem; line-height: 1; }
.spotify-callout p { margin: 0; display: flex; flex-direction: column; gap: 3px; }
.spotify-callout small { font-size: .72rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.spotify-callout strong { font-family: var(--display); font-size: clamp(1.45rem,2.6vw,2.8rem); letter-spacing: -.045em; text-transform: uppercase; }
.button-spotify { border-color: #050505; background: #050505; color: #fff; white-space: nowrap; }
.button-spotify:hover { background: #fff; color: #050505; }
.credibility-grid { min-height: 580px; display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line-dark); }
.credibility-panel { min-width: 0; padding: clamp(70px,8vw,130px) clamp(28px,6vw,100px); display: flex; flex-direction: column; justify-content: center; }
.credibility-panel > p { margin: 0 0 clamp(50px,7vw,90px); font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.credibility-panel > span { margin-bottom: 22px; font-size: .9rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.credibility-panel h2 { margin: 0; font-size: clamp(3rem,5.4vw,6.3rem); line-height: .84; letter-spacing: -.065em; text-transform: uppercase; }
.credibility-panel h2 em { font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; }
.credibility-bbc { background: var(--paper); color: var(--ink); }
.credibility-bbc h2 em { color: var(--ink); }
.credibility-adhd { background: var(--acid); color: var(--ink); border-left: 1px solid var(--line-dark); }
.credibility-adhd h2 em { color: var(--ink); }
.credibility-adhd small { margin-top: 40px; max-width: 520px; font-size: .9rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.manifesto { border-top: 1px solid var(--line-dark); }
.manifesto-portrait::before { opacity: .28; }
.portrait-crop { filter: none; }
.portrait-crop img { position: static; width: 100%; max-width: 100%; height: 100%; object-fit: cover; object-position: center 36%; filter: contrast(1.05) saturate(.78); }
.visual-grid { grid-template-columns: repeat(3,1fr); border: 1px solid var(--line-dark); }
.visual-card img { object-position: center; filter: saturate(.78) contrast(1.05); }
.visual-card-wide img { object-position: 57% center; }
@media (max-width:1120px) {
  .visual-grid { grid-template-columns: repeat(3,1fr); }
  .visual-card-wide { grid-column: auto; min-height: 500px; }
}
@media (max-width:860px) {
  .track-grid { grid-template-columns: 1fr; }
  .track-card-meta { min-height: auto; }
  .visual-grid { grid-template-columns: 1fr; }
  .visual-card-wide { grid-column: auto; }
  .credibility-grid { grid-template-columns: 1fr; }
  .credibility-panel { min-height: 480px; }
  .credibility-adhd { border-left: 0; border-top: 1px solid var(--line-dark); }
}
@media (max-width:600px) {
  .soundcloud-compact iframe { height: 132px; }
  .spotify-callout { padding-block: 34px; align-items: flex-start; flex-direction: column; }
  .spotify-callout > div { align-items: flex-start; }
  .spotify-icon { width: 44px; height: 44px; flex: 0 0 auto; font-size: 1.8rem; }
}


/* Readability refinement — listening room intro */
.listening .section-heading > p:not(.eyebrow) { color: rgba(247,245,240,.72); }

.latest .listening-intro { color: rgba(247,245,240,.72); }
/*
Theme Name: Delta Octagon
Theme URI: https://deltaoctagon.com
Author: Delta Octagon
Description: Bespoke artist theme for Delta Octagon — music, biography, live bookings, visuals, merchandise, EPK and journal.
Version: 1.0.1
Text Domain: delta-octagon
*/

:root {
  --ink: #070707;
  --ink-2: #101010;
  --paper: #f3f1e8;
  --paper-2: #d8d5ca;
  --acid: #e7ff00;
  --line: rgba(243, 241, 232, 0.18);
  --line-dark: rgba(7, 7, 7, 0.18);
  --display: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  --ui: Inter, "Helvetica Neue", Arial, sans-serif;
  --serif: Georgia, "Times New Roman", serif;
  --background: #070707;
  --foreground: #f3f1e8;
  --card: #101010;
  --card-foreground: #f3f1e8;
  --popover: #101010;
  --popover-foreground: #f3f1e8;
  --primary: #e7ff00;
  --primary-foreground: #070707;
  --secondary: #1b1b1b;
  --secondary-foreground: #f3f1e8;
  --muted: #1b1b1b;
  --muted-foreground: #aaa89f;
  --accent: #e7ff00;
  --accent-foreground: #070707;
  --destructive: #ff5c62;
  --border: rgba(243, 241, 232, 0.18);
  --input: rgba(243, 241, 232, 0.22);
  --ring: #e7ff00;
  --radius: 0;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-card: var(--card);
  --color-card-foreground: var(--card-foreground);
  --color-popover: var(--popover);
  --color-popover-foreground: var(--popover-foreground);
  --color-primary: var(--primary);
  --color-primary-foreground: var(--primary-foreground);
  --color-secondary: var(--secondary);
  --color-secondary-foreground: var(--secondary-foreground);
  --color-muted: var(--muted);
  --color-muted-foreground: var(--muted-foreground);
  --color-accent: var(--accent);
  --color-accent-foreground: var(--accent-foreground);
  --color-destructive: var(--destructive);
  --color-border: var(--border);
  --color-input: var(--input);
  --color-ring: var(--ring);
  --font-sans: var(--ui);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ink); color: var(--paper); font: 16px/1.5 var(--ui); overflow-x: hidden; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--acid); color: var(--ink); }
.skip-link { position: fixed; z-index: 1000; top: 8px; left: 8px; padding: 12px 18px; background: var(--acid); color: var(--ink); transform: translateY(-160%); transition: transform .2s ease; font-weight: 900; }
.skip-link:focus { transform: translateY(0); }
.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; }

.announcement { min-height: 46px; background: var(--acid); color: var(--ink); display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 20px; padding: 0 clamp(22px, 3vw, 48px); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.announcement-centre { text-align: center; }
.announcement a { text-align: right; }
.announcement a:hover { text-decoration: underline; text-underline-offset: 4px; }

.site-header { height: 124px; display: grid; grid-template-columns: 220px minmax(0, 1fr) 270px; border-bottom: 1px solid var(--line); position: relative; z-index: 50; background: rgba(7,7,7,.96); }
.brand { display: flex; align-items: center; gap: 14px; padding: 0 clamp(22px, 3vw, 48px); border-right: 1px solid var(--line); }
.brand-name { font-family: var(--display); font-size: 1.1rem; line-height: .84; letter-spacing: -.06em; text-transform: uppercase; }
.brand-mark { width: 38px; aspect-ratio: 1; position: relative; background: var(--paper); display: grid; place-items: center; clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); flex: 0 0 auto; }
.brand-mark i { width: 26px; aspect-ratio: 1; background: var(--ink); clip-path: inherit; }
.primary-nav { display: flex; justify-content: center; align-items: stretch; }
.primary-nav > a, .nav-more > button { display: flex; align-items: center; justify-content: center; padding: 0 clamp(12px, 1.55vw, 25px); border: 0; background: transparent; color: var(--paper); font-size: .78rem; font-weight: 900; letter-spacing: .08em; cursor: pointer; white-space: nowrap; text-transform: uppercase; }
.primary-nav > a:hover, .nav-more > button:hover { color: var(--acid); }
.nav-more { position: relative; display: flex; }
.nav-more button span { color: var(--acid); margin-left: 8px; font-size: 1.25rem; transition: transform .2s; }
.nav-more button[aria-expanded="true"] span { transform: rotate(45deg); }
.nav-more-panel { display: none; position: absolute; top: 92px; left: 0; width: 250px; background: var(--acid); color: var(--ink); padding: 14px; box-shadow: 0 22px 60px rgba(0,0,0,.4); }
.nav-more-panel.is-open { display: grid; }
.nav-more-panel a { padding: 14px 10px; border-bottom: 1px solid rgba(0,0,0,.2); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.nav-more-panel a:last-child { border-bottom: 0; }
.nav-more-panel a:hover { padding-left: 16px; }
.header-actions { display: grid; grid-template-columns: 1fr 1.3fr; border-left: 1px solid var(--line); }
.header-actions > a { display: flex; justify-content: center; align-items: center; font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.header-actions > a:hover { color: var(--acid); }
.header-book { border-left: 1px solid var(--line); font-size: .88rem !important; }
.header-book span { color: var(--acid); margin-left: 20px; }
.menu-toggle { display: none; }

.hero { min-height: calc(100vh - 170px); display: grid; grid-template-columns: 48% 52%; position: relative; border-bottom: 1px solid var(--line); }
.hero-copy { padding: clamp(72px, 8vw, 135px) clamp(28px, 4vw, 70px) 120px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--line); position: relative; z-index: 2; }
.eyebrow { margin: 0 0 28px; font-size: .78rem; font-weight: 900; letter-spacing: .14em; color: var(--acid); text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); letter-spacing: -.065em; text-transform: uppercase; }
h1 { font-size: clamp(3.5rem, 6.6vw, 7.5rem); line-height: .82; margin-bottom: 38px; }
h1 em, h2 em, .signup-dialog em { display: inline-block; color: var(--acid); font-family: var(--serif); font-style: italic; font-weight: 400; letter-spacing: -.07em; text-transform: none; }
.hero-intro { max-width: 650px; color: rgba(243,241,232,.7); line-height: 1.7; font-size: clamp(1rem, 1.15vw, 1.15rem); margin-bottom: 35px; }
.button-row { display: flex; flex-wrap: wrap; gap: 14px; }
.button { min-height: 56px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.button:hover { transform: translateY(-2px); }
.button-acid { color: var(--ink); background: var(--acid); border-color: var(--acid); }
.button-acid:hover { background: var(--paper); border-color: var(--paper); }
.button-ghost { color: var(--paper); background: transparent; }
.button-ghost:hover { color: var(--ink); background: var(--paper); }
.button-light { color: var(--ink); background: var(--paper); border-color: var(--paper); }
.button-light:hover { background: var(--acid); border-color: var(--acid); }
.button-dark { color: var(--paper); background: var(--ink); border-color: var(--ink); width: 100%; }
.button-dark:hover { color: var(--ink); background: var(--paper); border-color: var(--paper); }

.hero-visual { background-image: linear-gradient(90deg, rgba(7,7,7,.34), transparent 55%), url("assets/images/delta-portrait.jpg"); background-size: cover; background-position: center 42%; min-height: 620px; position: relative; overflow: hidden; }
.hero-visual::before { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.03), rgba(0,0,0,.08) 55%, rgba(0,0,0,.84)); }
.hero-visual::after { content:""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(transparent, #000 30%, #000); }
.hero-scan { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, transparent 0 47%, rgba(231,255,0,.18) 50%, transparent 53%); background-size: 100% 180px; animation: scan 8s linear infinite; opacity: .5; }
@keyframes scan { to { background-position: 0 720px; } }
.hero-meta { position: absolute; z-index: 3; left: 34px; right: 34px; bottom: 45px; display: flex; justify-content: space-between; font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.signal-strip { position: absolute; z-index: 6; bottom: 0; left: 0; right: 0; height: 72px; display: flex; align-items: center; gap: 35px; padding: 0 clamp(28px, 4vw, 70px); background: rgba(7,7,7,.94); border-top: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.waveform { height: 38px; display: flex; align-items: center; gap: 5px; flex: 1; max-width: 420px; }
.waveform i { width: 5px; background: var(--acid); animation: pulse 1.6s ease-in-out infinite alternate; }
@keyframes pulse { 50% { height: 20%; } }
.signal-strip > span:last-child { margin-left: auto; }

.genre-ticker { height: 66px; background: var(--acid); color: var(--ink); display: flex; align-items: center; overflow: hidden; }
.genre-ticker > div { min-width: max-content; display: flex; align-items: center; animation: ticker 32s linear infinite; }
.ticker-pair { display: flex; align-items: center; }
.ticker-pair b { padding: 0 26px; font-family: var(--display); font-size: 1rem; letter-spacing: -.03em; text-transform: uppercase; }
.ticker-pair i { width: 10px; height: 10px; background: var(--ink); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
@keyframes ticker { to { transform: translateX(-50%); } }

.section { padding: clamp(88px, 10vw, 165px) clamp(25px, 5vw, 84px); }
.section-lined { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.section-heading { margin-bottom: clamp(50px, 7vw, 100px); }
.section-heading h2, .manifesto h2, .live h2, .booking h2 { font-size: clamp(3.6rem, 8vw, 8.8rem); line-height: .82; margin: 0; }
.section-heading-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 45px; }
.text-link { padding-bottom: 8px; border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 900; letter-spacing: .09em; white-space: nowrap; text-transform: uppercase; }
.text-link:hover { color: var(--acid); }

.latest { background: var(--ink-2); }
.latest-grid { display: grid; grid-template-columns: minmax(320px, 44%) 1fr; gap: clamp(50px, 8vw, 140px); align-items: center; }
.latest-art { margin: 0; position: relative; }
.latest-art::before { content:""; position: absolute; inset: -14px 14px 14px -14px; border: 1px solid var(--acid); }
.latest-art img { position: relative; z-index: 1; width: 100%; aspect-ratio: 1; object-fit: cover; }
.latest-art figcaption { margin-top: 16px; font-size: .75rem; font-weight: 900; letter-spacing: .12em; color: var(--acid); text-transform: uppercase; }
.latest-content { position: relative; }
.track-number { position: absolute; right: 0; top: -80px; font-family: var(--display); font-size: clamp(6rem, 12vw, 12.5rem); color: rgba(243,241,232,.05); line-height: 1; }
.latest-label { font-size: .78rem; font-weight: 900; letter-spacing: .14em; color: var(--acid); text-transform: uppercase; }
.latest-content h3 { font-size: clamp(3.2rem, 7vw, 7.3rem); line-height: .82; margin: 24px 0 30px; }
.latest-content > p:not(.latest-label) { max-width: 640px; color: rgba(243,241,232,.7); font-size: 1.08rem; line-height: 1.7; }
.soundcloud-embed { margin: 35px 0 25px; border: 1px solid var(--line); background: #171717; }
.soundcloud-embed iframe { display: block; width: 100%; height: 166px; border: 0; filter: grayscale(1) contrast(1.08); }
.platform-links { display: flex; flex-wrap: wrap; gap: 24px; }
.platform-links a { border-bottom: 1px solid var(--line); padding-bottom: 7px; font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.platform-links a:hover { color: var(--acid); }

.platform-logo-strip { --neon-social: #e7ff00; display: grid; grid-template-columns: 180px minmax(0, 1fr); align-items: stretch; min-height: 138px; border-top: 1px solid rgba(231,255,0,.35); border-bottom: 1px solid rgba(231,255,0,.35); background: #050505; }
.platform-logo-strip > p { margin: 0; padding: 30px clamp(22px, 3vw, 48px); display: flex; align-items: center; border-right: 1px solid rgba(231,255,0,.35); color: var(--neon-social); font-size: .75rem; font-weight: 900; letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; }
.platform-logo-track { min-width: 0; display: grid; grid-template-columns: repeat(8, minmax(92px, 1fr)); overflow-x: auto; scrollbar-color: var(--neon-social) #111; }
.platform-logo-track a { min-width: 92px; padding: 23px 10px 19px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; border-right: 1px solid rgba(231,255,0,.18); color: var(--neon-social); transition: color .2s, background .2s, box-shadow .2s; }
.platform-logo-track a:last-child { border-right: 0; }
.platform-logo-track img { width: 34px; height: 34px; object-fit: contain; transition: transform .2s, filter .2s; }
.platform-logo-track span { font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-align: center; text-transform: uppercase; white-space: nowrap; }
.platform-logo-track a:hover, .platform-logo-track a:focus-visible { color: var(--ink); background: var(--neon-social); box-shadow: 0 0 30px rgba(231,255,0,.24); outline: 0; }
.platform-logo-track a:hover img, .platform-logo-track a:focus-visible img { filter: brightness(0); transform: translateY(-2px) scale(1.08); }

.release-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 3vw, 48px); }
.release-image { display: block; position: relative; overflow: hidden; background: var(--ink-2); }
.release-image img { width: 100%; aspect-ratio: 1; object-fit: cover; transition: transform .65s cubic-bezier(.2,.8,.2,1), filter .4s; }
.release-card:hover img { transform: scale(1.045); filter: brightness(.72); }
.play-disc { position: absolute; right: 20px; bottom: 20px; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; background: var(--acid); color: var(--ink); opacity: 0; transform: translateY(10px); transition: opacity .25s, transform .25s; font-size: .9rem; padding-left: 3px; }
.release-card:hover .play-disc { opacity: 1; transform: translateY(0); }
.release-meta { display: flex; justify-content: space-between; margin: 18px 0 22px; padding-bottom: 14px; border-bottom: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: rgba(243,241,232,.6); text-transform: uppercase; }
.release-card h3 { font-size: clamp(1.8rem, 2.6vw, 3rem); line-height: .92; margin: 0 0 12px; }
.release-card > p { font-size: .75rem; font-weight: 900; letter-spacing: .12em; color: var(--acid); text-transform: uppercase; }
.release-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; text-align: center; font-family: var(--display); font-size: clamp(2rem, 4vw, 4.2rem); line-height: .82; letter-spacing: -.08em; color: var(--paper); text-shadow: 0 3px 20px #000; text-transform: uppercase; }
.release-overlay small { font: 900 .75rem var(--ui); letter-spacing: .18em; margin-bottom: 12px; }
.release-overlay em { color: var(--acid); font: 900 .75rem var(--ui); letter-spacing: .11em; margin-top: 16px; }

.bbc-feature { min-height: 560px; display: grid; grid-template-columns: .9fr 1.1fr; background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--line-dark); }
.bbc-feature-copy { padding: clamp(70px, 8vw, 130px) clamp(28px, 6vw, 100px); display: flex; flex-direction: column; justify-content: center; }
.bbc-feature-copy > p { margin: 0 0 70px; color: #65645b; font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.bbc-feature-copy > span { margin-bottom: 22px; font-size: .9rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.bbc-feature-copy h2 { margin: 0; font-size: clamp(3.1rem, 6vw, 6.8rem); line-height: .84; }
.bbc-feature-copy h2 em { color: var(--ink); font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; }
.bbc-feature-art { min-width: 0; margin: 0; padding: clamp(32px, 5vw, 76px); background: var(--ink); display: flex; flex-direction: column; justify-content: center; }
.bbc-feature-art img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid rgba(243,241,232,.18); }
.bbc-feature-art figcaption { margin-top: 22px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }

.manifesto { display: grid; grid-template-columns: 42% 58%; background: var(--paper); color: var(--ink); position: relative; }
.manifesto-portrait { min-height: 850px; background: #0a0a0a; position: relative; display: grid; place-items: center; padding: 10%; overflow: hidden; }
.manifesto-portrait::before { content:""; position: absolute; inset: 0; background: url("assets/images/circuit.webp") center/cover; opacity: .5; filter: grayscale(1); }
.portrait-crop { width: min(520px, 90%); aspect-ratio: 1; overflow: hidden; position: relative; clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); z-index: 2; background: #111; filter: grayscale(1) contrast(1.1); }
.portrait-crop::after { content:""; position: absolute; inset: 0; box-shadow: inset 0 0 0 10px var(--acid); clip-path: inherit; }
.portrait-crop img { position: absolute; width: 766%; max-width: none; left: -36%; top: -40%; }
.portrait-caption { position: absolute; z-index: 3; left: 8%; right: 8%; bottom: 36px; display: flex; justify-content: space-between; color: var(--paper); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.manifesto-copy { padding: clamp(80px, 9vw, 155px) clamp(35px, 7vw, 120px) 210px; }
.manifesto .eyebrow { color: #4d4d45; }
.manifesto h2 { font-size: clamp(3.4rem, 7vw, 7.4rem); }
.manifesto h2 em { color: var(--ink); }
.manifesto .lead { max-width: 820px; margin: 55px 0 34px; font-family: var(--serif); font-size: clamp(1.55rem, 2.3vw, 2.5rem); line-height: 1.23; }
.manifesto-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; margin-bottom: 42px; }
.manifesto-columns p { color: rgba(7,7,7,.68); line-height: 1.75; }
.manifesto-facts { position: absolute; left: 42%; right: 0; bottom: 0; min-height: 140px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line-dark); }
.manifesto-facts div { display: flex; flex-direction: column; justify-content: center; padding: 25px; border-right: 1px solid var(--line-dark); }
.manifesto-facts div:last-child { border-right: 0; }
.manifesto-facts strong { font-family: var(--display); font-size: 2.25rem; }
.manifesto-facts span { margin-top: 6px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

.live { min-height: 850px; position: relative; overflow: hidden; display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 80px; }
.live::after { content:""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.98) 0%, rgba(7,7,7,.74) 48%, rgba(7,7,7,.4)); z-index: 0; }
.live-backdrop { position: absolute; inset: 0; background: url("assets/images/graffiti.webp") center/cover; filter: grayscale(.8); transform: scale(1.03); }
.live-content, .live-formats { position: relative; z-index: 2; }
.live-content h2 { font-size: clamp(3.8rem, 7.2vw, 7.9rem); }
.live-content > p:not(.eyebrow) { max-width: 660px; color: rgba(243,241,232,.72); line-height: 1.75; font-size: 1.08rem; margin: 40px 0; }
.live-formats { background: rgba(7,7,7,.82); border: 1px solid var(--line); backdrop-filter: blur(16px); }
.live-formats div { display: grid; grid-template-columns: 42px 1fr; gap: 8px 15px; padding: 26px; border-bottom: 1px solid var(--line); }
.live-formats div:last-child { border-bottom: 0; }
.live-formats span { color: var(--acid); font-family: var(--display); grid-row: span 2; }
.live-formats strong { font-family: var(--display); font-size: 1.2rem; text-transform: uppercase; }
.live-formats small { color: rgba(243,241,232,.6); font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }

.section-light { background: var(--paper); color: var(--ink); }
.section-light .eyebrow { color: #4e4d46; }
.section-light h2 em { color: var(--ink); }
.section-intro { max-width: 470px; color: rgba(7,7,7,.65); line-height: 1.6; font: 1.4rem var(--serif); }
.visual-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; min-height: 560px; }
.visual-card { position: relative; overflow: hidden; min-height: 500px; border-left: 1px solid rgba(243,241,232,.24); color: var(--paper); }
.visual-card:first-child { border-left: 0; }
.visual-card::after { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,7,7,.08), rgba(7,7,7,.2) 45%, rgba(7,7,7,.95)); }
.visual-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s; }
.visual-card:hover img { transform: scale(1.04); }
.visual-index, .visual-card strong, .visual-card i { position: absolute; z-index: 2; left: 28px; right: 28px; }
.visual-index { top: 28px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-card strong { bottom: 65px; font-family: var(--display); font-size: clamp(1.6rem, 2.5vw, 2.75rem); line-height: .9; letter-spacing: -.06em; text-transform: uppercase; }
.visual-card i { bottom: 28px; font-style: normal; font-size: .75rem; font-weight: 900; letter-spacing: .09em; color: var(--acid); text-transform: uppercase; }

.merch { background: #0b0b0b; }
.merch-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.merch-card { margin: 0; }
.merch-visual { aspect-ratio: .86; background: #181818; overflow: hidden; position: relative; }
.merch-visual::after { content:""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.65)); }
.merch-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s, filter .5s; }
.merch-card:hover img { transform: scale(1.04); filter: brightness(.78); }
.merch-visual-neon strong { position: absolute; z-index: 2; left: 28px; bottom: 26px; color: var(--paper); font-family: var(--display); font-size: clamp(2.4rem, 4vw, 5rem); line-height: .76; letter-spacing: -.08em; text-transform: uppercase; }
.merch-card p { display: flex; justify-content: space-between; gap: 16px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.merch-card small { color: var(--acid); font-size: inherit; }
.notify-link { margin-top: 45px; padding: 0 0 8px; color: var(--paper); background: none; border: 0; border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 900; letter-spacing: .08em; cursor: pointer; text-transform: uppercase; }
.notify-link:hover { color: var(--acid); }

.press { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 10vw, 180px); align-items: center; position: relative; }
.press-heading { position: relative; }
.press-heading h2 { font-size: clamp(3.6rem, 7vw, 7.5rem); line-height: .82; }
.press-heading h2 em { color: var(--acid); }
.octagon-outline { position: absolute; right: 5%; top: -10%; width: min(20vw,260px); aspect-ratio: 1; border: 1px solid rgba(231,255,0,.35); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
.press-items { border-top: 1px solid var(--line); }
.press-items a { display: grid; grid-template-columns: 50px 1fr 30px; gap: 15px; align-items: center; min-height: 86px; border-bottom: 1px solid var(--line); transition: color .2s, padding .2s; }
.press-items a:hover { color: var(--acid); padding-left: 10px; }
.press-items span, .press-items i { color: var(--acid); font-size: .78rem; font-weight: 900; font-style: normal; }
.press-items strong { font-family: var(--display); font-size: clamp(1.2rem, 2vw, 1.9rem); letter-spacing: -.04em; text-transform: uppercase; }

.journal { background: var(--paper); color: var(--ink); }
.journal .eyebrow { color: #57564f; }
.journal h2 em { color: var(--ink); }
.journal-status { padding: 10px 15px; border: 1px solid var(--line-dark); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.journal-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }
.journal-card { padding: clamp(30px, 4vw, 60px); border-right: 1px solid var(--line-dark); min-height: 360px; display: flex; flex-direction: column; }
.journal-card:last-child { border-right: 0; }
.journal-card > span { font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: #616056; text-transform: uppercase; }
.journal-card h3 { font-size: clamp(1.55rem, 2.4vw, 2.6rem); line-height: .98; margin: 45px 0; }
.journal-card a, .journal-card button { margin-top: auto; width: max-content; color: var(--ink); background: none; border: 0; padding: 0; font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; }
.journal-card a:hover, .journal-card button:hover { text-decoration: underline; text-underline-offset: 6px; }

.booking { display: grid; grid-template-columns: 1fr 1fr; background: var(--acid); color: var(--ink); }
.booking-copy { padding: clamp(80px, 9vw, 150px) clamp(28px, 6vw, 100px); border-right: 1px solid rgba(7,7,7,.2); }
.booking .eyebrow { color: #363900; }
.booking h2 { font-size: clamp(3.4rem, 6.6vw, 7rem); }
.booking h2 em { color: var(--ink); }
.booking-copy > p:last-child { max-width: 620px; margin: 40px 0 0; line-height: 1.7; }
.booking-form { padding: clamp(80px, 9vw, 150px) clamp(28px, 6vw, 100px); display: grid; grid-template-columns: 1fr 1fr; gap: 28px 22px; align-content: center; }
.field { display: flex; flex-direction: column; gap: 10px; }
.field-full { grid-column: 1 / -1; }
.field label { font-size: .78rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.field input, .field textarea, .booking-select { width: 100%; height: auto; color: var(--ink); background: transparent !important; border: 0; border-bottom: 1px solid rgba(7,7,7,.45); border-radius: 0; padding: 12px 0; outline: 0; font-size: 1rem; font-weight: 800; box-shadow: none; }
.field textarea { resize: vertical; min-height: 100px; }
.field [data-slot="native-select-wrapper"] { width: 100%; }
.field input:focus, .field textarea:focus, .booking-select:focus { border-bottom-color: var(--ink); box-shadow: 0 2px 0 var(--ink); }
.field input::placeholder, .field textarea::placeholder { color: rgba(7,7,7,.55); }
.form-note { margin: -10px 0 0; font-size: .78rem; line-height: 1.5; }

.site-footer { padding: 75px clamp(25px, 5vw, 84px) 38px; display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; border-top: 1px solid var(--line); }
.footer-brand { display: flex; gap: 18px; align-items: center; }
.footer-brand strong { font-family: var(--display); font-size: clamp(2.4rem, 4vw, 4rem); line-height: .78; letter-spacing: -.07em; text-transform: uppercase; }
.footer-brand .brand-mark { width: 60px; background: var(--acid); }
.footer-brand .brand-mark i { width: 42px; }
.footer-social { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.footer-social a { padding: 18px 10px 18px 0; border-bottom: 1px solid var(--line); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.footer-social a:hover { color: var(--acid); }
.footer-meta { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 25px; padding-top: 25px; border-top: 1px solid var(--line); font-size: .75rem; font-weight: 900; letter-spacing: .1em; color: rgba(243,241,232,.55); text-transform: uppercase; }
.footer-meta a:hover { color: var(--acid); }

.signup-dialog { width: min(680px, calc(100% - 30px)) !important; max-width: 680px !important; padding: clamp(35px, 6vw, 70px) !important; border: 1px solid var(--acid) !important; border-radius: 0 !important; background: var(--ink) !important; color: var(--paper) !important; box-shadow: 0 30px 100px rgba(0,0,0,.75) !important; }
.signup-dialog [data-slot="dialog-title"] { color: var(--paper); font: 900 clamp(2.6rem, 6vw, 4.5rem)/.85 var(--display); letter-spacing: -.065em; text-transform: uppercase; }
.signup-dialog [data-slot="dialog-description"] { color: rgba(243,241,232,.68); font-size: 1rem; line-height: 1.6; margin-top: 18px; }
.signup-form { display: grid; grid-template-columns: 1fr auto; margin: 30px 0 15px; }
.signup-form input { min-width: 0; border: 1px solid var(--line); background: #111; color: var(--paper); padding: 0 18px; outline: 0; }
.signup-form input:focus { border-color: var(--acid); }
.signup-dialog > small { color: rgba(243,241,232,.55); font-size: .78rem; }

@media (max-width: 1120px) {
  .site-header { grid-template-columns: 190px 1fr 200px; }
  .primary-nav > a, .nav-more > button { padding-inline: 10px; }
  .hero { grid-template-columns: 53% 47%; }
  .manifesto { grid-template-columns: 38% 62%; }
  .manifesto-facts { left: 38%; }
  .live { grid-template-columns: 1fr; }
  .live-formats { max-width: 680px; }
  .visual-grid { grid-template-columns: 1fr 1fr; }
  .visual-card-wide { grid-column: 1 / -1; min-height: 470px; }
  .press { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  .announcement { grid-template-columns: 1fr auto; min-height: 42px; padding-block: 7px; }
  .announcement-centre { display: none; }
  .site-header { height: 86px; grid-template-columns: 1fr auto; }
  .brand { border-right: 0; }
  .menu-toggle { display: grid; grid-template-columns: auto 24px; grid-template-rows: 1fr 1fr; align-items: center; gap: 0 12px; min-width: 112px; padding: 0 20px; background: transparent; color: var(--paper); border: 0; border-left: 1px solid var(--line); cursor: pointer; text-transform: uppercase; }
  .menu-toggle span { grid-row: 1 / 3; font-size: .78rem; font-weight: 900; letter-spacing: .1em; }
  .menu-toggle i { height: 1px; background: var(--paper); transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-5px) rotate(-45deg); }
  .primary-nav { display: none; position: fixed; top: 128px; left: 0; right: 0; bottom: 0; background: var(--ink); padding: 25px; flex-direction: column; align-items: stretch; overflow-y: auto; }
  .primary-nav.is-open { display: flex; }
  .primary-nav > a, .nav-more > button { min-height: 58px; justify-content: flex-start; border-bottom: 1px solid var(--line); font-family: var(--display); font-size: 1.4rem; }
  .nav-more { display: block; }
  .nav-more-panel { position: static; width: 100%; box-shadow: none; }
  .header-actions { display: none; }
  .hero { min-height: auto; grid-template-columns: 1fr; }
  .hero-copy { min-height: 680px; border-right: 0; background: linear-gradient(90deg, rgba(7,7,7,.97), rgba(7,7,7,.8) 65%, rgba(7,7,7,.3)), url("assets/images/delta-hero.webp") center/cover; }
  .hero-visual { min-height: 530px; }
  .latest-grid { grid-template-columns: 1fr; }
  .latest-art { max-width: 620px; }
  .release-grid { grid-template-columns: 1fr 1fr; }
  .release-card:last-child { grid-column: 1 / -1; width: calc(50% - 12px); }
  .manifesto { grid-template-columns: 1fr; }
  .manifesto-portrait { min-height: 700px; }
  .manifesto-facts { position: static; grid-column: 1 / -1; }
  .manifesto-copy { padding-bottom: 90px; }
  .visual-grid { grid-template-columns: 1fr; }
  .visual-card-wide { grid-column: auto; }
  .merch-grid { grid-template-columns: 1fr 1fr; }
  .merch-card:last-child { display: none; }
  .journal-grid { grid-template-columns: 1fr; }
  .journal-card { border-right: 0; border-bottom: 1px solid var(--line-dark); min-height: 280px; }
  .journal-card:last-child { border-bottom: 0; }
  .booking { grid-template-columns: 1fr; }
  .booking-copy { border-right: 0; border-bottom: 1px solid rgba(7,7,7,.2); }
  .site-footer { grid-template-columns: 1fr; }
  .platform-logo-strip { grid-template-columns: 1fr; }
  .platform-logo-strip > p { min-height: 58px; padding-block: 15px; border-right: 0; border-bottom: 1px solid rgba(231,255,0,.35); }
  .platform-logo-track { grid-template-columns: repeat(8, 108px); }
  .bbc-feature { grid-template-columns: 1fr; }
  .bbc-feature-copy > p { margin-bottom: 45px; }
}

@media (max-width: 600px) {
  .announcement { font-size: .68rem; letter-spacing: .08em; gap: 10px; padding-inline: 16px; }
  .announcement a { max-width: 145px; }
  .site-header { height: 78px; }
  .brand { padding-inline: 17px; }
  .brand-mark { width: 32px; }
  .brand-mark i { width: 22px; }
  .brand-name { font-size: .95rem; }
  .primary-nav { top: 120px; }
  .hero-copy { min-height: 610px; padding: 75px 22px 110px; }
  .hero-intro { font-size: 1rem; }
  .hero-visual { min-height: 430px; background-position: 57% center; }
  .hero-meta { left: 18px; right: 18px; bottom: 90px; }
  .signal-strip { height: 70px; padding-inline: 18px; gap: 15px; }
  .signal-strip > span:last-child { display: none; }
  .waveform { gap: 3px; }
  .waveform i { width: 3px; }
  .section { padding: 80px 20px; }
  .section-heading-row { align-items: flex-start; flex-direction: column; }
  .latest-art::before { inset: -8px 8px 8px -8px; }
  .track-number { top: -55px; }
  .soundcloud-embed iframe { height: 150px; }
  .release-grid { grid-template-columns: 1fr; }
  .release-card:last-child { grid-column: auto; width: 100%; }
  .manifesto-portrait { min-height: 520px; padding: 7%; }
  .manifesto-copy { padding: 75px 22px; }
  .manifesto-columns { grid-template-columns: 1fr; gap: 5px; }
  .manifesto-facts { grid-template-columns: 1fr 1fr; }
  .manifesto-facts div { border-bottom: 1px solid var(--line-dark); }
  .live { min-height: auto; grid-template-columns: 1fr; gap: 50px; }
  .live-formats div { padding: 20px 16px; }
  .visual-grid { min-height: 0; }
  .visual-card { min-height: 430px; border-left: 0; border-bottom: 1px solid var(--paper); }
  .merch-grid { grid-template-columns: 1fr; }
  .merch-card:last-child { display: block; }
  .press-items a { grid-template-columns: 35px 1fr 20px; }
  .booking-form { grid-template-columns: 1fr; }
  .field, .field-full { grid-column: 1; }
  .site-footer { gap: 55px; padding-inline: 20px; }
  .footer-social { grid-template-columns: 1fr 1fr; }
  .footer-meta { flex-direction: column; }
  .signup-form { grid-template-columns: 1fr; gap: 10px; }
  .signup-form input { min-height: 56px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

/* Inner-page system */
.sub-hero { min-height: 650px; padding: clamp(88px, 10vw, 155px) clamp(25px, 5vw, 84px); display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .55fr); gap: clamp(45px, 8vw, 130px); align-items: end; position: relative; isolation: isolate; overflow: hidden; border-bottom: 1px solid var(--line); background-position: center; background-size: cover; }
.sub-hero::before { content: ""; position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.99) 0%, rgba(7,7,7,.91) 52%, rgba(7,7,7,.38)); }
.sub-hero::after { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .25; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg, #000, transparent 72%); }
.sub-hero-music, .sub-hero-epk { background-image: url("assets/images/circuit.webp"); }
.sub-hero-bio, .sub-hero-journal { background-image: url("assets/images/graffiti.webp"); }
.sub-hero-live { background-image: url("assets/images/graffiti.webp"); background-position: center 62%; }
.sub-hero-visuals { background-image: url("assets/images/delta-hero.webp"); }
.sub-hero-merch { background-image: url("assets/images/new-eden.webp"); background-position: 70% center; }
.sub-hero h1 { margin: 0; font-size: clamp(4rem, 8.6vw, 9.5rem); }
.sub-hero > p, .sub-hero > div > p:last-child { margin: 0; color: rgba(243,241,232,.72); font-size: 1.08rem; line-height: 1.75; }
.sub-hero > div > .eyebrow { margin-bottom: 28px; }

.archive { padding-top: 70px; }
.archive-controls { display: grid; grid-template-columns: minmax(260px, .7fr) 1.3fr; gap: 30px 55px; align-items: end; margin-bottom: 60px; }
.archive-search { display: grid; gap: 10px; }
.archive-search > span { font-size: .78rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; color: var(--acid); }
.archive-search input { height: 54px; border: 1px solid var(--line); border-radius: 0; background: var(--ink-2); color: var(--paper); padding-inline: 16px; box-shadow: none; font-size: 1rem; }
.archive-search input:focus { border-color: var(--acid); }
.archive-filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.archive-filter { height: 42px; border: 1px solid var(--line) !important; border-radius: 0 !important; background: transparent !important; color: var(--paper) !important; padding-inline: 15px !important; font-size: .72rem !important; font-weight: 900 !important; letter-spacing: .08em; text-transform: uppercase; box-shadow: none !important; }
.archive-filter:hover, .archive-filter[aria-pressed="true"] { background: var(--acid) !important; border-color: var(--acid) !important; color: var(--ink) !important; }
.archive-list { border-top: 1px solid var(--line); }
.archive-row { min-height: 225px; display: grid; grid-template-columns: 50px 155px minmax(0, 1fr) auto; gap: clamp(20px, 3vw, 45px); align-items: center; border-bottom: 1px solid var(--line); padding: 28px 0; }
.archive-number { align-self: start; color: var(--acid); font-family: var(--display); font-size: 1rem; }
.archive-art { width: 155px; aspect-ratio: 1; overflow: hidden; background: #171717; }
.archive-art img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.archive-row:hover .archive-art img { transform: scale(1.045); }
.archive-art-type { display: grid; place-content: center; position: relative; border: 1px solid var(--line); background: linear-gradient(145deg, #171717, #090909); }
.archive-art-type::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(231,255,0,.32); clip-path: polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%); }
.archive-art-type strong { color: var(--paper); font-family: var(--display); font-size: 2.2rem; letter-spacing: -.08em; }
.archive-art-type span { color: var(--acid); font-size: .72rem; font-weight: 900; text-align: center; }
.archive-copy > p { margin: 0 0 10px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.archive-copy h2 { margin: 0; font-size: clamp(2.1rem, 4vw, 4.8rem); line-height: .86; }
.archive-copy h2 a:hover { color: var(--acid); }
.archive-copy > span { display: block; margin-top: 8px; color: var(--paper-2); font: italic 1.1rem var(--serif); }
.archive-copy > small { display: block; max-width: 700px; margin-top: 14px; color: rgba(243,241,232,.62); font-size: .94rem; line-height: 1.55; }
.archive-open { padding-bottom: 7px; border-bottom: 1px solid currentColor; font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.archive-open:hover { color: var(--acid); }
.archive-empty { padding: 80px 0; text-align: center; }
.archive-empty strong { font: 900 2rem var(--display); text-transform: uppercase; }
.archive-empty p { color: rgba(243,241,232,.58); }
.archive-platforms { display: flex; align-items: center; justify-content: flex-end; gap: 24px; padding-top: 40px; }
.archive-platforms p { margin: 0 auto 0 0; color: rgba(243,241,232,.6); }
.archive-platforms a { font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; border-bottom: 1px solid currentColor; }
.archive-platforms a:hover { color: var(--acid); }

.release-detail-hero { min-height: calc(100vh - 170px); display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }
.release-detail-copy { padding: clamp(75px, 9vw, 145px) clamp(25px, 6vw, 100px); display: flex; flex-direction: column; justify-content: center; }
.back-link { width: max-content; margin-bottom: 80px; color: rgba(243,241,232,.62); font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.back-link:hover { color: var(--acid); }
.release-detail-copy h1 { margin: 0 0 20px; font-size: clamp(4rem, 8vw, 9rem); }
.release-detail-copy > p:not(.eyebrow, .release-subtitle) { max-width: 650px; margin: 20px 0 36px; color: rgba(243,241,232,.68); line-height: 1.72; font-size: 1.08rem; }
.release-subtitle { color: var(--acid); font: italic clamp(1.6rem, 3vw, 3rem) var(--serif); }
.release-detail-art { margin: 0; padding: clamp(35px, 6vw, 95px); background: var(--paper); color: var(--ink); display: flex; flex-direction: column; justify-content: center; }
.release-detail-art img { width: 100%; aspect-ratio: 1; object-fit: cover; box-shadow: 20px 20px 0 var(--acid); }
.release-detail-art figcaption { margin-top: 40px; font-size: .75rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.release-story { display: grid; grid-template-columns: 1fr .75fr; gap: clamp(50px, 9vw, 150px); background: var(--paper); color: var(--ink); }
.release-story h2, .release-player h2 { margin: 0; font-size: clamp(3.5rem, 7vw, 7.5rem); line-height: .84; }
.release-story h2 em { color: var(--ink); }
.release-story .eyebrow { color: #56564e; }
.release-story-copy { padding-top: 65px; }
.release-story-copy p { color: rgba(7,7,7,.68); font: 1.35rem/1.65 var(--serif); }
.release-player { background: var(--ink-2); }
.release-player h2 { margin-bottom: 50px; }
.release-player .soundcloud-embed { max-width: 980px; }
.release-player-note { max-width: 650px; color: rgba(243,241,232,.66); font-size: 1.1rem; }

.bio-chapter { padding: clamp(90px, 11vw, 175px) clamp(25px, 5vw, 84px); display: grid; grid-template-columns: 80px 1fr .85fr; gap: clamp(35px, 6vw, 100px); align-items: start; }
.bio-chapter-origin { background: var(--paper); color: var(--ink); }
.bio-number { color: var(--acid); font-family: var(--display); font-size: 1.15rem; }
.bio-chapter-origin .bio-number { color: #626350; }
.bio-chapter .eyebrow { color: inherit; opacity: .55; }
.bio-chapter h2 { margin: 0; font-size: clamp(3.6rem, 7vw, 7.7rem); line-height: .83; }
.bio-chapter-origin h2 em { color: var(--ink); }
.bio-prose { padding-top: 45px; }
.bio-prose p { color: rgba(243,241,232,.68); font-size: 1.08rem; line-height: 1.78; }
.bio-chapter-origin .bio-prose p { color: rgba(7,7,7,.67); }
.bio-image-band { height: min(70vw, 760px); min-height: 520px; position: relative; overflow: hidden; }
.bio-image-band::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,7,.78), rgba(7,7,7,.15)); }
.bio-image-band img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.55); }
.bio-image-band blockquote { position: absolute; z-index: 2; left: clamp(25px, 8vw, 130px); bottom: clamp(45px, 10vw, 145px); width: min(850px, 80%); margin: 0; font: italic clamp(2.7rem, 6vw, 6.7rem)/.95 var(--serif); color: var(--paper); }
.bio-facts { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--acid); color: var(--ink); }
.bio-facts div { min-height: 190px; padding: 35px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(7,7,7,.23); }
.bio-facts div:last-child { border: 0; }
.bio-facts strong { font-family: var(--display); font-size: clamp(2.1rem, 4vw, 4rem); letter-spacing: -.06em; text-transform: uppercase; }
.bio-facts span { margin-top: 8px; font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.sub-cta, .merch-notify, .journal-follow { padding: clamp(85px, 10vw, 155px) clamp(25px, 5vw, 84px); background: var(--paper); color: var(--ink); display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: end; }
.sub-cta h2, .merch-notify h2, .journal-follow h2 { margin: 0; font-size: clamp(3.7rem, 7vw, 7.6rem); line-height: .83; }
.sub-cta h2 em, .merch-notify h2 em, .journal-follow h2 em { color: var(--ink); }
.sub-cta .eyebrow, .merch-notify .eyebrow, .journal-follow .eyebrow { color: #55564a; }
.sub-cta .button, .merch-notify .button, .journal-follow .button { width: auto; min-width: 230px; }

.live-system { min-height: 780px; display: grid; grid-template-columns: 1fr 1fr; background: var(--paper); color: var(--ink); }
.live-system-image { min-height: 650px; }
.live-system-image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.7); }
.live-system-copy { padding: clamp(75px, 9vw, 145px) clamp(30px, 7vw, 115px); display: flex; flex-direction: column; justify-content: center; }
.live-system-copy .eyebrow { color: #55564a; }
.live-system-copy h2 { margin: 0 0 50px; font-size: clamp(3.4rem, 6.5vw, 7rem); line-height: .83; }
.live-system-copy h2 em { color: var(--ink); }
.live-system-copy > p:not(.eyebrow) { color: rgba(7,7,7,.68); font-size: 1.08rem; line-height: 1.75; }
.format-list article { min-height: 175px; display: grid; grid-template-columns: 65px 1fr 1fr; gap: 35px; align-items: center; border-top: 1px solid var(--line); }
.format-list article:last-child { border-bottom: 1px solid var(--line); }
.format-list article span { color: var(--acid); font-family: var(--display); }
.format-list article h3 { margin: 0; font-size: clamp(1.8rem, 3vw, 3.4rem); line-height: .92; }
.format-list article p { margin: 0; color: rgba(243,241,232,.62); line-height: 1.65; }
.tech-strip { display: grid; grid-template-columns: 1fr 1fr 1fr 1.2fr; background: var(--acid); color: var(--ink); }
.tech-strip > * { min-height: 150px; padding: 28px; border-right: 1px solid rgba(7,7,7,.22); display: flex; flex-direction: column; justify-content: center; }
.tech-strip span { font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.tech-strip strong { margin-top: 8px; font-family: var(--display); font-size: 1.25rem; text-transform: uppercase; }
.tech-strip > a { align-items: center; font-size: .8rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.tech-strip > a:hover { background: var(--ink); color: var(--acid); }

.visual-channel-grid { display: grid; grid-template-columns: 1.25fr 1fr; grid-template-rows: 1fr 1fr; min-height: 1050px; }
.visual-channel { min-height: 520px; position: relative; overflow: hidden; border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); }
.visual-channel-main { grid-row: 1 / 3; }
.visual-channel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,7,7,.05), rgba(7,7,7,.18) 50%, rgba(7,7,7,.94)); }
.visual-channel img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s; }
.visual-channel:hover img { transform: scale(1.045); }
.visual-channel span, .visual-channel h2, .visual-channel i { position: absolute; z-index: 2; left: clamp(25px, 4vw, 65px); right: clamp(25px, 4vw, 65px); }
.visual-channel span { top: clamp(25px, 4vw, 60px); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-channel h2 { bottom: 85px; margin: 0; font-size: clamp(2.2rem, 4.6vw, 5.8rem); line-height: .84; }
.visual-channel i { bottom: 45px; color: var(--acid); font-size: .75rem; font-style: normal; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.visual-manifesto { background: var(--paper); color: var(--ink); }
.visual-manifesto .eyebrow { color: #55564a; }
.visual-manifesto h2 { margin: 0 0 45px; font-size: clamp(4rem, 8vw, 8.5rem); line-height: .82; }
.visual-manifesto h2 em { color: var(--ink); }
.visual-manifesto > p:last-child { max-width: 760px; color: rgba(7,7,7,.66); font-size: 1.2rem; line-height: 1.7; }

.merch-ranges { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.merch-ranges article > div { aspect-ratio: .82; overflow: hidden; background: var(--ink-2); }
.merch-ranges article img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s, filter .4s; }
.merch-ranges article:hover img { transform: scale(1.04); filter: brightness(.76); }
.merch-ranges article > span { display: block; margin: 22px 0 16px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--acid); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.merch-ranges article h2 { margin: 0 0 15px; font-size: clamp(2rem, 3.2vw, 4rem); line-height: .9; }
.merch-ranges article p { color: rgba(243,241,232,.62); line-height: 1.65; }
.merch-ranges article small { color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.merch-notify p:not(.eyebrow) { max-width: 690px; margin: 30px 0 0; color: rgba(7,7,7,.65); line-height: 1.7; }

.epk-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(55px, 10vw, 170px); background: var(--paper); color: var(--ink); }
.epk-grid .eyebrow { color: #55564a; }
.epk-bio h2 { margin: 0 0 38px; font-size: clamp(3.6rem, 7vw, 7.8rem); }
.epk-bio > p:not(.eyebrow) { color: rgba(7,7,7,.68); font: 1.35rem/1.65 var(--serif); }
.epk-bio .text-link { display: inline-block; margin-top: 28px; }
.epk-facts { margin: 0; border-top: 1px solid var(--line-dark); }
.epk-facts div { padding: 23px 0; border-bottom: 1px solid var(--line-dark); }
.epk-facts dt { color: #626158; font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.epk-facts dd { margin: 6px 0 0; font-family: var(--display); font-size: 1.25rem; letter-spacing: -.03em; text-transform: uppercase; }
.epk-links { display: grid; grid-template-columns: repeat(5, 1fr); background: var(--acid); color: var(--ink); }
.epk-links a { min-height: 125px; display: grid; place-items: center; border-right: 1px solid rgba(7,7,7,.22); font-size: .78rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.epk-links a:hover { background: var(--ink); color: var(--acid); }
.epk-requests { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(55px, 9vw, 150px); }
.epk-requests h2 { margin: 0 0 35px; font-size: clamp(3.6rem, 7vw, 7.5rem); line-height: .83; }
.epk-requests > div > p:last-child { max-width: 600px; color: rgba(243,241,232,.63); line-height: 1.7; }
.epk-requests > div:last-child { border-top: 1px solid var(--line); }
.epk-requests a { min-height: 88px; display: grid; grid-template-columns: 45px 1fr 25px; gap: 15px; align-items: center; border-bottom: 1px solid var(--line); }
.epk-requests a:hover { color: var(--acid); padding-left: 8px; }
.epk-requests a span, .epk-requests a i { color: var(--acid); font-size: .75rem; font-style: normal; font-weight: 900; }
.epk-requests a strong { font-family: var(--display); font-size: clamp(1.2rem, 2vw, 2rem); text-transform: uppercase; }

.journal-archive { display: grid; grid-template-columns: 1fr 1fr; padding-bottom: 0; }
.journal-archive article { min-height: 465px; padding: clamp(35px, 5vw, 75px); display: flex; flex-direction: column; border-top: 1px solid var(--line); border-right: 1px solid var(--line); }
.journal-archive article:nth-child(even) { border-right: 0; }
.journal-archive article > span { color: var(--acid); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.journal-archive article > strong { margin: 30px 0 auto; color: rgba(243,241,232,.08); font-family: var(--display); font-size: 6rem; line-height: .8; }
.journal-archive article h2 { margin: 40px 0 22px; font-size: clamp(2rem, 3.6vw, 4.2rem); line-height: .9; }
.journal-archive article p { max-width: 600px; color: rgba(243,241,232,.62); line-height: 1.65; }
.journal-archive article small { margin-top: 20px; color: rgba(243,241,232,.45); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

.booking-page { min-height: calc(100vh - 170px); }
.booking-page .booking-copy, .booking-form-page { padding-top: clamp(85px, 8vw, 130px); padding-bottom: clamp(85px, 8vw, 130px); }
.booking-page h1 { margin: 0; font-size: clamp(3.5rem, 6.7vw, 7.2rem); line-height: .82; }
.booking-page h1 em { color: var(--ink); }
.booking-direct { margin-top: 60px; padding-top: 22px; border-top: 1px solid rgba(7,7,7,.3); display: flex; justify-content: space-between; gap: 20px; }
.booking-direct span, .booking-direct a { font-size: .75rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.booking-direct a:hover { text-decoration: underline; text-underline-offset: 5px; }

@media (max-width: 1000px) {
  .archive-row { grid-template-columns: 40px 125px 1fr; }
  .archive-art { width: 125px; }
  .archive-open { grid-column: 3; width: max-content; }
  .release-detail-hero { grid-template-columns: 1fr; }
  .release-detail-art { min-height: 700px; }
  .bio-chapter { grid-template-columns: 55px 1fr; }
  .bio-prose { grid-column: 2; }
  .live-system { grid-template-columns: .8fr 1.2fr; }
  .visual-channel-grid { min-height: 900px; }
  .tech-strip { grid-template-columns: 1fr 1fr; }
  .tech-strip > * { border-bottom: 1px solid rgba(7,7,7,.22); }
  .epk-grid, .epk-requests { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .sub-hero { min-height: 610px; grid-template-columns: 1fr; align-content: end; gap: 35px; }
  .sub-hero::before { background: linear-gradient(180deg, rgba(7,7,7,.48), rgba(7,7,7,.97) 76%); }
  .archive-controls { grid-template-columns: 1fr; }
  .archive-filters { justify-content: flex-start; }
  .archive-row { grid-template-columns: 32px 96px 1fr; gap: 16px; }
  .archive-art { width: 96px; }
  .archive-copy h2 { font-size: 2rem; }
  .archive-copy > small { display: none; }
  .archive-platforms { align-items: flex-start; flex-wrap: wrap; }
  .archive-platforms p { width: 100%; }
  .release-detail-art { min-height: auto; }
  .release-story { grid-template-columns: 1fr; }
  .release-story-copy { padding-top: 0; }
  .bio-chapter { grid-template-columns: 1fr; }
  .bio-prose { grid-column: auto; padding-top: 0; }
  .bio-image-band { min-height: 480px; }
  .bio-facts { grid-template-columns: 1fr 1fr; }
  .bio-facts div { min-height: 145px; border-bottom: 1px solid rgba(7,7,7,.23); }
  .sub-cta, .merch-notify, .journal-follow { grid-template-columns: 1fr; }
  .live-system { grid-template-columns: 1fr; }
  .live-system-image { min-height: 500px; }
  .format-list article { grid-template-columns: 40px 1fr; padding: 28px 0; }
  .format-list article p { grid-column: 2; }
  .visual-channel-grid { grid-template-columns: 1fr; grid-template-rows: none; min-height: auto; }
  .visual-channel, .visual-channel-main { grid-row: auto; min-height: 520px; border-left: 0; }
  .merch-ranges { grid-template-columns: 1fr; }
  .epk-links { grid-template-columns: 1fr 1fr; }
  .epk-links a { min-height: 95px; border-bottom: 1px solid rgba(7,7,7,.22); }
  .journal-archive { grid-template-columns: 1fr; }
  .journal-archive article { border-right: 0; min-height: 420px; }
  .booking-page { grid-template-columns: 1fr; }
}

@media (max-width: 500px) {
  .sub-hero { min-height: 550px; padding: 72px 20px; }
  .sub-hero h1 { font-size: clamp(3.25rem, 16vw, 5rem); }
  .archive-row { grid-template-columns: 28px 75px 1fr; }
  .archive-art { width: 75px; }
  .archive-copy h2 { font-size: 1.55rem; }
  .archive-copy > p { font-size: .66rem; }
  .archive-open { grid-column: 2 / -1; }
  .release-detail-copy { padding-inline: 20px; }
  .back-link { margin-bottom: 55px; }
  .release-detail-art { padding: 35px 20px 55px; }
  .release-detail-art img { box-shadow: 10px 10px 0 var(--acid); }
  .bio-chapter { padding-inline: 20px; }
  .bio-image-band blockquote { width: calc(100% - 40px); left: 20px; }
  .tech-strip { grid-template-columns: 1fr; }
  .tech-strip > * { min-height: 120px; }
  .epk-links { grid-template-columns: 1fr; }
  .epk-requests a { grid-template-columns: 32px 1fr 20px; }
  .booking-direct { flex-direction: column; }
}


/* Homepage professional refresh — September 2026 */
.listening-intro { color: rgba(243,241,232,.62); }
.track-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: clamp(70px,8vw,120px); border: 1px solid var(--line); background: var(--line); }
.track-card { min-width: 0; padding: clamp(22px,3vw,38px); background: #0b0b0b; }
.track-card-meta { min-height: 86px; display: grid; grid-template-columns: 34px 1fr; gap: 14px; align-items: start; }
.track-card-meta span { padding-top: 4px; color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .12em; }
.track-card-meta h3 { margin: 0; font-size: clamp(1.35rem,2vw,2rem); line-height: .95; letter-spacing: -.045em; text-transform: uppercase; }
.soundcloud-compact { margin: 18px 0 0; }
.soundcloud-compact iframe { height: 132px; }
.spotify-callout { min-height: 150px; padding: 30px clamp(25px,5vw,84px); display: flex; align-items: center; justify-content: space-between; gap: 32px; background: #1ed760; color: #050505; border-bottom: 1px solid rgba(0,0,0,.18); }
.spotify-callout > div { display: flex; align-items: center; gap: 24px; }
.spotify-icon { width: 54px; height: 54px; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50%; font-size: 2.2rem; line-height: 1; }
.spotify-callout p { margin: 0; display: flex; flex-direction: column; gap: 3px; }
.spotify-callout small { font-size: .72rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.spotify-callout strong { font-family: var(--display); font-size: clamp(1.45rem,2.6vw,2.8rem); letter-spacing: -.045em; text-transform: uppercase; }
.button-spotify { border-color: #050505; background: #050505; color: #fff; white-space: nowrap; }
.button-spotify:hover { background: #fff; color: #050505; }
.credibility-grid { min-height: 580px; display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line-dark); }
.credibility-panel { min-width: 0; padding: clamp(70px,8vw,130px) clamp(28px,6vw,100px); display: flex; flex-direction: column; justify-content: center; }
.credibility-panel > p { margin: 0 0 clamp(50px,7vw,90px); font-size: .75rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.credibility-panel > span { margin-bottom: 22px; font-size: .9rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.credibility-panel h2 { margin: 0; font-size: clamp(3rem,5.4vw,6.3rem); line-height: .84; letter-spacing: -.065em; text-transform: uppercase; }
.credibility-panel h2 em { font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; }
.credibility-bbc { background: var(--paper); color: var(--ink); }
.credibility-bbc h2 em { color: var(--ink); }
.credibility-adhd { background: var(--acid); color: var(--ink); border-left: 1px solid var(--line-dark); }
.credibility-adhd h2 em { color: var(--ink); }
.credibility-adhd small { margin-top: 40px; max-width: 520px; font-size: .9rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.manifesto { border-top: 1px solid var(--line-dark); }
.manifesto-portrait::before { opacity: .28; }
.portrait-crop { filter: none; }
.portrait-crop img { position: static; width: 100%; max-width: 100%; height: 100%; object-fit: cover; object-position: center 36%; filter: contrast(1.05) saturate(.78); }
.visual-grid { grid-template-columns: repeat(3,1fr); border: 1px solid var(--line-dark); }
.visual-card img { object-position: center; filter: saturate(.78) contrast(1.05); }
.visual-card-wide img { object-position: 57% center; }
@media (max-width:1120px) {
  .visual-grid { grid-template-columns: repeat(3,1fr); }
  .visual-card-wide { grid-column: auto; min-height: 500px; }
}
@media (max-width:860px) {
  .track-grid { grid-template-columns: 1fr; }
  .track-card-meta { min-height: auto; }
  .visual-grid { grid-template-columns: 1fr; }
  .visual-card-wide { grid-column: auto; }
  .credibility-grid { grid-template-columns: 1fr; }
  .credibility-panel { min-height: 480px; }
  .credibility-adhd { border-left: 0; border-top: 1px solid var(--line-dark); }
}
@media (max-width:600px) {
  .soundcloud-compact iframe { height: 132px; }
  .spotify-callout { padding-block: 34px; align-items: flex-start; flex-direction: column; }
  .spotify-callout > div { align-items: flex-start; }
  .spotify-icon { width: 44px; height: 44px; flex: 0 0 auto; font-size: 1.8rem; }
}


/* Readability refinement — listening room intro */
.listening .section-heading > p:not(.eyebrow) { color: rgba(247,245,240,.72); }

.latest .listening-intro { color: rgba(247,245,240,.72); }


/* Monthly DJ mix and Mixcloud */
.mixcloud-callout { min-height:160px; padding:30px clamp(25px,5vw,84px); display:flex; align-items:center; justify-content:space-between; gap:32px; border-bottom:1px solid rgba(231,255,0,.35); background:#050505; }
.mixcloud-callout > div { display:flex; align-items:center; gap:24px; }
.mixcloud-callout img { width:58px; height:58px; object-fit:contain; flex:0 0 auto; }
.mixcloud-callout p { margin:0; display:flex; flex-direction:column; gap:4px; }
.mixcloud-callout small { color:var(--acid); font-size:.72rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.mixcloud-callout strong { max-width:760px; font-family:var(--display); font-size:clamp(1.35rem,2.4vw,2.7rem); letter-spacing:-.045em; line-height:1; text-transform:uppercase; }
.sub-hero-mixes { background-image:url('assets/images/circuit.webp'); background-position:center; }
@media (max-width:600px) { .mixcloud-callout { padding-block:34px; align-items:flex-start; flex-direction:column; } .mixcloud-callout > div { align-items:flex-start; } .mixcloud-callout img { width:46px; height:46px; } }


/* Bass Crate-inspired editorial redesign — September 2026 */
:root { --ink:#111111; --ink-2:#f7f7f4; --paper:#ffffff; --paper-2:#efefea; --acid:#dfff00; --line:rgba(17,17,17,.16); --line-dark:rgba(17,17,17,.16); --display:"Helvetica Neue",Helvetica,Arial,sans-serif; --ui:"Helvetica Neue",Helvetica,Arial,sans-serif; --serif:Georgia,"Times New Roman",serif; }
html { background:#fff; }
body { background:#fff; color:#111; font-family:var(--ui); font-weight:400; line-height:1.6; }
.announcement { display:none; }
.site-header { height:92px; grid-template-columns:240px minmax(0,1fr) 210px; border-bottom:1px solid #d8d8d3; background:rgba(255,255,255,.96); color:#111; }
.brand { border-right:0; padding-inline:clamp(22px,3vw,48px); }
.brand-mark { width:34px; background:#111; }
.brand-mark i { width:23px; background:#fff; }
.brand-name { font-family:var(--ui); font-size:1rem; font-weight:700; line-height:.9; letter-spacing:-.035em; text-transform:none; }
.primary-nav { justify-content:flex-end; }
.primary-nav > a,.nav-more > button { color:#111; padding-inline:clamp(9px,1.25vw,20px); font-size:.78rem; font-weight:600; letter-spacing:0; text-transform:none; }
.primary-nav > a:hover,.nav-more > button:hover,.header-actions > a:hover { color:#111; text-decoration:underline; text-underline-offset:5px; }
.nav-more button span { color:#111; }
.nav-more-panel { top:72px; background:#111; color:#fff; }
.nav-more-panel a { border-color:rgba(255,255,255,.18); font-weight:600; letter-spacing:0; text-transform:none; }
.header-actions { border-left:1px solid #d8d8d3; }
.header-actions > a { color:#111; font-weight:600; letter-spacing:0; text-transform:none; }
.header-book { border-left:1px solid #d8d8d3; }
.header-book span { color:#111; margin-left:12px; }
h1,h2,h3 { font-family:var(--display); font-weight:500; letter-spacing:-.055em; text-transform:none; }
h1 em,h2 em,.signup-dialog em { color:#111; font-family:var(--serif); font-weight:400; }
.eyebrow { margin-bottom:22px; color:#111; font-size:.76rem; font-weight:600; letter-spacing:.04em; text-transform:none; }
.hero { min-height:760px; max-width:1500px; margin:0 auto; grid-template-columns:55% 45%; border-bottom:1px solid #d8d8d3; background:#fff; }
.hero-copy { padding:clamp(80px,9vw,150px) clamp(28px,6vw,96px); border-right:0; }
.hero h1 { max-width:830px; margin-bottom:34px; font-size:clamp(4.4rem,7.2vw,8.6rem); line-height:.88; }
.hero-intro { max-width:600px; color:rgba(17,17,17,.7); font-size:1.08rem; line-height:1.75; }
.hero-visual { min-height:760px; background-position:center 35%; border-left:1px solid #d8d8d3; filter:grayscale(.15); }
.hero-visual::before { background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.55)); }
.hero-visual::after,.hero-scan,.signal-strip { display:none; }
.hero-meta { font-weight:600; letter-spacing:.04em; text-transform:none; }
.button { min-height:54px; border-color:#111; border-radius:0; font-weight:600; letter-spacing:0; text-transform:none; }
.button-acid,.button-dark { background:#111; border-color:#111; color:#fff; }
.button-acid:hover,.button-dark:hover { background:var(--acid); border-color:var(--acid); color:#111; }
.button-ghost { color:#111; border-color:#111; }
.button-ghost:hover { background:#111; color:#fff; }
.button-light { background:#111; border-color:#111; color:#fff; }
.button-light:hover { background:var(--acid); border-color:var(--acid); color:#111; }
.genre-ticker { height:58px; background:#fff; color:#111; border-bottom:1px solid #d8d8d3; }
.genre-ticker > div { animation-duration:48s; }
.ticker-pair b { font-family:var(--ui); font-size:.82rem; font-weight:600; letter-spacing:0; text-transform:none; }
.ticker-pair i { width:5px; height:5px; background:#111; }
.section { max-width:1500px; margin-inline:auto; padding:clamp(90px,10vw,160px) clamp(28px,6vw,96px); }
.section-lined { border-color:#d8d8d3; }
.section-heading h2,.manifesto h2,.live h2,.booking h2 { font-size:clamp(3.4rem,7vw,7.5rem); line-height:.92; }
.text-link { font-weight:600; letter-spacing:0; text-transform:none; }
.latest { max-width:none; background:#fff; color:#111; }
.latest > * { max-width:1308px; margin-inline:auto; }
.listening-intro,.latest-content > p:not(.latest-label) { color:rgba(17,17,17,.68) !important; }
.latest-art::before { border-color:#111; }
.latest-art figcaption,.latest-label,.track-card-meta span { color:#111; font-weight:600; letter-spacing:.04em; text-transform:none; }
.track-number { color:rgba(17,17,17,.06); }
.soundcloud-embed { border-color:#d8d8d3; background:#f5f5f2; }
.track-grid { border-color:#d8d8d3; background:#d8d8d3; }
.track-card { background:#fff; }
.platform-links a { border-color:#bbb; font-weight:600; letter-spacing:0; text-transform:none; }
.platform-logo-strip { background:#111; border-color:#111; }
.platform-logo-strip > p { border-color:rgba(223,255,0,.45); color:var(--acid); font-weight:600; letter-spacing:.04em; text-transform:none; }
.platform-logo-track a { border-color:rgba(223,255,0,.2); color:var(--acid); }
.platform-logo-track span { font-weight:600; letter-spacing:0; text-transform:none; }
.mixcloud-callout { background:#f4f4ef; color:#111; border-color:#d8d8d3; }
.mixcloud-callout strong,.mixcloud-callout small { color:#111; font-family:var(--ui); font-weight:600; letter-spacing:0; text-transform:none; }
.spotify-callout { background:#fff; color:#111; border-color:#d8d8d3; }
.spotify-callout strong,.spotify-callout small { font-family:var(--ui); font-weight:600; letter-spacing:0; text-transform:none; }
.button-spotify { background:#111; border-color:#111; color:#fff; }
.discography { background:#f7f7f4; color:#111; }
.release-meta { border-color:#cfcfca; color:rgba(17,17,17,.58); font-weight:600; letter-spacing:0; text-transform:none; }
.release-card > p { color:#111; font-weight:600; letter-spacing:0; text-transform:none; }
.play-disc { background:#111; color:#fff; }
.credibility-grid { max-width:1500px; min-height:480px; margin-inline:auto; border-color:#d8d8d3; }
.credibility-panel { min-height:480px; }
.credibility-panel > p,.credibility-panel > span { font-weight:600; letter-spacing:.04em; text-transform:none; }
.credibility-panel h2 { font-size:clamp(3rem,5vw,5.5rem); line-height:.94; text-transform:none; }
.credibility-bbc { background:#fff; color:#111; }
.credibility-adhd { background:#f1f1ec; color:#111; border-color:#d8d8d3; }
.manifesto { max-width:1500px; margin-inline:auto; background:#fff; color:#111; border-color:#d8d8d3; }
.manifesto-portrait { min-height:780px; background:#ecece7; }
.manifesto-portrait::before { opacity:.12; }
.portrait-crop::after { box-shadow:inset 0 0 0 8px #fff; }
.manifesto-copy p { color:rgba(17,17,17,.72); }
.manifesto-facts { background:#f1f1ec; color:#111; }
.manifesto-facts div { border-color:#d0d0ca; }
.live { max-width:1500px; min-height:760px; margin-inline:auto; }
.live-backdrop { filter:grayscale(.25); }
.live-content > p:not(.eyebrow) { color:rgba(255,255,255,.78); }
.live-formats div { border-color:rgba(255,255,255,.25); }
.merch,.journal,.press { background:#fff; color:#111; }
.merch-card p,.journal-card { border-color:#d8d8d3; }
.merch-card p small,.journal-card > span { color:rgba(17,17,17,.56); font-weight:600; letter-spacing:0; text-transform:none; }
.notify-link { color:#111; border-color:#111; }
.press { border-color:#d8d8d3; }
.press-items a { border-color:#d8d8d3; }
.booking { max-width:1500px; margin-inline:auto; background:#f1f1ec; color:#111; }
.booking-copy { border-color:#d0d0ca; }
.booking-copy > p:not(.eyebrow),.booking-form small { color:rgba(17,17,17,.7); }
.booking-form input,.booking-form select,.booking-form textarea { border-color:#bcbcb6; background:#fff; color:#111; }
.site-footer { max-width:1500px; margin-inline:auto; background:#fff; color:#111; border-top:1px solid #d8d8d3; }
.footer-social { border-color:#d8d8d3; }
.footer-social a { border-color:#d8d8d3; }
.footer-meta { border-color:#d8d8d3; color:rgba(17,17,17,.65); }
.sub-hero { min-height:620px; background-color:#111; }
.sub-hero h1 { font-size:clamp(4rem,8vw,8.5rem); line-height:.9; }
.sub-hero h1 em { color:#fff; }
.live-system,.format-list,.archive,.editorial,.visual-gallery,.merch-archive,.journal-list,.epk-grid { background:#fff; color:#111; }
.format-list article,.tech-strip { border-color:#d8d8d3; }
.tech-strip { background:#f1f1ec; color:#111; }
@media (max-width:1120px) { .site-header { grid-template-columns:210px minmax(0,1fr) 170px; } .primary-nav > a,.nav-more > button { padding-inline:9px; font-size:.72rem; } }
@media (max-width:860px) { .site-header { height:78px; } .primary-nav { background:#fff; color:#111; border-color:#d8d8d3; } .primary-nav > a,.nav-more > button { color:#111; border-color:#d8d8d3; } .hero { grid-template-columns:1fr; } .hero-copy { min-height:620px; padding:78px 22px 90px; } .hero-visual { min-height:560px; border-left:0; border-top:1px solid #d8d8d3; } .credibility-grid { grid-template-columns:1fr; } }
@media (max-width:600px) { .hero h1 { font-size:clamp(3.7rem,18vw,5.3rem); } .section-heading h2,.manifesto h2,.live h2,.booking h2 { font-size:clamp(3rem,15vw,4.7rem); } .mixcloud-callout,.spotify-callout { padding-block:32px; } }


@media (max-width: 860px) {
  .menu-toggle { color: #111; border-color: #d8d8d3; text-transform: none; }
  .menu-toggle i { background: #111; }
  .primary-nav { top: 78px; }
  .hero-copy { background: #fff !important; color: #111; }
}


/* Bass Crate Studio palette match — 2026-09-22 */
:root {
  --ink: #080808;
  --ink-2: #080808;
  --paper: #ffffff;
  --paper-2: #efefea;
  --acid: #dcff00;
  --line: rgba(255,255,255,.18);
  --line-dark: rgba(8,8,8,.18);
  --background: #080808;
  --foreground: #ffffff;
  --card: #080808;
  --card-foreground: #ffffff;
  --primary: #dcff00;
  --primary-foreground: #080808;
  --muted-foreground: #aaa99f;
  --border: rgba(255,255,255,.18);
  --ring: #dcff00;
}
html, body { background: #080808 !important; color: #fff !important; }
body { font-family: Inter, "Helvetica Neue", Arial, sans-serif !important; }
.site-header { background: rgba(8,8,8,.96) !important; border-color: rgba(255,255,255,.18) !important; }
.brand, .header-actions, .header-actions a { border-color: rgba(255,255,255,.18) !important; }
.brand-name, .primary-nav > a, .nav-more > button, .header-actions a, .menu-toggle { color: #fff !important; }
.brand-mark { background: #dcff00 !important; }
.brand-mark i { background: #080808 !important; }
.primary-nav > a:hover, .nav-more > button:hover, .text-link, .eyebrow, .section-label { color: #dcff00 !important; }
.nav-more-panel { background: #dcff00 !important; color: #080808 !important; }
.hero { background: #080808 !important; color: #fff !important; }
.hero-copy { background: #080808 !important; color: #fff !important; }
.hero-copy p, .hero-intro { color: #d4d4ce !important; }
.hero-title, .hero h1, .hero h2 { color: #fff !important; }
.hero-title em, .hero h1 em { color: #dcff00 !important; }
.genre-ticker { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
.latest, .discography, .live, .merch, .press, .journal { background: #080808 !important; color: #fff !important; }
.latest *, .discography *, .live *, .merch *, .press *, .journal * { border-color: rgba(255,255,255,.18); }
.latest p, .discography p, .live p, .merch p, .press p, .journal p { color: #d4d4ce !important; }
.latest h2, .latest h3, .discography h2, .discography h3, .live h2, .live h3, .merch h2, .merch h3, .press h2, .press h3, .journal h2, .journal h3 { color: #fff !important; }
.latest em, .discography em, .live em, .merch em, .press em, .journal em { color: #dcff00 !important; }
.track-feature, .track-row, .release-card, .press-list a, .journal-card { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
.platform-logo-strip { background: #080808 !important; color: #dcff00 !important; border-color: rgba(255,255,255,.18) !important; }
.platform-logo-strip a, .platform-logo-strip p, .platform-logo-strip span { color: #dcff00 !important; border-color: rgba(220,255,0,.2) !important; }
.mixcloud-callout, .manifesto, .booking { background: #efefea !important; color: #080808 !important; }
.mixcloud-callout *, .manifesto *, .booking * { border-color: rgba(8,8,8,.18); }
.mixcloud-callout p, .manifesto p, .booking p { color: #55554f !important; }
.mixcloud-callout h2, .mixcloud-callout h3, .manifesto h2, .manifesto h3, .booking h2, .booking h3 { color: #080808 !important; }
.mixcloud-callout em, .manifesto em, .booking em { color: #080808 !important; }
.spotify-callout { background: #080808 !important; color: #fff !important; border-top: 1px solid rgba(255,255,255,.18) !important; border-bottom: 1px solid rgba(255,255,255,.18) !important; }
.spotify-callout p, .spotify-callout strong { color: #fff !important; }
.credibility-grid { background: #080808 !important; color: #fff !important; }
.credibility-grid > * { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
.credibility-grid p { color: #d4d4ce !important; }
.button-acid, .button-spotify, .button-light { background: #dcff00 !important; color: #080808 !important; border-color: #dcff00 !important; }
.button-ghost { background: transparent !important; color: #fff !important; border-color: rgba(255,255,255,.55) !important; }
.mixcloud-callout .button-ghost, .manifesto .button-ghost, .booking .button-ghost { color: #080808 !important; border-color: #080808 !important; }
.booking input, .booking textarea, .booking select { background: #fff !important; color: #080808 !important; border-color: #c8c8c1 !important; }
.site-footer { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
.site-footer a:hover { color: #dcff00 !important; }
::selection { background: #dcff00; color: #080808; }
@media (max-width: 860px) {
  .site-header { background: #080808 !important; }
  .menu-toggle { color: #fff !important; border-color: rgba(255,255,255,.3) !important; }
  .menu-toggle i { background: #fff !important; }
  .primary-nav { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
  .hero-copy { background: #080808 !important; color: #fff !important; }
}

.track-card { background: #080808 !important; color: #fff !important; border-color: rgba(255,255,255,.18) !important; }
.track-card h3, .track-card .track-number { color: #fff !important; }
