@charset "uft-8";  
/* #cbc4bc baige
#b0bec4 azul
#989887 verde */
body{

    font-family: 'Roboto', sans-serif;
    margin:0;
    padding:0;
    border:0;
    height: 100%;
}
.texto-granate{
    font-weight: 300;
    color: #6f191d;
}
.texto-granate-blod{
    font-weight: 700;
    color: #6f191d;
}
.texto-negro{
    font-weight: 500;
    color: #000000;
}
.texto-blanco{
    color: #ffffff;
    font-weight: 700;
}
/* ******************************* */

/* ------------------------------- */
/* Estilo Menu de navegación fullpage.js y  bootstrap */
/* ------------------------------- */
/* Estilo general del navbar */
.navbar {
    position: fixed;
    display: flex; /* Flexbox para organizar los elementos */
    align-items: center;
    justify-content: space-between; /* Separar lados izquierdo y derecho */
    z-index: 70;
    width: 100%;
    padding: 10px 20px;
    background-color: #f7f7f7; /* Fondo claro */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    height:60px;
}

/* Enlaces del menú */
.nav-link {
    text-decoration: none;
    color: #575e6a;
    text-transform: uppercase;
    font-family: 'Oswald', sans-serif;
    font-size: 15px;
    transition: color 0.3s ease; /* Transición suave */
}

.nav-link.active {
    color: #6f191d;
    border-bottom: 2px solid #6f191d; /* Línea debajo del enlace activo */
}
.nav-link:hover{
    color: #6f191d;
    border-bottom: none; /* Sin línea debajo al pasar el ratón */
}

/* Listas de los lados */
.nav-left, .nav-right {
    display: flex;
    align-items: center;
}

/* Menú izquierdo */
.nav-left ul {
    display: flex; /* Alinear elementos del menú horizontalmente */
    margin-top: 15px;
}

.nav-left ul li {
    list-style: none;
    margin-right: 20px;
}

#menu ul li.active a,
.nav-left ul li:hover a {
    color: #6f191d;
}
#menu ul li.active a{
    border-bottom: 2px solid #6f191d;
}
/* Menú derecho */
.nav-right a {
    color: #575e6a;
    font-size: 15px;
    text-decoration: none;
    position: relative;
    margin-right: 15px;
}

.nav-right .badge {
    position: absolute;
    top: -5px;
    right: -10px;
    font-size: 0.8rem;
}

/* Buscador */
.search-container {
    display: flex;
    align-items: center;
}

#search-input {
    display: none; /* Ocultar por defecto */
    transition: width 0.3s ease; /* Transición para mostrar el campo */
}

#search-icon:hover + #search-input {
    display: block; /* Mostrar al interactuar */
    width: 180px; /* Ancho del campo de búsqueda */
}

#search-icon {
    cursor: pointer;
    color: #575e6a;
    font-size: 15px;
}

#search-icon:hover,
#cart-container:hover,
#login-container:hover {
    color: #6f191d;
}

/* Botón hamburguesa */
.navbar-toggler {
    border: none;
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='https://www.w3.org/2000/svg' fill='%236f191d' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

/* Estilo de los abatares */

.avatar-admin { border: 2px solid #dc3545; }   /* rojo */
.avatar-editor { border: 2px solid #0d6efd; }  /* azul */
.avatar-user { border: 2px solid #198754; }    /* verde */
.avatar-guest { border: 2px solid #6c757d; }   /* gris */


 /* Responsividad nav */ /* pero no funciona*/
 @media (min-width: 1042px) {
    .navbar-expand-lg {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
}
@media (max-width: 1042px) {
    .navbar-nav {
        flex-direction: column;
        align-items: flex-start;
    }

    .nav-right {
        justify-content: flex-start;
        flex-direction: row;
    }

    .nav-item {
        margin: 10px 0;
    }

    .navbar-toggler {
        display: block; /* Mostrar botón hamburguesa */
        background-color:#bbc3ca;
    }
} 

/* ******************* */
/*    SECCIONES    */
/* ******************* */

/* ***************************************** */
/*  Estilos para la sección de bienvenida */
/* ***************************************** */
#section1 h1 {
    text-shadow: 2px 2px 5px rgba(0,0,0,0.7);
}
#section1 p{
    text-shadow: 1.5px 1.5px 3.5px rgba(0,0,0,0.6);
}
#section1 {
    position: relative;
    height: 100vh;
    overflow: hidden;
    background-color: #fff; /* Fondo predeterminado en caso de fallo */
}

/* Estilos del carousel */
.carousel-inner {
    height: 100%; /* Asegura que el contenedor ocupe todo el alto de la sección */
    position: relative;
}

.carousel-item {
    position: absolute; /* Superposición absoluta */
    top: 0;
    left: 0;
    width: 100%;
    /* height: 100%; */
    background-size: cover;
    background-position: center;
    z-index: 1; /* Coloca las imágenes no activas detrás */
}

.carousel-item.active{
    opacity: 1; /* Imagen visible */
}
.carousel-item-next,
.carousel-item-prev {
    opacity: 1; /* Siempre visible durante la transición */
    z-index: 2; /* Las imágenes en transición están al frente */
}



.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: rgba(0,0,0,0.5); /* Controladores semitransparentes */
}

.carousel-control-prev-icon:hover,
.carousel-control-next-icon:hover {
    background-color: rgba(0,0,0,0.8); /* Controladores opacos al pasar el ratón */
}

/* Animación de transición para las imágenes en el carousel */
@keyframes fadeInOut {
    0% {
        opacity: 0.3;
    }
    25% {
        opacity: 1;
    }
    75% {
        opacity: 1;
    }
    100% {
        opacity: 0.3;
    }
}
/* Aplicar la animación a las imágenes en el carousel */
.carousel-item {
    animation: fadeInOut 8s infinite; /* Aplicar la animación a las imágenes */
}

/* Responsividad carousel */
@media (max-width: 1042px) {
    .carousel-item {
        background-size: contain; /* Cambia a 'contain' para asegurar que la imagen completa se vea */
        background-repeat: no-repeat;
    }

    #section1 h1 {
        font-size: 2rem; /* Ajuste para pantallas medianas */
    }

    #section1 p {
        font-size: 1rem; /* Ajuste para pantallas medianas */
    }
}
@media (max-width: 992px) {
    .carousel-item {
        background-size: contain; /* Cambia a 'contain' para asegurar que la imagen completa se vea */
        background-repeat: no-repeat;
    }

    #section1 h1 {
        font-size: 2rem; /* Ajuste para pantallas medianas */
    }

    #section1 p {
        font-size: 1rem; /* Ajuste para pantallas medianas */
    }
}

