:root {
  --white: white;
  --black: black;
}
/* Contenedor */
.mesa-regalos {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: auto;
}

/* Imagen al 70% */
.mesa-img {
    width: 70%;
    display: block;
    margin: auto;
}

/* Botones invisibles */
.hitbox {
    position: absolute;
    cursor: pointer;
    width: 45%;      /* ancho relativo a la imagen */
    height: 7%;      /* alto relativo a la zona del texto */
    left: 50%;
    transform: translateX(-50%);
}
.itinerario-contenedor {
  display: flex;
  flex-direction: row;
  justify-content: center; /* centra horizontalmente */
  align-items: flex-start;
  gap: 40px; /* separación entre tarjetas */
  flex-wrap: nowrap !important; /* evita que una tarjeta baje */
}
/* --- ITINERARIO EN FILA (Version escritorio) --- */
.c-flipping-cards-list {
    display: flex !important;
    justify-content: center;
    align-items: flex-start;
    gap: 40px;
    flex-wrap: nowrap !important;
}


/* ---- POSICIONES AJUSTADAS PARA 70% ---- */

/* Ir a mesa — Palacio */
.btn-palacio {
    top: 58.5%;
}

/* Ir a cuenta bancaria */
.btn-cuenta {
    top: 73%;
}

/* Ir a mesa — Liverpool */
.btn-liverpool {
    top: 85%;
}

/* --- Sección RSVP adaptada al estilo Webflow --- */
.mesa-regalos img {
    width: 70%;          /* ← Reduce la imagen al 80% */
    display: block;
    margin: auto;        /* ← La centra */
}

.rsvp-container {
    max-width: 700px;
    margin: 0 auto;
    background: #ffffff;
    padding: 40px 50px;
    border-radius: 20px;
    border-bottom: 5px solid #5e2b3a; /* vino */
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    text-align: center;
}

.rsvp-title {
    font-size: 36px;
    font-family: "Cormorant Garamond", serif;
    color: #5e2b3a; /* tono vino como el resto del sitio */
    margin-bottom: 20px;
}

.rsvp-text {
    font-size: 20px;
    line-height: 1.6;
    color: #4a4a4a;
    margin-bottom: 30px;
}

.rsvp-button {
    display: inline-block;
    padding: 14px 35px;
    background-color: #5e2b3a;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 12px;
    box-shadow: 0 5px 12px rgba(0,0,0,0.2);
    transition: 0.3s ease;
}

.rsvp-button:hover {
    background-color: #4a1f2b;
    transform: translateY(-2px);
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.section {
  padding: 10%;
}

.section._1 {
  background-image: url('../images/PROPUESTA-TAMARA-.png');
  background-position: 50%;
  background-size: cover;
  height: 100vh;

}

.section.heroe {
  background-image: url('../images/1_1.png'), url('../images/1.png');
  background-position: 50% 0, 50% 0;
  background-repeat: no-repeat, repeat;
  background-size: contain, contain;
  height: 100vh;
  padding: 0% 0% 5%;
}

.section._2 {
  background-image: url('../images/5.png'), url('../images/5.png');
  background-position: 100% 0, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: cover, contain;
  padding-bottom: 5%;
}

.section._3 {
  background-image: url('../images/5.png');
  background-position: 0 0;
  background-repeat: repeat;
  background-size: contain;
  padding: 0% 3% 0% 2%;
}

.section._4 {
  background-image: url('../images/8.png'), url('../images/5.png');
  background-position: 0 60%, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: contain, contain;
  padding: 5% 0%;
}
.section._5 {
  letter-spacing: 1px;
  background-image: url('../images/12.png'), url('../images/5.png');
  background-position: 100%, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: contain, contain;
  padding-top: 5%;
  padding-bottom: 5%;
}

.section._6 {
  background-image: url('../images/5.png');
  background-position: 0 0;
  background-repeat: repeat;
  background-size: contain;
  padding-top: 5%;
}

.section._7 {
  background-image: url('../images/19.png');
  background-position: 100% 80%;
  background-size: cover;
}

.section._8 {
  background-image: url('../images/21.png');
  background-position: 50% 0;
  background-size: cover;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 20% 15% 2%;
  display: flex;
}

.navbar {
  background-color: #ddd0;
  justify-content: space-between;
  align-items: center;
  padding-top: 56px;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
  position: static;
  inset: 0% 0% auto;
}

.der {
  flex-flow: row;
  justify-content: center;
  align-items: center;
  padding-left: 5%;
  display: flex;
}

.nav-link {
  color: #fff;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-left: 10px;
  margin-right: 10px;
  font-family: the-seasons, sans-serif;
  font-size: 10px;
}

.nav-link.w--current {
  color: #fff;
}

.container {
  margin-left: 10%;
  margin-right: 10%;
}

.container._1 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 85%;
  padding-top: 5%;
  display: flex;
}

