@import url('https://fonts.googleapis.com/css2?family=Allura&family=Montserrat:wght@300;400;500;600;700;800&family=Monoton&display=swap');

:root {
  --midnight: #070817;
  --navy: #1a1b3a;
  --pink: #ff5da2;
  --pink-soft: #ff9bc9;
  --cyan: #00d4d4;
  --violet: #886ed6;
  --gold: #ffe45e;
  --white: #f9f6ff;
  --muted: #c7c4da;
  --glass: rgba(14, 14, 42, 0.72);
  --line: rgba(255, 93, 162, 0.38);
  --shadow-pink: 0 0 10px rgba(255, 93, 162, .65), 0 0 28px rgba(255, 93, 162, .2);
  --shadow-cyan: 0 0 10px rgba(0, 212, 212, .55), 0 0 28px rgba(0, 212, 212, .18);
  --radius: 22px;
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--white);
  background:
    radial-gradient(circle at 12% 15%, rgba(136,110,214,.18), transparent 28%),
    radial-gradient(circle at 84% 20%, rgba(0,212,212,.10), transparent 26%),
    radial-gradient(circle at 55% 68%, rgba(255,93,162,.12), transparent 32%),
    linear-gradient(180deg, #050615 0%, #090a20 48%, #050615 100%);
  font-family: 'Montserrat', system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  overflow-x: hidden;
}

body::before,
body::after {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
}
body::before {
  background-image:
    radial-gradient(circle at 7% 13%, rgba(255,255,255,.95) 0 1px, transparent 1.8px),
    radial-gradient(circle at 28% 77%, rgba(255,93,162,.9) 0 1.4px, transparent 2px),
    radial-gradient(circle at 71% 22%, rgba(0,212,212,.8) 0 1px, transparent 2px),
    radial-gradient(circle at 89% 64%, rgba(255,228,94,.7) 0 1px, transparent 2px),
    radial-gradient(circle at 46% 42%, rgba(190,167,255,.8) 0 1px, transparent 1.8px);
  background-size: 173px 241px, 317px 229px, 401px 307px, 283px 421px, 521px 373px;
  background-position: 17px 31px, 113px 47px, 29px 167px, 211px 83px, 73px 19px;
  opacity: .45;
}
body::after {
  background: repeating-linear-gradient(0deg, rgba(255,255,255,.013) 0 1px, transparent 1px 3px);
  mix-blend-mode: screen;
  opacity: .35;
}

img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }

.skip-link {
  position: fixed;
  top: -100px;
  left: 1rem;
  z-index: 9999;
  background: var(--white);
  color: var(--midnight);
  padding: .8rem 1rem;
  border-radius: 8px;
}
.skip-link:focus { top: 1rem; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  backdrop-filter: blur(18px);
  background: rgba(5,6,21,.82);
  border-bottom: 1px solid rgba(255,93,162,.22);
}
.header-inner {
  width: min(var(--max), calc(100% - 2rem));
  min-height: 86px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.brand-link { display: flex; align-items: center; min-width: 92px; }
.brand-link img {
  width: 78px;
  height: 70px;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 0 9px rgba(0,212,212,.35)) drop-shadow(0 0 11px rgba(255,93,162,.28));
}
.site-nav { margin-left: auto; display: flex; align-items: center; gap: 1.25rem; }
.site-nav a {
  font-size: .83rem;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: #f4eef7;
  border-bottom: 1px solid transparent;
  padding: .5rem .1rem;
}
.site-nav a:hover, .site-nav a:focus-visible { color: var(--pink-soft); border-color: var(--pink); }
.nav-book { border: 1px solid var(--pink) !important; padding: .58rem .9rem !important; box-shadow: var(--shadow-pink); }
.menu-toggle { display:none; margin-left:auto; background:transparent; border:1px solid var(--line); color:white; border-radius:10px; padding:.55rem .75rem; }

.container { width: min(var(--max), calc(100% - 2rem)); margin-inline: auto; }
.section { padding: 7rem 0; position: relative; }
.section-sm { padding: 4.5rem 0; }
.section-title {
  margin: 0 0 1rem;
  font-family: 'Allura', 'Moon Flower', cursive;
  font-size: clamp(2.7rem, 6vw, 5rem);
  font-weight: 400;
  color: var(--pink-soft);
  text-shadow: 0 0 18px rgba(255,93,162,.45);
  line-height: .95;
}
.section-kicker {
  margin: 0 0 .7rem;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--cyan);
}
.lede { color: var(--muted); font-size: clamp(1rem, 1.4vw, 1.18rem); max-width: 780px; }

