/* v26.35 · Componentes legibles compartidos; conserva la identidad de cada diseño. */
html body .rsvp-form button,html body .msg-form button,html body .gf-btn,
html body .gift-box button,html body .env-open,html body .vgl-cta a,html body .pr-boton-lleno{background:var(--accent)!important;color:var(--on-accent,#fff)!important}
html body .pr-dock a{color:var(--on-accent,#fff)!important}
html body .rsvp-form .yesno label:has(input:checked){color:var(--on-accent,#fff)!important}
html body .rsvp-form .yesno input{display:block;position:absolute;opacity:0;width:1px;height:1px;margin:0}
html body .rsvp-form .yesno label:focus-within{outline:2px solid var(--accent);outline-offset:3px}
html body .rsvp-form input,html body .rsvp-form select,
html body .msg-form input,html body .msg-form textarea{font-size:16px;min-height:48px}
html body .rsvp-form label{font-size:13px;letter-spacing:.06em}
html body .rsvp-form input:focus-visible,html body .rsvp-form select:focus-visible,
html body .msg-form :is(input,textarea):focus-visible,html body button:focus-visible,
html body a:focus-visible,html body summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
html body .rsvp-form,html body .msg-form{width:100%;box-sizing:border-box}
html body .rsvp-nota{font-size:13px;line-height:1.6}
html body .gallery-grid button.tile{display:block;width:100%;border:0;padding:0;font:inherit;text-align:inherit}
html body .lb-overlay[role="dialog"]{padding:12px;box-sizing:border-box}
html body .lb-btn{min-width:44px;min-height:44px}
html body .photo-zoom{border:0;background:none;padding:0;width:100%;display:block;cursor:zoom-in}
html body .rsvp .rsvp-form{scroll-margin-bottom:100px}
html body .rsvp .rsvp-form button{min-height:48px}
html body section :is(.hotel-note,.faq-a,.rules-note,.lodging-intro){color:var(--ink-2)}
html body.pr section h2,html body.pr section h2 em{color:var(--readable-accent,var(--pr-titulo))}
html body.pr .pr-portada:not(.pr-con-foto) :is(.pr-nombres,.pr-fecha){color:var(--readable-accent,var(--pr-titulo))}
@media(max-width:520px){html body .rsvp{padding:42px 20px}html body .rsvp-form{padding:22px 18px}html body .rsvp .row2{gap:12px}html body .msg-form{padding:22px 18px}html body .sub-eyebrow{letter-spacing:.15em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
