@import url('https://fonts.googleapis.com/css2?family=Forum&family=Imperial+Script&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Pinyon+Script&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Rouge+Script&family=Spectral:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: Arial, sans-serif;
    color: #fff;
    background-color: #201D1C;
}

header {
    background-size: cover;
    background-position: center;
    color: #fff;
    text-align: center;
    padding: 60px 20px;

}

section {
    background-size: cover;
    background-position: center;
    color: #fff;
    text-align: center;
    padding: 60px 20px;
     overflow: hidden;
}

/*portada*/
.portada {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.portada h2 {
    font-family: Imperial Script;
    position: absolute;
    top: 20px;
    font-size: 6em;
    width: 100%;
}

.portada h1 {
    font-family: Pinyon Script;
    position: absolute;
    bottom: 20px;
    font-size: 6em;
    width: 100%;
}

.fecha-contador, .galeria, .codigo-vestimenta, .ubicacion, .regalos, .confirmar-asistencia {
    min-height: 60vh;
}


.fixed-button {
    position: fixed;
    bottom: 150px; /* Espaciado desde la parte inferior */
    left: 10px; /* Espaciado desde la derecha */
    background-color: #fffff;
    color: black;
    border: none;
    border-radius: 5px;
    padding: 10px 15px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    transition: transform 0.2s, background-color 0.3s;
}

/* Efectos al pasar el ratón */
.fixed-button:hover {
    background-color: #000;
    color: white;
    transform: scale(1.1); /* Aumenta el tamaño ligeramente */
}

/* Adaptación responsiva */
@media (max-width: 768px) {
    .fixed-button {
        font-size: 14px;
        padding: 8px 12px;
    }
}

@media (max-width: 480px) {
    .fixed-button {
        font-size: 12px;
        padding: 6px 10px;
    }
}



/* Estilos para el botón */
.myButton {
  background-color: #fffff;
  border: none;
  color: #930016;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  cursor: pointer;
  border-radius: 5px;
}

/* Estilos al pasar el cursor por encima del botón */
.myButton:hover {
  background-color: #b69e60;
}


/*Datos y contador*/
.contador {
    display: flex;
    align-items: center;
    font-size: 3vw; /* Ajuste adaptable según la pantalla */
    color: white;
    text-align: center;
    justify-content: center;
}

.segmento {
    font-family: Spectral;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.segmento div {
    font-size: 6rem; /* Ajuste adaptable según la pantalla */
  
}

.etiqueta {
    font-size: 1.5rem; /* Tamaño de etiqueta adaptable */
    margin-top: -10px;
    font-weight: bold;
    text-align: center;
}

.palabras-alusivas{
    
    font-family: Pinyon Script;
    font-size: 4rem;
}

.txt-datos{
    font-family: Spectral;
    font-weight: 400;
    font-size: 3vw;
}

.txt-datos2{
    font-family: Spectral;
    font-weight: 400;
    font-size: 2vw;
}

.txt-falta{
     font-family: Spectral;
    font-weight: 400;
    font-size: 2vw;
    font-weight: bold;
}

/*Titulos y separadores*/
.separador{
    width: 30%;
}

.separador-linea{
    width: 60%;
}

.txt-titulos{
    font-family: Spectral;
    font-weight: 400;
    font-size: 3vw;
    margin-bottom: 30px;
}

/*titulos de Padres y Padrinos*/
.txt-subtitulos{
    font-family: Roboto;
    font-weight: 400;
    font-size: 1.2vw;

}

.txt-descripcion{
    font-family: Rouge Script;
    font-weight: 400;
    font-size: 3vw;
}


/*Sección Padres*/
.fotos-padres {
    padding: 20px;
    text-align: center;
    min-height: 60vh;
}

.padres {
    display: grid;
    grid-template-columns: auto, auto;
    gap: 20px;
    justify-items: center;
}

.padres img {
    width: 100%;
    max-width: 400px; /* Ajusta el ancho máximo de las imágenes */
    height: auto;
    border-radius: 8px;
}

/* Estilos para pantallas grandes */
@media (min-width: 768px) {
    .padres {
            grid-template-columns: repeat(2, 1fr); /* Dos imágenes por fila */
    }
}

/*Sección Padrinos*/

.fotos-padrinos {
    padding: 20px;
    text-align: center;
    min-height: 60vh;
}

.padrinos {
    display: grid;
    grid-template-columns: auto, auto;
    gap: 20px;
    justify-items: center;
}

.padrinos img {
    width: 100%;
    max-width: 400px; /* Ajusta el ancho máximo de las imágenes */
    height: auto;
    border-radius: 8px;
}

/* Estilos para pantallas grandes */
@media (min-width: 768px) {
    .padrinos {
        grid-template-columns: repeat(2, 1fr); /* Dos imágenes por fila */
    }
}

@media (max-width: 768px) {
    
.txt-titulos{
    font-weight: 400;
    font-size: 10vw;
    margin-bottom: 30px;
}

.txt-datos{

    font-weight: 400;
    font-size: 10vw;
}

.txt-datos2{

    font-weight: 400;
    font-size: 6vw;
}

.txt-subtitulos{
    font-family: Roboto;
    font-weight: 400;
    font-size: 5vw;

}

.txt-descripcion{
    font-family: Rouge Script;
    font-weight: 400;
    font-size: 14vw;
}

p{
    margin-bottom: 0;
}

.portada h2 {

    top: 10px;
    font-size: 4em;

}

.portada h1 {

    bottom: 10px;
    font-size: 5em;

}

    .contador {
        font-size: 8vw;
    }

    .segmento div {
        font-size: 15vw;
    }

    .etiqueta {
        font-size: 4vw;
    }

.gallery-section {
            padding: 3rem 0;
            text-align: center;
        }
        .gallery-header {
            font-size: 2rem;
            margin-bottom: 2rem;
            color: #343a40;
        }

.palabras-alusivas{
    font-size: 2rem;
}

.txt-falta{
    font-size: 8vw;
}

}

.galeria_contenedor{
    width: 90%;
   

}



/*container para itinerario, regalo y ubicaciones*/
 .container {
            display: flex;
            justify-content: space-between;
            width: 90%;
            max-width: 800px;
            padding: 20px;
           
        }


/*Itinerario*/

        .item-itine {
            flex: 1;
            margin: 0 10px;
            text-align: center;
        }

        .item-itine img {
            width: 30%;
            max-width: 300px;
            border-radius: 8px;
            transition: transform 0.3s ease;
        }

        .item-itine img:hover {
            transform: scale(1.05);
        }

        .description-itine1 {
            margin-top: 10px;
            font-size: 1.3rem;
            color: white;
            font-weight: bold;
        }

        .description-itine2 {
            margin-top: 10px;
            font-size: 1rem;
            color: white;

        }

        /* Responsivo para pantallas pequeñas */
        @media (max-width: 600px) {
            .container {
                flex-direction: column;
                align-items: center;
            }

            .item-itine {
                margin: 10px 0;
            }
        } 


/*Ubicación*/

.imagen-ubica {
    width: 15%;
}


/*menú de comida*/
.menu-section {
            padding: 2rem;
            max-width: 900px;
            margin: 0 auto;
            text-align: center;
        }

        .menu-header {
            font-size: 2.5rem;
            color: white;
            margin-bottom: 1rem;
        }

        .menu-container {
            background-color: white;
            padding: 2rem;
            border-radius: 10px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }

        .menu-category {
            font-size: 1.8rem;
            font-weight: bold;
            color: #444;
            margin-top: 2rem;
            text-transform: uppercase;
        }

        .menu-item {
            font-size: 1.2rem;
            color: #555;
            margin: 0.5rem 0;
        }

        .menu-item span {
            font-weight: bold;
            color: #333;
        }

        @media (max-width: 768px) {
            .menu-section {
                padding: 1rem;
            }

            .menu-header {
                font-size: 2rem;
            }

            .menu-category {
                font-size: 1.5rem;
            }

            .menu-item {
                font-size: 1rem;
            }
        }


/*Vestimenta*/

        .item-vestime {
            flex: 1;
            margin: 0 10px;
            text-align: center;
        }

        .item-vestime img {
            width: 30%;
            max-width: 300px;
            border-radius: 8px;
            transition: transform 0.3s ease;
        }

        .item-vestime img:hover {
            transform: scale(1.05);
        }

        .description-vestime1 {
            margin-top: 10px;
            font-size: 1.3rem;
            color: white;
            font-weight: bold;
        }

        .description-vestime2 {
            margin-top: 10px;
            font-size: 1rem;
            color: white;
        }



        /* Responsivo para pantallas pequeñas */
        @media (max-width: 600px) {
            .container {
                flex-direction: column;
                align-items: center;
            }

            .item-vestime {
                margin: 10px 0;
            }

            .separador{
             width: 90%;
            }

        }
/*ubicaciones*/

        .item-ubi {
            flex: 1;
            margin: 0 10px;
            text-align: center;
        }

        .item-ubi img {
            width: 100%;
            max-width: 300px;
            border-radius: 8px;
            transition: transform 0.3s ease;
        }

        .item-ubi img:hover {
            transform: scale(1.05);
        }

        .description-ubi1 {
            margin-top: 10px;
            font-size: 1rem;
            color: white;
            font-weight: bold;
        }

        .description-ubi2 {
            font-family: Forum;
          margin-top: 0px;
            font-size: 2rem;
            color: white;
        }

        .description-ubi3 {
           margin-top: 0px;
            font-size: 1rem;
            color: white;
            font-weight: bold;
        }







        /* Responsivo para pantallas pequeñas */
        @media (max-width: 600px) {
            .container {
                flex-direction: column;
                align-items: center;
            }

            .item-ubi {
                margin: 10px 0;
            }

            .separador{
             width: 90%;
            }

        }

/*Regalos*/
       
        .item-reg {
            flex: 1;
            margin: 0 10px;
            text-align: center;
        }

        .item-reg img {
            width: 30%;
            max-width: 300px;
            border-radius: 8px;
            transition: transform 0.3s ease;
        }

        .item-reg img:hover {
            transform: scale(1.05);
        }

        .description-reg {
            margin-top: 10px;
            font-size: 1rem;
            color: white;
        }

        .button-10 {
            padding: 10px 20px;
            background-color: white;
            color: black;
            border: none;
            border-radius: 20px;
        }

        .button-10 i{
            font-size: 2rem;
        }

        .button-10:hover i {
            transform: translateX(3px);
            transition: transform 0.3s;
        }

        /* Responsivo para pantallas pequeñas */
        @media (max-width: 600px) {
            .container {
                flex-direction: column;
                align-items: center;
            }

            .item-reg {
                margin: 10px 0;
            }
        }


/*opiniones*/
        .comments-section {
            padding: 2rem;
            max-width: 1200px;
            margin: 0 auto;
        }

        .comments-header {
            text-align: center;
            margin-bottom: 2rem;
        }

        .comments-header h2 {
            font-size: 2rem;
            margin: 0;
            color: white;
        }

        .comments-container {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 1.5rem;
        }

        .comment-card {
            background-color: #fff;
            border-radius: 12px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            padding: 1.5rem;
            transition: transform 0.3s, box-shadow 0.3s;
        }

        .comment-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
        }

        .comment-card .user-name {
            font-size: 1.2rem;
            font-weight: bold;
            color: #555;
            margin-bottom: 0.5rem;
        }

        .comment-card .user-comment {
            font-size: 1rem;
            line-height: 1.5;
            color: #666;
        }

        @media (max-width: 768px) {
            .comments-section {
                padding: 1rem;
            }

            .comments-header h2 {
                font-size: 1.5rem;
            }
        }




/*contacto*/


.contacto a {
    display: inline-block;
    margin: 10px;
    padding: 10px 20px;
    border-radius: 20px;
    text-decoration: none;
    color: white;
}

.description-contacto {
            margin-top: 10px;
            font-size: 1rem;
            color: white;
            font-weight: bold;
        }

.nf {
    font-family: Pinyon Script;
    bottom: 10px;
    font-size: 4em;
    width: 100%;
}











