/* AudioSauna Records – shared styles for the news list and the newsletter form. */

.news-list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #14110E; }
.news-item {
  display: grid;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
  gap: 10px 48px;
  padding: 28px 0;
  border-bottom: 1px solid rgba(20, 17, 14, .25);
  scroll-margin-top: 24px;
}
.news-date {
  font-family: 'Archivo', sans-serif; font-size: 13px; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase; line-height: 2.2;
  color: #B3341A;
}
.news-content { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.news-title {
  margin: 0;
  font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400;
  font-size: clamp(28px, 3vw, 40px); line-height: 1.05;
}
.news-body p { margin: 0 0 12px; font-size: 17px; line-height: 1.55; color: #3F3830; max-width: 62ch; }
.news-body p:last-child { margin-bottom: 0; }
.news-link {
  align-self: flex-start;
  font-family: 'Archivo', sans-serif; font-size: 13px; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
}
@media (max-width: 700px) {
  .news-item { grid-template-columns: minmax(0, 1fr); }
}

.newsletter {
  display: flex; flex-wrap: wrap; gap: 24px 64px;
  justify-content: space-between; align-items: flex-end;
}
.newsletter-copy { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.newsletter-title {
  margin: 0; color: #EFE8DA;
  font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400;
  font-size: clamp(32px, 4vw, 44px); line-height: 1.05;
}
.newsletter-text { margin: 0; font-size: 16px; line-height: 1.5; color: #B9AFA2; max-width: 44ch; }
.newsletter-form { flex: 0 1 500px; min-width: 0; display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.newsletter-field { flex: 1 1 240px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.newsletter-field label {
  font-family: 'Archivo', sans-serif; font-size: 13px; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase; color: #B9AFA2;
}
.newsletter-input {
  height: 52px; padding: 0 16px; box-sizing: border-box; width: 100%;
  border: 2px solid #EFE8DA; border-radius: 0; background: transparent;
  color: #EFE8DA; font-size: 16px; font-family: inherit;
}
.newsletter-input::placeholder { color: #8F867B; }
.newsletter-input:focus-visible, .newsletter-button:focus-visible { outline: 2px solid #F0A27F; outline-offset: 3px; }
.newsletter-button {
  height: 52px; padding: 0 24px; border: 0; border-radius: 0; cursor: pointer;
  background: #EFE8DA; color: #14110E;
  font-family: 'Archivo', sans-serif; font-size: 13px; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
}
.newsletter-button:hover { background: #F0A27F; }
.newsletter-button[disabled] { opacity: .6; cursor: progress; }
.newsletter-status { flex-basis: 100%; margin: 0; min-height: 1.5em; font-size: 15px; line-height: 1.5; color: #EFE8DA; }
.newsletter-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.news-status { padding: 28px 0; color: #3F3830; font-size: 17px; }

.news-thumbnail { display:block; max-width:100%; width:320px; height:auto; margin:1rem 0; }
.news-title a { color:inherit; text-decoration:none; }
.news-title a:hover { text-decoration:underline; }
