/* Dead Signal Choir — fixed Simply version */

:root{
  --black:#020202;
  --panel:#060606;
  --panel2:#0a0a0a;
  --text:#e7e1d8;
  --muted:#8d8780;
  --dim:#55504b;
  --line:rgba(231,225,216,.12);
  --line2:rgba(231,225,216,.24);
  --red:#941017;
  --red2:#c1121f;
  --red3:#e01624;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{
  margin:0;
  width:100%;
  min-height:100%;
  background:#020202;
  color:var(--text);
  font-family:Inter, "Helvetica Neue", Arial, sans-serif;
  overflow-x:hidden;
}

body{
  background:
    radial-gradient(circle at 7% 28%, rgba(193,18,31,.09), transparent 21rem),
    linear-gradient(180deg,#020202 0%,#050505 100%);
}

.grain,.scan{position:fixed;inset:0;z-index:80;pointer-events:none}
.grain{
  opacity:.18;
  mix-blend-mode:screen;
  background-image:
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 4px),
    radial-gradient(circle at 22% 41%, rgba(255,255,255,.09) 0 1px, transparent 1px);
}
.scan{opacity:.11;background:repeating-linear-gradient(180deg, transparent 0 6px, rgba(255,255,255,.08) 7px, transparent 8px)}
.edge-signal{
  position:fixed;left:-86px;top:112px;width:220px;height:1px;z-index:90;
  background:linear-gradient(90deg, transparent, #5e080c, var(--red2), transparent);
  box-shadow:0 0 12px rgba(193,18,31,.52);
}
.edge-signal::before,.edge-signal::after{
  content:"";position:absolute;border-left:1px solid var(--red2);border-right:1px solid var(--red2);transform:skewX(-17deg);opacity:.8;
}
.edge-signal::before{left:50%;top:-8px;width:14px;height:17px}
.edge-signal::after{left:58%;top:-14px;width:14px;height:28px}

.page{
  width:100vw;min-height:100vh;display:grid;
  grid-template-rows:64px minmax(430px, calc(100vh - 230px)) 166px;
  background:#050505;overflow:hidden;
}
.topbar{
  position:relative;z-index:30;display:grid;grid-template-columns:180px 1fr 180px;align-items:center;height:64px;padding:0 36px;
  background:linear-gradient(180deg,#040404 0%,#050505 100%);
  border-bottom:1px solid rgba(255,255,255,.065);
}
.brand{
  position:relative;display:inline-flex;align-items:center;justify-content:flex-start;width:118px;height:64px;color:var(--text);
  text-decoration:none;text-transform:uppercase;font-family:Impact,"Arial Narrow","Helvetica Neue Condensed",sans-serif;font-size:35px;line-height:1;
  letter-spacing:.085em;transform:scaleX(.84);transform-origin:left center;opacity:.95;text-shadow:0 1px 0 rgba(0,0,0,.8),0 0 14px rgba(231,225,216,.10);
}
.brand::after{
  content:"";position:absolute;left:1px;bottom:15px;width:22px;height:2px;background:var(--red2);box-shadow:0 0 9px rgba(193,18,31,.72);opacity:.82;
}
.nav{height:64px;display:flex;align-items:center;justify-content:center;gap:31px}
.nav a{
  position:relative;display:flex;align-items:center;height:64px;color:var(--text);text-decoration:none;text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;opacity:.88;
}
.nav a.active::after,.nav a:hover::after{content:"";position:absolute;left:0;right:0;bottom:14px;height:2px;background:var(--red2);box-shadow:0 0 10px rgba(193,18,31,.85)}
.socials{display:flex;justify-content:flex-end;align-items:center;gap:15px}
.socials a{display:grid;place-items:center;width:18px;height:18px;color:var(--text);opacity:.82;text-decoration:none;transition:opacity .15s ease,color .15s ease,transform .15s ease}
.socials a:hover{color:var(--red2);opacity:1;transform:translateY(-1px)}
.socials svg{width:17px;height:17px;display:block}
.socials svg *{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.socials a[aria-label="Facebook"] svg *,.socials a[aria-label="TikTok"] svg *{fill:currentColor;stroke:none}
.socials a[aria-label="YouTube"] svg path{fill:currentColor;stroke:none}

.hero{position:relative;min-height:0;overflow:hidden;background:#050505;isolation:isolate}
.hero-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:contrast(1.04) saturate(.94)}
.hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.96) 0%, rgba(0,0,0,.88) 20%, rgba(0,0,0,.64) 39%, rgba(0,0,0,.24) 62%, rgba(0,0,0,.42) 100%),
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.66));
  pointer-events:none;
}
.hero-content{position:absolute;z-index:3;left:36px;top:50%;transform:translateY(-50%);width:min(690px,50vw);padding:0}
.kicker{
  margin:0 0 18px;color:var(--red2);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:13px;font-weight:700;letter-spacing:.24em;
}
h1{
  margin:0;color:#e4ded5;font-family:Impact,"Arial Narrow","Helvetica Neue Condensed",sans-serif;text-transform:uppercase;
  font-size:clamp(58px,5.9vw,112px);line-height:.91;letter-spacing:.035em;
  text-shadow:0 2px 0 rgba(0,0,0,.78),0 0 1px rgba(255,255,255,.55),0 0 24px rgba(0,0,0,1);
  transform:scaleX(.82);transform-origin:left center;max-width:760px;
}
h1 span{display:block}
.subline{margin:24px 0 0;max-width:430px;color:#bdb6ad;font-size:15px;line-height:1.55;letter-spacing:.04em}
.actions{display:flex;align-items:center;gap:24px;margin-top:30px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:12px;font-weight:700;letter-spacing:.15em;
}
.btn-red{height:39px;padding:0 23px;background:linear-gradient(180deg,#ac1720,#751016);color:#fff;box-shadow:0 10px 26px rgba(110,0,0,.31), inset 0 0 0 1px rgba(255,255,255,.075)}
.btn-red:hover{background:linear-gradient(180deg,#c1121f,#89131a)}
.btn-ghost{color:#ded8cf;opacity:.85}
.btn-ghost i{display:grid;place-items:center;width:21px;height:21px;margin-left:8px;border:1px solid rgba(231,225,216,.5);border-radius:50%;font-size:7px;font-style:normal}
.frequency-card{position:absolute;z-index:4;right:36px;bottom:28px;width:230px;padding:16px 18px;border:1px solid rgba(231,225,216,.13);background:rgba(0,0,0,.38);backdrop-filter:blur(2px)}
.frequency-card span{display:block;margin-bottom:7px;color:var(--red2);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:11px;font-weight:700;letter-spacing:.18em}
.frequency-card strong{display:block;color:var(--text);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:19px;letter-spacing:.11em}

.transmission-strip{display:grid;grid-template-columns:190px minmax(330px,1fr) minmax(395px,1fr) minmax(300px,.9fr);min-height:166px;background:linear-gradient(180deg,rgba(10,10,10,.98),rgba(4,4,4,.99));border-top:1px solid var(--line)}
.transmission-strip > article{border-right:1px solid rgba(255,255,255,.075)}
.transmission-strip > article:last-child{border-right:0}
.signal-tile{display:grid;place-items:center}
.signal-mark{position:relative;width:88px;height:88px;border:1px solid rgba(231,225,216,.27);background:radial-gradient(circle at center, rgba(193,18,31,.19), transparent 36%),#050505;box-shadow:inset 0 0 30px rgba(193,18,31,.08)}
.signal-mark.big{width:132px;height:132px}
.signal-mark::before,.signal-mark::after,.signal-mark span::before,.signal-mark span::after{content:"";position:absolute;background:var(--red2);box-shadow:0 0 9px rgba(193,18,31,.48)}
.signal-mark::before{left:50%;top:17px;bottom:17px;width:1px}
.signal-mark::after{top:50%;left:24px;right:24px;height:1px}
.signal-mark span::before{left:50%;top:29px;width:1px;height:12px;transform:translateX(-8px) rotate(35deg)}
.signal-mark span::after{left:50%;bottom:31px;width:1px;height:13px;transform:translateX(7px) rotate(-35deg)}
.release,.quote,.ticker{padding:32px 36px 24px}
.release p,.ticker p,.red-label{margin:0 0 10px;color:var(--red2);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:12px;font-weight:700;letter-spacing:.18em}
.release h2{margin:0 0 18px;color:var(--text);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:35px;line-height:1;font-weight:400;letter-spacing:.17em}
.release a{height:29px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;color:var(--text);border:1px solid rgba(231,225,216,.28);text-decoration:none;text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em}
.quote{position:relative;padding-left:70px}
.quote b{position:absolute;left:39px;top:25px;color:var(--red2);font-family:Georgia,serif;font-size:44px;line-height:1}
.quote blockquote{margin:0;color:#d9d2c9;text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:28px;line-height:1.17;font-weight:400;letter-spacing:.17em}
.quote cite{display:block;margin-top:12px;color:var(--red2);font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:14px;letter-spacing:.15em;font-style:normal}
.ticker strong{display:block;max-width:300px;color:#d9d2c9;text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:24px;line-height:1.2;letter-spacing:.15em;font-weight:400}

.section{width:100vw;background:#050505;padding:90px 36px;border-top:1px solid rgba(255,255,255,.07)}
.below-fold{background:radial-gradient(circle at 8% 10%, rgba(193,18,31,.075), transparent 22rem),linear-gradient(180deg,#050505 0%,#030303 100%)}
.manifest{max-width:980px}
.manifest p,.section-head p{margin:0 0 18px;color:var(--red2);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;letter-spacing:.2em}
.manifest h2,.section-head h2{margin:0;color:var(--text);font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(42px,5vw,86px);line-height:.98;letter-spacing:.035em;transform:scaleX(.86);transform-origin:left center;max-width:1100px}
.section-head.compact h2{font-size:clamp(38px,4vw,64px)}
.body-copy{color:#a19a92;line-height:1.6;max-width:600px}

.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:70px;border:1px solid rgba(231,225,216,.14);background:rgba(231,225,216,.12)}
.signal-card{position:relative;min-height:282px;padding:34px 34px 30px;display:grid;grid-template-rows:auto 1fr auto;color:var(--text);text-decoration:none;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.026),transparent 44%),#080808;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.signal-card::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 84% 18%,rgba(193,18,31,.15),transparent 11rem),repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 5px);opacity:.62}
.signal-card::after{content:"";position:absolute;left:34px;right:34px;bottom:26px;height:1px;background:linear-gradient(90deg,var(--red2),transparent 76%);opacity:.42}
.signal-card:hover{transform:translateY(-2px);background:linear-gradient(180deg,rgba(193,18,31,.075),transparent 50%),#090909;box-shadow:0 18px 42px rgba(0,0,0,.34),inset 0 0 0 1px rgba(193,18,31,.18)}
.card-copy{position:relative;z-index:3;max-width:390px}
.signal-card span{display:block;color:var(--red2);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:12px;font-weight:700;line-height:1;letter-spacing:.21em}
.signal-card h3{margin:18px 0 0;max-width:395px;color:var(--text);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:34px;line-height:1.03;letter-spacing:.095em;font-weight:400}
.signal-card p{margin:18px 0 0;max-width:340px;color:#a19a92;font-size:14px;line-height:1.55;letter-spacing:.025em}
.signal-card strong{position:relative;z-index:3;align-self:end;display:inline-flex;width:max-content;color:#d9d2c9;text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:13px;font-weight:700;letter-spacing:.16em;transition:color .18s ease}
.signal-card:hover strong{color:var(--red2)}
.card-visual{position:absolute;z-index:1;right:30px;bottom:44px;pointer-events:none}
.waveform{width:152px;height:58px;display:flex;align-items:center;justify-content:space-between;gap:7px;opacity:.5}
.waveform::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--red2);box-shadow:0 0 10px rgba(193,18,31,.45)}
.waveform i{display:block;width:2px;background:var(--red2);box-shadow:0 0 9px rgba(193,18,31,.45)}
.waveform i:nth-child(1){height:14px}.waveform i:nth-child(2){height:42px}.waveform i:nth-child(3){height:25px}.waveform i:nth-child(4){height:55px}.waveform i:nth-child(5){height:31px}.waveform i:nth-child(6){height:48px}.waveform i:nth-child(7){height:22px}.waveform i:nth-child(8){height:37px}.waveform i:nth-child(9){height:16px}
.visuals-card{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.62)),url("assets/hero-damon-delilah-approved.png") 72% center / cover no-repeat,#080808}
.visuals-card::before{background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.45)),repeating-linear-gradient(0deg,rgba(255,255,255,.024) 0 1px,transparent 1px 5px);opacity:1}
.viewfinder{width:112px;height:76px;border:1px solid rgba(231,225,216,.42);opacity:.44}
.viewfinder::before,.viewfinder::after{content:"";position:absolute;width:30px;height:20px;border-color:var(--red2);border-style:solid}
.viewfinder::before{left:-1px;top:-1px;border-width:2px 0 0 2px}
.viewfinder::after{right:-1px;bottom:-1px;border-width:0 2px 2px 0}
.choir-card{padding-bottom:34px}
.choir-card .card-copy{padding-bottom:52px}
.mini-form{position:absolute;left:34px;right:34px;bottom:78px;z-index:3;display:grid;grid-template-columns:1fr auto;align-items:center;max-width:340px;height:38px;border:1px solid rgba(231,225,216,.17);background:rgba(0,0,0,.32);box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.mini-form em{padding-left:13px;color:#77716b;text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-style:normal;font-size:11px;letter-spacing:.16em}
.mini-form b{height:100%;display:grid;place-items:center;padding:0 15px;color:#fff;background:linear-gradient(180deg,#a71920,#741015);text-transform:uppercase;font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;font-size:11px;letter-spacing:.15em}

.music-section{background:#040404}
.music-grid{margin-top:55px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:1px;border:1px solid rgba(231,225,216,.12);background:rgba(231,225,216,.1)}
.release-feature{display:grid;grid-template-columns:220px 1fr;gap:34px;padding:34px;background:#080808}
.cover-large{min-height:220px;display:grid;place-items:center;background:#050505;border:1px solid rgba(231,225,216,.14)}
.release-feature h3{margin:0;font-family:"Arial Narrow",Impact,sans-serif;text-transform:uppercase;font-size:44px;letter-spacing:.13em;font-weight:400}
.platform-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.platform-row a,.terminal-box a{display:inline-flex;align-items:center;min-height:34px;padding:0 16px;color:var(--text);border:1px solid rgba(231,225,216,.23);text-decoration:none;text-transform:uppercase;font-family:"Arial Narrow",Impact,sans-serif;font-size:12px;letter-spacing:.15em}
.platform-row a:hover,.terminal-box a:hover{color:var(--red2);border-color:var(--red2)}
.track-list{display:grid;background:#080808}
.track-list article{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:18px;min-height:78px;padding:0 24px;border-bottom:1px solid rgba(231,225,216,.09)}
.track-list article:last-child{border-bottom:0}
.track-list span,.terminal-box span{color:var(--red2);font-family:"Arial Narrow",Impact,sans-serif;text-transform:uppercase;letter-spacing:.16em}
.track-list strong{font-family:"Arial Narrow",Impact,sans-serif;text-transform:uppercase;font-size:21px;letter-spacing:.08em;font-weight:400}
.track-list em{color:#8c867e;font-style:normal;text-transform:uppercase;font-family:"Arial Narrow",Impact,sans-serif;font-size:12px;letter-spacing:.12em}

.story-grid{margin-top:55px;display:grid;grid-template-columns:1fr 1fr;gap:1px;border:1px solid rgba(231,225,216,.1);background:rgba(231,225,216,.1)}
.story-grid article,.terminal-box{padding:34px;background:#080808}
.story-grid h3,.terminal-box strong{display:block;margin:0 0 16px;font-family:"Arial Narrow",Impact,sans-serif;text-transform:uppercase;font-size:32px;letter-spacing:.1em;font-weight:400}
.story-grid p,.terminal-box p,.choir-panel p{color:#a19a92;line-height:1.65;max-width:620px}
.media-grid{margin-top:55px;display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:240px;gap:1px;border:1px solid rgba(231,225,216,.1);background:rgba(231,225,216,.1)}
.media-tile{position:relative;overflow:hidden;background:#080808;padding:28px;text-decoration:none;color:var(--text)}
.media-tile.wide{grid-row:span 2}
.media-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}
.media-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.78))}
.media-tile span,.media-tile strong{position:relative;z-index:2;display:block;text-transform:uppercase;font-family:"Arial Narrow",Impact,sans-serif}
.media-tile span{color:var(--red2);letter-spacing:.2em;font-size:12px}
.media-tile strong{margin-top:18px;font-size:28px;letter-spacing:.12em;font-weight:400}
.tour-shop{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(231,225,216,.08)}
.split-section{background:#050505;padding:70px 36px}
.terminal-box{margin-top:36px;border:1px solid rgba(231,225,216,.11)}
.terminal-box a{margin-top:22px}
.choir-section{background:radial-gradient(circle at 80% 30%,rgba(193,18,31,.12),transparent 23rem),#040404}
.choir-panel{max-width:980px;border:1px solid rgba(231,225,216,.12);background:linear-gradient(180deg,rgba(255,255,255,.025),transparent),#080808;padding:44px}
.signup-form{margin-top:28px;display:grid;grid-template-columns:1fr auto;max-width:640px;border:1px solid rgba(231,225,216,.18)}
.signup-form label{position:absolute;left:-9999px}
.signup-form input{width:100%;min-height:48px;padding:0 16px;background:#050505;border:0;color:var(--text);outline:none;text-transform:uppercase;letter-spacing:.08em}
.signup-form button{min-width:120px;border:0;color:#fff;background:linear-gradient(180deg,#a71920,#741015);text-transform:uppercase;font-family:"Arial Narrow",Impact,sans-serif;letter-spacing:.15em}
.choir-panel small{display:block;margin-top:14px;color:#77716b;text-transform:uppercase;font-size:11px;letter-spacing:.16em}
.footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;padding:34px 36px;background:#020202;border-top:1px solid rgba(231,225,216,.12)}
.footer-brand{color:var(--text);text-decoration:none;font-family:Impact,"Arial Narrow",sans-serif;font-size:32px;letter-spacing:.08em}
.footer p{margin:8px 0 0;color:#8c867e}
.footer-links{display:flex;gap:20px}
.footer-links a{color:var(--text);text-decoration:none;text-transform:uppercase;font-family:"Arial Narrow",Impact,sans-serif;font-size:12px;letter-spacing:.16em}
.footer-links a:hover{color:var(--red2)}
.copyright{text-align:right}

@media (max-width:1100px){
  .transmission-strip{grid-template-columns:170px 1fr 1fr}
  .ticker,.frequency-card{display:none}
  .cards,.music-grid,.story-grid,.tour-shop{grid-template-columns:1fr}
  .media-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .page{grid-template-rows:auto minmax(560px,1fr) auto}
  .topbar{height:auto;grid-template-columns:1fr auto;gap:18px;padding:18px 20px}
  .brand{width:auto;height:auto;font-size:33px}
  .brand::after{bottom:-6px}
  .nav{grid-column:1 / -1;height:auto;justify-content:flex-start;flex-wrap:wrap;gap:18px 24px}
  .nav a{height:28px}
  .nav a.active::after{bottom:0}
  .hero-image{object-position:63% center}
  .hero-content{position:relative;left:auto;top:auto;transform:none;width:92vw;padding:90px 22px 0}
  h1{font-size:clamp(52px,13vw,80px)}
  .subline{max-width:310px}
  .transmission-strip{grid-template-columns:1fr}
  .transmission-strip > article{border-right:0;border-bottom:1px solid rgba(255,255,255,.075)}
  .signal-tile{min-height:126px}
  .section{padding:70px 22px}
  .release-feature{grid-template-columns:1fr}
  .track-list article{grid-template-columns:36px 1fr;align-items:start;padding:20px}
  .track-list em{grid-column:2}
  .media-grid{grid-template-columns:1fr;grid-auto-rows:220px}
  .media-tile.wide{grid-row:span 1}
  .footer{grid-template-columns:1fr;text-align:left}
  .copyright{text-align:left}
}
@media (max-width:640px){
  .signal-card{padding:28px 26px;min-height:250px}
  .signal-card::after{left:26px;right:26px}
  .signal-card h3{font-size:29px}
  .card-visual{right:24px;bottom:36px;opacity:.36}
  .mini-form{left:26px;right:26px}
}


/* V9 CLEAN CONTROL FIXES */

/* Hero image/video support */
.hero-video{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:contrast(1.04) saturate(.94);
}

/* Cards are panels. Only CTA text is clickable. */
.signal-card{
  cursor:default;
}

.signal-card .card-action{
  position:relative;
  z-index:3;
  align-self:end;
  display:inline-flex;
  width:max-content;
  color:#d9d2c9;
  text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.16em;
  text-decoration:none;
  transition:color .18s ease;
}

.signal-card:hover .card-action{
  color:var(--red2);
}

/* Real newsletter mini-form inside Choir card, restored to the old visual style */
.mini-form.mini-form-real{
  position:absolute;
  left:34px;
  right:34px;
  bottom:78px;
  z-index:4;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  max-width:340px;
  height:38px;
  border:1px solid rgba(231,225,216,.17);
  background:rgba(0,0,0,.32);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.25);
}

.mini-form.mini-form-real label{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}

.mini-form.mini-form-real input{
  width:100%;
  min-width:0;
  height:100%;
  border:0;
  outline:none;
  background:transparent;
  color:#d9d2c9;
  padding:0 13px;
  text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:11px;
  letter-spacing:.16em;
}

.mini-form.mini-form-real input::placeholder{
  color:#77716b;
  opacity:1;
}

.mini-form.mini-form-real button,
.signup-form button{
  height:100%;
  min-width:88px;
  border:0;
  color:#fff;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0) 35%),
    linear-gradient(180deg,#d31827 0%,#a4111b 48%,#720b12 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(0,0,0,.45),
    0 0 18px rgba(193,18,31,.18);
  text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
  cursor:pointer;
}

.mini-form.mini-form-real button:hover,
.signup-form button:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,0) 35%),
    linear-gradient(180deg,#e01624 0%,#b1121d 48%,#7f0c14 100%);
}

/* Media tiles with optional images/files */
.media-tile.dark{
  display:block;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),transparent 55%),
    radial-gradient(circle at 80% 12%,rgba(193,18,31,.08),transparent 12rem),
    #070707;
}

.media-tile.has-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.58;
}

.media-tile:not(a){
  cursor:default;
}

/* Avoid empty gray blocks when media is deliberately text-only */
.media-tile.dark::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px);
  pointer-events:none;
}


/* V10 MOBILE + MEDIA CONTROL */

/* Separate desktop/mobile hero media */
.hero-video-mobile{
  display:none;
}

.hero-picture{
  display:contents;
}

@media(max-width:760px){
  .hero-video-desktop.has-mobile{
    display:none;
  }

  .hero-video-mobile{
    display:block;
  }
}

/* Media description text */
.media-tile p{
  position:relative;
  z-index:2;
  max-width:32rem;
  margin:16px 0 0;
  color:#b9b1a8;
  font-size:15px;
  line-height:1.55;
}

.media-tile.dark p{
  max-width:22rem;
}

/* Terminal buttons can now be visible even without a link */
.terminal-box .terminal-action{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  margin-top:22px;
  padding:0 16px;
  color:var(--text);
  border:1px solid rgba(231,225,216,.23);
  text-decoration:none;
  text-transform:uppercase;
  font-family:"Arial Narrow",Impact,sans-serif;
  font-size:12px;
  letter-spacing:.15em;
}

.terminal-box .terminal-action.is-disabled{
  opacity:.55;
  cursor:default;
}

/* Mobile fix: the Choir card email field sits lower and no longer crashes into text */
@media(max-width:720px){
  .mini-form.mini-form-real{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:none;
    margin:26px 0 22px;
  }

  .choir-card .card-copy{
    padding-bottom:0;
  }

  .signal-card .card-action{
    margin-top:4px;
  }

  .media-tile p{
    font-size:14px;
    line-height:1.5;
  }
}

/* Admin note support is in admin.css, this keeps public clean. */


/* V11 SPOTIFY RELEASE + SPLIT SIGNAL CARDS */

.signal-stack{
  display:block;
}

.release-spotlight{
  margin-top:42px;
  border:1px solid rgba(231,225,216,.12);
  background:
    radial-gradient(circle at 82% 18%, rgba(193,18,31,.13), transparent 18rem),
    linear-gradient(90deg, rgba(193,18,31,.10), transparent 38%),
    #070707;
  display:grid;
  grid-template-columns:minmax(220px,360px) 1fr;
  min-height:360px;
  overflow:hidden;
  position:relative;
}

.release-cover{
  position:relative;
  min-height:360px;
  border-right:1px solid rgba(231,225,216,.10);
  background:
    radial-gradient(circle at 50% 45%,rgba(193,18,31,.10),transparent 14rem),
    #050505;
  display:grid;
  place-items:center;
}

.release-cover img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.78;
}

.release-cover::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));
}

.release-spotlight-copy{
  padding:44px;
  align-self:center;
  position:relative;
  z-index:2;
}

.release-spotlight h3{
  margin:10px 0 12px;
  color:var(--text);
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:clamp(42px,6vw,88px);
  line-height:.9;
  letter-spacing:.045em;
  text-transform:uppercase;
  font-weight:400;
}

.release-spotlight p{
  max-width:56rem;
  color:#bfb7ad;
  font-size:17px;
  line-height:1.55;
}

.release-spotlight .release-date{
  margin:0 0 18px;
  color:var(--red2);
  text-transform:uppercase;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:14px;
  letter-spacing:.16em;
}

.release-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:26px;
}

.release-actions .btn.is-disabled{
  opacity:.55;
  cursor:default;
  pointer-events:none;
}

.cards-secondary{
  margin-top:30px;
  grid-template-columns:1fr 1fr;
}

.cards-secondary .signal-card{
  min-height:315px;
}

.cards-secondary .choir-card .mini-form-real{
  max-width:380px;
}

@media(max-width:900px){
  .release-spotlight{
    grid-template-columns:1fr;
  }

  .release-cover{
    min-height:260px;
    border-right:0;
    border-bottom:1px solid rgba(231,225,216,.10);
  }

  .release-spotlight-copy{
    padding:32px 26px;
  }

  .cards-secondary{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .release-spotlight{
    margin-top:28px;
    min-height:0;
  }

  .release-spotlight h3{
    font-size:44px;
  }

  .release-spotlight p{
    font-size:15px;
  }
}


/* V12 TRANSMISSION ROW ALIGNMENT */

/* expanded top row: signal icon + 4 content boxes */
.transmission-strip-v12{
  grid-template-columns:150px minmax(190px,1fr) minmax(210px,1.08fr) minmax(210px,1fr) minmax(190px,.9fr);
}

.pre-save-tile{
  background:
    radial-gradient(circle at 90% 12%,rgba(193,18,31,.16),transparent 10rem),
    linear-gradient(180deg,rgba(193,18,31,.10),transparent 62%),
    #0a0a0a;
}

.pre-save-tile em{
  display:block;
  margin:8px 0 0;
  color:#8c867e;
  font-style:normal;
  text-transform:uppercase;
  font-family:"Arial Narrow",Impact,sans-serif;
  font-size:11px;
  letter-spacing:.14em;
}

.pre-save-tile .is-disabled{
  opacity:.55;
  cursor:default;
}

/* PR/Cover Art + Join the Signal moved above 01 / The Signal */
.action-row-section{
  padding-top:36px;
  padding-bottom:0;
}

.action-row-cards{
  margin-top:0;
  grid-template-columns:1fr 1fr;
}

.action-row-cards .signal-card{
  min-height:315px;
}

/* The old large release spotlight is no longer used in V12 */
.release-spotlight{
  display:none;
}

@media(max-width:1180px){
  .transmission-strip-v12{
    grid-template-columns:130px 1fr 1fr;
  }

  .transmission-strip-v12 .quote,
  .transmission-strip-v12 .ticker{
    min-height:210px;
  }
}

@media(max-width:820px){
  .transmission-strip-v12{
    grid-template-columns:1fr;
  }

  .transmission-strip-v12 .signal-tile{
    min-height:120px;
  }

  .action-row-cards{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .action-row-section{
    padding-top:28px;
  }
}


/* V13A ROW POLISH — NO LAYOUT MOVE */

/* Make the compact transmission row tall enough for wrapped titles/buttons */
.transmission-strip-v12{
  align-items:stretch;
  min-height:190px;
}

.transmission-strip-v12 > article{
  min-height:190px;
  overflow:hidden;
}

.transmission-strip-v12 .release,
.transmission-strip-v12 .pre-save-tile,
.transmission-strip-v12 .quote,
.transmission-strip-v12 .ticker{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:26px;
  padding-bottom:26px;
}

/* Compact typography in the top row so long release titles do not get cut off */
.transmission-strip-v12 .release h2,
.transmission-strip-v12 .pre-save-tile h2{
  font-size:clamp(25px,2.15vw,38px);
  line-height:1.08;
  max-width:13.5em;
  overflow-wrap:break-word;
  word-break:normal;
}

.transmission-strip-v12 .quote blockquote{
  font-size:clamp(24px,2vw,34px);
  line-height:1.13;
}

.transmission-strip-v12 .ticker strong{
  font-size:clamp(24px,2vw,34px);
  line-height:1.13;
}

.pre-save-tile em{
  margin-top:10px;
  margin-bottom:10px;
}

.pre-save-tile a,
.pre-save-tile .is-disabled{
  margin-top:12px;
  width:max-content;
  max-width:100%;
}

/* If no pre-save URL exists, keep the button visible but disabled */
.pre-save-tile .is-disabled{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 14px;
  border:1px solid rgba(231,225,216,.25);
  color:#b9b1a8;
  font-family:"Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  opacity:.72;
}

/* Hover effect on all major boxes — subtle, no layout shift */
.signal-tile,
.release,
.pre-save-tile,
.quote,
.ticker,
.signal-card,
.media-tile,
.terminal-box,
.release-feature,
.track-list article,
.story-grid article,
.choir-panel{
  transition:
    border-color .22s ease,
    background-color .22s ease,
    box-shadow .22s ease,
    opacity .22s ease;
}

.signal-tile:hover,
.release:hover,
.pre-save-tile:hover,
.quote:hover,
.ticker:hover,
.signal-card:hover,
.media-tile:hover,
.terminal-box:hover,
.release-feature:hover,
.track-list article:hover,
.story-grid article:hover,
.choir-panel:hover{
  border-color:rgba(193,18,31,.42);
  box-shadow:
    inset 0 0 0 1px rgba(193,18,31,.14),
    0 0 24px rgba(193,18,31,.07);
  background-color:#0d0d0d;
}

.signal-card,
.media-tile,
.terminal-box,
.release-feature,
.story-grid article{
  position:relative;
}

.signal-card::before,
.media-tile::before,
.terminal-box::before,
.release-feature::before,
.story-grid article::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:0;
  height:2px;
  background:linear-gradient(90deg,var(--red2),transparent);
  opacity:0;
  transition:width .24s ease, opacity .24s ease;
  z-index:5;
  pointer-events:none;
}

.signal-card:hover::before,
.media-tile:hover::before,
.terminal-box:hover::before,
.release-feature:hover::before,
.story-grid article:hover::before{
  width:42%;
  opacity:1;
}

.media-tile img,
.card-visual{
  transition:transform .45s ease, opacity .28s ease, filter .28s ease;
}

.media-tile:hover img{
  transform:scale(1.025);
  opacity:.82;
}

.signal-card:hover .card-visual{
  transform:scale(1.025);
  opacity:.92;
}

.signal-card:hover .card-action,
.release:hover a,
.pre-save-tile:hover a,
.terminal-box:hover a,
.media-tile:hover strong{
  color:var(--red2);
}

/* Mobile row remains stacked and readable */
@media(max-width:820px){
  .transmission-strip-v12{
    min-height:0;
  }

  .transmission-strip-v12 > article{
    min-height:150px;
  }
}


/* V13B TRANSMISSION ROW CSS FIX — NO LAYOUT MOVE */

/* Let the row grow instead of cutting text/buttons */
.transmission-strip-v12{
  align-items:stretch;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
}

.transmission-strip-v12 > article{
  min-height:230px !important;
  height:auto !important;
  overflow:visible !important;
  box-sizing:border-box;
}

/* Keep compact row content readable and inside each cell */
.transmission-strip-v12 .release,
.transmission-strip-v12 .pre-save-tile,
.transmission-strip-v12 .quote,
.transmission-strip-v12 .ticker{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:9px;
  padding:30px 28px !important;
}

/* Icon tile stays centered */
.transmission-strip-v12 .signal-tile{
  display:grid !important;
  place-items:center !important;
  padding:22px !important;
}

/* Smaller top-row titles so long names do not collide */
.transmission-strip-v12 .release h2,
.transmission-strip-v12 .pre-save-tile h2{
  margin:0 !important;
  max-width:100% !important;
  font-size:clamp(22px,1.75vw,34px) !important;
  line-height:1.12 !important;
  letter-spacing:.12em !important;
  overflow-wrap:anywhere;
}

/* Quote and frequency are also compact in this row */
.transmission-strip-v12 .quote blockquote,
.transmission-strip-v12 .ticker strong{
  margin:0 !important;
  max-width:100% !important;
  font-size:clamp(22px,1.65vw,32px) !important;
  line-height:1.16 !important;
  letter-spacing:.11em !important;
  overflow-wrap:anywhere;
}

/* Labels must not sit too high or get clipped */
.transmission-strip-v12 p,
.transmission-strip-v12 .pre-save-tile p,
.transmission-strip-v12 .ticker p{
  margin:0 !important;
  line-height:1.2 !important;
}

.transmission-strip-v12 cite{
  margin-top:6px !important;
}

/* Date and buttons stay visible */
.pre-save-tile em{
  display:block !important;
  margin:2px 0 0 !important;
  line-height:1.2 !important;
}

/* Fix too-wide LISTEN / PRE-SAVE buttons */
.transmission-strip-v12 .release a,
.transmission-strip-v12 .pre-save-tile a,
.transmission-strip-v12 .pre-save-tile .is-disabled{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:auto !important;
  max-width:max-content !important;
  min-width:86px;
  min-height:30px;
  margin-top:8px !important;
  padding:0 16px !important;
  align-self:flex-start !important;
  white-space:nowrap;
}

/* Avoid the row crashing into the next section */
.transmission-strip-v12 + .action-row-section,
.transmission-strip-v12 + .below-fold,
.transmission-strip-v12 + section{
  margin-top:0;
}

/* Medium screens: reduce to readable 2-column wrap */
@media(max-width:1180px){
  .transmission-strip-v12{
    grid-template-columns:120px 1fr 1fr !important;
  }

  .transmission-strip-v12 > article{
    min-height:190px !important;
  }
}

/* Mobile: stack cleanly */
@media(max-width:820px){
  .transmission-strip-v12{
    grid-template-columns:1fr !important;
  }

  .transmission-strip-v12 > article{
    min-height:140px !important;
  }

  .transmission-strip-v12 .signal-tile{
    min-height:110px !important;
  }

  .transmission-strip-v12 .release,
  .transmission-strip-v12 .pre-save-tile,
  .transmission-strip-v12 .quote,
  .transmission-strip-v12 .ticker{
    padding:26px 24px !important;
  }
}


/* V13C REAL PAGE GRID FIX — NO LAYOUT MOVE */

/*
  Real cause:
  .page originally locked the third grid row to 166px and clipped overflow.
  The transmission row now has more content, so that old 166px row cut it off.
*/

/* Let the main page grid grow naturally below the hero */
.page{
  grid-template-rows:64px minmax(430px, calc(100vh - 330px)) auto !important;
  overflow:visible !important;
}

/* Transmission row must define its own height instead of being trapped by .page */
.transmission-strip,
.transmission-strip-v12{
  min-height:250px !important;
  height:auto !important;
  overflow:visible !important;
  align-items:stretch !important;
}

/* Every tile in the row gets enough vertical room */
.transmission-strip-v12 > article{
  min-height:250px !important;
  height:auto !important;
  overflow:visible !important;
}

/* Content spacing inside row tiles */
.transmission-strip-v12 .release,
.transmission-strip-v12 .pre-save-tile,
.transmission-strip-v12 .quote,
.transmission-strip-v12 .ticker{
  justify-content:center !important;
  padding:34px 30px !important;
  gap:10px !important;
}

/* Keep the icon tile centered and stable */
.transmission-strip-v12 .signal-tile{
  min-height:250px !important;
  display:grid !important;
  place-items:center !important;
}

/* Compact top-row typography */
.transmission-strip-v12 .release h2,
.transmission-strip-v12 .pre-save-tile h2{
  font-size:clamp(22px,1.65vw,32px) !important;
  line-height:1.12 !important;
  letter-spacing:.12em !important;
  margin:0 !important;
  max-width:100% !important;
  overflow-wrap:anywhere;
}

.transmission-strip-v12 .quote blockquote,
.transmission-strip-v12 .ticker strong{
  font-size:clamp(22px,1.55vw,30px) !important;
  line-height:1.16 !important;
  letter-spacing:.11em !important;
  margin:0 !important;
  max-width:100% !important;
  overflow-wrap:anywhere;
}

/* Labels/date/buttons must never be clipped */
.transmission-strip-v12 p,
.transmission-strip-v12 cite,
.transmission-strip-v12 em{
  position:relative;
  z-index:2;
}

.pre-save-tile em{
  display:block !important;
  margin:2px 0 2px !important;
}

/* Buttons stay compact */
.transmission-strip-v12 .release a,
.transmission-strip-v12 .pre-save-tile a,
.transmission-strip-v12 .pre-save-tile .is-disabled{
  width:auto !important;
  max-width:max-content !important;
  min-width:86px !important;
  min-height:32px !important;
  padding:0 16px !important;
  margin-top:10px !important;
  align-self:flex-start !important;
  white-space:nowrap !important;
}

/* Prevent next section from visually colliding */
.page + .action-row-section,
.page + .below-fold,
.transmission-strip-v12 + section{
  clear:both;
}

/* Medium screens: allow wrapping in a stable grid */
@media(max-width:1180px){
  .page{
    grid-template-rows:64px minmax(430px, auto) auto !important;
  }

  .transmission-strip-v12{
    grid-template-columns:130px 1fr 1fr !important;
  }

  .transmission-strip-v12 > article,
  .transmission-strip-v12 .signal-tile{
    min-height:210px !important;
  }
}

/* Mobile: stack cleanly */
@media(max-width:820px){
  .page{
    display:block !important;
    overflow:visible !important;
  }

  .transmission-strip-v12{
    display:grid !important;
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  .transmission-strip-v12 > article{
    min-height:145px !important;
  }

  .transmission-strip-v12 .signal-tile{
    min-height:110px !important;
  }
}


/* V14 SAFE TOUR/SHOP MOVE + SIGNAL STATUS PULSE */

/*
  Safe structure:
  .page.hero-page contains only Header + Hero.
  Tour/Shop and Transmission Row are outside .page, so they are not clipped by the hero grid.
*/
.page.hero-page{
  grid-template-rows:64px minmax(560px, calc(100vh - 64px)) !important;
  min-height:100vh !important;
  overflow:visible !important;
}

.page.hero-page .hero{
  min-height:560px;
}

/* Tour/Shop moved directly below hero as an independent section */
.tour-shop{
  width:100vw;
  border-top:1px solid rgba(231,225,216,.09);
  border-bottom:1px solid rgba(231,225,216,.09);
}

/* Transmission row is independent below Tour/Shop */
.transmission-strip-v12{
  width:100vw;
  clear:both;
}

/* Subtle blinking Signal Status */
.frequency-card{
  animation:dscSignalPulse 3.4s ease-in-out infinite;
}

.frequency-card::before{
  content:"";
  position:absolute;
  top:12px;
  right:12px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--red2);
  box-shadow:0 0 0 rgba(193,18,31,.0);
  animation:dscSignalDot 1.7s ease-in-out infinite;
}

.frequency-card strong{
  animation:dscSignalText 3.4s ease-in-out infinite;
}

@keyframes dscSignalPulse{
  0%,100%{
    border-color:rgba(231,225,216,.13);
    box-shadow:0 0 0 rgba(193,18,31,0), inset 0 0 0 rgba(193,18,31,0);
  }
  48%{
    border-color:rgba(193,18,31,.48);
    box-shadow:0 0 22px rgba(193,18,31,.16), inset 0 0 22px rgba(193,18,31,.055);
  }
}

@keyframes dscSignalDot{
  0%,100%{
    opacity:.35;
    transform:scale(.72);
    box-shadow:0 0 0 rgba(193,18,31,0);
  }
  50%{
    opacity:1;
    transform:scale(1);
    box-shadow:0 0 14px rgba(193,18,31,.75);
  }
}

@keyframes dscSignalText{
  0%,100%{
    text-shadow:0 0 0 rgba(193,18,31,0);
  }
  50%{
    text-shadow:0 0 12px rgba(193,18,31,.34);
  }
}

@media (prefers-reduced-motion: reduce){
  .frequency-card,
  .frequency-card::before,
  .frequency-card strong{
    animation:none !important;
  }
}

/* Mobile: keep hero + moved sections stable */
@media(max-width:820px){
  .page.hero-page{
    display:grid !important;
    grid-template-rows:64px minmax(620px, calc(100vh - 64px)) !important;
    min-height:100vh !important;
  }

  .page.hero-page .hero{
    min-height:620px;
  }
}


/* V14B CORRECT SECTION ORDER */

/*
  Final order after hero:
  01 / Transmission
  02 / The Signal
  03 / Story
  04 / Music
  05 / Media
  06 / Tour
  07 / Shop
  08 / PR and Cover Art / Join the Signal
*/

.action-row-section{
  padding-top:90px !important;
  padding-bottom:90px !important;
}

.action-row-head{
  margin:0 0 30px !important;
}

.action-row-head p{
  margin-bottom:0 !important;
}

.action-row-section .action-row-cards{
  margin-top:0 !important;
}

@media(max-width:720px){
  .action-row-section{
    padding-top:64px !important;
    padding-bottom:64px !important;
  }
}


/* V14C DEDICATED PR / JOIN SECTION */

/*
  08 / PR and Cover Art / Join the Signal is now its own real section.
  It no longer depends on the old generic cards loop or show_cards toggle.
*/
.pr-join-section{
  background:
    radial-gradient(circle at 18% 20%, rgba(193,18,31,.08), transparent 24rem),
    linear-gradient(180deg,#050505 0%,#030303 100%) !important;
}

.pr-join-cards{
  grid-template-columns:1fr 1fr !important;
}

.dedicated-action-card{
  min-height:330px;
}

.dedicated-action-card .card-copy{
  max-width:680px;
}

.dedicated-action-card h3{
  max-width:760px;
}

.pr-card{
  background:
    linear-gradient(135deg, rgba(193,18,31,.10), transparent 42%),
    #050505;
}

.join-card{
  background:
    linear-gradient(135deg, rgba(231,225,216,.035), transparent 45%),
    #050505;
}

.join-card .mini-form-real{
  max-width:460px;
}

@media(max-width:900px){
  .pr-join-cards{
    grid-template-columns:1fr !important;
  }

  .dedicated-action-card{
    min-height:280px;
  }
}


/* V14D PR / JOIN VISIBILITY FIX */

.pr-join-section{
  padding-top:74px !important;
  padding-bottom:90px !important;
}

.pr-join-section .action-row-head{
  margin-bottom:32px !important;
}

.pr-join-cards{
  min-height:330px;
}

.pr-join-cards:empty{
  display:none;
}

.pr-join-section .dedicated-action-card{
  display:grid;
}

@media(max-width:720px){
  .pr-join-section{
    padding-top:58px !important;
    padding-bottom:70px !important;
  }
}


/* V14E COMPACT PR / JOIN + FULL WIDTH EMAIL */

/* Make 08 feel like a compact action row, not a huge content section */
.pr-join-section{
  padding-top:56px !important;
  padding-bottom:64px !important;
}

.pr-join-section .action-row-head{
  margin-bottom:22px !important;
}

.pr-join-cards{
  min-height:0 !important;
}

.pr-join-section .signal-card,
.pr-join-section .dedicated-action-card{
  min-height:230px !important;
  padding:28px 34px 26px !important;
  align-content:start !important;
  gap:20px !important;
}

.pr-join-section .card-copy{
  max-width:720px !important;
}

.pr-join-section .card-copy h3,
.pr-join-section .signal-card h3{
  margin-bottom:16px !important;
  font-size:clamp(30px,2.55vw,46px) !important;
  line-height:1.04 !important;
}

.pr-join-section .card-copy p,
.pr-join-section .signal-card p{
  max-width:560px !important;
  margin-bottom:0 !important;
}

/* Remove the old decorative viewfinder square in PR / Art */
.pr-join-section .card-visual,
.pr-join-section .viewfinder{
  display:none !important;
}

/* Move the PR CTA up so the card has less dead space */
.pr-join-section .card-action{
  align-self:start !important;
  margin-top:8px !important;
}

/* Join form should span the card from edge to edge */
.pr-join-section .join-card .mini-form-real,
.pr-join-section .join-card .mini-form{
  width:100% !important;
  max-width:none !important;
  margin-top:8px !important;
  display:grid !important;
  grid-template-columns:1fr auto !important;
}

.pr-join-section .join-card .mini-form-real input,
.pr-join-section .join-card .mini-form input{
  width:100% !important;
  min-width:0 !important;
}

.pr-join-section .join-card .mini-form-real button,
.pr-join-section .join-card .mini-form button{
  min-width:120px !important;
}

/* Keep the red bottom signal line but pull it closer */
.pr-join-section .signal-card::after{
  bottom:26px !important;
}

@media(max-width:900px){
  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    min-height:210px !important;
  }
}

@media(max-width:720px){
  .pr-join-section{
    padding-top:44px !important;
    padding-bottom:52px !important;
  }

  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    grid-template-columns:1fr !important;
  }

  .pr-join-section .join-card .mini-form-real button,
  .pr-join-section .join-card .mini-form button{
    width:100% !important;
  }
}


/* V14F PR / JOIN AFTER SIGNAL + 80% CENTER EMAIL */

/*
  New order:
  01 / Transmission
  02 / The Signal
  03 / PR and Cover Art / Join the Signal
  04 / Story
  05 / Music
  06 / Media
  07 / Tour
  08 / Shop
*/

.pr-join-section{
  padding-top:58px !important;
  padding-bottom:64px !important;
}

/* Email form should be about 80% width and centered inside the Join box */
.pr-join-section .join-card .mini-form-real,
.pr-join-section .join-card .mini-form{
  width:80% !important;
  max-width:none !important;
  margin:10px auto 0 !important;
  display:grid !important;
  grid-template-columns:1fr auto !important;
}

.pr-join-section .join-card .mini-form-real input,
.pr-join-section .join-card .mini-form input{
  width:100% !important;
}

.pr-join-section .join-card .mini-form-real button,
.pr-join-section .join-card .mini-form button{
  min-width:112px !important;
}

@media(max-width:900px){
  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:100% !important;
  }
}

@media(max-width:720px){
  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    grid-template-columns:1fr !important;
  }

  .pr-join-section .join-card .mini-form-real button,
  .pr-join-section .join-card .mini-form button{
    width:100% !important;
  }
}


/* V14G MOBILE PR / JOIN POLISH — CSS ONLY */

/*
  Mobile refinement for 03 / PR and Cover Art / Join the Signal.
  Desktop remains mostly unchanged.
*/

@media(max-width:720px){
  .pr-join-section{
    padding-top:42px !important;
    padding-bottom:48px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .pr-join-section .action-row-head{
    margin-bottom:18px !important;
  }

  .pr-join-section .action-row-head p{
    font-size:12px !important;
    letter-spacing:.18em !important;
    line-height:1.35 !important;
  }

  .pr-join-cards{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    border:1px solid rgba(231,225,216,.15) !important;
    background:transparent !important;
  }

  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    min-height:0 !important;
    padding:24px 26px 24px !important;
    border:0 !important;
    border-bottom:1px solid rgba(231,225,216,.12) !important;
    gap:16px !important;
  }

  .pr-join-section .signal-card:last-child{
    border-bottom:0 !important;
  }

  .pr-join-section .card-copy span,
  .pr-join-section .signal-card span{
    font-size:11px !important;
    letter-spacing:.2em !important;
    margin-bottom:12px !important;
  }

  .pr-join-section .card-copy h3,
  .pr-join-section .signal-card h3{
    font-size:clamp(29px,8vw,40px) !important;
    line-height:1.04 !important;
    letter-spacing:.09em !important;
    margin:0 0 14px !important;
  }

  .pr-join-section .card-copy p,
  .pr-join-section .signal-card p{
    font-size:15px !important;
    line-height:1.55 !important;
    max-width:none !important;
    margin:0 !important;
  }

  .pr-join-section .card-action{
    margin-top:4px !important;
    font-size:12px !important;
    letter-spacing:.14em !important;
  }

  /* Mobile email: full card width, but cleanly split from the button */
  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:100% !important;
    margin:10px 0 0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    border:0 !important;
    background:transparent !important;
  }

  .pr-join-section .join-card .mini-form-real input,
  .pr-join-section .join-card .mini-form input{
    min-height:42px !important;
    border:1px solid rgba(231,225,216,.18) !important;
    background:#060606 !important;
    text-align:left !important;
  }

  .pr-join-section .join-card .mini-form-real button,
  .pr-join-section .join-card .mini-form button{
    width:100% !important;
    min-height:42px !important;
    margin:0 !important;
  }

  .pr-join-section .signal-card::before{
    width:0 !important;
  }

  .pr-join-section .signal-card:hover::before{
    width:35% !important;
  }

  .pr-join-section .signal-card::after{
    left:26px !important;
    right:26px !important;
    bottom:18px !important;
  }
}

@media(max-width:420px){
  .pr-join-section{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    padding:22px 22px 24px !important;
  }

  .pr-join-section .action-row-head p{
    font-size:11px !important;
  }
}


/* V14H MOBILE GLOBAL POLISH — CSS ONLY */

/*
  Mobile cleanup:
  - cleaner 03 label wrapping
  - red edge signal no longer hits section text
  - quote mark no longer overlaps quote text
  - Tour / Shop cards are more compact on mobile
*/

@media(max-width:720px){

  /* The fixed edge signal was crossing mobile section headings */
  .edge-signal{
    display:none !important;
  }

  /* Cleaner long section labels on mobile */
  .section-head p,
  .manifest p,
  .action-row-head p{
    max-width:92vw !important;
    font-size:11px !important;
    line-height:1.45 !important;
    letter-spacing:.16em !important;
    margin-bottom:16px !important;
  }

  .pr-join-section .action-row-head p{
    max-width:330px !important;
  }

  /* Transmission quote: prevent red quotation mark from sitting on top of the first word */
  .transmission-strip-v12 .quote{
    padding-left:68px !important;
    padding-right:28px !important;
  }

  .transmission-strip-v12 .quote b{
    left:26px !important;
    top:25px !important;
    font-size:34px !important;
    line-height:1 !important;
  }

  .transmission-strip-v12 .quote blockquote{
    font-size:clamp(23px,7.1vw,32px) !important;
    line-height:1.16 !important;
    letter-spacing:.12em !important;
  }

  /* Tour / Shop: make mobile sections less heavy */
  .tour-shop{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    background:#050505 !important;
  }

  .tour-shop .split-section{
    padding:42px 22px !important;
  }

  .tour-shop .split-section + .split-section{
    border-top:1px solid rgba(231,225,216,.09) !important;
  }

  .tour-shop .section-head.compact p{
    font-size:12px !important;
    line-height:1.35 !important;
    letter-spacing:.18em !important;
    margin-bottom:12px !important;
  }

  .tour-shop .section-head.compact h2{
    font-size:clamp(34px,10.5vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:.035em !important;
    max-width:100% !important;
  }

  .tour-shop .terminal-box{
    margin-top:24px !important;
    padding:26px 26px 28px !important;
  }

  .tour-shop .terminal-box span{
    font-size:12px !important;
    letter-spacing:.18em !important;
  }

  .tour-shop .terminal-box strong{
    font-size:clamp(28px,8.8vw,38px) !important;
    line-height:1.18 !important;
    letter-spacing:.09em !important;
    margin-bottom:16px !important;
  }

  .tour-shop .terminal-box p{
    font-size:15px !important;
    line-height:1.55 !important;
    margin-bottom:22px !important;
  }

  .tour-shop .terminal-box a,
  .tour-shop .terminal-action{
    min-height:36px !important;
    padding:0 15px !important;
    font-size:11px !important;
    letter-spacing:.14em !important;
  }
}

@media(max-width:420px){
  .transmission-strip-v12 .quote{
    padding-left:62px !important;
    padding-right:24px !important;
  }

  .transmission-strip-v12 .quote b{
    left:22px !important;
    font-size:32px !important;
  }

  .tour-shop .split-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .tour-shop .terminal-box{
    padding:24px 22px 26px !important;
  }
}


/* V14I MOBILE BREATHING + CENTERING — CSS ONLY */

/*
  Mobile refinements:
  - more breathing room under JOIN button
  - email form slightly narrower and centered on mobile
  - Tour / Shop terminal cards centered better
  - terminal cards have more balanced width and side margins
*/

@media(max-width:720px){

  /* 03 / PR + Join: give the Join form room to breathe */
  .pr-join-section .join-card{
    padding-bottom:34px !important;
  }

  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:88% !important;
    max-width:360px !important;
    margin:18px auto 8px !important;
    gap:10px !important;
  }

  .pr-join-section .join-card .mini-form-real input,
  .pr-join-section .join-card .mini-form input{
    min-height:44px !important;
  }

  .pr-join-section .join-card .mini-form-real button,
  .pr-join-section .join-card .mini-form button{
    min-height:44px !important;
  }

  .pr-join-section .join-card::after{
    bottom:22px !important;
  }

  /* Tour / Shop: centered mobile cards with balanced margins */
  .tour-shop .split-section{
    padding:44px 18px !important;
  }

  .tour-shop .section-head.compact{
    width:min(100%, 330px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .tour-shop .terminal-box{
    width:min(100%, 330px) !important;
    margin:24px auto 0 !important;
    padding:26px 24px 28px !important;
    box-sizing:border-box !important;
  }

  .tour-shop .terminal-box strong{
    font-size:clamp(27px,8.2vw,36px) !important;
    line-height:1.18 !important;
  }

  .tour-shop .terminal-box p{
    max-width:100% !important;
  }

  .tour-shop .terminal-box a,
  .tour-shop .terminal-action{
    margin-top:20px !important;
  }
}

@media(max-width:420px){
  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:90% !important;
    max-width:320px !important;
  }

  .tour-shop .section-head.compact,
  .tour-shop .terminal-box{
    width:min(100%, 312px) !important;
  }
}

@media(max-width:370px){
  .tour-shop .section-head.compact,
  .tour-shop .terminal-box{
    width:100% !important;
  }

  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:100% !important;
  }
}


/* V14J MOBILE WIDTH UNIFICATION — CSS ONLY */

/*
  Fixes:
  - PR/Join gets more breathing room at the bottom
  - Join email form no longer sits tight against the card edge
  - Tour/Shop terminal cards use the same mobile width logic as the other cards
  - Removes the too-narrow 330px/312px mobile cap from Tour/Shop
*/

@media(max-width:720px){

  /* 03 / PR + Join: more air inside the stacked mobile cards */
  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    padding:26px 24px 42px !important;
  }

  .pr-join-section .join-card{
    padding-bottom:54px !important;
  }

  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    width:100% !important;
    max-width:none !important;
    margin:22px 0 18px !important;
    gap:10px !important;
  }

  .pr-join-section .join-card .mini-form-real input,
  .pr-join-section .join-card .mini-form input{
    width:100% !important;
    min-height:44px !important;
    box-sizing:border-box !important;
  }

  .pr-join-section .join-card .mini-form-real button,
  .pr-join-section .join-card .mini-form button{
    width:100% !important;
    min-height:44px !important;
    box-sizing:border-box !important;
  }

  .pr-join-section .signal-card::after{
    left:24px !important;
    right:24px !important;
    bottom:24px !important;
  }

  .pr-join-section .join-card::after{
    bottom:28px !important;
  }

  /* Tour / Shop: match the width of the other mobile cards */
  .tour-shop .split-section{
    padding-left:28px !important;
    padding-right:28px !important;
  }

  .tour-shop .section-head.compact{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .tour-shop .terminal-box{
    width:100% !important;
    max-width:none !important;
    margin:24px 0 0 !important;
    padding:28px 26px 32px !important;
    box-sizing:border-box !important;
  }

  .tour-shop .terminal-box strong{
    max-width:100% !important;
  }

  .tour-shop .terminal-box p{
    max-width:100% !important;
  }
}

@media(max-width:420px){
  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    padding:24px 22px 44px !important;
  }

  .pr-join-section .join-card{
    padding-bottom:56px !important;
  }

  .tour-shop .split-section{
    padding-left:22px !important;
    padding-right:22px !important;
  }

  .tour-shop .section-head.compact,
  .tour-shop .terminal-box{
    width:100% !important;
    max-width:none !important;
  }

  .tour-shop .terminal-box{
    padding:26px 24px 32px !important;
  }
}


/* V14K MOBILE HERO CENTER + BOX WIDTH UNIFICATION — CSS ONLY */

/*
  Fixes:
  - Mobile hero text/buttons centered.
  - Mobile card/box widths use the same page rhythm.
  - Tour/Shop boxes match the PR/Join mobile width instead of feeling narrow.
*/

@media(max-width:720px){

  /* Center hero copy on mobile */
  .hero-content{
    left:50% !important;
    right:auto !important;
    top:46% !important;
    transform:translate(-50%,-50%) !important;
    width:min(92vw, 390px) !important;
    max-width:390px !important;
    text-align:center !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    padding:0 !important;
  }

  .hero-content .kicker{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .hero-content h1{
    transform:scaleX(.82) !important;
    transform-origin:center center !important;
    text-align:center !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    font-size:clamp(48px,14.4vw,68px) !important;
    line-height:.92 !important;
  }

  .hero-content h1 span{
    text-align:center !important;
  }

  .hero-content .subline{
    max-width:340px !important;
    margin:24px auto 0 !important;
    text-align:center !important;
  }

  .hero-content .actions{
    width:100% !important;
    justify-content:center !important;
    align-items:center !important;
    gap:18px !important;
    margin-top:28px !important;
  }

  .hero-content .btn-red{
    min-width:126px !important;
  }

  /* One shared mobile content width for all main sections */
  .section,
  .pr-join-section,
  .music-section,
  .story-section,
  .media-section{
    padding-left:22px !important;
    padding-right:22px !important;
    box-sizing:border-box !important;
  }

  .pr-join-cards,
  .cards,
  .music-grid,
  .story-grid,
  .media-grid{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
  }

  .signal-card,
  .media-tile,
  .story-grid article,
  .release-feature,
  .track-list article,
  .terminal-box{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
  }

  /* Tour / Shop must match the same mobile width as PR/Join */
  .tour-shop{
    width:100vw !important;
    box-sizing:border-box !important;
  }

  .tour-shop .split-section{
    width:100% !important;
    padding-left:22px !important;
    padding-right:22px !important;
    box-sizing:border-box !important;
  }

  .tour-shop .section-head.compact,
  .tour-shop .terminal-box{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .tour-shop .terminal-box{
    margin-top:24px !important;
    padding:28px 26px 34px !important;
  }

  /* Give PR/Join and Join button final breathing room */
  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card{
    padding-left:26px !important;
    padding-right:26px !important;
  }

  .pr-join-section .join-card{
    padding-bottom:62px !important;
  }

  .pr-join-section .join-card .mini-form-real,
  .pr-join-section .join-card .mini-form{
    margin-bottom:20px !important;
  }

  .pr-join-section .join-card::after{
    bottom:30px !important;
  }
}

@media(max-width:420px){

  .section,
  .pr-join-section,
  .music-section,
  .story-section,
  .media-section,
  .tour-shop .split-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .hero-content{
    width:min(92vw, 360px) !important;
  }

  .hero-content h1{
    font-size:clamp(44px,14vw,62px) !important;
  }

  .hero-content .actions{
    gap:14px !important;
  }

  .pr-join-section .signal-card,
  .pr-join-section .dedicated-action-card,
  .tour-shop .terminal-box{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}


/* V14L FORCE TOUR / SHOP SAME MOBILE WIDTH — CSS ONLY */

/*
  Direct fix:
  07 / Tour and 08 / Shop were getting double horizontal padding on mobile:
  .section.tour-shop had section padding AND .split-section had its own side padding.
  This made the terminal boxes narrower than PR/Join and the other cards.
*/

@media(max-width:720px){

  /* Match the outer mobile rhythm used by the other sections */
  .section.tour-shop{
    width:100% !important;
    max-width:none !important;
    padding-left:22px !important;
    padding-right:22px !important;
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    overflow:hidden !important;
  }

  /* Remove the second layer of side padding that made 07/08 too narrow */
  .section.tour-shop .split-section,
  .tour-shop .split-section{
    width:100% !important;
    max-width:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
    padding-top:44px !important;
    padding-bottom:44px !important;
    box-sizing:border-box !important;
  }

  /* Heading and terminal card now fill exactly the same content width */
  .section.tour-shop .section-head.compact,
  .section.tour-shop .terminal-box,
  .tour-shop .section-head.compact,
  .tour-shop .terminal-box{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .section.tour-shop .terminal-box,
  .tour-shop .terminal-box{
    margin-top:24px !important;
    padding:28px 26px 34px !important;
  }

  .section.tour-shop .terminal-box strong,
  .tour-shop .terminal-box strong,
  .section.tour-shop .terminal-box p,
  .tour-shop .terminal-box p{
    max-width:100% !important;
  }
}

@media(max-width:420px){

  .section.tour-shop{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .section.tour-shop .split-section,
  .tour-shop .split-section{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .section.tour-shop .terminal-box,
  .tour-shop .terminal-box{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}


/* V14M MOBILE RHYTHM POLISH — CSS ONLY */

/*
  Mobile rhythm polish after V14L:
  - keep 07 / Tour and 08 / Shop width unchanged
  - make Tour card less tall/heavy
  - reduce empty vertical space between Tour and Shop
  - tighten terminal card padding slightly
  - keep bottom breathing room under card buttons
*/

@media(max-width:720px){

  .section.tour-shop{
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  .section.tour-shop .split-section,
  .tour-shop .split-section{
    padding-top:38px !important;
    padding-bottom:38px !important;
  }

  .section.tour-shop .split-section + .split-section,
  .tour-shop .split-section + .split-section{
    padding-top:40px !important;
    border-top:1px solid rgba(231,225,216,.10) !important;
  }

  .section.tour-shop .section-head.compact h2,
  .tour-shop .section-head.compact h2{
    font-size:clamp(36px,9.8vw,46px) !important;
    line-height:1.03 !important;
    letter-spacing:.035em !important;
  }

  .section.tour-shop .section-head.compact p,
  .tour-shop .section-head.compact p{
    margin-bottom:12px !important;
  }

  .section.tour-shop .terminal-box,
  .tour-shop .terminal-box{
    margin-top:22px !important;
    padding-top:25px !important;
    padding-bottom:34px !important;
  }

  .section.tour-shop .terminal-box span,
  .tour-shop .terminal-box span{
    margin-bottom:10px !important;
  }

  .section.tour-shop .terminal-box strong,
  .tour-shop .terminal-box strong{
    margin-bottom:15px !important;
  }

  .section.tour-shop .terminal-box p,
  .tour-shop .terminal-box p{
    margin-bottom:22px !important;
  }

  .section.tour-shop .terminal-box a,
  .tour-shop .terminal-box a,
  .section.tour-shop .terminal-action,
  .tour-shop .terminal-action{
    margin-top:0 !important;
    margin-bottom:0 !important;
  }

  .terminal-box{
    padding-bottom:34px !important;
  }
}

@media(max-width:420px){

  .section.tour-shop .split-section,
  .tour-shop .split-section{
    padding-top:36px !important;
    padding-bottom:36px !important;
  }

  .section.tour-shop .split-section + .split-section,
  .tour-shop .split-section + .split-section{
    padding-top:38px !important;
  }

  .section.tour-shop .terminal-box,
  .tour-shop .terminal-box{
    padding-top:24px !important;
    padding-bottom:32px !important;
  }

  .section.tour-shop .section-head.compact h2,
  .tour-shop .section-head.compact h2{
    font-size:clamp(34px,9.6vw,44px) !important;
  }
}
