
:root{--abril-primary:#7f624d;--abril-primary-dark:#6b513f;--abril-text:#3f3128;--abril-light:#fbf7f2;--abril-cream:#f4ede5;--abril-line:#e6d7c9;--abril-shadow:0 14px 38px rgba(58,39,28,.08)}
body{color:var(--abril-text)}
.logo{font-weight:700;letter-spacing:1px}
.custom-onepage-nav li a{font-size:14px!important;text-transform:none!important}
.header-right .theme-btn{padding:14px 26px}
.music-toggle{border:1px solid rgba(127,98,77,.25);background:#fff;padding:11px 18px;border-radius:40px;color:var(--abril-text);font-weight:600;transition:.3s}
.music-toggle:hover{background:var(--abril-primary);color:#fff;border-color:var(--abril-primary)}
.custom-intro{position:fixed;inset:0;background:rgba(23,15,10,.78);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:99999;opacity:0;visibility:hidden;transition:.5s}
.custom-intro.active{opacity:1;visibility:visible}
.intro-card{max-width:560px;width:100%;background:#fff;border-radius:28px;padding:56px 32px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.intro-card .eyebrow,.section-mini{display:inline-block;margin-bottom:14px;letter-spacing:3px;text-transform:uppercase;font-size:12px;font-weight:600;color:var(--abril-primary)}
.intro-card h1{font-size:58px;line-height:1.1;margin-bottom:16px}
.intro-card h1 span{color:var(--abril-primary)}
.intro-card p{margin-bottom:26px}
.theme-btn,.theme-btn-s2{background:var(--abril-primary)!important;border-color:var(--abril-primary)!important}
.theme-btn:hover,.theme-btn-s2:hover{background:var(--abril-primary-dark)!important;border-color:var(--abril-primary-dark)!important}
.custom-hero .custom-announcement .couple-text{padding:65px 30px 55px;border-radius:32px;background:rgba(255,255,255,.82);backdrop-filter:blur(6px);max-width:760px;margin:0 auto;box-shadow:var(--abril-shadow)}
.custom-hero .hero-mini{display:block;font-size:14px;letter-spacing:4px;font-weight:700;color:var(--abril-primary);margin-bottom:18px}
.custom-hero .couple-text h2{font-size:70px;line-height:1.1}
.custom-hero .couple-text p{max-width:550px;margin:0 auto;color:#57453a}
.custom-countdown{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:12px}
.custom-countdown .grid{min-width:100px;padding:18px 14px;border-radius:18px;background:#fff;box-shadow:var(--abril-shadow)}
.custom-countdown .grid span{display:block;font-size:34px;font-weight:700;color:var(--abril-primary-dark);line-height:1.1}
.custom-countdown .grid small{display:block;margin-top:6px;font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#6f5a4b}
.custom-family-section .text-grid,.padrinos-card,.dress-card,.gift-box,.custom-rsvp-box,.wpo-event-item{box-shadow:var(--abril-shadow)}
.custom-family-section .text-grid{background:#fff;border-radius:26px;padding:32px 26px}
.custom-family-section .text-grid p{font-size:18px;line-height:1.9;color:#5a493d}
.padrinos-row{margin-top:40px}.padrinos-card{background:#fff;border-radius:24px;padding:26px 28px;text-align:center}.padrinos-card p{margin:0;font-size:18px;line-height:1.9;color:#5a493d}
.custom-details-section .wpo-event-item{border:none;border-radius:28px;overflow:hidden;background:#fff;padding:36px 24px;height:100%}
.custom-details-section .wpo-event-text{padding:0!important;text-align:center}.custom-details-section .wpo-event-text .title h2{font-size:30px;margin-bottom:15px}.custom-details-section .wpo-event-text ul li{border:none!important;padding:0 0 10px!important;font-size:18px;color:#5c4b40}.custom-details-section .wpo-event-text ul li a{color:var(--abril-primary);font-weight:600}
.custom-icon-wrap{width:96px;height:96px;border-radius:50%;background:var(--abril-light);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.custom-icon-wrap img{max-width:56px;max-height:56px}
.custom-dress-section{background:#faf7f3}.dress-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.dress-card{background:#fff;border-radius:30px;padding:36px 28px;text-align:center;height:100%}.dress-icon{height:86px;width:auto;margin-bottom:20px}.dress-card h3{font-size:32px;margin-bottom:10px}.dress-card p{font-size:18px;color:#5b493f}.avoid-colors{margin-top:24px;padding-top:20px;border-top:1px solid var(--abril-line)}.avoid-colors span{display:block;font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--abril-primary);margin-bottom:14px}.swatches{display:flex;justify-content:center;gap:12px;margin-bottom:10px}.swatch{width:38px;height:38px;border-radius:50%;display:inline-block;border:1px solid #ddd}.swatch.white{background:linear-gradient(135deg,#ffffff,#efefef)}.swatch.terracotta{background:linear-gradient(135deg,#d78960,#b55f39)}.swatch.blue{background:linear-gradient(135deg,#5b7ea6,#274d79)}
.custom-gallery-grid .col-12{margin-bottom:30px}.gallery-card{display:block;border-radius:26px;overflow:hidden;box-shadow:var(--abril-shadow)}.gallery-card img{width:100%;height:380px;object-fit:cover;transition:transform .5s ease}.gallery-card:hover img{transform:scale(1.05)}
.custom-gifts-section{background:#fff}.gift-box{background:#fff;border:1px solid var(--abril-line);border-radius:28px;padding:36px 28px;text-align:center;height:100%}.gift-box img{height:70px;width:auto;margin-bottom:20px}.gift-box h3{font-size:30px}.gift-box p{color:#5b493f;min-height:72px}.gift-box strong{display:block;font-size:34px;color:var(--abril-primary-dark);margin-top:8px}
.custom-rsvp-section .wpo-contact-section-wrapper{background:rgba(255,255,255,.95);border-radius:32px;padding:18px}.custom-rsvp-box{background:transparent!important;padding:16px 10px 8px!important}.custom-rsvp-box .wpo-contact-title span{display:block;color:var(--abril-primary);font-size:13px;letter-spacing:3px;text-transform:uppercase;font-weight:600;margin-bottom:10px}.custom-rsvp-box .wpo-contact-title h2{font-size:48px}.custom-rsvp-box .form-control{margin-bottom:18px;border-radius:16px;border:1px solid var(--abril-line);height:58px;padding:14px 18px}.custom-search-form .theme-btn,.custom-rsvp-box #whatsappBtn{width:100%;border-radius:16px}
.privacy-note{font-size:15px;line-height:1.8;color:#685547;margin:6px 0 14px}.custom-result{margin-top:22px;padding:24px;border-radius:22px;background:#fff;border:1px solid var(--abril-line)}.custom-alert{background:#fff4ee;color:#724f42}.result-head{display:flex;align-items:center;gap:18px;margin-bottom:16px}.result-head img{width:64px;height:64px;object-fit:contain;flex:0 0 64px}.result-head h3{font-size:30px;margin-bottom:6px}
.custom-footer .copyright{font-size:18px;color:#fff}
#rsvpCard[hidden],#notFound[hidden]{display:none!important}
@media(max-width:1199px){.custom-hero .couple-text h2{font-size:58px}.gallery-card img{height:330px}}
@media(max-width:991px){.custom-hero .custom-announcement .couple-text{padding:44px 22px}.dress-wrapper{grid-template-columns:1fr}.gallery-card img{height:300px}.header-right .theme-btn{padding:11px 15px}.music-toggle{padding:10px 14px;font-size:13px}.custom-rsvp-box .wpo-contact-title h2{font-size:40px}}
@media(max-width:767px){.intro-card{padding:42px 22px}.intro-card h1{font-size:40px}.custom-hero .couple-text h2{font-size:42px}.custom-countdown .grid{min-width:80px;padding:14px 10px}.custom-countdown .grid span{font-size:28px}.padrinos-card p,.custom-family-section .text-grid p,.dress-card p,.custom-details-section .wpo-event-text ul li,.gift-box p{font-size:16px}.gallery-card img{height:260px}.custom-rsvp-box .wpo-contact-title h2{font-size:34px}.result-head{flex-direction:column;text-align:center}.music-toggle{padding:9px 12px;min-width:auto}}


/* --- PATCH V2 --- */

.custom-hero .custom-announcement .couple-text{background:rgba(255,255,255,.68)!important}
.custom-hero .couple-text h2{color:var(--abril-text)!important;text-shadow:none!important}
.custom-hero .couple-text p{color:#5f4b3e!important;font-weight:600}
.custom-hero .hero-mini{color:var(--abril-primary-dark)!important}
.custom-countdown .grid{background:rgba(255,255,255,.92)}

.custom-family-section .middle-couple-pic{background:#fff;border-radius:30px;padding:14px;box-shadow:var(--abril-shadow);max-width:430px;margin:0 auto}
.custom-family-section .middle-couple-pic .custom-couple-photo{mask:none!important;-webkit-mask-image:none!important;border-radius:24px;overflow:hidden;display:block}
.custom-family-section .middle-couple-pic .custom-couple-photo img{width:100%;height:520px;object-fit:cover;display:block}
.custom-family-section .bottom-shadow{display:none!important}
.custom-family-section .middle-couple-pic:before,.custom-family-section .middle-couple-pic:after,.custom-family-section .middle-couple-pic-inner:before,.custom-family-section .middle-couple-pic-inner:after,.custom-family-section .couple-area:before,.custom-family-section .couple-area:after{display:none!important;content:none!important}

.custom-details-section .wpo-section-title,.custom-gallery-section .wpo-section-title,.custom-dress-section .wpo-section-title,.custom-gifts-section .wpo-section-title{margin-bottom:42px}
.custom-details-section .wpo-section-title span{display:none!important}
.custom-details-section .wpo-section-title h2,.custom-gallery-section .wpo-section-title h2,.custom-dress-section .wpo-section-title h2,.custom-gifts-section .wpo-section-title h2{color:var(--abril-text)!important}
.custom-gallery-section .wpo-section-title span,.custom-dress-section .wpo-section-title span,.custom-gifts-section .wpo-section-title span{color:#b99888!important}
.custom-details-section .wpo-section-title h2{font-size:54px;color:var(--abril-text)!important}
.custom-details-section .wpo-event-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
.custom-icon-wrap{width:108px;height:108px;margin:0 auto 26px!important;overflow:hidden}
.custom-icon-wrap img{max-width:74px!important;max-height:74px!important;width:auto;height:auto;display:block}
.custom-details-section .wpo-event-text{width:100%}
.custom-details-section .wpo-event-text .title{margin:0 0 12px!important;padding:0!important;border:none!important}
.custom-details-section .wpo-event-text .title h2{font-size:32px!important;line-height:1.2;color:var(--abril-text)!important;margin:0!important}
.custom-details-section .wpo-event-text ul{margin:0;padding:0;list-style:none}
.custom-details-section .wpo-event-text ul li{color:#5a493d!important}

.custom-dress-section{padding-top:88px!important;padding-bottom:88px!important}
.custom-gallery-section{padding-top:88px!important;background:#fff}
.custom-gallery-section .wpo-section-title{position:relative;z-index:2}
.custom-gallery-grid{margin-top:8px}
.gallery-card{background:#fff}

.custom-rsvp-section:before{background:#000!important;opacity:.34!important}
.custom-rsvp-section .wpo-contact-section-wrapper{background:rgba(255,255,255,.82)!important;border-radius:36px!important;padding:22px!important}
.custom-rsvp-box .wpo-contact-title h2{color:var(--abril-text)!important}
.custom-rsvp-box .wpo-contact-title p{color:#5d4b40!important}
.custom-rsvp-box label,.custom-rsvp-box .form-control,.custom-rsvp-box .form-control::placeholder{color:#5b4a3f!important}
.custom-rsvp-box .form-control{background:rgba(255,255,255,.72)!important}
.privacy-note{color:#5f4e43!important}
.custom-result{background:rgba(255,255,255,.92)!important}

.custom-footer:before{opacity:.32!important}
.custom-footer .wpo-upper-wrap{background:rgba(255,255,255,.84);max-width:520px;margin:0 auto;padding:44px 30px;border-radius:50px;box-shadow:var(--abril-shadow)}
.custom-footer .wpo-upper-wrap h3,.custom-footer .wpo-upper-wrap p{color:var(--abril-text)!important}
.custom-footer .shape1,.custom-footer .shape2{opacity:.9}
.custom-footer .copyright{color:#fff!important}

@media(max-width:767px){
  .custom-hero .custom-announcement .couple-text{padding:42px 18px 34px!important}
  .custom-hero .couple-text h2{font-size:40px!important}
  .custom-family-section .middle-couple-pic .custom-couple-photo img{height:360px}
  .custom-details-section .wpo-section-title h2{font-size:40px!important}
  .custom-icon-wrap{width:96px;height:96px}
  .custom-icon-wrap img{max-width:64px!important;max-height:64px!important}
  .custom-details-section .wpo-event-text .title h2{font-size:28px!important}
  .custom-rsvp-section .wpo-contact-section-wrapper{padding:16px!important}
  .custom-footer .wpo-upper-wrap{padding:36px 22px;border-radius:34px}
}


/* --- PATCH V3 --- */

:root{--abril-primary:#9a775d;--abril-primary-dark:#6f5544;--abril-text:#49362c;--abril-line:#d9c4b6;--abril-light:#f6efe8}
body{color:var(--abril-text)!important;background:#f7f4f0}
.logo,.custom-hero .couple-text h2,.custom-details-section .wpo-section-title h2,.custom-gallery-section .wpo-section-title h2,.custom-dress-section .wpo-section-title h2,.custom-gifts-section .wpo-section-title h2,.custom-rsvp-box .wpo-contact-title h2,.custom-footer .wpo-upper-wrap h3{color:var(--abril-text)!important}

.custom-family-section .middle-couple-pic{max-width:330px!important;padding:12px!important;border-radius:28px!important}
.custom-family-section .middle-couple-pic .custom-couple-photo{border-radius:22px!important}
.custom-family-section .middle-couple-pic .custom-couple-photo img{height:330px!important}

.custom-details-section{padding-bottom:70px!important}
.custom-details-section .wpo-event-item{padding:34px 28px 30px!important;overflow:visible!important}
.custom-details-section .wpo-event-text{max-width:100%!important;width:100%!important;margin:0!important;margin-top:0!important;padding:0!important;background:transparent!important;overflow:visible!important}
.custom-details-section .wpo-event-text h2{border-bottom:1px solid #d3b8aa!important;padding-bottom:18px!important}
.custom-details-section .wpo-event-text ul{max-width:100%!important;margin-top:22px!important}
.custom-details-section .wpo-event-text ul li a{color:#c09b86!important}
.custom-icon-wrap{width:116px!important;height:116px!important;overflow:visible!important;margin:0 auto 18px!important;flex-shrink:0}
.custom-icon-wrap img{max-width:84px!important;max-height:84px!important;object-fit:contain!important;display:block!important;margin:0 auto!important}

.custom-gallery-section{padding-top:72px!important;padding-bottom:28px!important;background:#fff}
.custom-gallery-grid .col-12{margin-bottom:24px!important}
.custom-gifts-section{padding-top:34px!important;padding-bottom:88px!important}
.custom-gifts-section .wpo-section-title{margin-bottom:26px!important}
.custom-gifts-section .wpo-section-title h2{margin-bottom:0!important}

.custom-rsvp-section .wpo-contact-section-wrapper{background:rgba(255,255,255,.80)!important}
.custom-rsvp-box .wpo-contact-title span{color:#8b6b58!important}
.custom-rsvp-box .wpo-contact-title p{color:#5e4b40!important}
.privacy-note{margin:8px 0 4px!important;color:#5e4b40!important}

.custom-footer .wpo-upper-wrap{background:rgba(255,255,255,.80)!important}

@media(max-width:767px){
  .custom-family-section .middle-couple-pic{max-width:330px!important}
  .custom-family-section .middle-couple-pic .custom-couple-photo img{height:300px!important}
  .custom-details-section{padding-bottom:56px!important}
  .custom-details-section .wpo-event-item{padding:30px 22px 26px!important}
  .custom-icon-wrap{width:108px!important;height:108px!important;margin-bottom:16px!important}
  .custom-icon-wrap img{max-width:80px!important;max-height:80px!important}
  .custom-gallery-section{padding-bottom:18px!important}
  .custom-gallery-grid .col-12{margin-bottom:20px!important}
  .custom-gifts-section{padding-top:24px!important;padding-bottom:70px!important}
}

/* Nota discreta al final de la invitación */
.custom-footer .wpo-lower-footer {
  background: rgba(252,248,243,.92) !important;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.custom-footer .wpo-lower-footer .row { padding: 28px 0 24px; }
.custom-footer .wpo-lower-footer .adults-only-note {
  color: #49362c !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  max-width: 560px;
  margin: 0 auto 12px;
  padding: 0 10px;
  letter-spacing: .06px;
}
.custom-footer .wpo-lower-footer .copyright {
  color: #6b5547 !important;
  font-size: 14px !important;
  line-height: 1.5;
}
@media (max-width: 575px) {
  .custom-footer .wpo-lower-footer .row { padding: 24px 0 20px; }
  .custom-footer .wpo-lower-footer .adults-only-note { font-size: 13.5px; padding: 0 12px; }
  .custom-footer .wpo-lower-footer .copyright { font-size: 13px !important; }
}

/* Mobile usability and spacing patch: 2026-10-12 */
html { scroll-padding-top: 100px; }
.custom-rsvp-section::before {pointer-events:none !important;}
.custom-rsvp-section .container,.custom-rsvp-section .row,.custom-rsvp-section .col,
.custom-rsvp-section .wpo-contact-section-wrapper,
.custom-rsvp-section .wpo-contact-section-inner,
.custom-rsvp-section .custom-rsvp-box {position:relative;z-index:2;}
.custom-rsvp-section #searchForm {position:relative;z-index:10;opacity:1;pointer-events:auto;}
.custom-rsvp-section #searchForm input,
.custom-rsvp-section #searchForm button,
.custom-rsvp-section #guestCount,
.custom-rsvp-section #whatsappBtn {position:relative;z-index:11;pointer-events:auto!important;touch-action:manipulation;}
.custom-rsvp-section #guestName {display:block!important;width:100%!important;min-height:64px!important;padding:17px 18px!important;font-size:16px!important;color:#392e28!important;background:#fff!important;border:1px solid #a88d78!important;border-radius:10px!important;appearance:none;-webkit-appearance:none;opacity:1!important;}
.custom-rsvp-section #guestName:focus{outline:3px solid rgba(127,98,77,.35)!important;outline-offset:2px!important;border-color:#6f5544!important;}
.custom-rsvp-section .wpo-contact-title,.custom-rsvp-section .wpo-contact-title * {pointer-events:none;}
.custom-rsvp-section .custom-rsvp-box::before,.custom-rsvp-section .custom-rsvp-box::after{pointer-events:none!important;}
.custom-details-section .wpo-event-item{margin-bottom:22px!important;}
.custom-gallery-section {padding-bottom:0!important;}
.custom-gallery-grid{margin-bottom:0!important;row-gap:16px;}
.custom-gallery-grid .col-12{margin-bottom:16px!important;}
.custom-gifts-section {padding-top:36px!important;}
.custom-details-section a,.custom-gifts-section a,.custom-onepage-nav a,.header-right a{position:relative;z-index:20;pointer-events:auto;touch-action:manipulation;}
@media(max-width:767px){
 .custom-rsvp-section .wpo-contact-section-wrapper{padding:20px 14px!important;}
 .custom-rsvp-section .custom-rsvp-box{padding:12px 8px!important;}
 .custom-gallery-section{padding-bottom:0!important;}
 .custom-gifts-section{padding-top:22px!important;}
 .custom-details-section .wpo-event-item{margin-bottom:16px!important;}
}


/* v3: iPhone interaction and spacing hardening */
@media(max-width:767px){
  .custom-hero .custom-countdown{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;width:min(100%,260px)!important;margin:22px auto 0!important;}
  .custom-hero .custom-countdown .grid{width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box;}
  .custom-hero .custom-announcement .couple-text{padding-bottom:54px!important;}
  .custom-family-section{padding-top:46px!important;}
  .custom-family-section .couple-area>.row:first-child .text-grid:first-child{margin-top:12px!important;}
  .custom-family-section .text-grid{margin-bottom:26px!important;}
  .custom-details-section .wpo-event-item{margin-bottom:24px!important;}
}
/* Decorative elements and animation layers must never catch taps */
.wpo-hero-slider .swiper-container,.wpo-hero-slider .swiper-wrapper,.wpo-hero-slider .swiper-slide{pointer-events:none;}
.wpo-hero-slider .swiper-pagination,.wpo-hero-slider .next-prev-btn{pointer-events:auto;}
.custom-intro:not(.active){display:none!important;pointer-events:none!important;}
.preloader[hidden],.preloader.done{display:none!important;pointer-events:none!important;}
.custom-rsvp-section .wpo-contact-form-area,.custom-rsvp-section .wpo-contact-form-area::before,.custom-rsvp-section .wpo-contact-form-area::after{pointer-events:none!important;}
.custom-rsvp-section #searchForm,.custom-rsvp-section #searchForm *,.custom-rsvp-section #rsvpCard,.custom-rsvp-section #rsvpCard *{pointer-events:auto!important;}
.custom-rsvp-section #searchForm,.custom-rsvp-section #rsvpCard{transform:none!important;animation:none!important;visibility:visible!important;opacity:1!important;}
.custom-details-section .wpo-event-item::before,.custom-details-section .wpo-event-item::after,.custom-details-section .wpo-event-text::before,.custom-details-section .wpo-event-text::after{pointer-events:none!important;}
.custom-details-section .wpo-event-text a,.custom-gifts-section a{position:relative!important;z-index:30!important;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:100px;}


/* v4: selección de pases sin <select>, optimizada para Safari iOS. */
#rsvpCard { scroll-margin-top: 112px; }
#rsvpCard .attendance-label {
  display:block; margin:18px 0 12px; color:#49362c;
  font-size:16px; font-weight:600; line-height:1.5;
}
#rsvpCard .pass-choices {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px; margin:0 0 16px;
  position:relative; z-index:15; isolation:isolate;
  pointer-events:auto !important;
}
#rsvpCard .pass-choice {
  appearance:none; -webkit-appearance:none;
  display:flex; justify-content:center;align-items:center;
  min-height:60px; width:100%; margin:0; padding:12px;
  border:2px solid #bda493; border-radius:12px;
  background:#fffaf7;color:#49362c;
  font-size:15px;font-weight:600;line-height:1.25;font-family:inherit;text-align:center;
  cursor:pointer; touch-action:manipulation;
  position:relative; z-index:20; pointer-events:auto !important;
  transition:background-color .2s,border-color .2s,color .2s;
}
#rsvpCard .pass-choice.is-selected,
#rsvpCard .pass-choice[aria-pressed="true"] {
  background:#765945; color:#fff; border-color:#765945;
}
#rsvpCard .pass-choice:focus-visible {
  outline:3px solid #886a54; outline-offset:3px;
}
#rsvpCard #whatsappBtn {min-height:58px; touch-action:manipulation;}
/* Retirar los parches de eventos que deshabilitaban la interacción del padre.
   En iOS WebKit se pueden traducir en áreas muertas al realizar el desplazamiento. */
.custom-rsvp-section .wpo-contact-form-area,
.custom-rsvp-section .wpo-contact-form-area::before,
.custom-rsvp-section .wpo-contact-form-area::after {pointer-events:auto!important;}
.custom-rsvp-section .wpo-contact-form-area::before,
.custom-rsvp-section .wpo-contact-form-area::after {pointer-events:none!important;}
.custom-rsvp-section #rsvpCard {position:relative;z-index:12;isolation:isolate;}
.custom-rsvp-section #searchForm {position:relative;z-index:12;}
/* El fixed background del tema Mawhub provoca repintado e hit-testing inestable
   con scroll móvil: no debe fijarse dentro de un formulario interactivo. */
.custom-rsvp-section {background-attachment:scroll!important;}
.custom-rsvp-section::before {pointer-events:none!important;}
/* Desactivar transformaciones/animaciones en panel de opciones, pero conservar
   las animaciones editoriales de títulos y otras secciones. */
.custom-rsvp-section #rsvpCard,
.custom-rsvp-section #passChoices,
.custom-rsvp-section .pass-choice {transform:none!important;}
@media(max-width:767px){
  .custom-rsvp-section,
  .custom-rsvp-section .wpo-contact-section-wrapper {
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
  .custom-rsvp-section .wpo-contact-section-wrapper {
    background:rgba(255,250,245,.94)!important;
  }
  .custom-rsvp-section #rsvpCard {scroll-margin-top:95px;}
}
@media(prefers-reduced-motion:reduce){
  #rsvpCard .pass-choice {transition:none!important;}
}

.preloader {display:none!important;pointer-events:none!important;visibility:hidden!important;}


/* v5: portada autónoma y animaciones robustas, sin precargador. */
/* Si falla la carga de JS, el contenido debe permanecer visible y usable. */
.wow { visibility: visible; }
/* v6: invitación emergente + apertura tipo puertas */
#introOverlay{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;overflow:hidden}
#introOverlay.active{opacity:1!important;visibility:visible!important;display:flex!important;pointer-events:auto!important}
.intro-door{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;z-index:0;background:#2a1c14;
  transition:transform 1.4s cubic-bezier(.77,0,.18,1) .45s;will-change:transform}
.intro-door-left{left:0}.intro-door-right{right:0}
.intro-door-bg{position:absolute;top:0;bottom:0;width:100vw;transform:scale(1.06);
  background:linear-gradient(rgba(36,23,16,.58),rgba(36,23,16,.78)),url(../images/custom/hero/slide-1.jpg) center/cover no-repeat;filter:blur(3px)}
.intro-door-left .intro-door-bg{left:0}.intro-door-right .intro-door-bg{right:0}
.intro-door-left{box-shadow:inset -1px 0 0 rgba(255,255,255,.12)}
.intro-door-right{box-shadow:inset 1px 0 0 rgba(255,255,255,.12)}
#introOverlay.opening .intro-door-left{transform:translateX(-101%)}
#introOverlay.opening .intro-door-right{transform:translateX(101%)}

.intro-petals{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.intro-petals i{position:absolute;top:-24px;display:block;border-radius:80% 0 80% 0;background:rgba(240,214,192,.8);opacity:0;
  animation:aaPetal linear infinite}
@keyframes aaPetal{0%{transform:translate3d(0,-5vh,0) rotate(0);opacity:0}10%{opacity:.85}
  100%{transform:translate3d(var(--dx,40px),110vh,0) rotate(540deg);opacity:0}}

#introOverlay .intro-card{position:relative;z-index:2;max-width:480px;width:100%;margin-top:34px;padding:12px;border-radius:26px;
  background:linear-gradient(#fffaf5,#f8efe6);box-shadow:0 30px 80px rgba(0,0,0,.45);text-align:center;
  display:block!important;opacity:1;visibility:visible!important;transform:none;
  animation:aaPopIn .95s cubic-bezier(.34,1.56,.64,1) .2s both}
@keyframes aaPopIn{0%{opacity:0;transform:translateY(60px) scale(.55) rotate(-3deg)}60%{opacity:1}100%{opacity:1;transform:none}}
#introOverlay .intro-frame{border:1px solid #cfae92;border-radius:18px;padding:58px 28px 34px;position:relative}
#introOverlay .intro-frame::before{content:"";position:absolute;inset:6px;border:1px solid rgba(207,174,146,.55);border-radius:13px;pointer-events:none}
.intro-seal{position:absolute;z-index:3;left:50%;top:-34px;margin-left:-37px;width:74px;height:74px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:20px;letter-spacing:1px;
  background:radial-gradient(circle at 32% 28%,#c79a7a,#8a6149 60%,#6b4936);box-shadow:0 8px 20px rgba(60,35,22,.45),inset 0 0 0 3px rgba(255,255,255,.18)}
#introOverlay .eyebrow{display:inline-block;margin-bottom:10px;letter-spacing:4px;text-transform:uppercase;font-size:12px;font-weight:600;color:var(--abril-primary)}
#introOverlay h1{font-size:60px;line-height:1.05;margin:0 0 8px;color:var(--abril-text)}
#introOverlay h1 span{color:var(--abril-primary)}
.intro-divider{width:90px;height:1px;margin:14px auto 16px;background:linear-gradient(90deg,transparent,#b8957b,transparent)}
#introOverlay .intro-date{margin:0;font-size:20px;font-weight:600;letter-spacing:1px;color:var(--abril-text)}
#introOverlay .intro-place{margin:2px 0 0;font-size:16px;letter-spacing:2px;text-transform:uppercase;color:#7a6252}
#introOverlay .intro-lead{margin:18px auto 24px;max-width:340px;font-size:16px;line-height:1.7;color:#5e4b40}
#introOverlay #openInviteBtn{display:inline-block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  position:relative;z-index:2;min-height:54px;padding:15px 38px;border-radius:40px;touch-action:manipulation;animation:aaBtnPulse 2.4s ease-in-out 1.4s infinite}
@keyframes aaBtnPulse{0%,100%{box-shadow:0 0 0 0 rgba(154,119,93,.45)}50%{box-shadow:0 0 0 12px rgba(154,119,93,0)}}

/* Al abrir: la tarjeta se acerca y se desvanece mientras las puertas se separan */
#introOverlay.opening .intro-card{animation:aaCardOut .8s cubic-bezier(.5,0,.75,0) forwards;pointer-events:none}
#introOverlay.opening .intro-petals{opacity:0;transition:opacity .5s}
@keyframes aaCardOut{0%{opacity:1;transform:none}30%{transform:scale(.97)}100%{opacity:0;transform:scale(1.35) translateY(-30px)}}

/* Revelado de la página principal */
body.invite-opened .custom-hero .swiper-container{animation:aaHeroZoom 2.6s cubic-bezier(.2,.7,.2,1) .2s both}
body.invite-opened .custom-hero .custom-announcement .couple-text{animation:aaHeroIn 1.5s cubic-bezier(.2,.8,.2,1) 1s both}
body.invite-opened #header{animation:aaHeaderIn .9s ease-out 1.2s both}
@keyframes aaHeroZoom{from{transform:scale(1.14)}to{transform:scale(1)}}
@keyframes aaHeroIn{from{opacity:0;transform:translateY(34px) scale(.96)}to{opacity:1;transform:none}}
@keyframes aaHeaderIn{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}

@media(max-width:575px){
  #introOverlay .intro-card{margin-top:30px}
  #introOverlay .intro-frame{padding:54px 18px 28px}
  #introOverlay h1{font-size:44px}
  #introOverlay .intro-date{font-size:18px}
}
@media(max-height:640px){#introOverlay .intro-lead{margin:12px auto 16px}#introOverlay .intro-frame{padding-top:50px}}
@media(prefers-reduced-motion:reduce){
  .intro-door{transition:none!important}.intro-petals{display:none}
  #introOverlay .intro-card,#introOverlay #openInviteBtn{animation:none!important}
  #introOverlay.opening .intro-card{opacity:0}
  body.invite-opened .custom-hero .swiper-container,body.invite-opened .custom-hero .custom-announcement .couple-text,body.invite-opened #header{animation:none!important}
}
#introOverlay #openInviteBtn:focus{outline:none}
#introOverlay #openInviteBtn:focus-visible{outline:3px solid rgba(154,119,93,.55);outline-offset:4px}

/* v7: beige, nota discreta para adultos, botón Liverpool */
.swatch.beige{background:linear-gradient(135deg,#eadfcc,#cdb797)}
.custom-details-section .wpo-event-text ul li.soft-note{margin-top:10px;padding-top:14px!important;border-top:1px solid var(--abril-line)!important;
  font-size:15px!important;line-height:1.7;font-style:italic;color:#7a6252!important}
.gift-box strong{margin-bottom:18px}
.gift-box .theme-btn-s2{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 28px}
.gift-box .theme-btn-s2{color:#fff!important}


/* v8: ajustes finales solicitados */
.padrinos-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 26px;max-width:760px;margin-inline:auto;text-align:left;}
.padrinos-list li{position:relative;padding-left:18px;margin:0;color:#5a493d;font-size:18px;line-height:1.8;}
.padrinos-list li::before{content:"•";position:absolute;left:0;top:0;color:var(--abril-primary);font-weight:700;}
.custom-family-section .padrinos-card{padding:28px 32px;}
.custom-hero .custom-announcement .couple-text{background:rgba(255,255,255,.62)!important;}

@media(max-width:991px){
  /* Mejor eliminar el botón hamburguesa si no aporta una buena experiencia en celular */
  .wpo-site-header .mobail-menu,
  .wpo-site-header .dl-block,
  .wpo-site-header #navbar,
  .wpo-site-header .menu-close{display:none!important;}
  .wpo-site-header .navigation .row{justify-content:space-between!important;}
  .wpo-site-header .navbar-header{display:flex;align-items:center;justify-content:flex-start;}
  .wpo-site-header .col-md-6.col-6,.wpo-site-header .col-lg-2.col-md-6.col-6{flex:0 0 auto!important;width:auto!important;max-width:none!important;}
  .wpo-site-header .col-md-2.col-2,.wpo-site-header .col-lg-2.col-md-2.col-2{flex:0 0 auto!important;width:auto!important;max-width:none!important;margin-left:auto!important;}
}
@media(max-width:767px){
  .padrinos-list{grid-template-columns:1fr;gap:8px;max-width:100%;}
  .padrinos-list li{font-size:16px;line-height:1.7;}
  .custom-hero .custom-announcement .couple-text{background:rgba(255,255,255,.58)!important;}
}


/* v9: padrinos en una sola línea / párrafo para móvil */
.padrinos-card p{word-break:normal;overflow-wrap:anywhere;}
