/* V243 — navegación directa a contacto, sobres centrados y ajustes móviles */

/* Separación consistente entre el sobre y la indicación de apertura. */
.envelope-stage .open-hint,
.premium-envelope-stage .open-hint,
.go126-envelope-stage .open-hint,
[class*="envelope-page"]:not(.white-issue-photo-envelope-page) > p,
[class*="envelope-page"]:not(.white-issue-photo-envelope-page) > div > p,
.sa213-envelope-hint,
.bp40-open-copy {
  margin-top: 28px !important;
  position: relative;
  z-index: 4;
}

/* La escena completa queda centrada, no solamente el objeto del sobre. */
.envelope-stage,
.premium-envelope-stage,
.marea-envelope-page,
.sa213-envelope-page,
.go-envelope-page,
.go126-envelope-stage {
  min-height: 100svh !important;
  box-sizing: border-box;
}

.envelope-stage > div,
.premium-envelope-stage > div,
.premium-envelope-scene,
.go126-envelope-scene {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media (max-width: 700px) {
  .envelope-stage,
  .premium-envelope-stage,
  .marea-envelope-page,
  .sa213-envelope-page,
  .go-envelope-page,
  .go126-envelope-stage {
    min-height: 100svh !important;
    height: 100svh;
    padding: max(20px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom)) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden;
  }

  .envelope-stage > div,
  .premium-envelope-stage > div,
  .marea-envelope-page > div,
  .sa213-envelope-page > div,
  .go-envelope-page > div,
  .go126-envelope-scene,
  .premium-envelope-scene {
    width: 100%;
    max-width: 100%;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
  }

  .envelope-stage .open-hint,
  .premium-envelope-stage .open-hint,
  .go126-envelope-stage .open-hint,
  [class*="envelope-page"]:not(.white-issue-photo-envelope-page) > p,
  [class*="envelope-page"]:not(.white-issue-photo-envelope-page) > div > p,
  .sa213-envelope-hint,
  .bp40-open-copy {
    width: 100%;
    max-width: calc(100vw - 32px);
    margin: 28px auto 0 !important;
    padding: 0 8px;
    text-align: center !important;
    line-height: 1.55 !important;
    white-space: normal !important;
  }

  .go126-envelope,
  [class*="photo-envelope"] button,
  [class*="envelope-page"] button {
    margin-inline: auto !important;
    flex: 0 0 auto;
  }
}

/* V247 — corrección segura de sobres sin alterar sus enlaces ni eventos de apertura */

/* Little Moon: conserva el enlace original y muestra la indicación debajo del sobre. */
.lm196-env {
  min-height: 100vh !important;
  min-height: 100svh !important;
  box-sizing: border-box !important;
  display: grid !important;
  place-items: center !important;
  padding: max(24px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom)) !important;
}

.lm196-env .lm196-env-envelope {
  margin: 0 auto !important;
  overflow: visible !important;
}

.lm196-env .lm196-env-envelope::after {
  content: 'Haz clic para abrir la invitación' !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  left: 50% !important;
  bottom: -54px !important;
  transform: translateX(-50%) !important;
  width: max-content !important;
  max-width: calc(100vw - 36px) !important;
  box-sizing: border-box !important;
  padding: 0 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #315f7d !important;
  font-size: 10px !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;
  letter-spacing: .20em !important;
  text-align: center !important;
  white-space: normal !important;
  text-transform: uppercase !important;
  pointer-events: none !important;
}

/* Cala Serena / Marea Blanca: centra la escena y mejora el contraste de la indicación. */
.marea-envelope-page {
  min-height: 100vh !important;
  min-height: 100svh !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: max(24px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom)) !important;
  text-align: center !important;
}

.marea-envelope-page > button {
  margin: 0 auto !important;
  flex: 0 0 auto !important;
}

.marea-envelope-page > p {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  width: auto !important;
  max-width: calc(100vw - 36px) !important;
  margin: 34px auto 0 !important;
  padding: 0 8px !important;
  color: #f4f8f9 !important;
  text-shadow: 0 1px 5px rgba(0,0,0,.45) !important;
  font-size: 10px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  letter-spacing: .22em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  pointer-events: none !important;
}

/* Distancia uniforme para las demás colecciones, sin crear ni mover elementos con JavaScript. */
.envelope-stage .open-hint,
.premium-envelope-stage .open-hint,
.go126-envelope-stage .open-hint,
.sa213-envelope-hint {
  margin-top: 34px !important;
}