.hero {
  min-height: 940px;
  display: grid;
  align-items: center;
  padding: 2rem 0 4rem;
  overflow: hidden;
  position: relative;
}
.hero::after {
  content:'';
  position:absolute;
  width:560px;
  height:560px;
  right:-260px;
  top:90px;
  border:1px solid rgba(0,212,212,.22);
  border-radius:50%;
  box-shadow: 0 0 70px rgba(0,212,212,.12);
}
.hero-grid {
  display:grid;
  grid-template-columns: .8fr 1.2fr;
  align-items:center;
  gap: 2.5rem;
}
.hero-shell {
  border: 1px solid rgba(255,93,162,.72);
  border-radius: 28px;
  padding: 1.3rem 2.2rem 2.4rem;
  box-shadow: 0 0 12px rgba(255,93,162,.45), inset 0 0 28px rgba(0,212,212,.06);
  background: linear-gradient(180deg, rgba(7,8,23,.5), rgba(10,10,34,.78));
}
.hero-marquee {
  position: relative;
  text-align: center;
  padding: .25rem 3.5rem 1.6rem;
}
.hero-moon-mark {
  width: 128px;
  height: 112px;
  margin: 0 auto .15rem;
}
.hero-moon-mark img {
  width: 128px;
  height: 112px;
  object-fit: contain;
  max-width: none;
  filter: drop-shadow(0 0 11px rgba(0,212,212,.5)) drop-shadow(0 0 13px rgba(255,93,162,.35));
}
.neon-corner {
  position: absolute;
  top: .5rem;
  width: 30%;
  height: 44px;
  border-top: 3px solid var(--pink);
  box-shadow: 0 -3px 12px rgba(255,93,162,.62);
}
.neon-corner::after {
  content: "";
  position: absolute;
  top: 14px;
  width: 72%;
  border-top: 2px solid var(--cyan);
  box-shadow: var(--shadow-cyan);
}
.neon-corner-left { left: 0; border-left: 3px solid var(--pink); border-radius: 18px 0 0 0; }
.neon-corner-left::after { left: 0; }
.neon-corner-right { right: 0; border-right: 3px solid var(--pink); border-radius: 0 18px 0 0; }
.neon-corner-right::after { right: 0; }
.neon-rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 1.1rem auto 0;
  color: var(--cyan);
  text-shadow: var(--shadow-cyan);
}
.neon-rule span {
  width: min(210px, 30%);
  border-top: 2px solid var(--pink);
  box-shadow: var(--shadow-pink);
}
.neon-rule i { font-style: normal; font-size: 1.15rem; }
.hero-copy { position:relative; z-index:2; padding:2rem 0 2rem 1rem; }
.hero-title {
  margin: 0;
  font-family: 'Monoton', 'Bauhaus 93', sans-serif;
  font-size: clamp(3.7rem, 8vw, 7.5rem);
  font-weight:400;
  line-height: 1;
  letter-spacing:.035em;
  color: #ff82bc;
  text-shadow: 0 0 5px #ff5da2, 0 0 14px rgba(255,93,162,.9), 0 0 38px rgba(255,93,162,.4);
}
.hero-script {
  margin: .3rem 0 0;
  font-family: 'Allura', 'Moon Flower', cursive;
  color: #ff87bd;
  font-size: clamp(2.5rem, 4.8vw, 4.7rem);
  line-height:1;
  text-shadow: 0 0 8px rgba(255,93,162,.9), 0 0 20px rgba(255,93,162,.5);
}
.hero-script-cyan {
  color: #7ffcff;
  text-shadow: 0 0 8px rgba(0,212,212,.95), 0 0 22px rgba(0,212,212,.5);
}
.hero-sub { max-width: 520px; font-size: clamp(1.08rem, 1.8vw, 1.38rem); color: #f2edf8; }
.hero-actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:2rem; }
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:50px;
  border:1px solid var(--pink);
  color:white;
  background:rgba(255,93,162,.08);
  padding:.8rem 1.25rem;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:.08em;
  font-size:.83rem;
  box-shadow: var(--shadow-pink);
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.btn:hover, .btn:focus-visible { transform: translateY(-2px); background:rgba(255,93,162,.19); }
.btn-cyan { border-color:var(--cyan); box-shadow:var(--shadow-cyan); background:rgba(0,212,212,.07); }
.btn-cyan:hover, .btn-cyan:focus-visible { background:rgba(0,212,212,.15); }
.btn-quiet { box-shadow:none; border-color:rgba(255,255,255,.26); background:rgba(255,255,255,.03); }

.hero-visual { position:relative; min-height:510px; }
.hero-photo-frame {
  position:absolute;
  inset: 0 0 0 4%;
  border-radius: 210px 210px 24px 24px;
  overflow:hidden;
  border:1px solid rgba(255,93,162,.6);
  box-shadow: 0 0 25px rgba(255,93,162,.32), inset 0 0 40px rgba(0,212,212,.06);
  background:#0b0b21;
}
.hero-photo-frame::after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(5,6,21,.78) 0%, transparent 25%, transparent 82%, rgba(5,6,21,.2) 100%), linear-gradient(0deg, rgba(5,6,21,.7), transparent 35%);
}
.hero-photo-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:saturate(1.12) contrast(1.04); }
.orbit {
  position:absolute;
  width:110px;
  height:110px;
  border:1px dotted rgba(136,110,214,.8);
  border-radius:50%;
  right:-15px;
  top:90px;
  animation:spin 28s linear infinite;
}
.orbit::before,.orbit::after { content:'✦'; position:absolute; color:var(--cyan); font-size:1.3rem; text-shadow:var(--shadow-cyan); }
.orbit::before { top:-12px; left:42px; }
.orbit::after { bottom:5px; right:-5px; color:var(--pink); }
@keyframes spin { to{ transform:rotate(360deg); } }

.stat-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,93,162,.28);
  border-bottom:1px solid rgba(0,212,212,.25);
  background:rgba(8,8,27,.7);
}
.stat { padding:1.3rem; text-align:center; border-right:1px solid rgba(255,255,255,.12); }
.stat:last-child{border-right:0}
.stat strong{display:block;color:var(--pink-soft);font-size:1.15rem}
.stat span{color:var(--muted);font-size:.83rem}
.stat { transition:background .2s ease, box-shadow .2s ease, transform .2s ease; }
.stat:hover,.stat:focus-visible { background:rgba(0,212,212,.08); box-shadow:inset 0 0 28px rgba(0,212,212,.11); transform:translateY(-2px); }

