/*
Theme Name: Mashed Pumpkin Productions
Theme URI: https://llamastudio.co.uk
Author: Llama Studio
Description: Network site for Mashed Pumpkin Productions. Each show page takes its colours from the show's artwork. Content is edited through the Shows and Site details screens (needs the free Secure Custom Fields plugin).
Version: 1.0.8
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: mashed-pumpkin
*/

/* Layout: network homepage in Mashed Pumpkin cream and pumpkin, artwork tiles as the main feature.
   Each show page re-skins the whole site (header included) from that show's artwork via [data-show] tokens. */
:root{
  --bg:#FCF5EA; --surface:#F4EADA; --card:#FFFFFF; --line:#E6DAC5;
  --fg:#141210; --fg2:#55504A; --fg3:#6B645B;
  --accent:#E0611F; --accent-ink:#141210; --accent-txt:#B9471A;
  --disp:"Oswald","Arial Narrow",Impact,sans-serif;
  --body:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --brand:"Merriweather",Georgia,serif;
  --r:0; --max:1240px;
  color-scheme:light;
}
html[data-show="omr"]{--bg:#10302C;--surface:#173D38;--card:#1B4540;--line:#2C524C;--fg:#F3EADB;--fg2:#CBD5CC;--fg3:#A9B8AF;--accent:#EE8A3C;--accent-ink:#10302C;--accent-txt:#F4A15F;--disp:"Big Shoulders Stencil Display","Oswald",Impact,sans-serif;color-scheme:dark}
html[data-show="wis"]{--bg:#0C2733;--surface:#113443;--card:#153D4E;--line:#24495A;--fg:#ECF6F8;--fg2:#BBD1D8;--fg3:#97B4BE;--accent:#8FD0DD;--accent-ink:#0C2733;--accent-txt:#8FD0DD;--disp:"Oswald","Arial Narrow",Impact,sans-serif;color-scheme:dark}
html[data-show="cab"]{--bg:#0D2B3B;--surface:#123749;--card:#163F52;--line:#26495B;--fg:#FFFFFF;--fg2:#C2D8DF;--fg3:#9DBAC4;--accent:#C8262C;--accent-ink:#FFFFFF;--accent-txt:#FF8A8C;--disp:"Josefin Sans","Manrope",sans-serif;color-scheme:dark}
html[data-show="mab"]{--bg:#17163A;--surface:#201F4B;--card:#262457;--line:#34316A;--fg:#F2ECDA;--fg2:#C9C2E2;--fg3:#A9A1CC;--accent:#B9A6F0;--accent-ink:#17163A;--accent-txt:#C8B8F5;--disp:"IM Fell English SC",Georgia,serif;color-scheme:dark}
html[data-show="wan"]{--bg:#0A0A0A;--surface:#141414;--card:#1A1A1A;--line:#2A2A2A;--fg:#F1F1F1;--fg2:#BDBDBD;--fg3:#9A9A9A;--accent:#C8222A;--accent-ink:#FFFFFF;--accent-txt:#FF6066;--disp:"Rubik Dirt","Oswald",Impact,sans-serif;color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color .4s,color .4s}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:0}
.wrap{max-width:var(--max);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{margin:0;line-height:1.05;text-wrap:balance;font-weight:500}
.disp{font-family:var(--disp);text-transform:uppercase;letter-spacing:.005em}
html[data-show="mab"] .disp,html[data-show="cab"] .disp{text-transform:none}
.num{font-variant-numeric:tabular-nums}
.muted{color:var(--fg2)}
.small{font-size:13px;color:var(--fg3)}
p{margin:0}

/* ribbon */
.ribbon{background:#141210;color:#FCF5EA;font-size:12.5px}
.ribbon .wrap{padding-block:7px;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}
.ribbon b{color:#F5C04A}

/* header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:background-color .4s,border-color .2s}
.hdr.scrolled{border-bottom-color:var(--line)}
.hdr .bar{padding-block:12px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.brand img{width:58px;height:auto;flex:none}
.brand .wm{font-family:var(--brand);font-weight:900;font-size:19px;line-height:1;letter-spacing:-.01em;white-space:nowrap}
.brand .wm small{display:block;font-family:var(--body);font-weight:700;font-size:10px;letter-spacing:.32em;color:var(--accent-txt);margin-top:5px}
.nav{position:relative;display:flex;align-items:center;gap:2px}
.nav > a,.nav > .dd > button{position:relative;color:var(--fg2);text-decoration:none;font-size:14.5px;font-weight:600;padding:12px 14px;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;gap:6px;background:none;border:0;transition:color .2s}
.nav > a:hover,.nav > a[aria-current="page"],.nav > .dd > button:hover,.nav > .dd > button[aria-current="page"]{color:var(--fg)}
.nav .ind{position:absolute;left:0;bottom:6px;height:2px;width:0;border-radius:0;background:var(--accent);transition:transform .35s cubic-bezier(.3,.7,.2,1),width .35s cubic-bezier(.3,.7,.2,1),opacity .2s;opacity:0;pointer-events:none}
.nav .ind::after{content:"";position:absolute;right:-7px;top:-2px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.dd{position:relative}
.dd svg{width:12px;height:12px;transition:transform .2s}
.dd[data-open] svg{transform:rotate(180deg)}
.menu{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);width:min(560px,92vw);background:var(--card);border:1px solid var(--line);border-radius:0;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px;box-shadow:0 24px 50px rgba(0,0,0,.18)}
.menu[hidden]{display:none}
.menu a{display:flex;gap:12px;align-items:center;padding:8px;border-radius:0;text-decoration:none;color:var(--fg)}
.menu a:hover,.menu a:focus-visible{background:var(--surface)}
.menu img{width:52px;height:52px;border-radius:0;flex:none}
.menu b{display:block;font-size:14px;line-height:1.25}
.menu span{font-size:12px;color:var(--fg3);line-height:1.3;display:block}
.tools{display:flex;gap:8px;align-items:center}
.ibtn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--fg);display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s}
.ibtn:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.ibtn svg{width:18px;height:18px}
.burger{display:none}
.mnav{border-top:1px solid var(--line);padding-block:8px 14px}
.mnav[hidden]{display:none}
.mnav a{display:flex;align-items:center;gap:12px;padding:10px 0;text-decoration:none;font-weight:600;min-height:44px}
.mnav img{width:36px;height:36px;border-radius:0}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:11px 20px;border-radius:999px;font-weight:700;font-size:14.5px;text-decoration:none;border:1px solid transparent;transition:transform .15s,background .2s,color .2s,border-color .2s}
.btn:hover{transform:translateY(-1px)}
.btn.fill{background:var(--accent);color:var(--accent-ink)}
.btn.ink{background:var(--fg);color:var(--bg)}
.btn.line{border-color:var(--line);color:var(--fg)}
.btn.line:hover{border-color:var(--fg)}
.btn svg{width:16px;height:16px}
.row{display:flex;gap:10px;flex-wrap:wrap}

/* sections */
.sec{padding-block:clamp(40px,6vw,72px)}
#shows{scroll-margin-top:84px}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.sec-head h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-txt);margin:0 0 10px}

/* ---------- HOME ---------- */
.h-hero{padding-block:clamp(28px,5vw,56px) 10px}
.h-hero .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.h-hero h1{font-family:var(--disp);text-transform:uppercase;font-size:clamp(3.2rem,7.6vw,6.6rem);line-height:.9;letter-spacing:-.01em}
.h-hero h1 em{font-style:normal;color:var(--accent)}
.h-hero h1 .stroke{color:transparent;-webkit-text-stroke:2px var(--fg)}
.h-hero .lede{font-size:1.1rem;color:var(--fg2);max-width:34rem;margin-top:20px}
.h-hero .row{margin-top:26px}
.facts{list-style:none;margin:30px 0 0;padding:18px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.facts b{font-family:var(--disp);font-weight:500;font-size:clamp(1.8rem,3.2vw,2.5rem);line-height:1;display:block}
.facts span{display:block;margin-top:6px;font-size:12.5px;line-height:1.35;color:var(--fg3);font-weight:600}
.feature{background:#141210;color:#FCF5EA;border-radius:0;padding:clamp(18px,3vw,26px);display:flex;flex-direction:column;gap:16px;text-decoration:none;min-width:0}
.feature .top{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.feature .live{background:#F5C04A;color:#141210;border-radius:999px;padding:4px 10px}
.feature .top .num{color:#B0A796}
.ring{position:relative;width:min(100%,360px);aspect-ratio:1;margin-inline:auto}
.ring svg{position:absolute;inset:0;width:100%;height:100%}
.ring .r1{animation:spin 44s linear infinite}
.ring .r2{animation:spin 30s linear infinite reverse}
.ring text{font-family:"Oswald",sans-serif;text-transform:uppercase;fill:#FCF5EA}
@keyframes spin{to{transform:rotate(360deg)}}
.ring .core{position:absolute;inset:27%;border-radius:50%;overflow:hidden;box-shadow:0 0 0 6px #141210,0 0 0 7px #3A352F}
.ring .core img{width:100%;height:100%;object-fit:cover}
.ring .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background:#F5C04A;color:#141210;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform .2s}
.feature:hover .play{transform:translate(-50%,-50%) scale(1.07)}
.ring .play svg{width:24px;height:24px}
.feature .meta small{display:block;font-size:12px;color:#B0A796;font-weight:600}
.feature .meta b{display:block;font-family:"Oswald",sans-serif;font-weight:500;font-size:clamp(1.25rem,2.2vw,1.55rem);line-height:1.15;margin-top:4px}
.feature .meta span{display:inline-block;margin-top:10px;color:#F5C04A;font-weight:700;font-size:13.5px}

.tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(14px,2vw,24px)}
.tile{grid-column:span 2;display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--fg)}
.tile:nth-child(-n+2){grid-column:span 3}
.tile .art{position:relative;border-radius:0;overflow:hidden;aspect-ratio:1;box-shadow:0 1px 0 var(--line)}
.tile .art img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.tile:hover .art img{transform:scale(1.04)}
.tile .go{position:absolute;right:14px;bottom:14px;width:48px;height:48px;border-radius:50%;background:#FCF5EA;color:#141210;display:grid;place-items:center;transform:translateY(8px);opacity:0;transition:.25s}
.tile:hover .go,.tile:focus-visible .go{transform:none;opacity:1}
.tile .go svg{width:18px;height:18px}
.tile .tag{position:absolute;left:14px;top:14px;background:#FCF5EA;color:#141210;border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700}
.tile h3{font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.35rem,2.2vw,1.75rem)}
.tile p{color:var(--fg2);font-size:14.5px;margin-top:6px;max-width:44ch}
.tile .info{font-size:12px;font-weight:700;color:var(--fg3);margin-top:8px;letter-spacing:.02em}

.eps{display:grid;gap:0}
.ep{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:center;padding-block:14px;border-top:1px solid var(--line);text-decoration:none;color:var(--fg)}
.ep:last-child{border-bottom:1px solid var(--line)}
.ep img{width:72px;height:72px;border-radius:0}
.ep small{display:block;font-size:12px;font-weight:600;color:var(--fg3)}
.ep b{display:block;font-weight:600;font-size:1.02rem;line-height:1.35;margin-top:2px}
.ep .dur{font-size:12.5px;font-weight:700;color:var(--fg3);white-space:nowrap}
.ep:hover b{color:var(--accent-txt)}

.band{background:#141210;color:#FCF5EA;border-radius:0;padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:36px}
.band h2{font-family:"Oswald",sans-serif;text-transform:uppercase;font-size:clamp(2rem,4.4vw,3.2rem)}
.band h2 span{color:#F5C04A}
.band .lede{color:#D8CFC1;margin-top:14px;max-width:30rem}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#3A352F;border-radius:0;overflow:hidden}
.stat{background:#141210;padding:22px}
.stat b{font-family:"Oswald",sans-serif;font-weight:500;font-size:clamp(2rem,4vw,3rem);line-height:1;color:#F5C04A;display:block}
.stat span{display:block;margin-top:8px;font-size:14px;color:#E9E1D3}
.stat small{display:block;margin-top:6px;font-size:12.5px;color:#B0A796}

.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.panel{border-radius:0;padding:clamp(24px,4vw,40px);display:flex;flex-direction:column;gap:14px}
.panel.p1{background:var(--accent);color:var(--accent-ink)}
.panel.p2{background:var(--surface)}
.panel h2{font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.9rem,3.6vw,2.6rem)}
.panel .row{margin-top:auto;padding-top:8px}
.panel.p1 .btn.ink{background:#141210;color:#FCF5EA}
.about-mini{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:center}
.about-mini img{width:120px;height:120px;border-radius:50%;object-fit:cover;object-position:52% 30%}

/* ---------- SHOW PAGES ---------- */
.s-hero{position:relative;overflow:hidden;isolation:isolate}
.s-hero .bgart{position:absolute;inset:-10%;z-index:-2;background-size:cover;background-position:center;filter:blur(60px) saturate(1.2);opacity:.55;transform:scale(1.1)}
.s-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 55%,transparent),var(--bg) 92%)}
.s-hero .wrap{padding-block:clamp(28px,5vw,64px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px);align-items:center}
.s-art{border-radius:0;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.45);aspect-ratio:1;max-width:520px;width:100%}
.s-art img{width:100%;height:100%;object-fit:cover}
.s-hero h1{font-family:var(--disp);font-size:clamp(2.8rem,6.4vw,5.6rem);line-height:.92;font-weight:800}
html[data-show="omr"] .s-hero h1{text-transform:uppercase}
html[data-show="wis"] .s-hero h1,html[data-show="wan"] .s-hero h1{text-transform:uppercase}
html[data-show="wis"] .s-hero h1{font-weight:600}
html[data-show="wan"] .s-hero h1{font-weight:400;color:var(--accent-txt)}
html[data-show="mab"] .s-hero h1{font-weight:400}
.s-hero .pitch{font-size:1.15rem;color:var(--fg2);margin-top:18px;max-width:36rem}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chip{border:1px solid var(--line);border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:700;color:var(--fg2);background:color-mix(in srgb,var(--surface) 60%,transparent)}
.chip b{color:var(--fg)}
.listen{margin-top:24px}
.crumb{font-size:13px;font-weight:600;color:var(--fg3);display:flex;gap:8px;align-items:center;margin-bottom:16px}
.crumb a{text-decoration:none;color:var(--fg2)}
.crumb a:hover{color:var(--fg)}

.player{background:var(--card);border:1px solid var(--line);border-radius:0;padding:clamp(16px,2.6vw,24px)}
.player-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.player-top h2{font-family:var(--disp);font-size:1.6rem}
.frame{position:relative;border-radius:0;overflow:hidden;background:var(--surface)}
.frame .fallback{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:16px;font-size:14px;color:var(--fg3)}
.frame .fallback a{color:var(--accent-txt);font-weight:700}
.player iframe{position:relative;display:block;width:100%;height:190px;border:0;background:transparent}

.split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.prose p{margin-bottom:14px;max-width:62ch;color:var(--fg2);font-size:1.04rem}
.prose p:first-child{color:var(--fg);font-size:1.18rem;line-height:1.5}
.ach{display:grid;gap:10px}
.ach li{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;background:var(--card);border:1px solid var(--line);border-radius:0;padding:16px}
.ach{padding:0;margin:0}
.ach i{font-style:normal;width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:800;font-size:14px}
.ach b{display:block;font-size:15px;line-height:1.35}
.ach small{display:block;font-size:12px;color:var(--fg3);margin-top:3px}

.stories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.stories.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.stories.c4 .story h3{font-size:1.3rem}
.story{background:var(--card);border:1px solid var(--line);border-radius:0;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--fg)}
.story .ph{aspect-ratio:4/3;position:relative;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--accent) 22%,var(--surface)));display:grid;place-items:center;color:var(--fg3);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.story .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.story .ph em{font-style:normal;border:1px dashed var(--fg3);border-radius:999px;padding:5px 12px}
.story .tx{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}
.story small{font-size:12px;font-weight:700;color:var(--accent-txt);letter-spacing:.04em}
.story h3{font-family:var(--disp);font-size:1.45rem;line-height:1.05}
html[data-show="omr"] .story h3,html[data-show="wis"] .story h3{text-transform:uppercase}
.story p{font-size:14.5px;color:var(--fg2)}
.story .lk{margin-top:auto;padding-top:6px;font-size:13.5px;font-weight:700;color:var(--accent-txt)}

.soon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.soon .card{border:1px dashed var(--line);border-radius:0;padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:12px;background:color-mix(in srgb,var(--surface) 50%,transparent)}
.soon h3{font-family:var(--disp);font-size:clamp(1.6rem,3vw,2.2rem);text-transform:uppercase}
.soon .pill{align-self:flex-start;background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.slots{display:grid;gap:8px;margin-top:4px}
.slot{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border-radius:0;background:var(--card);opacity:.75}
.slot i{width:42px;height:42px;border-radius:0;background:var(--surface);border:1px dashed var(--line)}
.slot span{height:10px;border-radius:0;background:var(--line);display:block}
.slot span+span{width:60%;margin-top:7px;height:8px}

.guests{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.guest{background:var(--card);border:1px solid var(--line);border-radius:0;padding:16px;text-decoration:none;color:var(--fg)}
.guest b{display:block;font-family:var(--disp);font-size:1.3rem;font-weight:400;text-transform:uppercase;line-height:1.1}
.guest span{font-size:13.5px;color:var(--fg2)}

.next{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:20px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:0;padding:16px;text-decoration:none;color:var(--fg)}
.next img{width:120px;height:120px;border-radius:0}
.next small{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3)}
.next b{display:block;font-size:1.5rem;font-family:"Oswald",sans-serif;font-weight:500;text-transform:uppercase;line-height:1.1;margin-top:4px}
.next .arr{width:52px;height:52px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.next .arr svg{width:20px;height:20px}

/* ---------- ABOUT / PARTNERS / CONTACT ---------- */
.p-hero{padding-block:clamp(32px,5vw,64px) 0}
.p-hero h1{font-family:var(--disp);text-transform:uppercase;font-size:clamp(3.2rem,7.6vw,6.6rem);line-height:.9;letter-spacing:-.01em}
.p-hero .lede{font-size:1.15rem;color:var(--fg2);margin-top:18px;max-width:40rem}
.bio{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,5vw,64px);align-items:start}
.bio figure{margin:0;position:relative}
.bio figure img{width:100%;border-radius:0;aspect-ratio:4/5;object-fit:cover;object-position:52% 30%}
.bio figcaption{font-size:12.5px;color:var(--fg3);margin-top:10px}
.timeline{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--line)}
.timeline li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding-block:13px;border-bottom:1px solid var(--line);font-size:15px}
.timeline b{font-family:var(--disp);font-weight:500;font-size:1.05rem}
.lockup{width:min(440px,100%);margin-inline:auto}
.ways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.way{background:var(--card);border:1px solid var(--line);border-radius:0;padding:clamp(20px,3vw,30px);display:flex;flex-direction:column;gap:10px}
.way h3{font-family:var(--disp);text-transform:uppercase;font-size:1.6rem}
.way p{color:var(--fg2);font-size:15px}
.way .tagline{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-txt)}
.form-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,56px);align-items:start}
.form-card{background:var(--card);border:1px solid var(--line);border-radius:0;padding:clamp(20px,3vw,32px)}
form{display:grid;gap:14px}
label{font-size:13px;font-weight:700;display:grid;gap:6px}
input,select,textarea{font:inherit;font-size:15px;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:0;padding:12px 14px;min-height:46px;width:100%}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--fg);outline-offset:0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.err{color:#A3260F;font-size:13px;font-weight:600;min-height:1.1em}
.ok{background:var(--surface);border-radius:0;padding:16px;font-size:14.5px}
.contact-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.contact-list li{display:grid;gap:2px;padding:14px 0;border-bottom:1px solid var(--line)}
.contact-list small{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg3)}
.contact-list b{font-size:16px;word-break:break-word}
.copy{border:1px solid var(--line);background:transparent;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;margin-left:8px;min-height:32px}

/* footer */
footer{border-top:1px solid var(--line);margin-top:clamp(32px,5vw,64px)}
footer .wrap{padding-block:40px 48px;display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:28px}
footer h4{margin:0 0 10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg3)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
footer a{text-decoration:none;color:var(--fg2);font-size:14.5px;display:inline-block;padding-block:4px}
footer a:hover{color:var(--fg)}
footer .fine{grid-column:1/-1;font-size:12.5px;color:var(--fg3);border-top:1px solid var(--line);padding-top:20px}
.fbrand{display:flex;gap:12px;align-items:center}
.fbrand img{width:72px}

/* search */
.sp{position:fixed;inset:0;z-index:60;background:rgba(10,10,10,.5);display:grid;place-items:start center;padding:calc(80px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
.sp[hidden]{display:none}
.sp .box{width:min(620px,100%);background:#141210;color:#FCF5EA;border-radius:0;padding:14px;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.sp .bar2{display:flex;gap:10px;align-items:center;border-bottom:1px solid #2E2A26;padding-bottom:10px}
.sp input{background:transparent;border:0;color:#FCF5EA;padding:8px 4px;min-height:44px}
.sp input:focus{outline:none}
.sp input::placeholder{color:#9D9486}
.sp .x{width:44px;height:44px;border-radius:50%;border:0;background:#F5C04A;color:#141210;flex:none;font-weight:800;font-size:18px}
.sp ul{list-style:none;margin:0;padding:8px 0 0;max-height:min(60vh,440px);overflow:auto}
.sp li a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;padding:8px;border-radius:0;text-decoration:none;font-size:14.5px;line-height:1.3}
.sp li a:hover,.sp li a:focus-visible{background:#2A2622}
.sp li img{width:40px;height:40px;border-radius:0}
.sp small{display:block;color:#B0A796;font-size:12px}
.sp .hint{color:#B0A796;font-size:12.5px;padding:10px 8px 2px}

.page{animation:fade .35s ease}
@keyframes fade{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}

@media (max-width:1000px){
  .h-hero .wrap,.s-hero .wrap,.split,.band,.bio,.form-wrap{grid-template-columns:1fr}
  .s-art{max-width:420px}
  .stories,.stories.c4{grid-template-columns:repeat(2,minmax(0,1fr))}
  footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .hdr .nav{display:none}
  .burger{display:grid}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tile,.tile:nth-child(-n+2){grid-column:span 1}
  .tile:first-child{grid-column:1/-1}
  .duo,.ways,.soon{grid-template-columns:1fr}
}
@media (max-width:540px){
  .brand .wm{font-size:16px}
  .brand img{width:46px}
  .tiles,.stories,.stories.c4,.stats,.two{grid-template-columns:1fr}
  .tile:first-child{grid-column:auto}
  .ep{grid-template-columns:56px minmax(0,1fr)}
  .ep img{width:56px;height:56px}
  .ep .dur{display:none}
  .next{grid-template-columns:72px minmax(0,1fr)}
  .next img{width:72px;height:72px}
  .next .arr{display:none}
  .timeline li{grid-template-columns:72px minmax(0,1fr)}
  .about-mini{grid-template-columns:84px minmax(0,1fr)}
  .about-mini img{width:84px;height:84px}
  footer .wrap{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ---- WordPress additions ---- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.spotify iframe{width:100%;height:352px;border:0;border-radius:0}
.entry{max-width:68ch}
.entry p{margin-bottom:14px;color:var(--fg2)}
.admin-bar .hdr{top:calc(32px + env(safe-area-inset-top,0px))}
@media (max-width:782px){.admin-bar .hdr{top:calc(46px + env(safe-area-inset-top,0px))}}

/* ================= Editorial pass (v1.0.2) =================
   No floating cards: content sits on the page between hairline rules. */

/* achievements: a ruled list, no numbers (they aren't a sequence) */
.ach{list-style:none;margin:0;padding:0;display:block;border-bottom:1px solid var(--line)}
.ach li{display:block;background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 0}
.ach b{display:block;font-size:1.12rem;font-weight:700;line-height:1.35;color:var(--fg)}
.ach small{display:block;margin-top:6px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3)}

/* hero meta: plain text, separated by thin bars, not pills */
.chips{gap:0;margin-top:20px}
.chip{border:0;background:none;padding:0 14px 0 0;margin-right:14px;border-right:1px solid var(--line);border-radius:0;font-size:13px;color:var(--fg3)}
.chip:last-child{border-right:0;margin-right:0}

/* player: no box around it */
.player{background:none;border:0;padding:0;border-top:1px solid var(--line);padding-top:18px}
.frame{background:var(--surface)}

/* featured stories: image then text, straight on the page */
.story{background:none;border:0;gap:0}
.story .ph{background:var(--surface)}
.story .ph em{border:0;padding:0;letter-spacing:.14em}
.story .tx{padding:16px 0 0;border-top:0}
.story h3{font-size:1.6rem}
.stories{column-gap:28px;row-gap:40px}

/* coming-soon sections */
.soon{gap:40px}
.soon .card{border:0;border-top:2px solid var(--accent);background:none;padding:22px 0 0}
.soon .pill{border-radius:0;background:none;color:var(--accent-txt);padding:0;letter-spacing:.14em}
.slot{background:none;border-top:1px solid var(--line);padding:12px 0;opacity:1}
.slot i{background:var(--surface);border:0}

/* guests: a ruled two-column list */
.guests{gap:0 40px;border-bottom:1px solid var(--line)}
.guest{background:none;border:0;border-top:1px solid var(--line);padding:16px 0}

/* next show: a ruled row */
.next{background:none;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.next .arr{border-radius:0;background:none;color:var(--accent-txt);width:auto;height:auto}
.next .arr svg{width:32px;height:32px}

/* partnerships: rule above each option */
.ways{gap:36px 48px}
.way{background:none;border:0;border-top:2px solid var(--fg);padding:20px 0 0}

/* forms: underlined fields, no card */
.form-card{background:none;border:0;padding:0}
input,select,textarea{background:transparent;border:0;border-bottom:1px solid var(--fg3);padding:10px 0;min-height:44px}
input:focus,select:focus,textarea:focus{outline:0;border-bottom:2px solid var(--fg)}
textarea{min-height:110px}
.ok{background:none;border-top:2px solid var(--accent);padding:16px 0}

/* home panels and dark band: flat blocks, no floating radius */
.panel{padding:clamp(24px,4vw,44px)}
.panel.p2{background:none;border-top:2px solid var(--fg);padding-left:0;padding-right:0}
.feature .live{border-radius:0;letter-spacing:.08em}
.tile .tag{border-radius:0;letter-spacing:.04em}
.tile .go{border-radius:0}
.about-mini img{border-radius:0}

/* episode rows and menus */
.ep img{border-radius:0}
.menu{box-shadow:0 18px 40px rgba(0,0,0,.14)}
.menu a{border-radius:0}
.menu img{border-radius:0}

@media (max-width:540px){
  .chip{padding-right:10px;margin-right:10px}
}

/* privacy page and form note (v1.0.3) */
.entry{max-width:68ch}
.entry h2{font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.4rem,2.6vw,1.9rem);margin:36px 0 12px;padding-top:18px;border-top:1px solid var(--line)}
.entry p,.entry li{color:var(--fg2);font-size:1.02rem;line-height:1.65}
.entry ul{padding-left:1.2rem;margin:0 0 14px}
.entry li{margin-bottom:6px}
.entry a{color:var(--accent-txt);font-weight:600}
.entry strong{color:var(--fg)}
.form-note{font-size:12.5px;color:var(--fg3);margin:-4px 0 0}
.form-note a{color:inherit}

/* privacy page: full-width text, heading matches the homepage headline (v1.0.4) */
body.privacy-policy .entry{max-width:none}
footer .fine a{color:inherit;font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:3px}
footer .fine a:hover{color:var(--fg)}

/* page headings: outlined last word, as on the homepage (v1.0.5) */
.p-hero h1 .stroke{color:transparent;-webkit-text-stroke:2px var(--fg)}

/* homepage play button: keep the icon centred (the ring rule was pinning it top left) (v1.0.6) */
.ring .play svg{position:static;inset:auto;width:26px;height:26px;margin-left:4px}

/* v1.0.8: bigger tap targets on touch screens (44px rows), without changing the look */
@media (hover:none),(max-width:1024px){
footer ul{gap:0}
footer a{padding-block:12px}
footer .fine a{padding-block:0}
.player-top a{display:inline-block;padding-block:12px}
}
