body, ul, li, p, a, label, input, div {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px !important;
    font-weight: 300 !important;
}
body {
    scrollbar-color: #f28532 black;
}
.marca { font-weight: 700 !important;}
.h1 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 48px !important;
    font-weight: 200 !important;
}
.h2 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 30px !important;
    font-weight: 300;
}
.h3 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 22px !important;
}

.bg-banner { background-color: aliceblue; }
.bg-footer { background-color: #375253; }
.bg-black { background-color: #28383a !important; }
.bg-light { background-color: #afafaf !important; }
.bg-light1 { background-color: #e7e5e5 !important; }
.text-success { color: #f28532 !important;}
.text-light { color: white !important;}

#nav_top { min-height: 40px;}
#nav_top * { font-size: .9em !important;}
#main_nav a { color: #375253;}
#main_nav a:hover { color: #f28532; }
#main_nav .navbar .nav-icon { margin-right: 20px;}


#carousel-wrapper {
    width: 100%;
    max-width: 100%;  /* Ancho similar al móvil */
    margin: 0 auto;    /* Centrado */
}
#carousel {
    width: 100%;
    max-width: 100%;
}
#carousel .carousel-indicators li {
    list-style-type: none;
    background-color: #c95e0d;
}
#carousel .carousel-control-next i,
#carousel .carousel-control-prev i{
    color: #f28532 !important;
    font-size: 2.8em !important;
}
/* .carousel-item {
    background-color: #000; /* o el color que prefieras 
}*/
.carousel-item img {
    width: 100%;
    height: auto;
    object-fit: contain;
    max-height: 650px;
    
}

#footer a { color: white; }
#footer a:hover { color: #c95e0d; }
#footer ul.footer-link-list li { padding-top: 10px; }
#footer ul.footer-icons li {
    width: 2.6em;
    height: 2.6em;
    line-height: 2.6em;
}
#footer ul.footer-icons li:hover{
    background-color: #cfd6e1;
    transition: .5s;
}
#footer ul.footer-icons li:hover i {
    color: #212934;
    transition: .5s;
}
#footer .border-light { border-color: #a2a6ac !important; }

/*Dispositivos pequenos*/
@media (min-width: 576px) {
    .carousel .h1 { font-size: 1em; }
}

/*Dispositivos medianos*/
@media (min-width: 768px) {
    #main_nav .navbar-nav {max-width: 450px;}
}

/*Dispositivos grandes*/
@media (min-width: 992px) {
    #main_nav .navbar-nav {max-width: 550px;}
    #carousel .carousel-item { min-height: 30rem !important; }
}

/* === TARJETAS DE PRODUCTOS === */

.card.product-card {
    height: 100%;
    border: none;
    transition: all 0.25s ease;
}

.card.product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.12);
}

.product-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: rgba(0,0,0,0.35); /* sombreado suave */
    
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* Contenedor de la imagen */
.product-img-wrapper {
    width: 100%;
    height: 260px;
    overflow: hidden;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.product-img-wrapper:hover .product-overlay {
    opacity: 1;
}

.product-overlay a {
    transform: scale(0.8);
    transition: transform 0.2s ease;
}

.product-img-wrapper:hover .product-overlay a {
    transform: scale(1);
}

/* Imagen */
.product-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

/* Efecto zoom suave al pasar el mouse */
.card.product-card:hover img {
    transform: scale(1.05);
}

/* Mantener el contenido alineado */
.card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.mini-img {
    height: 90px;
    object-fit: cover;
    opacity: 0.7;
    transition: 0.2s;
}

.mini-img:hover {
    opacity: 1;
    transform: scale(1.05);
    border: 2px solid #198754;
}

#product-description li {
    margin-bottom: 6px;
}

.video-card {
    background: #000;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 600px;
}

.video-card video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card-hover {
    transition: all 0.35s ease;
    cursor: pointer;
}

.card-hover:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Efecto en imagen */
.card-hover img {
    transition: transform 0.4s ease;
}

.card-hover:hover img {
    transform: scale(1.05);
}

.card-hover:hover .card-body {
    background: #c95e0d;
}

.card-img-top{
    height: 220px;      /* altura fija para todas */
    object-fit: cover;  /* recorta la imagen sin deformarla */
}