.grid {
  grid-template-rows: auto;
  width: 100%;
}

.nav-menu {
  flex-flow: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.js-clock-2 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  color: #fff;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-top: 5%;
  padding: 0;
  display: flex;
}

.box-2 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  margin-left: 20px;
  margin-right: 20px;
  padding: 0 10px;
  font-size: 12px;
  line-height: 20px;
  display: flex;
}

.clock-number-2 {
  color: #fff;
  text-align: center;
  letter-spacing: 5px;
  border: .5px #fff;
  border-radius: 8px;
  width: auto;
  height: auto;
  margin-bottom: 10px;
  margin-right: 0;
  padding-top: 5px;
  font-family: playfair-display, sans-serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 40px;
}

.bonita {
  color: #fff;
  text-align: center;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  font-style: normal;
  line-height: 15px;
}

.con._1 {
  background-image: url('../images/22.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  height:100vh;
  padding-bottom: 8%;
  display: flex;
}

.heading {
  color: #545454;
  font-family: the-seasons, sans-serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 55px;
}

.paragraph {
  color: #545454;
  padding-right: 5%;
  font-family: playfair-display, sans-serif;
  font-size: 14px;
}

.paragraph._1 {
  font-family: playfair-display, sans-serif;
}

.div-block {
  background-image: url('../images/4.png');
  background-position: 50%;
  background-size: cover;
}

.div-block-2 {
  background-image: url('../images/6.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;      
  justify-content: center;          
  align-items: center;             
  height: 150vh;             
  padding: 0;                      
  display: flex;
}


.link-block {
  width: 80%;
  height: 10%;
}

.heading-2 {
  color: #431213;
  text-align: center;
  letter-spacing: 7px;
  margin-bottom: 0;
  font-family: the-seasons, sans-serif;
  font-size: 25px;
}

.heading-2._1 {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 25px;
}

._w-card-img {
  perspective: 1000px;
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
}

.c-card-img {
  flex: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}
/* ---- HOVER SOLO EN LA IMAGEN DEL ITINERARIO ---- */

.c-card-img {
    transition: transform 0.3s ease-in-out;
}

.c-card-img:hover {
    transform: scale(1.05)!important;
}


.c-card-quote {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  padding: 20px 0 0;
  display: flex;
  position: relative;
}

.div-block-19 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.div-block-19._2 {
  margin-top: 5%;
  margin-bottom: 5%;
}

.paragraph-2 {
  color: #606961;
  text-align: center;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 30px;
}

.paragraph-2._3 {
  text-transform: none;
  font-family: playfair-display, sans-serif;
  font-size: 12px;
  line-height: 15px;
}

.paragraph-2._3-copy {
  text-transform: none;
  margin-top: 1%;
  font-family: playfair-display, sans-serif;
  font-size: 12px;
  line-height: 15px;
}

.c-flipping-cards-list {
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding: 5% 0 0;
  display: flex;
}

.c-card-back {
  perspective: 1000px;
  justify-content: center;
  align-items: center;
  width: 330px;
  height: 440px;
  display: block;
}

.c-card-front {
  perspective: 1000px;
  background-image: url('../images/11.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 0;
  justify-content: center;
  align-items: center;
  width: 528px!important; /* 330px 450px*/
  height: 720px!important;
  display: flex;
}
.c-card-front._1 {
  box-shadow: none;
  background-image: none;
  width: 330px;

}

.c-card-front._2 {
  background-image: url('../images/10.png');
  background-position: 0 0;
  background-size: contain;
}

.c-flip-card {
  position: relative;
  height: 420px;
}

.cloneable-area {
  padding: 20px 10px;
}

.text-span {
  text-transform: none;
  font-size: 12px;
  line-height: 10px;
}

._w-card-back {
  perspective: 1000px;
  background-color: #fff;
  border-radius: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 0%;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
}

._w-card-back._1 {
  padding-bottom: 5%;
}

.link-3 {
  color: #626b63;
  text-decoration: none;
}

._w-flip-card {
  z-index: 10;
  perspective: 1000px;
  display: flex;
  position: relative;
}

.button-2 {
  color: #606961;
  background-color: #3898ec00;
  border: 1px #606961;
  border-bottom-style: solid;
  border-radius: 0;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  line-height: 15px;
}

._w-card-front {
  perspective: 1000px;
  background-color: #ff6565;
  background-image: linear-gradient(#00000069, #00000069), url('../images/IMG_7087IMG_7086.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  border-radius: 5px;
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  transform: none;
}

._w-card-front._1 {
  background-color: #0000;
  background-image: url('../images/9-.png');
  background-position: 75%;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 0;
}

._w-card-front.tw {
  background-color: #8ca7ff;
}

._w-card-front.tw._2 {
  background-color: #0000;
  background-image: none;
  border-radius: 0;
}

._w-card-front.fb {
  background-color: #6670bd;
}

._w-card-front.fb._3 {
  background-color: #0000;
  background-image: none;
  border-radius: 0;
}

.heading-2-copy {
  color: #431213;
  text-align: center;
  letter-spacing: 2px;
  margin-top: 0;
  font-family: baskerville-poster-pt, sans-serif;
  font-size: 35px;
  font-style: italic;
  font-weight: 400;
}

.heading-2-copy._1 {
  margin-bottom: 5%;
}

.grid-2 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  margin-top: 3%;
}

.grid-2.phone {
  display: none;
}

.paragraph-3 {
  color: #350c0d;
  text-align: center;
  padding-top: 10px;
  font-family: baskerville-display-pt, sans-serif;
  font-style: italic;
}

.link-4 {
  color: #350c0d;
  font-size: 12px;
}

.italic-text {
  text-decoration: none;
}

.grid-3 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.grid-3.phone {
  display: none;
}

.link-block-2 {
  background-image: url('../images/15.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  height: 60vh;
}

.link-block-2._1 {
  background-image: url('../images/24.png');
}

.link-block-2._2 {
  background-image: url('../images/17.png');
}

.fotolarga {
  background-image: url('../images/6.jpg');
  background-position: 50% 100%;
  background-size: cover;
  background-attachment: fixed;
  height: 700px;
  margin-top: 0;
}

.fotolarga.jo._2 {
  background-image: url('../images/18.png');
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  height: 50vh;
}

.fotolarga.jo {
  background-image: url('../images/INV-ANA-PAULINA--7.png'), url('../images/foto.jpg');
  background-position: 0%, 50% 0;
  background-repeat: no-repeat, repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  height: 80vh;
}

.fotolarga.jo._2 {
  background-image: url('../images/18.png');
  background-position: 50% 0;
  background-repeat: repeat;
  background-size: contain;
  background-attachment: fixed;
}

.fotolarga.jo._2-copy {
  background-image: url('../images/20.png');
  background-position: 0 0;
  background-repeat: repeat;
  background-size: cover;
  background-attachment: fixed;
  height: 90vh;
}

.text-field-2 {
  color: #431213;
  text-align: center;
  -webkit-text-stroke-color: #3a393400;
  background-color: #f3f3f300;
  border: 1px solid #431213;
  margin-top: 10px;
  margin-bottom: 15px;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  line-height: 25px;
}

.text-field-2:focus-visible {
  font-size: 12px;
}

.text-field-2[data-wf-focus-visible] {
  font-size: 12px;
}

.text-field-2::placeholder {
  color: #431213;
  font-size: 12px;
  line-height: 20px;
}

.form {
  text-align: center;
  width: 100%;
}

.checkbox-label {
  color: #431213;
  margin-bottom: 0;
  margin-left: 5px;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  font-weight: 400;
}

.form-block {
  color: #61645a;
  width: 100%;
  margin-top: 3%;
}

.checkbox {
  margin-top: 0;
}

.success-message {
  background-color: #ddd0;
}

.checkbox-field {
  justify-content: center;
  align-items: center;
  margin-left: 20px;
  margin-right: 20px;
  display: flex;
}

.submit-button {
  color: #431213;
  letter-spacing: 1px;
  background-color: #bbb9ae00;
  border: 1px solid #797979;
  width: 40%;
  margin-top: 10px;
  padding-left: 10px;
  padding-right: 10px;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  line-height: 18px;
}

.field-label-4 {
  color: #431213;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  font-weight: 400;
}

.div-block-72 {
  justify-content: center;
  align-items: center;
  margin-top: 2%;
  margin-bottom: 10px;
  display: flex;
}

.div-block-73 {
  width: 50%;
  margin-top: 5%;
}

.gri.phone, .navbar-2 {
  display: none;
}

.image {
  margin-bottom: 3%;
}

.text-span-2 {
  padding-left: 10px;
  padding-right: 10px;
  font-size: 10px;
  line-height: 12px;
}

.link-block-3 {
  width: 30%;
  height: 10%;
  margin-bottom: 7%;
}

.link-block-4 {
  width: 30%;
  height: 10%;
}

.heading-3 {
  color: #431213;
  margin-bottom: 0;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  line-height: 20px;
}

.js-clock {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
}

.box {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  margin-left: 0;
  margin-right: 0;
  padding: 0 10px;
  font-size: 12px;
  line-height: 20px;
  display: flex;
}

.clock-number {
  color: #fff;
  text-align: center;
  letter-spacing: 5px;
  border: .5px #fff;
  border-radius: 8px;
  width: auto;
  height: auto;
  margin-bottom: 10px;
  margin-right: 0;
  padding-top: 5px;
  font-family: playfair-display, sans-serif;
  font-size: 42px;
  font-weight: 400;
  line-height: 50px;
}

.bonita-2 {
  color: #fff;
  text-align: center;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0;
  font-family: the-seasons, sans-serif;
  font-size: 12px;
  font-style: normal;
  line-height: 20px;
}

.text-span-3 {
  font-size: 9px;
}

.text-block {
  color: #431213;
  font-family: the-seasons, sans-serif;
}


/* Contenedor principal */
.hero-header {
    background-color: white;
    text-align: center;
    padding: 30px 20px;
    border-bottom: 4px solid #7c0628; /* color vino */
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border-radius: 0 0 25px 25px;
}

/* Título */
.hero-title {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 45px;
    color: #7c0628; /* color vino */
    margin-bottom: 15px;
    animation: pulse 2s infinite;
}

/* Subtítulo */
.hero-subtitle {
    font-size: 22px;
    font-weight: 300;
    color: #333;
    letter-spacing: 1px;
}
/* --- MODO CELULAR --- */
@media (max-width: 767px) {
    .c-flipping-cards-list {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important; /* ya no importa, porque va vertical */
        align-items: center !important;
        gap: 25px !important; /* espacio entre tarjetas */
    }

    .cloneable-area {
        width: 100% !important;
        max-width: 330px !important; /* tamaño cómodo para móvil */
    }

    .c-flip-card,
    ._w-flip-card {
        width: 100% !important;
    }
}


@media (max-width: 900px) {
  .cards-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px; /* separación entre tarjetas */
  }

  .c-card-front,
  .c-card-back {
    width: 90vw !important;
    height: 130vw !important; /* mantiene proporción vertical */
    max-width: 420px;
    max-height: 600px;
  }
}


/* Animación tipo pulse */
@keyframes pulse {
    0% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.7; transform: scale(1.03); }
    100% { opacity: 1; transform: scale(1); }
}

/* Responsivo */
@media (max-width: 768px) {
    .hero-title {
        font-size: 42px;
    }
    .hero-subtitle {
        font-size: 20px;
    }
}
/* CONTENEDOR GENERAL */
.container._1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 20px;
    padding: 20px;
}

/* IMAGEN RESPONSIVA */
.counter-image {
    max-width: 100%;
    width: 350px; /* tamaño base */
    height: auto;
    border-radius: 20px;
}

/* CONTADOR */
.js-clock {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap; /* esto lo hace responsivo */
    font-family: sans-serif;
}
/* TARJETAS MÁS GRANDES EN CELULAR */
@media (max-width: 768px) {

  .c-flip-card,
  .c-card-front,
  .c-card-back {
    width: 90vw !important;          /* ancho casi completo */
    height: calc(90vw * 1.35) !important; /* mantiene proporción vertical */
    max-width: 420px !important;     
    margin: 0 auto !important;        /* centradas */
  }

  /* Asegurar que SIEMPRE estén en columna */
  .c-flipping-cards-list,
  .c-flip-card-list,
  .c-flip-card-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
  }
}

