/* =====================================================
   39 NORTH - PRESS KIT (EPK) ONLY STYLES
   Requires css/styles.css to be loaded first
   ===================================================== */

/* ===== EPK HERO =====
   The photo comes from js/images-data.js (sets --hero-image and --hero-pos).
   The fallbacks after the commas are used only if that file is missing. */
.epk-hero{
  min-height:88vh;min-height:88svh;
  position:relative;
  display:flex;align-items:flex-end;
  background-image:
    linear-gradient(180deg, rgba(12,11,10,.6) 0%, rgba(12,11,10,.62) 45%, rgba(12,11,10,.97) 100%),
    var(--hero-image, url('/images/hero-bg.jpg'));
  background-position:center, var(--hero-pos, center 22%);
  background-size:cover;
  background-repeat:no-repeat;
}
.epk-hero-inner{width:100%;padding:150px 0 72px;position:relative;z-index:2;}
.epk-hero h1{
  font-size:clamp(48px,8vw,96px);
  line-height:.92;
  letter-spacing:-.01em;
}
.epk-hero h1 em{font-style:normal;color:var(--red-bright);}
.epk-sub{
  font-size:clamp(16px,2vw,19px);
  color:var(--paper-dim);
  max-width:600px;margin-top:20px;font-weight:400;
}
.epk-ctas{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap;}

/* ===== QUICK FACTS STRIP ===== */
.strip{background:var(--red);padding:22px 0;}
.facts-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.fact b{
  display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15.5px;color:#fff;
  text-transform:uppercase;letter-spacing:.02em;
}
.fact span{
  font-family:'Space Mono',monospace;font-size:11.5px;color:rgba(255,255,255,.92);
  text-transform:uppercase;letter-spacing:.08em;display:block;margin-top:4px;
}

/* ===== BIO ===== */
.bio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start;}
.bio-text p{color:var(--paper-dim);font-size:18px;margin-bottom:18px;max-width:520px;}
.bio-text p:first-of-type{font-size:21px;color:var(--paper);font-weight:500;}
.genre-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;}
.genre-tag{
  font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:14px;letter-spacing:.04em;text-transform:uppercase;
  border:1px solid var(--line);padding:8px 16px;border-radius:100px;color:var(--paper-dim);
}

/* ===== BOOKING DETAILS (at-a-glance spec grid) ===== */
.spec-section{background:var(--bg-alt);}
.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.spec{background:var(--bg-alt);padding:24px 26px;}
.spec span{display:block;font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--red-bright);margin-bottom:8px;}
.spec b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:20px;letter-spacing:.01em;text-transform:uppercase;line-height:1.2;}
.spec p{color:var(--muted);font-size:14.5px;margin-top:6px;}

/* ===== WHY BOOK ===== */
.why-section{background:var(--bg);}
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--line);border:1px solid var(--line);}
.why-cell{background:var(--bg-alt);padding:32px;}
.why-cell .icon{
  width:40px;height:40px;border:1px solid var(--red-deep);border-radius:100px;display:flex;align-items:center;justify-content:center;
  font-family:'Space Mono',monospace;color:var(--red-bright);font-size:14px;margin-bottom:16px;
}
.why-cell h3{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:19px;letter-spacing:.01em;text-transform:uppercase;margin-bottom:8px;}
.why-cell p{color:var(--paper-dim);font-size:15.5px;}

/* ===== THE SET (scrollable list) ===== */
.set-scroll{
  max-height:480px;overflow-y:auto;
  border:1px solid var(--line);border-radius:2px;background:var(--bg-alt2);
}
.set-scroll::-webkit-scrollbar{width:8px;}
.set-scroll::-webkit-scrollbar-track{background:var(--bg-alt2);}
.set-scroll::-webkit-scrollbar-thumb{background:var(--red-deep);border-radius:4px;}
.set-group-label{
  position:sticky;top:0;background:var(--red-deep);color:#fff;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;
  padding:10px 20px;z-index:1;
}
.set-song{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding:12px 20px;border-bottom:1px solid var(--line);font-size:15px;
}
.set-song b{color:var(--paper);font-weight:500;}
.set-song span{color:var(--muted);font-size:13.5px;text-align:right;}
.set-note{margin-top:24px;color:var(--muted);font-size:15px;max-width:560px;border-left:2px solid var(--red);padding-left:18px;}

/* ===== PHOTOS (grid built from IMAGES.gallery in js/images-data.js) ===== */
.photo-section{background:var(--bg-alt);}
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.photo-card{border-radius:2px;overflow:hidden;border:1px solid var(--line);position:relative;background:var(--bg-alt2);}
.photo-card img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;display:block;filter:grayscale(10%) contrast(1.03);}
.photo-card a.dl{
  position:absolute;right:8px;bottom:8px;background:rgba(12,11,10,.8);color:#fff;
  font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;
  padding:8px 12px;border-radius:100px;opacity:0;transition:opacity .2s;
}
.photo-card:hover a.dl,.photo-card a.dl:focus-visible{opacity:1;}
/* phones and tablets have no hover, so the download button stays visible */
@media (hover:none){.photo-card a.dl{opacity:1;}}

/* ===== STAGE PLOT / TECH RIDER ===== */
.rider-section{background:var(--bg-alt);}
.rider-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start;}
.stage-plot-frame{
  background:#fff;border-radius:4px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.stage-plot-frame img{width:100%;height:auto;display:block;}
.rider-dl{margin-top:24px;}
.rider-list{display:flex;flex-direction:column;gap:0;max-width:720px;}
.rider-item{
  display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);
}
.rider-item .n{
  font-family:'Space Mono',monospace;color:var(--red-bright);font-size:13px;letter-spacing:.04em;
  flex:0 0 26px;padding-top:2px;
}
.rider-item div p{color:var(--paper-dim);font-size:15px;}
.rider-item div b{font-weight:500;color:var(--paper);}
.rider-note{
  margin-top:24px;font-family:'Space Mono',monospace;font-size:13px;color:var(--muted);
  border-left:2px solid var(--red);padding-left:16px;max-width:560px;
}

/* ===== press-kit.html-specific responsive tweaks ===== */
@media (max-width:900px){
  .facts-grid{grid-template-columns:repeat(2,1fr);row-gap:22px;}
  .bio-grid,.rider-grid{grid-template-columns:1fr;gap:44px;}
  .photo-grid{grid-template-columns:repeat(2,1fr);}
  .members{max-width:480px;}
  .spec-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:700px){.why-grid{grid-template-columns:1fr;}}
@media (max-width:640px){
  .facts-grid{grid-template-columns:1fr 1fr;}
  .spec-grid{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .epk-hero-inner{padding:130px 0 48px;}
  .facts-grid{grid-template-columns:1fr;gap:18px;}
  .rider-item{gap:12px;}
  .photo-grid{grid-template-columns:1fr 1fr;}
  .set-song{flex-direction:column;gap:2px;}
  .set-song span{text-align:left;}
}