@media (max-width: 700px) {
  .lm196-env,
  .marea-envelope-page {
    height: 100svh !important;
    min-height: 100svh !important;
    overflow: hidden !important;
    padding: max(18px, env(safe-area-inset-top)) 14px max(20px, env(safe-area-inset-bottom)) !important;
  }

  .lm196-env .lm196-env-envelope::after {
    bottom: -46px !important;
    max-width: calc(100vw - 28px) !important;
    font-size: 9px !important;
    letter-spacing: .17em !important;
  }

  .marea-envelope-page > p,
  .envelope-stage .open-hint,
  .premium-envelope-stage .open-hint,
  .go126-envelope-stage .open-hint,
  .sa213-envelope-hint {
    margin-top: 28px !important;
  }
}


/* === V277 — THE WHITE ISSUE: corrección móvil definitiva ===
   Este bloque vive en el último CSS cargado para evitar que reglas antiguas
   de wi-v79…wi-v103 vuelvan a sobrescribir la versión teléfono. */
@media screen and (max-width: 900px){
  /* Portada: nombres visibles sobre la fotografía. */
  html body .white-issue-page.wi-v103 .wi-cover-custom{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }
  html body .white-issue-page.wi-v103 .wi-cover-custom > img{
    position:relative!important;
    z-index:1!important;
  }
  html body .white-issue-page.wi-v103 .wi-cover-custom .wi-cover-overlay{
    position:absolute!important;
    inset:0!important;
    z-index:20!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:none!important;
  }
  html body .white-issue-page.wi-v103 .wi-cover-custom .wi-cover-overlay > span{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    z-index:21!important;
  }
  html body .white-issue-page.wi-v103 .wi-cover-custom .wi-cover-overlay h1{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    z-index:21!important;
    color:#111!important;
  }
  html body .white-issue-page.wi-v103 .wi-cover-custom .wi-cover-overlay h1 em{
    color:#b09567!important;
  }

  /* Cuenta regresiva: más altura y textos secundarios realmente legibles. */
  html body .white-issue-page.wi-v103 .wi-countdown-built{
    height:78vw!important;
    min-height:78vw!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built h2{
    font-size:10vw!important;
    line-height:.95!important;
    margin:12vw 0 3vw!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built p{
    font-size:2.45vw!important;
    line-height:1.5!important;
    letter-spacing:.24em!important;
    padding:0 6vw!important;
    margin:0!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count{
    margin:6vw 5.5vw 0!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count b{
    font-size:15vw!important;
    line-height:.9!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count small{
    font-size:2.25vw!important;
    line-height:1.2!important;
    letter-spacing:.22em!important;
    margin-top:2.5vw!important;
  }

  /* Itinerario: corte editorial exacto ITINE / RARIO y horarios más visibles. */
  html body .white-issue-page.wi-v103 .wi-itinerary-custom .wi-left h2{
    width:29vw!important;
    max-width:29vw!important;
    font-size:14.2vw!important;
    line-height:.83!important;
    letter-spacing:0!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  html body .white-issue-page.wi-v103 .wi-itinerary-custom .wi-left h2 br{
    display:block!important;
  }
  html body .white-issue-page.wi-v103 .wi-itinerary-panel time{
    font-size:3.15vw!important;
    line-height:1.15!important;
    letter-spacing:.16em!important;
    font-weight:600!important;
  }
  html body .white-issue-page.wi-v103 .wi-itinerary-panel b{
    font-size:5.4vw!important;
    line-height:.92!important;
  }

  /* Álbum: misma tipografía de títulos y sección completa con botón visible. */
  html body .white-issue-page.wi-v103 .wi-album-built{
    height:148vw!important;
    min-height:148vw!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center{
    width:100%!important;
    height:148vw!important;
    min-height:148vw!important;
    box-sizing:border-box!important;
    padding:11vw 8vw 16vw!important;
    transform:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center h2{
    font-family:'Bebas Neue','Oswald','Arial Narrow',Impact,sans-serif!important;
    font-size:14.9vw!important;
    line-height:.88!important;
    font-weight:500!important;
    letter-spacing:.005em!important;
    margin:3vw 0 7vw!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center p{
    margin:0 0 7vw!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center button{
    position:static!important;
    transform:none!important;
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
    min-height:10vw!important;
    margin:0!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-built .wi-page-mark{
    bottom:5vw!important;
  }
}


/* === V278 — THE WHITE ISSUE / ajustes exclusivos teléfono === */
@media screen and (max-width: 900px){
  /* La portada usa únicamente 01-cover y fuerza una lectura estable en iOS/Android. */
  html body .white-issue-page.wi-v103 .wi-cover-custom > img{
    content:url("../white/01-cover.webp?v278")!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  /* Títulos principales: escala menor y peso semibold consistente. */
  html body .white-issue-page.wi-v103 .wi-info-section .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-gallery-built .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-itinerary-custom .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-album-center h2{
    font-family:'Oswald','Arial Narrow',Arial,sans-serif!important;
    font-weight:600!important;
    font-stretch:normal!important;
  }
  html body .white-issue-page.wi-v103 .wi-info-section .wi-left h2{
    font-size:10.2vw!important;
    line-height:.94!important;
    letter-spacing:.005em!important;
  }
  html body .white-issue-page.wi-v103 .wi-gallery-built .wi-left h2{
    font-size:10.2vw!important;
    line-height:.94!important;
  }
  html body .white-issue-page.wi-v103 .wi-itinerary-custom .wi-left h2{
    font-size:10.2vw!important;
    line-height:.94!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center h2{
    font-size:10.2vw!important;
    line-height:.94!important;
  }

  /* En móvil se elimina LA; en escritorio sigue presente. */
  html body .white-issue-page.wi-v103 .wi-title-mobile-hide{
    display:none!important;
  }

  /* Cuenta regresiva: fondo blanco, escala corregida y conjunto centrado. */
  html body .white-issue-page.wi-v103 .wi-countdown-built{
    height:62vw!important;
    min-height:62vw!important;
    max-height:62vw!important;
    background:#fff!important;
    padding:0 4vw!important;
    margin:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built::before,
  html body .white-issue-page.wi-v103 .wi-countdown-built::after{
    background:#fff!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built h2{
    font-family:'Oswald','Arial Narrow',Arial,sans-serif!important;
    font-size:7.8vw!important;
    line-height:1!important;
    font-weight:600!important;
    letter-spacing:.035em!important;
    margin:0 0 2.6vw!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built p{
    font-size:2.45vw!important;
    line-height:1.45!important;
    letter-spacing:.24em!important;
    padding:0 4vw!important;
    margin:0!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count{
    width:100%!important;
    margin:4.8vw 0 0!important;
    align-items:flex-start!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count span{
    min-height:auto!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count b{
    font-family:'Oswald','Arial Narrow',Arial,sans-serif!important;
    font-size:10.8vw!important;
    line-height:.9!important;
    font-weight:600!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count small{
    font-size:2.25vw!important;
    line-height:1.2!important;
    letter-spacing:.22em!important;
    margin-top:2.2vw!important;
  }
}


/* === V280 — THE WHITE ISSUE / ajustes exclusivos escritorio === */
@media screen and (min-width: 901px){
  /* Ceremonia y celebración sin el artículo “LA”, igual que en móvil. */
  html body .white-issue-page.wi-v103 .wi-title-mobile-hide{
    display:none!important;
  }

  /* Cuenta regresiva: un poco más alta, con jerarquía equilibrada y centrada. */
  html body .white-issue-page.wi-v103 .wi-countdown-built{
    height:184px!important;
    min-height:184px!important;
    max-height:184px!important;
    padding:18px 22px 16px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built h2{
    font-size:30px!important;
    line-height:1!important;
    font-weight:600!important;
    margin:0 0 7px!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built p{
    margin:0!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count{
    width:100%!important;
    margin:17px 0 0!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count span{
    min-height:55px!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count b{
    font-size:42px!important;
    line-height:.82!important;
    font-weight:600!important;
  }
  html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count small{
    margin-top:8px!important;
  }

  /* Todos los títulos principales bajan ligeramente de escala. */
  html body .white-issue-page.wi-v103 .wi-info-section .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-gallery-built .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-gallery-v84 .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-rsvp-built .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-gift-built .wi-left h2{
    font-size:54px!important;
    line-height:.88!important;
  }
  html body .white-issue-page.wi-v103 .wi-dress .wi-left h2,
  html body .white-issue-page.wi-v103 .wi-itinerary-custom .wi-left h2{
    font-size:48px!important;
    line-height:.88!important;
  }
  html body .white-issue-page.wi-v103 .wi-album-center h2{
    font-size:52px!important;
    line-height:.88!important;
  }

  /* Dress code usa exactamente el mismo interlineado que Itinerario. */
  html body .white-issue-page.wi-v103 .wi-dress .wi-left h2{
    line-height:.88!important;
  }
}


/* === V363 — THE WHITE ISSUE / cuenta regresiva más liviana ===
   Solo modifica el grosor del título y de los números. */
html body .white-issue-page.wi-v103 .wi-countdown-built h2{
  font-weight:300!important;
}

html body .white-issue-page.wi-v103 .wi-countdown-built .wi-live-count b{
  font-weight:300!important;
}


/* === V369 — White Issue / título Álbum de fotos === */
@media screen and (max-width:900px){
  html body .white-issue-page.wi-v103 .wi-album-center h2{
    font-family:'Oswald','Arial Narrow',Arial,sans-serif!important;
    font-weight:600!important;
    font-stretch:normal!important;
    letter-spacing:.005em!important;
  }
}
html body .white-issue-page.wi-v103 .wi-album-center h2{
  font-family:'Oswald','Arial Narrow',Arial,sans-serif!important;
  font-weight:600!important;
  font-stretch:normal!important;
}
