:root {
  --gold: #c9a24b;
  --cream: #f5efe3;
}

.text-gold { color: var(--gold); }
.border-gold { border-color: var(--gold); }
.text-cream { color: var(--cream); }

body[data-env="staging"] #env-banner { display: block; }
body[data-env="production"] #env-banner,
body:not([data-env]) #env-banner { display: none; }

.hero-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60vh;
  min-height: 320px;
  max-height: 640px;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.75) 70%, #000 100%), url("../images/band-bg.jpg");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: 0;
  pointer-events: none;
}

/* iOS Safari fails to paint position:fixed elements that use a negative
   z-index, so .hero-bg sits at z-index: 0 and the actual page content is
   raised above it instead of pushing the background behind everything. */
#env-banner,
header,
main,
footer {
  position: relative;
  z-index: 1;
}

/* EN/NL toggle: default show English, .show-nl flips it */
.nl { display: none; }
body.show-nl .en { display: none; }
body.show-nl .nl { display: block; }
body.show-nl .nl.inline { display: inline; }

.link-btn {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.9rem 1.25rem;
  border-radius: 9999px;
  border: 1px solid var(--gold);
  color: var(--cream);
  font-weight: 600;
  letter-spacing: 0.01em;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.link-btn:hover,
.link-btn:focus-visible {
  background-color: var(--gold);
  color: #000;
}

.link-btn-featured {
  background-color: var(--gold);
  color: #000;
}

.link-btn-featured:hover,
.link-btn-featured:focus-visible {
  background-color: transparent;
  color: var(--cream);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}