/* ============================================================
   RUSH | Live & Louder — shared styles
   ============================================================ */

@font-face{
  font-family:'CPLT20 Headline';
  src:url('fonts/cplt20-headline.woff2') format('woff2');
  font-weight:400 900;
  font-display:swap;
}
@font-face{
  font-family:'Anek Odia';
  src:url('fonts/anek-odia.woff2') format('woff2-variations'),
      url('fonts/anek-odia.woff2') format('woff2');
  font-weight:100 800;
  font-stretch:75% 125%;
  font-display:swap;
}

:root{
  /* Brand palette pulled from the logo */
  --ink:#111131;          /* logo navy */
  --ink-deep:#08081F;     /* deeper for backgrounds */
  --ink-soft:#1A1A48;     /* panel surface */
  --rush:#5B1E8C;         /* RUSH purple (the wordmark) */
  --rush-hi:#9700FF;      /* CPL bright purple — used sparingly */
  --rush-glow:#C46BFF;    /* highlight for hovers / accents */
  --accent:#E63946;       /* red from logo stripes — used VERY sparingly */
  --white:#FFFFFF;
  --bone:#F4F1EA;
  --muted:#9AA0D6;
  --line:rgba(255,255,255,.12);

  --display:'CPLT20 Headline','Arial Narrow',Arial,sans-serif;
  --body:'Anek Odia',system-ui,-apple-system,'Segoe UI',sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--ink-deep);
  color:var(--white);
  font-family:var(--body);
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}

/* ---------- shared header ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  display:flex;align-items:center;gap:24px;
  padding:18px 28px;
  background:linear-gradient(180deg,rgba(8,8,31,.92) 0%,rgba(8,8,31,.6) 70%,rgba(8,8,31,0) 100%);
  pointer-events:none;
}
.site-header > *{pointer-events:auto}
.site-header .logo{height:54px;width:auto}
.site-header nav{margin-left:auto;display:flex;gap:28px;align-items:center}
.site-header nav a{
  font-family:var(--body);font-weight:500;font-size:14px;letter-spacing:.04em;
  text-transform:uppercase;color:rgba(255,255,255,.78);
  padding:6px 0;border-bottom:2px solid transparent;transition:all .15s;
}
.site-header nav a:hover{color:#fff;border-bottom-color:var(--rush-hi)}
.site-header nav a.current{color:#fff;border-bottom-color:var(--rush-hi)}

/* ---------- shared footer ---------- */
.site-footer{
  padding:36px 28px 28px;
  border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:24px;align-items:center;
  font-size:13px;color:var(--muted);
}
.site-footer .fm{margin-right:auto}
.site-footer a{color:var(--muted)}
.site-footer a:hover{color:#fff}

/* ---------- shared buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 28px;border-radius:4px;
  font-family:var(--display);font-weight:900;
  font-size:17px;letter-spacing:.08em;text-transform:uppercase;
  cursor:pointer;transition:transform .12s ease, box-shadow .2s, background .2s;
}
.btn-primary{
  background:var(--rush);color:#fff;
  box-shadow:0 8px 28px rgba(91,30,140,.5), inset 0 1px 0 rgba(255,255,255,.15);
}
.btn-primary:hover{background:#6A24A2; transform:translateY(-1px); box-shadow:0 12px 36px rgba(91,30,140,.6)}
.btn-ghost{
  background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4);
}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06)}

/* ---------- shared screen reader ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@media (max-width:760px){
  .site-header{padding:14px 18px;gap:14px}
  .site-header .logo{height:40px}
  .site-header nav{gap:18px}
  .site-header nav a{font-size:12px}
  .btn{padding:14px 22px;font-size:15px}
}