/* CAJAS */
@media (max-width: 768px) {
  .c-cards-container {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100%;
    gap: 20px;
  }

  .c-card,
  .c-card-front,
  .c-card-back {
    width: 90vw !important;
    height: auto !important;
    aspect-ratio: 528 / 720; /* mantiene proporción correcta */
  }
}


/* NÚMEROS */
/* --- Ajuste para celulares: centrar imágenes 18.png y 20.png --- */
@media (max-width: 768px) {
  .fotolarga.jo._2,
  .fotolarga.jo._2-copy {
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
  }

  /* Si alguna usa 2 imágenes mezcladas (como la clase .jo normal) */
  .fotolarga.jo {
    background-image: url('../images/foto.jpg') !important; 
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
  }
}
@media (max-width: 1000px) {

  .fotolarga,
  .fotolarga.jo,
  .fotolarga.jo._2,
  .fotolarga.jo._2-copy {
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
  }
}


/* 📱 RESPONSIVE (móvil) */
@media (max-width: 1800px) {
  .section.heroe {
    background-image: url('../images/1_1.png');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;   /* Aquí la hacemos cubrir el 100% */
    height: 100vh;
  }
}
@media (max-width: 900px) {
  .section.heroe {
    height: 100vh;          /* Mantiene la sección completa en pantalla */
    padding: 0 !important;  /* Evita que empuje otras secciones */
    background-size: cover; /* Mantiene la imagen llenando toda la pantalla */
    background-position: center;
  }
}



