﻿

@font-face {
    font-family: 'fBotonesyTitulos';
    src: url('fonts/futur.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'fMenuyTemporizador';
    src: url('fonts/AOTFShinGoProRegular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'fTextosLargos';
    src: url('fonts/Karben 105 Mono W00 Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* Efecto de salida */
.fade-out {
    opacity: 0;
    transition: opacity 3.5s ease-out;
}

/* Efecto de entrada */
.fade-in {
    opacity: 0;
    animation: fadeIn 2.5s ease-in forwards;
}

/* La sección estará oculta hasta que se cargue */
/*.seccion-especial.oculto {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease-in-out;
}*/

/* Cuando se cargue, se muestra suavemente */
/*.seccion-especial.mostrar {
    opacity: 1;
    visibility: visible;
}*/

.miniaturas {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 8px 0;
}

    .miniaturas .thumb {
        position: relative;
        width: 70px;
        height: 70px;
        flex: 0 0 auto;
        border: 1px solid #ccc;
        border-radius: 6px;
        overflow: hidden;
        cursor: pointer;
    }

        .miniaturas .thumb img,
        .miniaturas .thumb video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .miniaturas .thumb.activa {
            outline: 2px solid #d7532b;
        }

.play-badge {
    position: absolute;
    bottom: 6px;
    right: 6px;
    background: rgba(0,0,0,.6);
    color: #fff;
    font-size: 12px;
    border-radius: 10px;
    padding: 2px 6px;
    line-height: 1;
}

.imagen-principal {
    text-align: center;
    margin: 8px 0 12px;
}

    .imagen-principal img, .imagen-principal video {
        max-width: 100%;
        max-height: 70vh;
    }

.upload-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.spinner {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 4px solid rgba(255,255,255,.35);
    border-top-color: #fff;
    animation: spin 0.9s linear infinite;
    margin-bottom: 10px;
}

.upload-text {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

#boda-fireworks-hero {
    position: absolute;
    inset: 0; /* ocupa todo el hero */
    pointer-events: none; /* no bloquea clics */
    z-index: 5; /* por encima del contenido del hero */
}

    #boda-fireworks-hero canvas {
        width: 100%;
        height: 100%;
        display: block;
    }

/* Secciones ocultas al inicio */
.seccion {
    min-height: 20vh;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

    /* Secciones visibles al cargarse */
    .seccion.visible {
        opacity: 1;
        transform: translateY(0);
    }

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: Arial, sans-serif;
    text-align: center;
    background-color: #efe9e0;
    margin: 0;
    padding: 0;
}

.index-body {
    font-family: Arial, sans-serif;
    text-align: center;
    background-color: #ffd1c4;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.boda-body {
    font-family: Arial, sans-serif;
    text-align: center;
    background-color: #efe9e0;
    margin: 0;
    padding: 0;
}

.container {
    margin-top: 50px;
    clear: both;
}

#containerentrada {
    position: absolute;
    width: 57%;
    height: 21%;
    top: 71%;
    left: 49.4%;
    transform: translateX(-50%);
    /*background-color: lightcoral;*/
}

#imagenentrada {
    position: absolute; /* Permite posicionar la imagen de entrada sobre la imagen de boda */
    top: 0; /* Alinea la imagen de entrada con la parte superior del contenedor */
    left: 0; /* Alinea la imagen de entrada con la parte izquierda del contenedor */
    width: 100%; /* Asegura que la imagen de entrada ocupe todo el ancho del contenedor */
    height: 100%;
}

.row {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 20px 0;
}

.imagen-con-boton {
    position: relative; /* Necesario para posicionar el botón sobre la imagen */
    margin-top: -50px;
}

.imagen-de-boda1 {
    position: relative;
    display: block;
    background-color: #efe9e0;
}

.imagen-boda1 {
    width: 100%;
    height: auto;
}

.btn-entrar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 25%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    font-family: fBotonesyTitulos, sans-serif;
}

    .btn-entrar:hover {
        background-color: rgba(255, 182, 193, 0.8); /* Color de fondo al pasar el mouse */
    }

