/* Mobile-only layout guardrails. Loaded last so every theme collapses safely. */
@media (max-width:760px){
  .hero,.hero-copy{min-height:720px}
  .hero-copy{padding:48px 28px 40px}
  .guest-nav{width:100%;gap:6px;font-size:.58rem;letter-spacing:.1em}
  .hero h1{max-width:100%;font-size:clamp(3.35rem,14.8vw,5.25rem)!important;line-height:.92;letter-spacing:-.06em;text-wrap:pretty}
  .hero .kicker{margin-bottom:14px}.hero .date{margin:22px 0 18px}
  .story,html[data-theme="coastal-modern"] .story,html[data-theme="romantic-garden"] .story,html[data-theme="classic-black-tie"] .story{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:28px;padding:72px 28px}
  .story h2{max-width:9ch;margin:0}.story>p,html[data-theme="romantic-garden"] .story>p,html[data-theme="classic-black-tie"] .story>p{max-width:34ch;padding-top:0;font-size:1rem;line-height:1.72}
  .story-image,.story-image img,html[data-theme="romantic-garden"] .story-image,html[data-theme="romantic-garden"] .story-image img,html[data-theme="classic-black-tie"] .story-image,html[data-theme="classic-black-tie"] .story-image img{width:100%;min-height:0;height:min(122vw,520px)}.story-image{order:3}
  .gallery,.schedule,.travel,.accommodation,.faq,.rsvp{padding-inline:28px!important}
  .gallery-opening,.gallery-pair,.gallery-closing,html[data-theme="coastal-modern"] .gallery-opening,html[data-theme="romantic-garden"] .gallery-opening,html[data-theme="romantic-garden"] .gallery-pair,html[data-theme="classic-black-tie"] .gallery-opening,html[data-theme="classic-black-tie"] .gallery-pair,html[data-theme="classic-black-tie"] .gallery-closing{grid-template-columns:minmax(0,1fr)!important;gap:26px}
  .gallery-opening-note{order:0!important;max-width:31ch;padding:0!important}.gallery-pair .gallery-photo:first-child{margin-top:0!important}
  /* Preserve the full composition of guest-uploaded photos on phones. */
  .gallery-lead,.gallery-pair .gallery-photo,.gallery-closing .gallery-photo,.gallery-row .gallery-photo{height:auto!important;aspect-ratio:auto!important}
  .gallery-photo img{height:auto!important;object-fit:contain!important}
  .gallery-row{grid-template-columns:1fr!important;gap:22px}
}
