/* Base styles for index and pages */
body {
  font-family: HelveticaNeueLTStd-Roman, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 15.3px;
  line-height: 1.5;
  color: black;
  margin: 2rem;
}

main {
  max-width: 800px;
}

/* Intro paragraph */
.intro {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

/* Main vertical column layout */
.column {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Each section block (catalog, radio, etc.) */
.entry-block {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

/* Left-side section title */
.section-title {
  flex: 0 0 80px;
  font-weight: bold;
  font-size: 15.3px;
  text-transform: lowercase;
}

/* Right-side entries list */
.entries {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Entry links (homepage) */
.entries a {
  display: inline-block;
  position: relative;
  color: black;
  text-decoration: none;
  margin-bottom: 0.2rem;
}

/* Underline animation on hover (homepage) */
.entries a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  height: 1px;
  width: 0;
  background-color: black;
  transition: width 0.3s ease;
}

.entries a:hover::after {
  width: 100%;
}

/* Shared content pages styling (release, read, live...) */
.page-content {
  font-family: HelveticaNeueLTStd-Roman, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 15.3px;
  line-height: 1.5;
  color: black;
  margin: 2rem auto;
  max-width: 800px;
}

.page-content h1 {
  font-size: 1.3rem;
  margin-bottom: 2rem;
}

.page-content p {
  margin-bottom: 2rem;
}

.page-content iframe {
  margin-top: 1rem;
  max-width: 100%;
}

/* -------------------------------------------------
   VIDEO PLAYER – comfortable size + responsive
-------------------------------------------------- */
.video-wrapper {
  max-width: 720px;
  margin: 2rem 0 2.5rem 0;
}

.video-embed {
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  display: block;
  background: black;
}

/* Grid layout for live pages */
.live-album-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.live-album-grid .grid-item img {
  width: 100%;
  height: auto;
  display: block;
}

/* Styled "home" link on release pages (same as homepage links) */
.page-content .home-link {
  position: relative;
  font-weight: normal;
  color: black;
  text-decoration: none;
  display: inline-block;
  margin-bottom: 0.2rem;
}

.page-content .home-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  height: 1px;
  width: 0;
  background-color: black;
  transition: width 0.3s ease;
}

.page-content .home-link:hover::after {
  width: 100%;
}

/* ✅ UNIVERSAL IMAGE FIX — applies to all <img> elements on the site */
img {
  max-width: 60%;
  height: auto;
  display: block;
}

/* -------------------------------------------------
   HOMEPAGE SPACING FIXES
   (watch is outside .column; contact/gallery are in a .column)
-------------------------------------------------- */

/* Space between intro and the first column (contact/gallery) */
.intro + .column {
  margin-top: 1.5rem;
}

/* Space between gallery column and standalone watch block */
.column + .entry-block {
  margin-top: 1.5rem;
}

/* Space between standalone watch block and next column (catalog/radio/live/read) */
.entry-block + .column {
  margin-top: 1.5rem;
}