/* 💻 RESPONSIVE (tablet) */
@media (max-width: 768px) {
    .counter-image {
        width: 70%;
    }
}



@media screen and (min-width: 1920px) {
  .section._5 {
    background-image: url('../images/12.png'), url('../images/5.png');
    background-position: 100%, 0 0;
    background-repeat: no-repeat, repeat;
    background-size: contain, contain;
  }

  .js-clock-2, .js-clock {
    text-shadow: none;
  }
}

@media screen and (max-width: 991px) {
  .bonita, .bonita-2 {
    font-size: 12px;
  }
}

@media screen and (max-width: 479px) {
  .section._1 {
    background-image: url('../images/Fto.png');
    background-size: cover;
  }

  .section.heroe {
    background-image: url('../images/1_1.png'), url('../images/Copia-de-1.png');
    background-position: 50% 0, 50% 0;
    background-repeat: no-repeat, repeat;
    background-size: cover, contain;
    justify-content: center;
    align-items: flex-end;
    height: 100vh;
    display: block;
  }
.section.heroe {
    background-image: url('../images/1_1.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 90vh;        /* puedes ajustar */
}

@media (max-width: 768px) {
    .section.heroe {
        height: 80vh;
    }
}



  .section._2 {
    background-image: url('../images/5.png'), url('../images/5.png');
    background-position: 100% 0, 0 0;
    background-repeat: no-repeat, repeat;
    background-size: contain, contain;
    padding-top: 10%;
  }

  .section._3 {
    padding-left: 5%;
  }

  .section._4 {
    background-image: url('../images/5.png'), url('../images/8.png');
    background-position: 0 0, 0 0;
    background-repeat: repeat-y, no-repeat;
    background-size: contain, contain;
  }

  .section._5 {
    background-image: url('../images/12.png'), url('../images/5.png');
    background-position: 100% 20%, 0 0;
    background-repeat: no-repeat, repeat;
    background-size: contain, contain;
  }

  .section._6 {
    background-image: url('../images/5.png');
    background-position: 100% 0;
    background-repeat: repeat;
    background-size: contain;
    background-attachment: fixed;
  }

  .section._8 {
    background-image: url('../images/21.png'), url('../images/5.png');
    background-position: 50% 0, 0 0;
    background-repeat: no-repeat, repeat;
    background-size: contain, contain;
    height: auto;
    padding-bottom: 5%;
  }

  .navbar.compu, .grid, .grid.phone {
    display: none;
  }

  .js-clock-2 {
    grid-column-gap: 10px;
    grid-row-gap: 0px;
    flex-flow: wrap;
    padding-top: 0%;
    padding-bottom: 0%;
  }

  .box-2 {
    width: auto;
    height: auto;
    margin-bottom: 10px;
    margin-left: 5px;
    margin-right: 5px;
    padding-left: 0;
    padding-right: 0;
  }

  .clock-number-2 {
    width: auto;
    height: auto;
    padding: 25% 10%;
    font-size: 8vw;
    line-height: 6vw;
  }

  .bonita {
    font-size: 12px;
    line-height: 10px;
  }

  .con._1 {
    height: 50vh;
    padding-bottom: 15%;
  }

  .heading {
    font-size: 30px;
  }

  .paragraph {
    padding-right: 0%;
    font-family: the-seasons, sans-serif;
    font-size: 10px;
    line-height: 15px;
  }

  .div-block {
    height: 50vh;
  }

  .div-block-2 {
    height: 70vh;
    padding-bottom: 27%;
  }

  .heading-2 {
    font-size: 15px;
  }

  .paragraph-2._3-copy {
    font-size: 11px;
  }

  .c-flipping-cards-list {
    display: block;
  }

  .c-card-back {
    width: 280px;
    max-width: 280px;
    height: 350px;
  }

  .c-card-front, .c-card-front._1 {
    width: 280px;
    max-width: 280px;
    height: 360px;
  }

  .c-card-front._2 {
    width: 280px;
  }

  .cloneable-area {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .text-span {
    font-size: 12px;
    line-height: 15px;
  }

  .button-2 {
    letter-spacing: 1px;
    font-size: 8px;
    line-height: 12px;
  }

  .heading-2-copy {
    font-size: 25px;
  }

  .grid-2 {
    display: none;
  }

  .grid-2.phone {
    flex-flow: column;
    margin-top: 5%;
    display: flex;
  }

  .paragraph-3 {
    margin-bottom: 10%;
    padding-top: 5%;
  }

  .grid-3 {
    display: none;
  }

  .grid-3.phone {
    flex-flow: column;
    display: flex;
  }

  .link-block-2 {
    height: 35vh;
  }

  .fotolarga {
    background-position: 40%;
  }

  .fotolarga.jo {
    display: none;
  }

  .fotolarga.jo._2 {
    height: 20vh;
    display: block;
  }

  .fotolarga.jo {
    background-position: 50%, 80% 0;
    display: block;
  }

  .fotolarga.jo._2 {
    background-image: url('../images/18.png');
    background-position: 50%;
    background-repeat: repeat-y;
    background-size: contain;
    height: 30vh;
    display: block;
  }

  .fotolarga.jo._2-copy {
    background-image: url('../images/20.png');
    background-position: 45%;
    height: 70vh;
    display: block;
  }

  .text-field-2 {
    font-size: 10px;
    line-height: 12px;
  }

  .text-field-2::placeholder {
    font-size: 10px;
    line-height: 15px;
  }

  .form {
    width: 100%;
  }

  .checkbox-label {
    font-size: 10px;
  }

  .form-block {
    width: 80%;
  }

  .submit-button {
    color: #431213;
    border-color: #431213;
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 10px;
    line-height: 15px;
    display: block;
  }

  .field-label-4 {
    font-size: 10px;
    line-height: 15px;
  }

  .div-block-72 {
    flex-direction: column;
  }

  .div-block-73 {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 10%;
    display: flex;
  }

  .gri.phone {
    flex-flow: column;
    display: flex;
  }

  .navbar-2 {
    background-color: #ddd0;
    display: block;
  }

  .menu-button {
    background-color: #0000;
    padding-top: 25px;
  }

  .menu-button.w--open {
    background-color: #0000;
  }

  .icon {
    color: #fff;
  }

  .nav-menu-2 {
    background-image: url('../images/Copia-de-1.png');
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
  }

  .nav-link-2 {
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-family: the-seasons, sans-serif;
    font-size: 10px;
    line-height: 15px;
  }

  .nav-link-2:focus-visible {
    color: #fff;
  }

  .nav-link-2[data-wf-focus-visible] {
    color: #fff;
  }

  .image {
    margin-bottom: 5%;
    z-index: 100;
  }

  .link-block-3 {
    margin-bottom: 10%;
  }

  .heading-3 {
    color: #431213;
    letter-spacing: 1px;
    margin-bottom: 0;
    font-family: the-seasons, sans-serif;
    font-size: 12px;
    line-height: 20px;
  }

  .js-clock {
    grid-column-gap: 10px;
    grid-row-gap: 0px;
    flex-flow: wrap;
    padding-top: 0%;
    padding-bottom: 0%;
  }

  .box {
    width: 30px;
    height: auto;
    margin-bottom: 10px;
    margin-left: 5px;
    margin-right: 10px;
    padding-left: 0;
    padding-right: 0;
  }

  .clock-number {
    text-shadow: 0 0 2px #0003;
    width: auto;
    height: auto;
    padding: 25%;
    font-size: 5vw;
    line-height: 6vw;
  }

  .bonita-2 {
    font-size: 10px;
    line-height: 10px;
  }

  .text-span-3 {
    font-size: 7px;
    line-height: 10px;
  }

}


#w-node-_3d378d4d-732b-1df5-fc6c-dfe7b761c0c0-f3e77880 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_8179f685-db4f-a496-25ef-1150cbddac58-f3e77880 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-_40969447-b76a-3e7e-9990-ccaeb3d5d9f7-f3e77880 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_40969447-b76a-3e7e-9990-ccaeb3d5d9fa-f3e77880 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-bc40898e-5e57-3dd5-39c2-7cea786ecb08-f3e77880, #w-node-f7e07a8b-d729-c19e-7efc-1caa1fb62abe-f3e77880, #w-node-_700313c1-76b9-e6e0-183a-7adad7a57fd8-f3e77880, #w-node-_700313c1-76b9-e6e0-183a-7adad7a57fda-f3e77880 {
  place-self: center;
}
/* --- FIX FULL WIDTH --- */
html, body {
    width: 100%;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

/* Webflow containers */
.container,
div.container,
.w-container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* --- FIX SOLO PARA LA SECCIÓN INICIO --- */
#Inicio {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centra todo */
    text-align: center;
    width: 100%;
}
#Inicio .title {
    text-align: center;
    width: 100%;
}

