.newsletter-page {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(2.5rem, 6vw, 6rem);
  align-items: start;
  padding: clamp(3rem, 7vw, 6rem) 0 2rem;
}
.newsletter-intro > .section-label { margin-bottom: 1.5rem; }
body.news-site .newsletter-intro h1 {
  font-family: 'Space Grotesk', Inter, sans-serif;
  font-size: clamp(3.8rem, 7.5vw, 6.8rem);
  font-weight: 300;
  letter-spacing: -.055em;
  line-height: .98;
  text-transform: uppercase;
  margin: 0 0 1.8rem;
}
.newsletter-intro .newsletter-lead { font-size: clamp(1.15rem, 2vw, 1.4rem); line-height: 1.5; margin-bottom: 1rem; max-width: 490px; }
.newsletter-intro .newsletter-description { color: #616161; font-size: 1rem; line-height: 1.75; max-width: 490px; }
.newsletter-benefits { list-style: none; padding: 0; margin: 2.3rem 0 0; }
.newsletter-benefits li { display: flex; gap: 1.25rem; border-top: 1px solid #dedede; padding: 1rem 0; }
.newsletter-benefits li > span { color: #777; font-size: .75rem; padding-top: .2rem; }
.newsletter-benefits strong { font-size: .95rem; font-weight: 500; }
.newsletter-benefits p { color: #616161; font-size: .85rem; margin-top: .2rem; }
.newsletter-panel { background: #f7f6fa; border: 1px solid #e8e5ed; padding: clamp(1.5rem, 4vw, 3rem); margin-top: 1rem; }
.newsletter-free { display: inline-block; border: 1px solid #d7d1e1; border-radius: 2rem; font-size: .7rem; letter-spacing: .05em; padding: .4rem .75rem; text-transform: uppercase; }
body.news-site .newsletter-panel h2 { font-family: 'Space Grotesk', Inter, sans-serif; font-size: 3rem; font-weight: 300; letter-spacing: -.04em; margin: 1.6rem 0 .65rem; }
.newsletter-panel > p { color: #616161; font-size: .95rem; line-height: 1.7; }
.newsletter-form { min-width: 0; margin-top: 1.8rem; text-align: left; }
.newsletter-panel .newsletter-form { margin-top: 0; }
.newsletter-fields { display: grid; gap: 1rem; }
.newsletter-field { min-width: 0; }
.newsletter-field label { display: block; font-size: .8rem; font-weight: 500; margin-bottom: .5rem; }
.newsletter-form .newsletter-field input {
  background: #fff;
  border: 1px solid #c9c7cf;
  border-radius: 0;
  box-sizing: border-box;
  color: #111;
  font: 400 .95rem Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  line-height: 1.4;
  margin: 0;
  min-height: 50px;
  padding: .8rem .9rem;
  width: 100%;
}
.newsletter-form .newsletter-field input:focus-visible { border-color: #7c3aed; outline: 2px solid #7c3aed; outline-offset: 2px; box-shadow: none; }
.newsletter-form .newsletter-field input::placeholder { color: #777; }
.newsletter-form .newsletter-submit {
  align-items: center;
  background: #111;
  border: 1px solid #111;
  border-radius: 0;
  color: #fff;
  display: flex;
  font: 500 .9rem Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  justify-content: space-between;
  margin: .25rem 0 0;
  min-height: 52px;
  padding: .85rem 1rem;
  text-transform: none;
  transform: none;
  transition: background .2s;
  width: 100%;
}
.newsletter-form .newsletter-submit::before { content: none; }
.newsletter-form .newsletter-submit:hover { background: #333; transform: none; }
.newsletter-form .newsletter-submit:focus-visible { outline: 2px solid #7c3aed; outline-offset: 3px; }
.newsletter-form .newsletter-submit:disabled { cursor: wait; opacity: .65; }
.newsletter-form .newsletter-consent { color: #686868; font: 400 .72rem/1.65 Inter, sans-serif; margin: 1rem 0 0; }
.newsletter-consent a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.newsletter-form .newsletter-status { border-left: 2px solid #111; color: #111; font-size: .85rem; line-height: 1.6; margin: 1rem 0 0; padding: .2rem 0 .2rem .8rem; }
.newsletter-form .newsletter-status[data-state="error"] { border-color: #a52a2a; color: #852222; }
.newsletter-status[hidden], .newsletter-trap { display: none !important; }
.newsletter-no-script { font-size: .85rem; margin-top: 1rem; }
.newsletter-signature { display: flex; gap: .8rem; align-items: center; border-top: 1px solid #dedbe3; padding-top: 1.5rem; margin-top: 2rem; font-size: .85rem; }
.newsletter-signature-mark { display: grid; place-items: center; background: #eae5f2; width: 42px; height: 42px; border-radius: 50%; font: 300 1.5rem 'Space Grotesk', sans-serif; }
.newsletter-signature small { display: block; color: #777; font-size: .72rem; margin-top: .2rem; }
.newsletter-footer {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  align-items: start;
  gap: 3.5rem;
  max-width: 1120px;
  margin: 0 auto 2rem;
  padding: 1.5rem 0 2.5rem;
  border-bottom: 1px solid #dedede;
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.newsletter-footer .section-label { color: #686868; font-size: .72rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; margin-bottom: .8rem; }
.newsletter-footer h2 { font-family: 'Space Grotesk', Inter, sans-serif; font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 300; letter-spacing: -.025em; line-height: 1.15; margin: 0 0 .8rem; }
.newsletter-footer > div > p:last-child { color: #616161; font-size: .9rem; line-height: 1.7; max-width: 360px; }
.newsletter-footer .newsletter-form { margin-top: 0; }
.newsletter-footer .newsletter-fields { grid-template-columns: 1fr 1fr; }
.newsletter-footer .newsletter-submit { grid-column: 1 / -1; }
@media (max-width: 1024px) {
  .fullscreen-menu .main-nav { flex-direction: column; gap: .75rem; transform: none; }
  .fullscreen-menu .close-menu { display: block; padding: .75rem; }
}
@media (max-width: 820px) {
  .newsletter-page { grid-template-columns: 1fr; gap: 2rem; }
  .newsletter-panel { margin-top: 0; }
  .newsletter-footer { grid-template-columns: 1fr; gap: 1.5rem; }
}
@media (max-width: 480px) {
  .newsletter-footer .newsletter-fields { grid-template-columns: 1fr; }
  .newsletter-benefits { margin-top: 1.6rem; }
}