.experience-grid {
  display:grid;
  grid-template-columns: repeat(3,1fr);
  gap:1.4rem;
  margin-top:2.5rem;
}
.experience-card {
  position:relative;
  min-height:610px;
  overflow:hidden;
  border:1px solid rgba(255,93,162,.65);
  border-radius:var(--radius);
  background:#09091e;
  box-shadow: 0 0 22px rgba(255,93,162,.12);
  isolation:isolate;
}
.experience-card:nth-child(2){border-color:rgba(0,212,212,.68);box-shadow:0 0 22px rgba(0,212,212,.12)}
.experience-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(1.1) contrast(1.04); }
.experience-card.solo img { object-position:center 20%; }
.experience-card.band img { object-position:center 18%; }
.experience-card.keys img { object-position:center 20%; }
.experience-card::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg, rgba(5,6,21,.98) 5%, rgba(5,6,21,.78) 42%, rgba(5,6,21,.12) 78%); z-index:0; }
.experience-content { position:absolute; inset:auto 1.4rem 1.5rem; z-index:1; }
.experience-label { color:var(--cyan); text-transform:uppercase; font-size:.72rem; letter-spacing:.16em; font-weight:700; }
.experience-card h3 { font-size:1.65rem; line-height:1.2; margin:.45rem 0 .55rem; color:var(--pink-soft); }
.experience-card p { color:#ded9ea; font-size:.95rem; }
.card-link { display:inline-flex; gap:.35rem; color:var(--cyan); font-weight:700; text-transform:uppercase; letter-spacing:.09em; font-size:.76rem; }
.card-link:hover { color:white; }

.music-band {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:2.5rem;
  align-items:center;
  border:1px solid rgba(136,110,214,.42);
  border-radius:var(--radius);
  padding:2rem;
  background:linear-gradient(120deg,rgba(136,110,214,.10),rgba(255,93,162,.06));
}
.album-art {
  aspect-ratio:1;
  border-radius:14px;
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#18203f,#5a214e 55%,#ec6b94);
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 18px 70px rgba(0,0,0,.45);
}
.album-art::before { content:'DELAWARE\A STREET'; white-space:pre; position:absolute; inset:0; display:grid; place-items:center; text-align:center; font-family:'Monoton',sans-serif; font-size:clamp(1.7rem,4vw,3.4rem); color:#ffb7da; text-shadow:var(--shadow-pink); }
.platforms { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.6rem 0; }
.platforms a { border:1px solid rgba(255,255,255,.2); padding:.7rem .85rem; border-radius:999px; font-size:.82rem; color:#f5f2fb; background:rgba(255,255,255,.035); }
.platforms a:hover { border-color:var(--cyan); box-shadow:var(--shadow-cyan); }
.track-list { list-style:none; padding:0; margin:1.4rem 0; }
.track-list li { display:flex; justify-content:space-between; gap:1rem; padding:.55rem 0; border-bottom:1px solid rgba(255,255,255,.11); color:#e2deec; }
.track-list span:last-child { color:var(--muted); }

.lyric-banner {
  text-align:center;
  padding:6rem 1.5rem;
  border-block:1px solid rgba(255,93,162,.28);
  background:radial-gradient(circle at center,rgba(255,93,162,.15),transparent 45%);
}
.lyric-banner blockquote { margin:0 auto; max-width:900px; font-family:'Allura',cursive; font-size:clamp(2.6rem,6vw,5.5rem); line-height:1.05; color:var(--pink-soft); }
.lyric-banner cite { display:block; margin-top:1rem; font-style:normal; text-transform:uppercase; letter-spacing:.16em; font-size:.75rem; color:var(--cyan); }

.media-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:1.2rem; margin-top:2.4rem; }
.media-card { min-height:360px; border-radius:18px; overflow:hidden; position:relative; border:1px solid rgba(255,255,255,.15); background:#111; }
.media-card img { width:100%; height:100%; object-fit:cover; }
.media-card::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,6,21,.85),transparent 60%); }
.media-card .media-copy { position:absolute; z-index:1; left:1.2rem; right:1.2rem; bottom:1.1rem; }
.play-badge { position:absolute; z-index:2; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:62px; height:62px; display:grid; place-items:center; border-radius:50%; background:rgba(255,93,162,.84); box-shadow:var(--shadow-pink); font-size:1.4rem; }
.media-card:hover .play-badge { transform:translate(-50%,-50%) scale(1.08); }
.video-feature { text-align:center; }
.video-feature .section-kicker,.video-feature .section-title { text-align:center; }
.video-shell {
  width:min(980px,100%);
  aspect-ratio:16/9;
  margin:2rem auto 0;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(0,212,212,.5);
  box-shadow:var(--shadow-cyan),0 0 42px rgba(255,93,162,.15);
  background:#050615;
}
.video-shell iframe { width:100%; height:100%; border:0; display:block; }

.wyld-band {
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:2rem;
  align-items:center;
  padding:3rem;
  border-radius:var(--radius);
  background:linear-gradient(135deg,rgba(0,212,212,.12),rgba(136,110,214,.13),rgba(255,93,162,.11));
  border:1px solid rgba(0,212,212,.3);
}
.wyld-list { display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin-top:1.5rem; }
.wyld-list a { padding:1rem; border:1px solid rgba(255,255,255,.15); background:rgba(5,6,21,.55); border-radius:12px; }
.wyld-list strong{display:block;color:var(--pink-soft)}
.wyld-list span{font-size:.84rem;color:var(--muted)}
.wyld-photo { border-radius:18px; overflow:hidden; min-height:420px; border:1px solid rgba(255,93,162,.45); }
.wyld-photo img { width:100%; height:100%; object-fit:cover; object-position:center 20%; }

.quote-shell {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:2rem;
  align-items:start;
}
.quote-summary {
  position:sticky;
  top:110px;
  border:1px solid rgba(0,212,212,.45);
  border-radius:var(--radius);
  padding:2rem;
  background:rgba(7,8,23,.78);
  box-shadow:var(--shadow-cyan);
}
.quote-number { font-family:'Monoton',sans-serif; color:var(--pink); font-size:clamp(2.5rem,6vw,4.5rem); line-height:1; margin:.6rem 0; }
.quote-form { border:1px solid rgba(255,93,162,.35); border-radius:var(--radius); padding:2rem; background:rgba(7,8,23,.72); }
.quick-estimate {
  max-width:920px;
  border:1px solid rgba(0,212,212,.45);
  border-radius:28px;
  padding:clamp(1.3rem,4vw,3rem);
  background:linear-gradient(145deg,rgba(11,13,39,.95),rgba(30,14,52,.9));
  box-shadow:var(--shadow-cyan),inset 0 0 45px rgba(255,93,162,.06);
}
.quick-estimate-heading { text-align:center; }
.quick-estimate-form { max-width:720px; margin:1.5rem auto 0; }
.quote-form-inline { max-width:760px; margin:1.5rem auto 0; }
.estimate-result {
  text-align:center;
  padding:1.3rem;
  border:1px solid rgba(255,93,162,.3);
  border-radius:16px;
  background:rgba(5,6,21,.7);
}
.estimate-result .quote-number { font-size:clamp(2rem,6vw,4rem); }
.estimate-result p { margin:.55rem 0 0; color:var(--muted); }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.field { display:flex; flex-direction:column; gap:.42rem; }
.field.full { grid-column:1/-1; }
.field label { color:#f4eff9; font-size:.84rem; font-weight:700; }
.field input,.field select,.field textarea {
  width:100%;
  border:1px solid rgba(255,255,255,.19);
  border-radius:10px;
  background:#0c0d24;
  color:white;
  padding:.85rem .9rem;
}
.field input:focus,.field select:focus,.field textarea:focus { outline:2px solid rgba(0,212,212,.45); border-color:var(--cyan); }
.check-row { display:flex; flex-wrap:wrap; gap:.7rem; }
.check-chip { display:flex; align-items:center; gap:.45rem; border:1px solid rgba(255,255,255,.18); padding:.65rem .75rem; border-radius:10px; background:rgba(255,255,255,.025); }
.form-note { color:var(--muted); font-size:.78rem; }
.form-status { margin-top:1rem; min-height:1.4rem; color:var(--cyan); }

.page-hero { padding:5.5rem 0 4rem; border-bottom:1px solid rgba(255,93,162,.26); }
.page-hero-grid { display:grid; grid-template-columns:1fr .75fr; gap:2rem; align-items:center; }
.page-hero h1 { font-family:'Monoton',sans-serif; font-weight:400; color:var(--pink); font-size:clamp(2.7rem,6vw,5.8rem); line-height:1.04; margin:0; text-shadow:var(--shadow-pink); }
.page-hero-image { min-height:520px; border-radius:26px; overflow:hidden; border:1px solid rgba(255,93,162,.5); position:relative; background:#070817; }
.page-hero-image::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(135deg,rgba(0,212,212,.12),transparent 44%,rgba(255,93,162,.14)); mix-blend-mode:screen; }
.page-hero-image img { width:100%; height:100%; object-fit:cover; object-position:center 18%; filter:saturate(1.08) contrast(1.04); }
.show-list { display:grid; gap:.85rem; margin-top:2rem; }
.show-row { display:grid; grid-template-columns:110px 1fr auto; gap:1.25rem; align-items:center; padding:1rem 1.2rem; border:1px solid rgba(0,212,212,.25); border-radius:18px; background:rgba(8,9,29,.74); }
.show-row time { display:grid; color:var(--cyan); text-align:center; text-transform:uppercase; letter-spacing:.08em; }
.show-row time strong { font-size:1.15rem; }
.show-row time span { color:var(--muted); font-size:.75rem; }
.show-row h3 { margin:0 0 .2rem; color:var(--pink-soft); }
.show-row p { margin:0; color:var(--muted); }
.show-type { display:inline-block; margin-bottom:.3rem; color:var(--pink-soft); text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; font-weight:700; }
.show-type.solo-type { color:var(--cyan); }
.calendar-cta { text-align:center; border:1px solid rgba(255,93,162,.28); border-radius:var(--radius); padding:clamp(1.5rem,4vw,3rem); background:radial-gradient(circle at 50% 0,rgba(136,110,214,.18),transparent 55%),rgba(7,8,23,.68); }
.calendar-cta .lede { margin-inline:auto; }
.shows-hero-image img { object-position:center 35%; }
.booking-links { text-align:center; }
.booking-links .detail-card { display:flex; flex-direction:column; align-items:center; }
.booking-links .detail-card .btn { margin-top:auto; }
.epk-hero-image { height:520px; }
.epk-hero-image img { object-position:center; }
.detail-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.detail-card { padding:1.5rem; border:1px solid rgba(255,255,255,.14); border-radius:16px; background:rgba(255,255,255,.025); }
.detail-card h3{color:var(--pink-soft);margin-top:0}
.whimsy-feature { display:grid; grid-template-columns:.8fr 1.2fr; gap:2rem; align-items:center; padding:2rem; border:1px solid rgba(136,110,214,.45); border-radius:24px; background:linear-gradient(135deg,rgba(136,110,214,.12),rgba(0,212,212,.07)); }
.whimsy-photo { min-height:440px; border-radius:18px; overflow:hidden; position:relative; border:1px solid rgba(0,212,212,.35); }
.whimsy-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(145deg,rgba(0,212,212,.12),transparent 55%,rgba(255,93,162,.18)); mix-blend-mode:screen; }
.whimsy-photo img { width:100%; height:100%; object-fit:cover; object-position:center 22%; filter:saturate(1.08) contrast(1.03); }
.cyan-script { color:#7ffcff !important; text-shadow:var(--shadow-cyan) !important; }
.epk-gallery { display:grid; grid-template-columns:repeat(12,1fr); gap:1rem; margin-top:2rem; }
.epk-photo { overflow:hidden; border-radius:18px; border:1px solid rgba(255,93,162,.35); min-height:260px; background:#08091d; }
.epk-photo:nth-child(1),.epk-photo:nth-child(4) { grid-column:span 7; }
.epk-photo:nth-child(2),.epk-photo:nth-child(3) { grid-column:span 5; }
.epk-photo:nth-child(5),.epk-photo:nth-child(6) { grid-column:span 6; }
.epk-photo img { width:100%; height:100%; object-fit:cover; filter:saturate(1.04) contrast(1.03); }
.epk-photo:nth-child(2) img { object-position:center 20%; }
.epk-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:2rem 0; }
.epk-fact { padding:1.3rem; border:1px solid rgba(0,212,212,.28); border-radius:14px; background:rgba(0,212,212,.045); }
.epk-fact strong { display:block; color:var(--cyan); margin-bottom:.3rem; }

/* Hidden electronic press kit */
.epk-page { background:#050615; }
.epk-header {
  position:absolute; top:0; left:0; right:0; z-index:20;
  min-height:94px; display:flex; align-items:center; justify-content:space-between; gap:2rem;
  width:min(1320px,calc(100% - 3rem)); margin-inline:auto;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.epk-brand { display:flex; align-items:center; gap:.8rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; font-size:.86rem; }
.epk-brand img { width:72px; height:58px; object-fit:contain; filter:drop-shadow(0 0 12px rgba(0,212,212,.4)); }
.epk-header-actions { display:flex; align-items:center; gap:1.3rem; }
.epk-private-label { color:var(--cyan); text-transform:uppercase; letter-spacing:.22em; font-size:.68rem; }
.epk-contact-link { border:1px solid rgba(255,93,162,.75); padding:.55rem .9rem; font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; box-shadow:var(--shadow-pink); }
.epk-cover { min-height:100svh; position:relative; display:flex; align-items:flex-end; overflow:hidden; padding:10rem 0 6rem; }
.epk-cover::before { content:""; position:absolute; inset:0; z-index:2; background:radial-gradient(circle at 75% 25%,rgba(255,93,162,.16),transparent 30%),linear-gradient(90deg,rgba(5,6,21,.98) 0%,rgba(5,6,21,.84) 42%,rgba(5,6,21,.2) 74%,rgba(5,6,21,.46) 100%),linear-gradient(0deg,#050615 0%,transparent 42%); }
.epk-cover-photo { position:absolute; inset:0; }
.epk-cover-photo img { width:100%; height:100%; object-fit:cover; object-position:center 28%; filter:saturate(1.1) contrast(1.05); transform:scaleX(-1); }
.epk-cover-shade { position:absolute; inset:0; z-index:3; box-shadow:inset 0 0 150px rgba(0,0,0,.65); pointer-events:none; }
.epk-cover-content { position:relative; z-index:4; width:min(1320px,calc(100% - 3rem)); margin-inline:auto; }
.epk-cover h1 { max-width:820px; margin:0; font-family:'Monoton','Bauhaus 93',sans-serif; font-weight:400; font-size:clamp(4.2rem,10vw,9rem); line-height:.96; letter-spacing:.035em; color:#ff82bc; text-shadow:0 0 5px #ff5da2,0 0 15px rgba(255,93,162,.9),0 0 42px rgba(255,93,162,.4); }
.epk-cover .hero-script { font-size:clamp(2.2rem,4vw,4.3rem); }
.epk-cover-copy { max-width:700px; color:#f1edf8; font-size:clamp(1.05rem,1.5vw,1.3rem); }
.epk-scroll-cue { position:absolute; right:3rem; bottom:2.5rem; z-index:5; color:var(--cyan); font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; writing-mode:vertical-rl; }
.epk-snapshot { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(0,212,212,.25); border-bottom:1px solid rgba(255,93,162,.27); background:rgba(8,8,28,.95); }
.epk-snapshot > div { padding:1.5rem 2rem; border-right:1px solid rgba(255,255,255,.12); }
.epk-snapshot > div:last-child { border-right:0; }
.epk-snapshot span { display:block; color:var(--cyan); font-size:.64rem; letter-spacing:.2em; text-transform:uppercase; margin-bottom:.35rem; }
.epk-snapshot strong { font-size:.93rem; font-weight:600; }
.epk-bio-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.epk-bio-copy { max-width:760px; color:var(--muted); font-size:1.04rem; }
.epk-bio-lead { color:var(--white); font-size:clamp(1.4rem,2.2vw,2rem); line-height:1.45; margin-top:0; }
.epk-section-heading { display:flex; justify-content:space-between; gap:3rem; align-items:end; margin-bottom:2.5rem; }
.epk-section-heading > p { max-width:490px; color:var(--muted); margin:0 0 .5rem; }
.epk-section-heading .section-title { margin-bottom:0; }
.epk-bio-cards { display:grid; grid-template-columns:1.4fr .6fr; gap:1.2rem; }
.epk-copy-card { padding:2rem; border:1px solid rgba(0,212,212,.25); border-radius:var(--radius); background:linear-gradient(135deg,rgba(0,212,212,.06),rgba(136,110,214,.06)); }
.epk-copy-card span { color:var(--cyan); font-size:.68rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.epk-copy-card p { color:#f2eef8; margin:1rem 0 0; font-size:1.03rem; }
.epk-lyric { border-block:1px solid rgba(255,93,162,.35); }
.epk-media-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr); gap:1.4rem; align-items:stretch; }
.epk-video { margin:0; height:100%; min-height:480px; }
.epk-release-card { padding:2rem; border:1px solid rgba(255,93,162,.4); border-radius:var(--radius); background:linear-gradient(180deg,rgba(255,93,162,.08),rgba(12,12,38,.9)); }
.epk-release-card h3 { font-family:'Allura',cursive; color:var(--pink-soft); font-size:3.3rem; font-weight:400; line-height:1; margin:.5rem 0 1.5rem; }
.epk-release-card ol { list-style:none; padding:0; margin:0 0 1.8rem; }
.epk-release-card li { display:flex; justify-content:space-between; gap:1rem; padding:.78rem 0; border-bottom:1px solid rgba(255,255,255,.12); }
.epk-release-card small { color:var(--cyan); text-transform:uppercase; letter-spacing:.12em; }
.epk-release-card .btn { width:100%; }
.epk-text-link { display:block; color:var(--pink-soft); margin-top:1.3rem; font-size:.85rem; }
.epk-photos-section { background:linear-gradient(180deg,rgba(136,110,214,.08),transparent); }
.epk-gallery { grid-auto-rows:260px; }
.epk-photo { position:relative; display:block; margin:0; }
.epk-photo img { transition:transform .45s ease,filter .45s ease; }
.epk-photo:hover img,.epk-photo:focus-visible img { transform:scale(1.025); filter:saturate(1.15) contrast(1.03); }
.epk-photo span { position:absolute; left:0; right:0; bottom:0; z-index:2; padding:2.8rem 1rem 1rem; color:white; font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; background:linear-gradient(transparent,rgba(5,6,21,.95)); }
.epk-credit-note { color:var(--muted); font-size:.8rem; margin:1.2rem 0 0; }
.epk-download-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.epk-download-grid > a { min-height:145px; display:flex; align-items:center; gap:1.2rem; padding:1.2rem; border:1px solid rgba(0,212,212,.25); border-radius:16px; background:rgba(0,212,212,.04); transition:transform .2s ease,border-color .2s ease,background .2s ease; }
.epk-download-grid > a:hover,.epk-download-grid > a:focus-visible { transform:translateY(-3px); border-color:var(--cyan); background:rgba(0,212,212,.09); }
.epk-download-grid img,.epk-brand-preview { width:110px; height:100px; object-fit:contain; flex:0 0 auto; }
.epk-brand-preview { display:grid; place-items:center; color:var(--pink); font-size:4rem; text-shadow:var(--shadow-pink); }
.epk-download-grid strong,.epk-download-grid small { display:block; }
.epk-download-grid small { color:var(--muted); margin-top:.3rem; }
.epk-contact { padding-top:4rem; }
.epk-contact-card { position:relative; padding:clamp(2.5rem,7vw,6rem); border:1px solid var(--pink); border-radius:30px; overflow:hidden; background:radial-gradient(circle at 80% 20%,rgba(0,212,212,.12),transparent 30%),linear-gradient(135deg,rgba(255,93,162,.11),rgba(8,8,28,.92)); box-shadow:var(--shadow-pink); }
.epk-contact-card > img { position:absolute; width:330px; right:4%; top:50%; transform:translateY(-50%); opacity:.16; filter:drop-shadow(0 0 18px var(--cyan)); }
.epk-contact-card h2 { position:relative; max-width:900px; margin:.4rem 0 1rem; font-family:'Allura',cursive; font-size:clamp(3.3rem,7vw,6rem); font-weight:400; line-height:1; color:var(--pink-soft); text-shadow:var(--shadow-pink); }
.epk-contact-card p,.epk-contact-card .hero-actions { position:relative; max-width:740px; }
.epk-footer { width:min(1320px,calc(100% - 3rem)); margin-inline:auto; padding:2rem 0 3rem; display:flex; justify-content:space-between; gap:1.5rem; border-top:1px solid rgba(255,255,255,.14); color:var(--muted); font-size:.75rem; }
.epk-footer a { color:var(--cyan); }

/* Wyld Nights party band EPK */
.wyld-epk-cover .epk-cover-photo img { transform:none; object-position:center 42%; }
.wyld-epk-cover::before { background:radial-gradient(circle at 70% 20%,rgba(0,212,212,.15),transparent 30%),linear-gradient(90deg,rgba(5,6,21,.98) 0%,rgba(5,6,21,.83) 45%,rgba(5,6,21,.22) 77%,rgba(5,6,21,.45) 100%),linear-gradient(0deg,#050615 0%,transparent 42%); }
.wyld-epk-cover h1 { max-width:1050px; font-size:clamp(3.8rem,8.7vw,8rem); }
.wyld-epk-cover h1 span { display:block; margin-bottom:.35rem; color:var(--cyan); font-family:'Montserrat',sans-serif; font-size:clamp(.86rem,1.5vw,1.25rem); font-weight:700; letter-spacing:.23em; text-transform:uppercase; text-shadow:var(--shadow-cyan); }
.wyld-service-section { background:linear-gradient(180deg,rgba(0,212,212,.055),transparent); }
.wyld-feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.wyld-feature-grid article { min-height:265px; padding:1.6rem; border:1px solid rgba(0,212,212,.24); border-radius:18px; background:linear-gradient(145deg,rgba(0,212,212,.055),rgba(255,93,162,.04)); }
.wyld-feature-grid article > span { color:var(--pink); font-family:'Monoton',sans-serif; font-size:1.8rem; text-shadow:var(--shadow-pink); }
.wyld-feature-grid h3 { margin:2rem 0 .7rem; color:var(--pink-soft); font-size:1.1rem; }
.wyld-feature-grid p { color:var(--muted); margin:0; font-size:.93rem; }
.wyld-photo-break { min-height:620px; position:relative; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; background:#06071b; }
.wyld-photo-break::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 30%,rgba(5,6,21,.78) 51%,rgba(5,6,21,.96) 100%); pointer-events:none; }
.wyld-photo-break > img { width:100%; height:100%; max-height:720px; object-fit:cover; object-position:center 28%; }
.wyld-photo-break > div { position:relative; z-index:2; align-self:center; padding:clamp(2rem,7vw,7rem); }
.wyld-photo-break blockquote { margin:1rem 0 0; max-width:680px; font-family:'Allura',cursive; color:var(--pink-soft); font-size:clamp(3rem,5.5vw,5.8rem); line-height:1.02; text-shadow:var(--shadow-pink); }
.wyld-event-card ul { list-style:none; padding:0; margin:0 0 1.8rem; display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
.wyld-event-card li { padding:.65rem .7rem; border:1px solid rgba(255,255,255,.12); border-radius:9px; color:#f2eef8; font-size:.83rem; }
.wyld-planning-section { background:radial-gradient(circle at 10% 20%,rgba(255,93,162,.1),transparent 34%); }
.wyld-planning-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.wyld-planning-grid article { padding:1.5rem; border-top:2px solid var(--cyan); background:rgba(255,255,255,.025); }
.wyld-planning-grid h3 { color:var(--pink-soft); margin:0 0 .65rem; }
.wyld-planning-grid p { color:var(--muted); margin:0; font-size:.9rem; }
.wyld-epk-gallery { display:grid; grid-template-columns:repeat(12,1fr); grid-auto-rows:280px; gap:1rem; }
.wyld-epk-gallery a { position:relative; overflow:hidden; border:1px solid rgba(255,93,162,.3); border-radius:18px; }
.wyld-epk-gallery a:nth-child(1) { grid-column:span 7; }
.wyld-epk-gallery a:nth-child(2) { grid-column:span 5; }
.wyld-epk-gallery a:nth-child(3) { grid-column:span 4; }
.wyld-epk-gallery a:nth-child(4) { grid-column:span 8; }
.wyld-epk-gallery img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.wyld-epk-gallery a:nth-child(3) img { object-position:center 26%; }
.wyld-epk-gallery a:hover img,.wyld-epk-gallery a:focus-visible img { transform:scale(1.025); }
.wyld-epk-gallery span { position:absolute; inset:auto 0 0; padding:2.5rem 1rem 1rem; background:linear-gradient(transparent,rgba(5,6,21,.95)); color:white; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.wyld-contact-card { background:radial-gradient(circle at 80% 20%,rgba(255,228,94,.1),transparent 25%),linear-gradient(135deg,rgba(0,212,212,.1),rgba(255,93,162,.09),rgba(8,8,28,.94)); }
.wyldkeys-epk-cover .epk-cover-photo img { transform:none; object-position:center 42%; }
.wyldkeys-epk-cover::before { background:radial-gradient(circle at 72% 24%,rgba(255,93,162,.13),transparent 27%),linear-gradient(90deg,rgba(5,6,21,.98) 0%,rgba(5,6,21,.84) 43%,rgba(5,6,21,.18) 75%,rgba(5,6,21,.42) 100%),linear-gradient(0deg,#050615 0%,transparent 42%); }
.wyldkeys-epk-cover h1 { max-width:980px; font-size:clamp(4rem,9vw,8.4rem); }
.wyldkeys-epk-cover h1 span { display:block; margin-bottom:.35rem; color:var(--cyan); font-family:'Montserrat',sans-serif; font-size:clamp(.86rem,1.5vw,1.25rem); font-weight:700; letter-spacing:.23em; text-transform:uppercase; text-shadow:var(--shadow-cyan); }
.wyldkeys-photo-break { grid-template-columns:minmax(300px,.72fr) 1.28fr; }
.wyldkeys-photo-break > img { max-height:none; object-position:center; object-fit:contain; padding:2rem; background:radial-gradient(circle,rgba(255,93,162,.12),transparent 58%); }
.wyldkeys-epk-gallery { display:grid; grid-template-columns:1.3fr .7fr 1fr; grid-auto-rows:430px; gap:1rem; }
.wyldkeys-epk-gallery a { position:relative; overflow:hidden; border:1px solid rgba(255,93,162,.3); border-radius:18px; }
.wyldkeys-epk-gallery img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.wyldkeys-epk-gallery a:nth-child(2) img { object-fit:contain; padding:.65rem; background:#07081c; }
.wyldkeys-epk-gallery a:hover img,.wyldkeys-epk-gallery a:focus-visible img { transform:scale(1.025); }
.wyldkeys-epk-gallery span { position:absolute; inset:auto 0 0; padding:2.5rem 1rem 1rem; background:linear-gradient(transparent,rgba(5,6,21,.95)); color:white; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.faq { border-top:1px solid rgba(255,255,255,.14); }
.faq details { border-bottom:1px solid rgba(255,255,255,.14); padding:1rem 0; }
.faq summary { cursor:pointer; font-weight:700; color:#f5eef8; }
.faq p { color:var(--muted); }
.wyldkeys-fit-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,7vw,6rem); align-items:start; }
.wyldkeys-feature-list { display:grid; gap:1rem; }
.wyldkeys-feature-list > div { padding:1.2rem 1.3rem; border:1px solid rgba(0,212,212,.24); border-radius:14px; background:linear-gradient(135deg,rgba(0,212,212,.055),rgba(255,93,162,.04)); }
.wyldkeys-feature-list strong,.wyldkeys-feature-list span { display:block; }
.wyldkeys-feature-list strong { color:var(--pink-soft); margin-bottom:.25rem; }
.wyldkeys-feature-list span { color:var(--muted); font-size:.9rem; }

.site-footer { border-top:1px solid rgba(255,93,162,.28); background:rgba(3,4,15,.85); padding:4rem 0 1.5rem; }
.footer-grid { display:grid; grid-template-columns:1.25fr repeat(3,1fr); gap:2rem; }
.footer-brand img { width:112px; height:112px; object-fit:contain; }
.footer-brand p { color:var(--muted); max-width:360px; }
.footer-col h3 { font-size:.8rem; text-transform:uppercase; letter-spacing:.16em; color:var(--cyan); }
.footer-col a { display:block; color:#d7d2e2; margin:.35rem 0; font-size:.9rem; }
.footer-col a:hover { color:var(--pink-soft); }
.copyright { text-align:center; color:#8f8aa1; font-size:.75rem; padding-top:2rem; margin-top:2rem; border-top:1px solid rgba(255,255,255,.08); }

.reveal { opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 980px) {
  .menu-toggle { display:block; }
  .site-nav { position:absolute; top:86px; left:0; right:0; display:none; flex-direction:column; align-items:stretch; padding:1rem; background:rgba(5,6,21,.97); border-bottom:1px solid var(--line); }
  .site-nav.open { display:flex; }
  .hero-grid,.music-band,.wyld-band,.quote-shell,.page-hero-grid,.whimsy-feature,.wyldkeys-fit-grid { grid-template-columns:1fr; }
  .hero { min-height:auto; }
  .hero-shell { padding-inline:1.4rem; }
  .hero-visual { min-height:590px; }
  .hero-copy { text-align:center; }
  .hero-sub { margin-inline:auto; }
  .hero-actions { justify-content:center; }
  .experience-grid { grid-template-columns:1fr; }
  .experience-card { min-height:540px; }
  .media-grid { grid-template-columns:1fr 1fr; }
  .media-card:first-child { grid-column:1/-1; }
  .quote-summary { position:relative; top:auto; }
  .detail-grid { grid-template-columns:1fr; }
  .epk-facts { grid-template-columns:1fr; }
  .epk-snapshot { grid-template-columns:repeat(2,1fr); }
  .epk-snapshot > div:nth-child(2) { border-right:0; }
  .epk-bio-grid,.epk-media-grid { grid-template-columns:1fr; }
  .epk-section-heading { align-items:start; flex-direction:column; gap:1rem; }
  .epk-bio-cards { grid-template-columns:1fr; }
  .epk-download-grid { grid-template-columns:1fr; }
  .wyld-feature-grid,.wyld-planning-grid { grid-template-columns:1fr 1fr; }
  .wyld-photo-break { min-height:560px; grid-template-columns:1fr; }
  .wyld-photo-break::after { background:linear-gradient(0deg,rgba(5,6,21,.98) 0%,rgba(5,6,21,.4) 62%,transparent 100%); }
  .wyld-photo-break > img { position:absolute; inset:0; max-height:none; }
  .wyld-photo-break > div { align-self:end; }
  .wyldkeys-epk-gallery { grid-template-columns:1fr 1fr; grid-auto-rows:360px; }
  .wyldkeys-epk-gallery a:first-child { grid-column:1 / -1; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 640px) {
  .header-inner { min-height:72px; }
  .brand-link { min-width:70px; }
  .brand-link img { width:62px; height:58px; }
  .site-nav { top:72px; }
  .section { padding:5rem 0; }
  .hero { padding-top:1rem; }
  .hero-shell { width:calc(100% - 1rem); padding:.8rem .8rem 1.3rem; border-radius:20px; }
  .hero-marquee { padding:.2rem .5rem 1rem; }
  .hero-moon-mark { width:96px; height:86px; }
  .hero-moon-mark img { width:96px; height:86px; }
  .neon-corner { width:25%; height:30px; }
  .hero-title { font-size:clamp(2.5rem,13vw,4rem); }
  .hero-script { font-size:clamp(2rem,10vw,3.2rem); }
  .hero-copy { padding:1rem .5rem 1.5rem; }
  .hero-visual { min-height:500px; }
  .hero-photo-frame { inset:0; border-radius:170px 170px 24px 24px; }
  .stat-strip { grid-template-columns:1fr 1fr; }
  .stat:nth-child(2){border-right:0}
  .stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}
  .music-band,.wyld-band,.quote-form,.quote-summary { padding:1.25rem; }
  .media-grid { grid-template-columns:1fr; }
  .media-card:first-child { grid-column:auto; }
  .wyld-list,.form-grid { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .footer-grid { grid-template-columns:1fr; }
  .epk-gallery { grid-template-columns:1fr; }
  .epk-photo:nth-child(n) { grid-column:auto; min-height:320px; }
  .page-hero { padding-top:3.5rem; }
  .page-hero-image { min-height:420px; }
  .show-row { grid-template-columns:82px 1fr; }
  .show-row .btn { grid-column:1 / -1; }
  .epk-hero-image { height:420px; }
  .epk-header { width:calc(100% - 2rem); min-height:78px; }
  .epk-brand span,.epk-private-label { display:none; }
  .epk-contact-link { font-size:.65rem; }
  .epk-cover { padding-bottom:4.5rem; }
  .epk-cover::before { background:linear-gradient(0deg,rgba(5,6,21,.98) 0%,rgba(5,6,21,.78) 62%,rgba(5,6,21,.28) 100%); }
  .epk-cover-content { width:calc(100% - 2rem); }
  .epk-cover h1 { font-size:clamp(3.1rem,16vw,5rem); }
  .epk-scroll-cue { display:none; }
  .epk-snapshot { grid-template-columns:1fr; }
  .epk-snapshot > div { border-right:0; border-bottom:1px solid rgba(255,255,255,.1); padding:1rem; }
  .epk-snapshot > div:last-child { border-bottom:0; }
  .epk-video { min-height:0; }
  .epk-gallery { grid-auto-rows:auto; }
  .epk-photo:nth-child(n) { min-height:0; aspect-ratio:4/5; }
  .epk-photo-feature { aspect-ratio:16/10 !important; }
  .epk-contact-card > img { width:240px; right:-60px; }
  .epk-footer { width:calc(100% - 2rem); flex-direction:column; text-align:center; }
  .wyld-epk-cover h1 { font-size:clamp(2.9rem,14vw,4.8rem); }
  .wyld-epk-cover .epk-cover-photo img { object-position:58% center; }
  .wyld-feature-grid,.wyld-planning-grid { grid-template-columns:1fr; }
  .wyld-feature-grid article { min-height:0; }
  .wyld-photo-break blockquote { font-size:clamp(2.6rem,13vw,4.2rem); }
  .wyld-event-card ul { grid-template-columns:1fr; }
  .wyld-epk-gallery { grid-template-columns:1fr; grid-auto-rows:auto; }
  .wyld-epk-gallery a:nth-child(n) { grid-column:auto; aspect-ratio:4/3; }
  .wyldkeys-epk-cover h1 { font-size:clamp(3rem,15vw,4.8rem); }
  .wyldkeys-epk-cover .epk-cover-photo img { object-position:60% center; }
  .wyldkeys-photo-break > img { padding:1rem; object-fit:contain; }
  .wyldkeys-epk-gallery { grid-template-columns:1fr; grid-auto-rows:auto; }
  .wyldkeys-epk-gallery a:nth-child(n) { grid-column:auto; aspect-ratio:4/3; }
  .wyldkeys-epk-gallery a:nth-child(2) { aspect-ratio:4/5; }
}

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