body{
    width: fit-content;
}

.navbar {
    background-color: #3E3E3F;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}

.navbar-buttons {
    display: flex;
    gap: 20px;
}

.navbar-img-left {
    width: 100px;
    height: auto;
}

.navbar-img-right {
    max-width: 50px;
    height: auto;
}

.btn-primary {
    background-color: #3E3E3F !important;
    color: #fff;
    border-color: #3E3E3F !important;
    font-size: 1.3vw;
    font-family: sans-serif !important;
}

.btn-primary:hover {
    background-color: #3E3E3F !important;
    border-color: #3E3E3F !important;
}

.btn-primary:active,
.btn-primary:focus {
    background-color: #3E3E3F !important;
    border-color: #3E3E3F !important;
}

.dropdown-menu .dropdown-item:hover {
    background-color: #3E3E3F !important;
    border-color: #3E3E3F !important;
    border: none;
    text-shadow: 0 0 5px #ff0000;
}

.dropdown-menu .dropdown-item:hover {
    background-color: rgba(255, 0, 0, 0.274) !important;
    /* Cambia el color de fondo al pasar el cursor sobre las opciones del menú */
}

.dropdown-item:hover {
    color: #f80008 !important;
}

.dropdown-menu {
    background-color: #3E3E3F !important;
    border-color: #f80008 !important;
}

.dropdown-menu .dropdown-item {
    color: #ffffff !important;
    background-color: #3E3E3F !important;
    border-color: #f80008 !important;
}

.dropdown-menu .dropdown-divider {
    border-top: 1px solid #f80008;
}


.active-link {
    position: relative;
    color: red;
}

.active-link:after {
    color: red;
    content: '';
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 100%;
    height: 2px;
    /* Grosor de la línea */
    background-color: red;
    /* Color de la línea */
}

.active-lonk {
    color: red;
}

.vertical-line {
    position: fixed;
    bottom: 0;
    width: 60px;
    display: flex;
    flex-direction: column;
    /* Alinea los elementos verticalmente */
    justify-content: center;
    /* Centra los elementos verticalmente */
    align-items: center;
    /* Centra los elementos horizontalmente */
}

.left-line {
    top: 0;
    left: 0;
}

.right-line {
    top: 0;
    right: 0;
}

.vertical-line hr {
    margin: 5px 0;
    /* Ancho de las líneas */
    height: 60px;
    /* Altura de las líneas */
    border-radius: 6px;
    /* Agrega este estilo para redondear los bordes */
}

.linea1 {
    border: none;
    border-right: 3px solid #BCCCE0;
    /* Agrega una unidad de medida (px) */
}

.linea2 {
    border: none;
    border-left: 3px solid #f80008;
    /* Agrega una unidad de medida (px) */
}

.vertical-line.left-line i {
    color: #BCCCE0;
    /* Color para los íconos de la izquierda */
}

.vertical-line.right-line i {
    color: #ff0008;
    /* Color para los íconos de la derecha */
}


.title-container {
    text-align: center;
    margin-top: 220px;
}

.big-title {
    color: red;
    font-size: 3em;
    font-family: sans-serif !important;
}

.txt1 {
    text-align: center;
    margin-top: 2%;
}

.txts1 {
    color: white;
    font-size: 1.6em;
    font-weight: normal;
    font-family: sans-serif !important;
}

.txt2 {
    text-align: center;
    margin-top: 1.5%;
}

.txts2 {
    color: rgb(255, 255, 255);
    font-size: 1.8em;
    font-weight: bold;
    font-family: sans-serif !important;
}

.txt3 {
    text-align: justify;
    max-width: 58%;
    /* Ancho máximo del contenedor del texto */
    margin: 1.5% auto;
    /* Centra el contenedor horizontalmente */
    font-weight: normal;
}

.txts3 {
    color: white;
    font-size: 1.6em;
    /* Tamaño de la fuente */
    position: relative;
    /* Establece la posición relativa para que sea la referencia para el HR */
    font-weight: normal;
    font-family: sans-serif !important;
}

.txts3:not(:last-child)::after {
    content: '';
    /* Contenido generado */
    position: absolute;
    /* Posicionamiento absoluto */
    top: 1px;
    /* Arriba */
    left: -28px;
    /* Alineado a la izquierda del texto */
    width: 5px;
    /* Ancho del HR vertical */
    height: 160%;
    /* Altura del HR vertical */
    background-color: red;
    /* Color del HR vertical */
}

.txt3 h1:last-child {
    margin-top: 3%;
    /* Ajusta el espacio en la parte superior del último h1 */
}

/*Carrusel*/
.carousel {
    max-width: 57.5%;
    /* Establece el ancho máximo del carrusel */
    margin: 2.5% auto;
    /* Centra el carrusel horizontalmente */
    margin-bottom: 5%;
}

.carousel-item {
    display: flex;
    left: 50%;
    /* Centra el carrusel horizontalmente */
    transform: translateX(-50%);
    /* Ajusta el carrusel para que esté centrado */
}


.carousel-item .col {
    flex: 1;
    margin-top: auto;
    margin-right: 10px;
    /* Ajusta este valor según el espacio deseado */
    max-width: 250px;
    /* Ancho máximo de cada tarjeta */
}

.carousel-item .card {
    margin-left: 10px;
    background-color: red;
    height: 350px;
}

.carousel-item .card img {
    height: 210px;
    /* Altura máxima de la imagen */
    width: 100%;
}

.carousel-item {
    display: none;
}

.carousel-item.active {
    display: block;
}

.carousel-control-prev,
.carousel-control-next {
    width: auto;
    top: 50%;
    height: 0;
    /* Ajusta el ancho automáticamente al contenido */
    padding: 0;
    /* Ajusta el relleno según sea necesario */
}

.carousel-control-prev {
    margin-left: -10%;
}

.carousel-control-next {
    margin-right: -10%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 5em;
    /* Ajusta el ancho del icono según sea necesario */
    height: 4em;
    /* Ajusta la altura del icono según sea necesario */
}

.card-text,
.card-title {
    color: rgb(0, 0, 0);
    margin-top: auto;
    /* Empuja el precio hacia la parte inferior */
    font-weight: bold;
    font-size: 1rem;
    font-family: sans-serif !important;
}

.card-body {
    padding-top: 0;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /* Opcional: asegura que la tarjeta ocupe toda la altura disponible */
}

.card-link {
    text-decoration: none;
    /* Elimina el subrayado del enlace */
    color: inherit;
    /* Hereda el color de texto de su contenedor */
}

.card-link:hover {
    text-decoration: none;
    /* Asegura que no haya subrayado al pasar el cursor */
}

.check-icon {
    display: inline-block;
    /* Muestra el icono de verificación en línea con el precio */
}

.check-icon i {
    color: rgb(0, 255, 0);
    /* Establecer el color verde para el icono de verificación */
    font-size: 1.3em;
    /* Ajustar el tamaño del icono según sea necesario */
    margin-left: 1%;
    /* Agrega un espacio a la izquierda del icono */
    vertical-align: middle;
    /* Alinea verticalmente el icono con el contenido */
}

/* Estilos para el botón del carrito (btn-cart) */
.btn-cart {
    position: relative;
    background-color: transparent;
    color: white;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background-color 0.3s ease;
    font-size: 1.5em;
    font-family: sans-serif !important;
    /* Ajusta el tamaño del icono según sea necesario */
}

.btn-cart:hover {
    background-color: transparent;
}

/* Estilos para el icono dentro del botón del carrito */
.btn-cart i {
    vertical-align: middle;
}

/* Estilos para el contador flotante (cart-badge) */
.cart-badge {
    position: absolute;
    top: -10px;
    right: -10px;
    display: none;
    color: white;
    font-size: 0.8em;
    padding: 0.3em 0.6em;
    border-radius: 50%;
    background-color: red;
    border: 1px solid white;
    z-index: 1;
    font-family: sans-serif !important;
}

.card-link img {
    pointer-events: none;
}

/* Mostrar el contador solo cuando hay íconos activos */
.cart-badge.active {
    display: inline-block;
}

/* Estilos para el input numérico */
.product-quantity {
    width: 84px;
    /* Ajusta el ancho del input numérico según sea necesario */
}

/* Estilos para alinear verticalmente el contenido de las celdas <td> */
table tbody tr td {
    vertical-align: middle;
}

.total-price {
    color: black;
}

.header-title {
    color: black;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.total-price {
    margin: 0 auto;
}

.remove-product {
    cursor: pointer;
    color: red;
}


/*ESTRELLAS*/

.stars {
    margin-top: 5px;
}

.stars i {
    color: #ddd;
    cursor: pointer;
}

.stars i.active {
    color: yellow;
}

.container-fluid {
    padding: 0 !important;
}