/* They Killed Kenny — site styles */
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


  body { margin:0; background:#f3f2f2; color:#201e1d; font-family:"Archivo",system-ui,sans-serif; font-size:15px; line-height:1.55; -webkit-font-smoothing:antialiased; }
  *,*::before,*::after { box-sizing:border-box; }
  a { color:#ae1800; text-decoration:none; text-underline-offset:3px; }
  a:hover { color:#ec3013; text-decoration:underline; }
  :focus { outline:none; }
  :focus-visible { outline:2px solid #ec3013; outline-offset:2px; }
  ::selection { background:rgba(236,48,19,0.3); }
  html { scroll-behavior:smooth; }
  #book input::placeholder, #book textarea::placeholder { color:rgba(243,242,242,0.72); }


/* ---------- hover states ---------- */
.hv-1:hover { background:#ffe0d9; color:#201e1d; text-decoration:none; }
.hv-2:hover { background:#ffe0d9; color:#201e1d; text-decoration:none; }
.hv-3:hover { background:#ffe0d9; color:#201e1d; text-decoration:none; }
.hv-4:hover { background:#dd2b0f; color:#f3f2f2; text-decoration:none; }
.hv-5:hover { background:#dd2b0f; color:#f3f2f2; text-decoration:none; }
.hv-6:hover { background:#ffe0d9; color:#201e1d; text-decoration:none; }
.hv-7:hover { background:#ffe0d9; }


/* ---------- responsive ---------- */
img { max-width: 100%; }

@media (max-width: 900px) {
  header nav a { padding: 12px 14px !important; font-size: 12px !important; }
  #top > div[style*="1.15fr"],
  #band > div[style*="1.15fr"] { grid-template-columns: 1fr !important; }
  #top > div[style*="1.15fr"] > div,
  #band > div[style*="1.15fr"] > div { border-right: 0 !important; }
  #shows > div[style*="180px 1fr auto"] { grid-template-columns: 1fr !important; gap: 10px !important; }
  #media > div[style*="repeat(4,1fr)"] { grid-template-columns: repeat(2, 1fr) !important; }
}

@media (max-width: 640px) {
  header { flex-wrap: wrap; }
  header > a { width: 100%; border-right: 0 !important; border-bottom: 2px solid rgba(32,30,29,0.4); }
  header nav { width: 100%; margin-left: 0 !important; }
  header nav a { flex: 1 1 0; justify-content: center; text-align: center; padding: 12px 8px !important; }
  /* outer two-column layouts collapse; the song/artist rows inside stay two-up */
  #setlist > div[style*="1fr 1fr"],
  #media > div[style*="1fr 1fr"] { grid-template-columns: 1fr !important; }
  #setlist > div[style*="1fr 1fr"] > div { border-right: 0 !important; }
  #booking-form { grid-template-columns: 1fr !important; }
  #booking-form label { border-right: 0 !important; grid-column: auto !important; }
  #booking-form > div { grid-column: auto !important; }
  section > div { padding-left: 16px !important; padding-right: 16px !important; }
}

@media print {
  header, #book form { display: none; }
  body { background: #fff; }
}
