/* =====================================================================
   LOCATIONS (PARENT) PAGE STYLES (/locations/)
   Page-specific styles, built on the shared flasher-v2.css design system
   and tokens. Load AFTER flasher-v2.css.
   ===================================================================== */

/* ---- intro ---- */
.loc-intro{background:var(--black);padding:90px 0 40px;}
.loc-intro__copy{
  font-family:'IBM Plex Mono','Courier New',monospace;font-weight:400;color:#fff;
  font-size:clamp(18px,2vw,28px);line-height:1.45;margin:0;max-width:860px;
}

/* ---- location cards ---- */
.loc-cards{background:var(--black);padding:20px 0 110px;}
.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;}
.loc-card{
  position:relative;display:block;overflow:hidden;
  border:1px solid var(--line);background:#111;min-height:420px;
  transition:border-color .25s,transform .25s;
}
.loc-card:hover{border-color:rgba(255,203,5,.55);transform:translateY(-6px);}
.loc-card__img{position:absolute;inset:0;z-index:0;}
.loc-card__img img{width:100%;height:100%;object-fit:cover;display:block;}
/* dark scrim so the text stays readable */
.loc-card::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.82) 100%);
}
.loc-card__body{
  position:relative;z-index:2;display:flex;flex-direction:column;
  height:100%;min-height:420px;justify-content:flex-end;padding:36px 34px;gap:6px;
}
.loc-card__state{
  font-family:'IBM Plex Mono','Courier New',monospace;text-transform:uppercase;
  color:var(--yellow);letter-spacing:3px;font-size:14px;
}
.loc-card__city{
  font-family:'Inter',sans-serif;font-weight:900;color:#fff;text-transform:uppercase;
  font-size:clamp(36px,4.4vw,60px);line-height:1;letter-spacing:-1px;
}
.loc-card__name{
  font-family:'IBM Plex Mono','Courier New',monospace;color:#cfd2d8;
  font-size:18px;line-height:1.4;margin-top:8px;
}
.loc-card__link{
  margin-top:18px;display:inline-flex;align-items:center;gap:8px;
  font-family:'IBM Plex Mono','Courier New',monospace;text-transform:uppercase;
  letter-spacing:1.5px;font-size:14px;color:#fdbf12;transition:color .2s;
}
.loc-card:hover .loc-card__link{color:#fff;}
.loc-card__link .arr{transition:transform .25s;}
.loc-card:hover .loc-card__link .arr{transform:translate(3px,-3px);}
@media (max-width:860px){
  .loc-grid{grid-template-columns:1fr;gap:24px;}
}

/* =====================================================================
   GLOBAL NAV — Locations dropdown (hover to reveal)
   Lives in the shared header on every page.
   ===================================================================== */
.v2-nav .has-dropdown{position:relative;}
.v2-nav .dropdown{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);
  min-width:220px;background:#000;border:1px solid var(--line);
  display:flex;flex-direction:column;padding:8px 0;
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,transform .2s;
  z-index:120;
}
.v2-nav .has-dropdown:hover .dropdown,
.v2-nav .has-dropdown:focus-within .dropdown{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);
}
.v2-nav .dropdown a{
  display:block;padding:11px 22px;font-size:16px;letter-spacing:1px;color:#dcdcdc;
  border-bottom:0;white-space:nowrap;
}
.v2-nav .dropdown a:hover{color:var(--yellow);background:#141414;}
.v2-nav .has-dropdown > a .caret{font-size:.7em;margin-left:4px;}
@media (max-width:720px){
  /* on mobile the dropdown items sit inline under the parent link */
  .v2-nav .dropdown{
    position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;
    border:0;padding:0;min-width:0;background:transparent;
  }
  .v2-nav .dropdown a{padding:11px 0 11px 18px;border-bottom:1px solid var(--line);}
  .v2-nav .has-dropdown > a .caret{display:none;}
}