/* Imagen de la parroquia centrada y tamaño correcto */
#Inicio img {
    max-width: 500px; /* Ajusta aquí el tamaño original */
    width: 100%;
    height: auto;
    margin: 0 auto;
}

/* Contador centrado */
#Inicio #countdown {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
}
@media (max-width: 768px) {
    #Inicio img {
        max-width: 70%; /* o 60%, ajusta a gusto */
    }

    #Inicio #countdown {
        gap: 10px;
    }
}
@media (max-width: 1483px) {
    /* Fuerza que se coloquen en columna */
    .c-flipping-cards-list {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 40px !important;
    }

    /* Ajusta cada tarjeta */
    ._w-flip-card {
        width: 100% !important;
        max-width: 480px !important;
        margin: 0 auto !important;
    }

    /* Asegura centrado interno */
    .c-cloneable-area {
        justify-content: center !important;
    }
} 
.image-hover-container {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 0;
}

.image-hover-container img {
    display: block;
    margin: 0;
    padding: 0;
}

.hover-info {
    position: absolute;
    inset: 0; /* reemplaza top, right, bottom, left */
    background-color: rgba(0, 0, 0, 0.45);
    color: #fff;
    opacity: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: opacity 0.3s ease;
    margin: 0 !important;
    padding: 0 !important;
}