.btn-agendar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 43%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-asistencia {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 16%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 17px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-agendar2 {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 23%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    white-space: nowrap;
    width: 300px; /* Ancho fijo del botón */
    height: 50px; /* Alto fijo del botón */
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-asistencia2 {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 43%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    width: 300px; /* Ancho fijo del botón */
    height: 50px; /* Alto fijo del botón */
    display: flex; /* Habilita flexbox */
    align-items: center; /* Centra el texto verticalmente */
    justify-content: center; /* Centra el texto horizontalmente */
    text-align: center;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-cancion {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 33%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    width: 300px; /* Ancho fijo del botón */
    height: 50px; /* Alto fijo del botón */
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-contactar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 9%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 15px;
    background-color: white; /* Color de fondo */
    color: #ec241c;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    width: 150px; /* Ancho fijo del botón */
    height: 30px; /* Alto fijo del botón */
    display: flex; /* Habilita flexbox */
    align-items: center; /* Centra el texto verticalmente */
    justify-content: center; /* Centra el texto horizontalmente */
    text-align: center;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-llegar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 5%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-ampliar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 29%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    /*padding: 13px 73px;*/
    padding: 5px 20px; /* Reduce el tamaño del botón */
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 45%;
    height: 8%;
    -webkit-tap-highlight-color: transparent; /* Evita el resaltado azul en móviles */
}

.btn-reservar {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 7%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    /*padding: 13px 73px;*/
    padding: 5px 20px; /* Reduce el tamaño del botón */
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 45%;
    height: 8%;
    -webkit-tap-highlight-color: transparent; /* Evita el resaltado azul en móviles */
}

.btn-comollegarimg1 {
    position: absolute;  
    bottom: 3.5%; 
    left: 21%;
    transform: translateX(-50%);  
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 21%;
    height: 15%;
    -webkit-tap-highlight-color: transparent; 
}

.btn-comollegarimg2 {
    position: absolute;
    bottom: 3.5%;
    left: 47%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 26%;
    height: 15%;
    -webkit-tap-highlight-color: transparent;
}

.btn-comollegarimg3 {
    position: absolute;
    bottom: 3.5%;
    left: 76%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 26%;
    height: 15%;
    -webkit-tap-highlight-color: transparent;
}

.btn-dresscode1 {
    position: absolute;
    bottom: 68%;
    left: 50%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 80%;
    height: 23%;
    -webkit-tap-highlight-color: transparent;
}
.btn-dresscode2 {
    position: absolute;
    bottom: 40%;
    left: 50%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 80%;
    height: 23%;
    -webkit-tap-highlight-color: transparent;
}

.btn-dresscode3 {
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 80%;
    height: 23%;
    -webkit-tap-highlight-color: transparent;
}

.btn-villalba {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 50%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 20px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-otros {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 28%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 17px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-mas {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 23%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 17px;
    background-color: rgba(215,83,43,255); /* Color de fondo */
    color: white;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-galeria {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 10.2%;  /*Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    padding: 13px 73px;
    font-size: 15px;
    background-color: white; /* Color de fondo */
    color: #ec241c;
    border: none;
    border-radius: 60px;
    cursor: pointer;
    white-space: nowrap;
    width: 15px; /* Ancho fijo del botón */
    height: 37px; /* Alto fijo del botón */
    display: flex; /* Habilita flexbox */
    align-items: center; /* Centra el texto verticalmente */
    justify-content: center; /* Centra el texto horizontalmente */
    text-align: center;
    font-family: fBotonesyTitulos, sans-serif;
}

.btn-sugerir {
    position: absolute; /* Posiciona el botón sobre la imagen */
    bottom: 20%; /* Espacio desde la parte inferior de la imagen */
    left: 50%; /* Centra el botón horizontalmente */
    transform: translateX(-50%); /* Ajusta la posición del botón para que esté centrado */
    /*padding: 13px 73px;*/
    padding: 5px 20px; /* Reduce el tamaño del botón */
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 45%;
    height: 8%;
    -webkit-tap-highlight-color: transparent; /* Evita el resaltado azul en móviles */
}

.btn-copiar {
    position: absolute;
    bottom: 33%;
    left: 50%;
    transform: translateX(-50%);
    padding: 13px 73px;
    padding: 5px 20px;
    font-size: 13px;
    /*background-color: rgba(215,83,43,255);*/
    background-color: transparent;
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    white-space: nowrap;
    font-family: fBotonesyTitulos, sans-serif;
    width: 75%;
    height: 30%;
    -webkit-tap-highlight-color: transparent;
}

.mensaje-copiado {
    display: none;
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(60, 60, 60, 0.8);
    color: white;
    padding: 10px 15px;
    border-radius: 8px;
    font-size: 14px;
    z-index: 1000;
    box-shadow: 0px 2px 6px rgba(0,0,0,0.3);
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

    .mensaje-copiado.mostrar {
        display: block;
        opacity: 1;
    }


/*Sugerir cancion*/
.campos-texto {
    display: flex;
    flex-direction: column;
 /*   gap: 43%;
    margin-top: 14%;*/
    gap: 1rem;
    margin-top: 10vh;
    /*margin-top: 45px;*/
    align-items: center;
    left: 50%;
}

.campo-personalizado {
    background: transparent;
    border: none;
    border-bottom: 2px solid rgba(173, 255, 47, 0.2);
    outline: none;
    padding: 10px 5px;
    font-size: 85%;
    color: #ccc; /* Gris claro */
    width: 65%;
    text-align: center;
    transition: border-color 0.3s ease;
}

    .campo-personalizado::placeholder {
        color: rgba(200, 200, 200, 0.6); /* Gris clarito visible */
    }

    .campo-personalizado:focus {
        border-bottom: 2px solid rgba(173, 255, 47, 0.5);
    }


.navbar {
    position: fixed; /* Hace que la barra permanezca en la parte superior al hacer scroll */
    top: 0;
    left: 0;
    height: 75px;
    width: 100%;
    background-color: rgba(215,83,43,255); /* Fondo oscuro */
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    color: white;
    text-align: center;
    padding: 15px 0;
    font-size: 22px;
    font-weight: bold;
    z-index: 1003; /* Asegura que esté por encima de otros elementos */
    display: flex;
    align-items: center;
    justify-content: space-between;
}

    .navbar.shrink {
        height: 45px; /* Altura reducida */
        transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    }


.navbar-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

/* Imagen del tocadiscos */
.DISCO_PALITO-img {
    position: absolute;
    width: 35px; /* Ajusta el tamaño de la imagen */
    height: auto;
    left: 10px;
    cursor: pointer;
}

@keyframes girar {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Imagen del tocadiscos */
.tocadiscos-img {
    position: relative;
    width: 45px; /* Ajusta el tamaño de la imagen */
    height: auto;
    left: 6%;
    transition: transform 0.5s ease-in-out;
    cursor: pointer;
}

    .tocadiscos-img.girando {
        animation: girar 2s linear infinite;
    }

/* Imagen de los anillos */
.anillos-img {
    width: 105px; /* Ajusta el tamaño de la imagen */
    height: 90px;
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
    .anillos-img.shrink {
        height: 75px; /* Altura reducida */
        width: auto;
        transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    }

.menu-icon {
    font-size: 30px;
    color: white;
    cursor: pointer;
    margin-right: 20px;
    width: 35px;
    height: 30px;
    display: block;

    /*flex-direction: column;*/
    /*justify-content: space-between;*/
    /*z-index: 1000;*/
    /*position: relative;*/
}

    /* Transformación en "X" cuando el menú está abierto */
    .menu-icon.open .bar:nth-child(1) {
        transform: translateY(9.5px) rotate(45deg);
    }

    .menu-icon.open .bar:nth-child(2) {
        opacity: 0;
    }

    .menu-icon.open .bar:nth-child(3) {
        transform: translateY(-9.5px) rotate(-45deg);
    }

.bar {
    width: 30px; /* Ancho de cada barra */
    height: 4px; /* Grosor de la barra */
    background-color: white; /* Asegura que tenga color visible */
    margin: 5px 0; /* Espaciado entre barras */
    transition: 0.3s; /* Para animaciones */
}

/* Estilo del menú lateral */
.sidebar {
    position: fixed;
    top: 60px;
    right: -101%; /* Oculto por defecto */
    width: 67%; /* Ancho del menú */
    height: 80%;
    background-color: #ffeccc;
    transition: right 0.4s ease-in-out; /* Animación */
    z-index: 1000;
    text-align: left;
    border-radius: 25px / 12px;
    border: 4px solid rgba(215, 83, 43, 255);
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}

    .sidebar::before {
        content: "";
        position: absolute;
        top:25px; /* Baja solo la línea superior */
        left: 5px;
        right: 5px;
        bottom: 5px;
        border-radius: 20px; /* Borde interno */
        border: 3px solid rgba(215, 83, 43, 255);
    }

    /* Imagen 1 */
.sidebar-images img {
    position: absolute;
    /*max-width: 100px;*/ /* Ajusta el tamaño */
}

/* Imagen izquierda */
    .sidebar-images img:first-child {
        left: 20px;
        bottom: 5%;
        width: 65%;
        z-index: -10;
    }

/* Imagen derecha */
    .sidebar-images img:last-child {
        right: 20px;
        bottom: 10%;
        width: 30%;
        z-index: -9;
    }

.menu-bottom-line {
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: 40%;
    height: 2px;
    background-color: rgba(215,83,43,255);
    display: flex;
    align-items: center; /* Alinear elementos verticalmente */
}

.label {
    margin-left: 109%; /* Espacio entre la línea y el texto */
    font-size: 18px; /* Ajusta el tamaño del texto */
    color: rgba(215,83,43,255); /* Mismo color que la línea */
    margin-bottom: 15px;
    text-decoration: none;
}

/* Contenido del menú */
.sidebar-content {
    height: 98%; /* Ocupa toda la altura de .sidebar */
    width: 98%; /* Ocupa todo el ancho de .sidebar */
    display: flex;
    z-index: 200;
}

/* Lista del menú */
.sidebar ul {
    /*padding-top: 10px;*/ /* Ajusta según necesites */
    margin-top: -7%;
    display: grid;
    grid-template-rows: repeat(9, 7.9%); /* 7 filas de igual tamaño */
    grid-template-columns: 1fr; /* 1 columna */
    gap: 10px; /* Espacio entre los elementos */
    list-style: none;
    padding: 0;
    /*margin: 0;*/
    width: 98%; /* Asegura que ocupe todo el ancho */
}

    .sidebar ul li {
        position: relative;
        margin: 13px 0;
        padding-bottom: 5px; /* Espaciado opcional entre el texto y la línea */
        /*border-bottom: 2px solid rgba(215,83,43,255);*/ /*Línea roja debajo de cada elemento */
    }


        .sidebar ul li::after {
            content: "";
            display: block;
            width: 80%; /*Ajusta el ancho de la línea */
            height: 2px; /*Grosor de la línea */
            background-color: rgba(215,83,43,255);
            margin-top: 0px; /*Espacio entre el texto y la línea */
            /*left: 50%;*/
            transform: translateX(10%);
        }

        /* Oculta la línea en el primero y último elemento */
        .sidebar ul li:first-child::after,
        .sidebar ul li:last-child::after {
            background-color: transparent;
        }

        .sidebar ul li a {
            font-size: 18px;
            white-space: nowrap;
            color: rgba(215,83,43,255);
            text-decoration: none;
            font-size: 18px;
            display: block;
            padding: 7px;
            width: 100%; /* Hace que el enlace ocupe toda la fila */
            padding: 10px 20px; /* Ajusta el espaciado dentro de los enlaces */
        }

/* Mostrar el menú cuando está activo */
.sidebar.active {
    right: 0;
    transition: right 0.4s ease-in-out; /* Animación */
}

/* Capa oscura al abrir el menú */
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out;
    z-index: 999;
}

    .overlay.active {
        opacity: 1;
        visibility: visible;
    }

.countdown {
    /*    position: absolute;
    top: 72%;
    left: 22%;*/
    position: absolute; /* Permite posicionar la imagen de entrada sobre la imagen de boda */
    top: 50%; /* Centra verticalmente en el contenedor */
    left: 50%; /* Centra horizontalmente en el contenedor */
    transform: translate(-50%, -50%);
    display: grid;
    grid-template-columns: 1fr 1fr; /* Dos columnas del mismo tamaño */
    grid-template-rows: 1fr 1fr; /* Dos filas del mismo tamaño */
    width: 80%; /* Asegura que el countdown se ajuste al contenedor */
    height: 80%; /* Asegura que el countdown se ajuste al contenedor */
    text-align: center;
    gap: 10px; /* Espacio entre las celdas */
    align-items: center; /* Alinea verticalmente */
    justify-items: center; /* Alinea horizontalmente */
    background: transparent; /* Solo para visualizar el espacio */
}

.countdown-text {
    display: inline-block;
    color: rgba(215,83,43,255);
    margin: 0 5px; /* Espacio entre números */
}

/* La columna de los días ocupará las dos filas */
.days {
    position: absolute;
    grid-column: 1; /* Se queda en la primera columna */
    grid-row: 1 / span 2; /* Ocupa dos filas */
    font-size: 30px;
    justify-self: start; /* Alinea el contenido a la izquierda */
    text-align: center;
    left: 7%;
    top: 30%;
}

/* Horas en la parte superior derecha */
.hours {
    position: absolute;
    top: 35%;
    left: 15%;
    grid-column: 2;
    grid-row: 1;
    font-size: 21px;
    justify-self: start; /* Alinea el contenido a la izquierda */
    text-align: center;
}

/* Minutos en la parte inferior derecha */
.minutes {
    position: absolute;
    top: 40%;
    left: 15%;
    grid-column: 1;
    grid-row: 2;
    font-size: 18px;
    justify-self: start; /* Alinea el contenido a la izquierda */
    text-align: center;
}

.seconds {
    position: absolute;
    top: 40%;
    left: 15%;
    grid-column: 2;
    grid-row: 2;
    font-size: 18px;
    justify-self: start; /* Alinea el contenido a la izquierda */
    text-align: center;
}


.swiper {
    position: absolute; /* Posiciona el carrusel sobre la imagen */
    top: 60%; /* Ajusta la posición vertical */
    left: 50%; /* Centra horizontalmente */
    transform: translate(-50%, -50%); /* Centrado perfecto */
    width: 80%; /* Ajusta el ancho del carrusel */
    height: 60%; /* Ajusta la altura del carrusel */
    z-index: 10; /* Asegura que esté por encima de la imagen */
}

.swiper-slide img {
    width: 100%;
    height: 97%;
    object-fit: cover; /* Evita distorsión */
    border-radius: 10px;
}

/* Flechas de navegación */
.swiper-button-next,
.swiper-button-prev {
    color: #d7532b !important; /* Gris claro */
}

/* Paginación (los puntitos) */
.swiper-pagination-bullet {
    background: #d7532b !important;
    position: relative;
    bottom: -8px;
}

/* Paginación activa */
.swiper-pagination-bullet-active {
    background: #d7532b !important; /* Un gris un poco más oscuro para resaltar */
    position: relative;
    bottom: -8px;
}

/* Contador del carrusel */
.swiper-slide {
    color: #d3d3d3 !important; /* Cambia el color del texto si hay numeración */
}

.mySwiper2 {
    position: absolute; /* Posiciona el carrusel sobre la imagen */
    top: 57%; /* Ajusta la posición vertical */
    left: 50%; /* Centra horizontalmente */
    transform: translate(-50%, -50%); /* Centrado perfecto */
    width: 95%; /* Ajusta el ancho del carrusel */
    height: 85%; /* Ajusta la altura del carrusel */
    z-index: 10; /* Asegura que esté por encima de la imagen */
}

    .mySwiper2 .swiper-slide img {
        width: 100%; /*ancho*/
        height: 95%; /*alto*/
        object-fit: cover; /* Evita distorsión */
        border-radius: 10px;
        background-size: contain;
    }

     /* Flechas de navegación */
    .mySwiper2 .swiper-button-next,
    .mySwiper2 .swiper-button-prev {
        color: #f7d56a !important; /* Gris claro */
        top: 45%;
    }

    /* Paginación (los puntitos)  #d7532b */
    .mySwiper2 .swiper-pagination-bullet {
        background: #d7532b !important;
        position: relative;
        bottom: -2%;
    }

/* Paginación activa */
    .mySwiper2 .swiper-pagination-bullet-active {
        background: #d7532b !important; 
        position: relative;
        bottom: -2%;
    }

/* Contador del carrusel */
    .mySwiper2 .swiper-slide {
        color: #d3d3d3 !important; /* Cambia el color del texto si hay numeración */
    }

    /*Dress Code*/
.mySwiper3 {
    position: absolute; /* Posiciona el carrusel sobre la imagen */
    top: 54%; /* Ajusta la posición vertical */
    left: 50%; /* Centra horizontalmente */
    transform: translate(-50%, -50%); /* Centrado perfecto */
    width: 97%; /* Ajusta el ancho del carrusel */
    height: 99%; /* Ajusta la altura del carrusel */
    /*width: 88%; 
    height: 90%; */    
    z-index: 10; /* Asegura que esté por encima de la imagen */
}

    .mySwiper3 .swiper-slide img {
        width: 95%; /*ancho*/
        height: 90%; /*alto*/
        object-fit: cover; /* Evita distorsión */
        border-radius: 10px;
        padding: 3.5%;
    }

    /* Flechas de navegación */
    .mySwiper3 .swiper-button-next,
    .mySwiper3 .swiper-button-prev {
        color: #f7d56a !important; /* Gris claro */
        top: 45%;
    }

    /* Paginación (los puntitos)  #d7532b */
    .mySwiper3 .swiper-pagination-bullet {
        background: #d7532b !important;
        position: relative;
        bottom: -2%;
    }

    /* Paginación activa */
    .mySwiper3 .swiper-pagination-bullet-active {
        background: #d7532b !important;
        position: relative;
        bottom: -2%;
    }

    /* Contador del carrusel */
    .mySwiper3 .swiper-slide {
        color: #d3d3d3 !important; /* Cambia el color del texto si hay numeración */
    }


/* Estilo del fondo del popup */
.popup {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    opacity: 0; /* Oculto por defecto */
    visibility: hidden; /* Evita interacción cuando está oculto */
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    z-index: 1003;
}

/* Contenedor del contenido del popup */
.popup-contenido {
    background: white;
    padding: 2.5%;
    top: 1.5%;
    border-radius: 20px;
    text-align: center;
    width: 85%;
    height: 85%;
    position: absolute;
    transform: scale(0.6); /* Empieza más pequeño */
    transition: transform 0.5s ease-in-out;
}

/* Botón de cerrar */
.cerrar-popup {
    position: absolute;
    top: 1%;
    right: 3%;
    width: 18%;
    height: 21%;
    cursor: pointer;
    background: transparent;
    /*background-color: rgba(215,83,43,255);*/
    z-index: 1004;
}

/* Botón de cerrar */
.cerrar-popup-regalos {
    position: absolute;
    top: 14%;
    right: 3%;
    width: 18%;
    height: 21%;
    cursor: pointer;
    background: transparent;
    /*background-color: rgba(215,83,43,255);*/
    z-index: 1004;
}

/* Mostrar el popup con animación */
.popup.mostrar {
    opacity: 1;
    visibility: visible;
}

    .popup.mostrar .popup-contenido {
        transform: scale(1); /* Hace el popup de su tamaño normal */
    }

    .popup.mostrar .popup-contenido1 {
        background: url('assets/PopUps/COMO-LLEGAR.png') center no-repeat;
        background-size: contain;
        width: 90%;
        height: 95%;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido2 {
        background: url('assets/PopUps/HOTEL-VILLALBA.png') center no-repeat;
        background-size: contain;
        width: 95%;
        height: 80%;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido3 {
        background: url('assets/PopUps/OTROS.png') center no-repeat;
        background-size: contain;
        width: 95%;
        height: 80%;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido4 {
        background: url('assets/PopUps/dress-code-3.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido5 {
        background: url('assets/PopUps/SUGERIR-CANCION.png') center no-repeat;
        background-size: contain;
        width: 90%;
        height: 50%;
        padding: 2.5%;
    }


    .popup.mostrar .popup-contenido7 {
        background: url('assets/PopUps/tips-y-consejos.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido8 {
        background: url('assets/PopUps/direccion1v1.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido9 {
        background: url('assets/PopUps/direccion2v1.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido10 {
        background: url('assets/PopUps/direccion3v1.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido11 {
        background: transparent;
        background-size: contain;
        padding: 2.5%;
    }
    .popup.mostrar .popup-contenido12 {
        background: transparent;
        background-size: contain;
        padding: 2.5%;
    }
    .popup.mostrar .popup-contenido13 {
        background: transparent;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido14 {
        background: url('assets/PopUps/PELICULAS BASE.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
    }

    .popup.mostrar .popup-contenido15 {
        background: url('assets/PopUps/PopUpRegalosv1.png') center no-repeat;
        background-size: contain;
        padding: 2.5%;
        top: 0;
    }

    .popup.mostrar .popup-contenido16 {
        background: url('assets/PopUps/contactanos.png') center no-repeat;
        background-size: contain;
        width: 90%;
        height: 50%;
        padding: 2.5%;
    }

