.img_logo{
    width: 2em;
    height: 2em;
}

.img_roadmap{
    width: 2em;
    height: 2em;
}

.c_h1{
    text-align: center;
    padding: 0.2em;
    font-family: 'Courier New', Courier, monospace;
    background: #1b263b;
    border-radius: 1em;
    margin: 0;
}

.c_text{
    color: #ffffff;
}

.bg-nav{
    background: #ffffff;   
}

h4{
    text-align: center;
    padding: 1em;
    font-family: 'Courier New', Courier, monospace;
    background: #ffecf0;
    border-radius: 1em;
}

/* Pantalla de carga */
#loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff; 
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    flex-direction: column;
}

#loader img {
    width: 320px;
    animation: pulse 2s ease-in-out infinite, rotateFlowers 6s linear infinite;
}

/* Texto animado debajo del logo */
#loader p {
    margin-top: 15px;
    font-size: 18px;
    font-family: 'Courier New', Courier, monospace;
    color: #c2185b;
    letter-spacing: 2px;
    animation: fadeText 2s ease-in-out infinite alternate;
}

/* Animación de "latido" */
@keyframes pulse {
    0%, 100% { transform: scale(1); opacity: 0.7; }
    50% { transform: scale(1.1); opacity: 1; }
}

/* Rotación suave */
@keyframes rotateFlowers {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Texto parpadeante */
@keyframes fadeText {
    0% { opacity: 0.3; }
    100% { opacity: 1; }
}

/* Ocultar loader */
.hidden {
    opacity: 0;
    visibility: hidden;
    transition: opacity 1s ease, visibility 1s ease;
}

/* Contenido real */
#content {
    display: none;
}


.bodycartas {
font-family: 'Courier New', Courier, monospace;
display: flex;
justify-content: center;
margin: 20px;
}

.carrusel {
width: 95%;
overflow: hidden;
position: relative;
display: flex;
align-items: center;
}
.contenedor-cartas {
display: flex;
transition: transform 0.6s ease;
align-items: center;
cursor: grab;
}
.carta {
flex: 0 0 100px;
height: 140px;
background: #e289df54;
border-radius: 10px;
margin: 0 7.5px;
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
font-size: 18px;
transition: all 0.6s ease;
user-select: none;
}
.carta.activa {
flex: 0 0 160px;
height: 220px;
background: #f7bbf5;
color: rgba(174, 124, 124, 0.882);
font-size: 24px;
z-index: 10;
box-shadow: 0 4px 15px rgb(0, 0, 0);
}
button {
background: transparent;
border: none;
color: rgba(0, 0, 0, 0.5);
font-size: 28px;
padding: 5px 10px;
cursor: pointer;
user-select: none;
transition: color 0.3s ease;
}
button:hover {
color: rgba(0, 0, 0, 0.9);
}
button:focus {
outline: none;
}
.svg {
    width: 1em;
    height: 1em;
}

em {
    font-size: 0.8em;
}

link {
    text-decoration: none;
    color: inherit;
}

.fondocat {
    background: #f3eada2a; 
    border-radius: 1em;
    padding: 0.1em;
    margin: 0;
}

.bordecat {
    border: 2px solid #1b263b;
    border-radius: 1em;
    padding: 0.5em;
    margin: 0;
}

.lineadivider {
    border-top: 2px solid #f3ca84;
    margin: 0;
}

.item_navc {
    margin: 0.2em;
    padding: 0.2em;
    height: 100%;
    width: 100%;
    font-size: 1em;
    font-weight: bold;
    background: #cddbf4;
    border-radius: 1em;
    font-family: 'Courier New', Courier, monospace;
}

.esp {
    margin-top: 1.5em;
}

.colornav {
    font-weight: bold;
    font-family: 'Courier New', Courier, monospace;
}

      /* Hover en imágenes y tarjetas */
      .card {
        transition: transform 0.3s, box-shadow 0.3s;
        cursor: pointer;
        padding-bottom: 0.5em;
        border-radius: 1em;
      }

      .card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 20px rgb(93, 187, 120);
      }

      .card-img-top {
        transition: transform 0.4s ease;
      }
      .card-img-top:hover {
        transform: scale(1.05);
      }

      /* Botón WhatsApp */
    .btn-whatsapp {
    background-color: #25D366;
    border-color: #25D366;
    transition: background-color 0.3s, transform 0.3s;
    }
    .btn-whatsapp:hover {
    background-color: #1ebe57;
    transform: scale(1.05);
    }

    .img-carrusel-vertical {
    max-height: 80vh;
    object-fit: contain;
    background-color: #000;
    }
    .img-carrusel-vertical:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    }

    .card-title {
    font-size: 1.2em;
    font-weight: bold;
    }
    