.image-hover-container:hover .hover-info {
    opacity: 1;
}

/* --- FORZAR que la animación solo afecte la imagen y quitar padding/margin --- */
._w-flip-card,
.c-card-front,
._w-card-front.tw._2 {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;            /* evita que el hover "salga" */
  -webkit-overflow-scrolling: auto !important;
  background-position: center center !important;
  background-size: cover !important;      /* ocupa la tarjeta sin dejar bordes */
  background-repeat: no-repeat !important;
}

/* Anula espacios heredados dentro de ese bloque */
._w-flip-card * ,
.c-card-front * ,
._w-card-front.tw._2 * {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Contenedor de la imagen (hover responsivo limitado a la imagen) */
.c-card-img {
  position: relative !important;
  display: block !important;    /* quitamos flex si genera offset */
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;  /* recorta el scale() */
}

/* Overlay/hover reducido al área útil de la imagen */
.c-card-img::after {
  content: "";
  position: absolute;
  inset: 0;                      /* cubre exactamente la imagen */
    /* ajusta opacidad si quieres menos/mas */
  opacity: 0;
  transition: opacity 220ms ease;
  pointer-events: none;
}

/* Activar overlay solo al hover de la imagen */
.c-card-img:hover::after,
.c-card-img:focus::after {
  opacity: 1;
}

/* Efecto de escala interno: no influyas layout externo */
.c-card-img > * {
  transform-origin: center center !important;
  transition: transform 260ms ease !important;
  will-change: transform !important;
}

/* Si usas transform en .c-card-img evita que amplíe la caja padre */
.c-card-img:hover > * {
  transform: scale(1.03) !important; /* pequeño zoom, sin mover layout */
}

/* Último recurso: anula cualquier grid/warp que obligue a bajar tarjetas en móvil */
@media (max-width: 1483px) {
  .c-flipping-cards-list {
    flex-wrap: wrap !important;
  }
}
@media (max-width: 767px) {
  .c-flipping-cards-list {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
  }
}
/* FORZAR que las flip-cards NO usen grid en móvil */
@media (max-width: 768px) {

    .w-layout-grid,
    ._w-flip-cards,
    ._w-card-front,
    ._w-card-back,
    .c-card-front,
    .c-card-back {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        height: auto !important;
    }

    /* Cada tarjeta */
    ._w-flip-card {
        width: 100% !important;
        max-width: 380px !important;
        margin: 0 auto !important;
    }
}

