.stage-two .masthead { justify-content: center; }
.stage-two .language-toggle { gap: .25rem; padding: .25rem; }
.stage-two .language-toggle a { min-width: 44px; min-height: 44px; padding: .5rem .75rem; font-size: .8125rem; }
.stage-two .hero { padding-block: clamp(3rem, 6vw, 5rem); }
.stage-two .hero .mark { width: clamp(13rem, 23vw, 20rem); margin-bottom: 1.5rem; }
.stage-two .hero h1 { font-size: clamp(2.5rem, 5.6vw, 5rem); max-width: none; white-space: nowrap; }
.stage-two .hero h1 > span { display: inline; }
.stage-two .hero h1 .accent { margin-top: 0; }
.stage-two .principles { margin-top: 1.75rem; font-size: 1.25rem; font-weight: 700; line-height: 1.45; letter-spacing: -.02em; }
.stage-two .invitation { margin-top: .875rem; font-size: 1.0625rem; line-height: 1.45; color: var(--muted); }
.preview-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 1rem; padding: .625rem 1.125rem; border: 1px solid var(--maroon); border-radius: 2rem; background: var(--maroon); color: var(--paper); font-size: .875rem; font-weight: 700; text-decoration: none; }
.preview-link:hover { background: #610019; }
@media (max-width: 700px) and (orientation: portrait) {
  .stage-two .hero { padding: .75rem 0; }
  .stage-two .hero .mark { width: min(68%, 28svh); margin-bottom: .75rem; }
  .stage-two .hero .eyebrow { margin-bottom: .75rem; font-size: .625rem; }
  .stage-two .hero h1, html[lang="es"] .stage-two .hero h1 { font-size: clamp(1.65rem, 7.6vw, 2.75rem); }
  .stage-two .principles { margin-top: .875rem; font-size: .9375rem; line-height: 1.35; }
  .stage-two .invitation { margin-top: .625rem; font-size: .8125rem; line-height: 1.4; }
  .stage-two .preview-link { margin-top: .625rem; min-height: 40px; font-size: .8125rem; padding: .5rem 1rem; }
}
@media (max-width: 700px) and (orientation: portrait) and (max-height: 600px) {
  .stage-two .hero .mark { width: min(60%, 23svh); margin-bottom: .625rem; }
  .stage-two .hero .eyebrow { margin-bottom: .625rem; }
  .stage-two .principles { margin-top: .625rem; }
}
@media (orientation: landscape) and (max-height: 520px) and (max-width: 1024px) {
  .stage-two .hero { grid-template-columns: 1fr 1.3fr; grid-template-rows: auto auto auto auto auto; gap: .5rem 1rem; padding-block: .5rem; }
  .stage-two .hero .mark { grid-row: 1 / 6; width: min(100%, 16rem); margin: 0; }
  .stage-two .hero .eyebrow { margin: 0; }
  .stage-two .hero h1, html[lang="es"] .stage-two .hero h1 { font-size: 1.625rem; }
  .stage-two .principles, .stage-two .invitation { grid-column: 2; margin: 0; font-size: .8125rem; line-height: 1.25; }
  .stage-two .preview-link { grid-column: 2; margin: 0; min-height: 36px; padding: .375rem .75rem; font-size: .75rem; }
}

@media (max-width: 360px) {
  html[lang="es"] .stage-two .hero h1 { white-space: normal; font-size: 1.375rem; }
}

/* Localized copy can wrap without moving the shared FULTON anchor. */
@media (max-width: 700px) and (orientation: portrait) {
  .stage-two .hero { justify-content: flex-start; padding-top: clamp(.75rem, calc((100svh - 600px) * .3), 4.5rem); }
}