@media (max-width: 768px) {
    .carousel-item {
        background-size: contain; /* Cambia a 'contain' para asegurar que la imagen completa se vea */
        background-repeat: no-repeat;
    }

    #section1 h1 {
        font-size: 1.8rem; /* Reducir aún más el tamaño del título */
    }

    #section1 p {
        font-size: 0.9rem; /* Reducir el tamaño del texto */
    }

    .btn {
        font-size: 0.9rem; /* Ajustar el botón */
        padding: 0.5rem 1rem;
    }
}

@media (max-width: 576px) {
    #section1 {
        height: 80vh; /* Reducir el tamaño general */
    }

    .carousel-item {
        background-size: contain; /* Asegura que toda la imagen se vea */
        background-repeat: no-repeat;
        background-position: center;
    }

    #section1 h1 {
        font-size: 1.5rem; /* Ajustar el tamaño del título */
    }

    #section1 p {
        font-size: 0.8rem; /* Ajustar el tamaño del texto */
    }

    .btn {
        font-size: 0.8rem; /* Ajustar tamaño del botón */
        padding: 0.4rem 0.8rem;
    }
}

/* *********************************** */
/* Estilos para la sección "Quiénes Somos" */
/* *********************************** */

.quienes-somos-bg {
    background-color: #f5f5f5 !important; /* Color de fondo  #3D5057*/
    color: #333; /* Color del texto */
}

#section2.img-fluid {
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Sombra sutil */
        border-radius: 10px;
        transition: transform 0.3s ease;
        width: 90%;
        height: 100%;
}


/* *********************************** */
/* **** Estilos para la sección de ofertas **** */
/* *********************************** */

/* Sección de Ofertas */
.section-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: #2c3e50;
    text-align: center; /* Centrado para pantallas pequeñas */
}

.section-subtitle {
    font-size: 1.2rem;
    color: #555;
    text-align: center; /* Centrado para pantallas pequeñas */

}

.offer-block {
    background-color: #fff;
    border-radius: 10px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    flex: 1; /* Cada tarjeta ocupa un espacio proporcional */
    min-width: 290px; /* Asegura un tamaño mínimo para tarjetas en pantallas pequeñas */
    display: flex; /* Flexbox dentro de la tarjeta */
    flex-direction: column; /* Alinea el contenido de arriba hacia abajo */
    justify-content: space-between; /* Espacia el contenido uniformemente */
    height: 100%; /* Asegura que todas las tarjetas en una fila tengan la misma altura */
}


.offer-block:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);

}

.offer-icon {
    color: #6f191d; /* Color personalizado */
    text-align: center;
}

.offer-title {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #333;
    text-align: center; 
}

.offer-description {
    font-size: 1rem;
    line-height: 1.6;
    color: #555;
    text-align: justify; /* Alineación más profesional */
    flex-grow: 1; /* Hace que el texto llene el espacio restante */
}
.condiciones-oferta{
    font-size: 16px;
    color: #6f191d;
    text-decoration: none;
    font-weight: bold;
}
.condiciones-oferta:hover{
    color: #8b2326;
}

/* Botón de acción */
/* .btn-primary {
    background-color: #6f191d;
    border-color: #6f191d;
    color: #fff;
} */

/* .btn-primary {
    background-color:#ffffff1a;
    border-color: #8b2326;
    color:#8b2326 ;
    border-radius: 90px;
    padding: 8px 32px;
} */

/* .btn-primary:hover {
    background-color: #8b2326;
    border-color: #8b2326;
} */


/* *********************************** */
/* section footer */
/* *********************************** */

#section5{
    color: #80736B;
    background-color: #f8f8f8 !important;

}
#section5 h2{
    font-size: 22px;
}
#section5 h3{
    font-size: 14px;
}

/* ************** */
