/* Stag & Stone: opening updates and subscriber privacy, v1 */
.newsletter-section {
  width: min(var(--max), calc(100% - 2rem));
  margin: 2.4rem auto;
  padding: clamp(1.4rem, 4vw, 2.8rem);
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid rgba(214,154,109,.35);
  border-radius: 22px;
  background: linear-gradient(130deg,rgba(31,34,29,.91),rgba(13,17,17,.96));
  box-shadow: 0 20px 60px rgba(0,0,0,.32);
}
.newsletter-copy h2 {
  font-size: clamp(1.85rem, 3.6vw, 2.8rem);
  line-height: 1.18;
  margin: .6rem 0 1rem;
}
.newsletter-copy p:not(.eyebrow) {
  color: #f1e5d8;
  line-height: 1.55;
  font-size: 1.07rem;
}
.newsletter-copy .newsletter-small {
  color: #cdb5a0 !important;
  font-style: italic;
  font-size: .95rem !important;
}
.newsletter-form { min-width: 0; }
.newsletter-label {
  display: block;
  margin-bottom: .6rem;
  color: #e8b481;
  font: 600 .75rem/1.4 Cinzel,Georgia,serif;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.newsletter-form-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: .6rem;
}
.newsletter-form-row input {
  min-width: 0;
  min-height: 52px;
  padding: .75rem .95rem;
  border: 1px solid rgba(225,177,127,.5);
  border-radius: 12px;
  background: #101312;
  color: #fff5e8;
  font: 400 1rem/1.4 Cardo,Georgia,serif;
}
.newsletter-form-row input::placeholder { color: #b3a99d; }
.newsletter-form-row button {
  min-height: 52px;
  padding: .75rem 1.1rem;
  border: 1px solid rgba(251,216,174,.52);
  border-radius: 12px;
  background: linear-gradient(135deg,#ad6e48,#78432c 65%,#965637);
  color: #fff4e5;
  font: 700 .73rem/1.3 Cinzel,Georgia,serif;
  text-transform: uppercase;
  letter-spacing: .07em;
  cursor: pointer;
}
.newsletter-form-row button:hover:not(:disabled) { filter: brightness(1.14); }
.newsletter-form-row button:disabled { cursor: wait; opacity: .7; }
.newsletter-section input:focus-visible,
.newsletter-section button:focus-visible,
.newsletter-section a:focus-visible {
  outline: 3px solid #f6dcb5;
  outline-offset: 3px;
}
.newsletter-optin {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  margin-top: 1.1rem;
  color: #f1e6d8;
  cursor: pointer;
  font: 400 .94rem/1.55 Cardo,Georgia,serif;
}
.newsletter-optin input {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  margin: .25rem 0 0;
  accent-color: #af7852;
  cursor: pointer;
}
.newsletter-privacy {
  margin: .85rem 0 0;
  color: #c6b9aa;
  font: 400 .85rem/1.4 Cardo,Georgia,serif;
}
.newsletter-privacy a, .privacy-panel a {
  color: #edc091;
  text-underline-offset: 3px;
}
.newsletter-status {
  min-height: 1.6rem;
  margin: .8rem 0 0;
  color: #f4d7a7;
  font: 400 .98rem/1.4 Cardo,Georgia,serif;
}
.newsletter-status[data-state="success"] { color: #dff0d4; }
.newsletter-status[data-state="error"] { color: #ffc4b5; }
.newsletter-honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.privacy-panel {
  width: min(840px, calc(100% - 2rem));
  margin: 2.5rem auto 4rem;
  padding: clamp(1.5rem,4vw,2.8rem);
  border: 1px solid rgba(214,154,109,.3);
  border-radius: 20px;
  background: rgba(14,17,16,.9);
}
.privacy-panel h1 { font-size: clamp(2rem,5vw,3.4rem); }
.privacy-panel h2 { font-size: clamp(1.4rem,3vw,1.9rem); margin: 2rem 0 .5rem; }
.privacy-panel p { color: #ede2d6; line-height: 1.6; }
@media (max-width: 800px) {
  .newsletter-section { grid-template-columns: 1fr; gap: 1rem; }
}
@media (max-width: 540px) {
  .newsletter-section { width: calc(100% - 1.4rem); padding: 1.35rem 1.1rem; }
  .newsletter-form-row { grid-template-columns: 1fr; }
  .newsletter-form-row button { width: 100%; }
  .newsletter-copy h2 { font-size: 2rem; }
}
