/*==================================================================================================
Estilos del front page
==================================================================================================*/

/*==================================================================================================
Carrusel del Hero
==================================================================================================*/
.hero {
    width: 100%;
    height: auto;
    overflow: hidden;
    position: relative;
}

.hero-movil{
    display: none;
}

.badge-envio-gratis-movil {
    display: none;
}

.carrusel-imagenes {
    width: calc(100% * 7);
    height: 100%;
    display: flex;
    mask-image: linear-gradient(
        to bottom,
        black 0%,
        black 70%,
        transparent 100%
    );
}

.slider {
    width: calc(100% / 7);
    height: 100%;
}

.slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dots-container {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    position: absolute;
    z-index: 100;
    bottom: 30%;
    left: 50%;
    transform: translateX(-50%);
}
.dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #0000007d;
    cursor: pointer;
    transition: background-color 0.2s;
}
.dot.active {
    background-color: #15ad3c;
}

.btn-left, 
.btn-right {
    content: '';
    display: flex;
    position: absolute;
    top: calc(50% - 4vw);
    width: 1.5rem;
    height: 1.5rem;
    background-color: white;
    padding: 15px;
    cursor: pointer;
    user-select: none;
    background-position: center;
    background-size: contain;
    transition: var(--tiempo--transiciones);
}

.icon-arrow-left,
.icon-arrow-right {
    width: 1.5rem;
    height: 1.5rem;
}

.btn-left:hover, 
.btn-right:hover {
    box-shadow: var(--shadow--natural);
    transform: scale(1.1);
}

.btn-left {
    left: 0;
    padding-left: 20px;
    border-radius: 0 50% 50% 0;
}

.btn-right {
    right: 0;
    padding-right: 20px;
    border-radius: 50% 0 0 50%;
}

@media(max-width: 800px) {
    .hero {
        display: none;
    }
    .hero-movil {
        width: 100%;
        height: fit-content;
        margin: 10px 0;
        display: flex;
        gap: 10px;
        overflow-x: scroll;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-marker-group: after;
    }
    .hero-movil::scroll-marker-group {
        display: flex;
        justify-content: center;
        gap: .5rem;
    }
    .hero-movil::-webkit-scrollbar{
        display: none;
    }
    .slider-movil {
        scroll-snap-align: start;
        flex: 0 0 24rem;
        height: fit-content;
    }
    .slider-movil::scroll-marker {
        content: '';
        display: flex;
        height: .5rem;
        width: .5rem;
        background-color: var(--color--text_secondary);
        border-radius: 50%;
    }
    .slider-movil::scroll-marker:target-current{
        background-color: var(--color--primary);
    }
    .slider-movil img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        padding: 0 20px;
    }
    .badge-envio-gratis-movil {
        display: flex;
        flex-direction: row;
        justify-self: center;
        width: 95%;
        background-color: white;
        border-radius: 5px;
        box-shadow: var(--shadow--natural);
        justify-content: center;
        align-items: center;
        gap: 5px;
        padding: 4px 0;
        margin: 20px 0px 10px 0px;;
    }
    .badge-movil-p1 {
        font-size: var(--tamaño--secundario);
        color: var(--color--primary);
    }
}

@media(max-width: 500px) {
    .hero-movil {
        padding-top: 10px;
        width: 100%;
        margin: 0px;
    }
    .slider-movil {
        flex: 0 0 90%;
    }
    .slider-movil img {
        padding: 0px 5%;
    }
    .slider-movil::scroll-marker {
        height: .25rem;
        width: .25rem;
    }
    .badge-envio-gratis-movil {
        width: 90%;
    }
}

/*==================================================================================================
Seccion categorias version movil
==================================================================================================*/
.categorias-populares {
    display: none;
    gap: 5px;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
}
.categorias-populares::-webkit-scrollbar {
    display: none;
}
.categoria-item {
    scroll-snap-align: start;
    flex: 0 0 4.75rem;
    height: auto;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.categoria-item:first-child {
    padding-left: 5%;
}
.categoria-item:last-child {
    padding-right: 5%;
}
.categoria-item  .categoria-text {
    font-size: .7rem;
    color: var(--color--text_secondary);
    font-weight: 400;
    text-align: center;
}
@media(max-width: 800px) {
    .categorias-populares {
        display: flex;
    }
}
/*==================================================================================================
Features
==================================================================================================*/

.features {
    margin-top: min(-50px, -7vw);
    display: flex;
    justify-content: center;
    position: relative;
}

.features-content {
    width: var(--tamano-contenedores);
    display: grid;
    grid-template-columns: repeat(auto-fit, 1fr);
    column-gap: 20px;
}
.feature {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: 1/5;
    border-radius: var(--border-contenedores);
    background-color: white;
    padding: min(1.5vw, 20px);
    box-shadow: var(--shadow--natural);
    place-items: center;
    gap: 10px;
}

.feature h3, .feature p {
    text-align: center;
    text-wrap: balance;
}

.feature h3 {
    font-size: clamp(0.8rem, 1vw, var(--tamano--principal));
}

.feature p {
    font-size: clamp(0.625rem, 1vw, var(--tamaño--secundario));
}

.feature span {
    width: min(50px, 4vw);
    height: min(50px, 4vw);
}
.feature .btn span {
    height: var(--tamano--principal) !important;
}
.feature .icon-shop {
    width: var(--tamano--principal) !important;
}
.features-movil {
    display: none;
}

@media(max-width: 800px) {
    .features {
        display: none;
    }
    .features-movil {
        display: flex;
    }
    .features-content {
        display: flex;
        gap: 10px;
        width: 100%;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding: 10px 0;
    }
    .features-content::-webkit-scrollbar {
        display: none;
    }
    .features-content:first-child {
        padding-left: 5% ;
    }
    .feature {
        display: flex;
        flex: 0 0 10rem;
        background-color: transparent;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        scroll-snap-align: start;
        box-shadow: none;
        padding: 0px;
    }
    .feature-contain {
        display: flex;
        height: 100%;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        scroll-snap-align: start;
        background-color: white;
        padding: 10px;
        box-shadow: var(--shadow--natural);
        border-radius: var(--border-contenedores);
        gap: 10px;
    }
    .feature-contain h3, .feature-contain p {
        text-align: center;
        text-wrap: balance;
    }

    .feature-contain h3 {
        font-size: clamp(0.8rem, 1vw, var(--tamano--principal));
    }

    .feature-contain p {
        font-size: clamp(0.625rem, 1vw, var(--tamaño--secundario));
        line-height: 1.2;
    }

    .feature-contain span {
        width: min(50px, 4vw);
        height: min(50px, 4vw);
    }
}

@media(max-width: 500px) {
    .feature span {
        width: 40px;
        height: 40px;
    }
}

/*==================================================================================================
Par de mini banner 1
==================================================================================================*/

.minibanners {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}

.contenedor-minibaner {
    width: var(--tamano-contenedores);
    display: inherit;
    gap: 20px;
}

.minibanner {
    border-radius: var(--border-contenedores);
    box-shadow: var(--shadow--natural);
    width: 100%;
    display: flex;
    height: 150px;
    justify-content: space-between;
    text-decoration: none;
}

.minibanner:first-child {
    background-color: black;
    color: white;
}

.minibanner:last-child {
    background-color: var(--color--primary);
    color: white;
}

.minibanner .banner-texto {
    padding: 20px;
    display: flex;
    flex-direction: column;
}

.banner-texto h2, .banner-texto .link {
    font-size: .625rem;
    text-transform: uppercase;
    font-weight: 400;
}

.banner-texto .link {
    margin-top: auto !important;
}

.banner-texto p {
    font-size: 1.125rem;
    text-transform: uppercase;
    font-weight: 500;
    color: white;
    line-height: 1;
}

.minibanner img {
    width: 45%;
    height: auto;
    object-fit: cover;
    border-radius: 0 10px 10px 0;
}

@media(max-width: 800px) {
    .contenedor-minibaner {
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 10px;
    }
    .minibanners {
        margin: 0px 5%;
    }
    .contenedor-minibaner .banner-texto p {
        font-size: 1rem;
        margin-top: 10px;
    }
    .minibanner img {
        width: 30%;
    }
}
@media(max-width: 500px) {
    .minibanner img {
        width: 40%;
    }
}
/*==================================================================================================
Video
==================================================================================================*/
.section-video {
    display: flex;
    width: var(--tamano-contenedores);
    margin-bottom: 40px;
    background-image: url(../img/Gráfica\ de\ Apoyo\ 2.webp);
    background-position: center center;
    background-size: cover;
    height: auto;
    align-self: center;
    overflow: hidden;
    justify-self: center;
    position: relative;
    align-items: center;
    border-radius: 10px;
    padding: 20px;
    box-sizing: border-box;
}

.section-video::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.contenedor-video {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    width: 100%;
    z-index: 2;

    .contenedor-video-1 {
        display: flex;  
        width: 25%;
        height: 100%;
        gap: 30px;
        flex-direction: column;
        padding-left: 40px;

        .logos-h2 {
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: flex-start;
            font-size: 50px;
            color: white;
            gap: 10px;

            img {
                height: 50px;
            }
        }

        p {
            color: white;
        }
        a {
            width: fit-content;
        }
        a:hover {
            background-color: #ccedd4;
        }
        .icon-shop, .icon-arrow-right {
            width: 16px;
            height: 16px;
        }
    }
    
    /* === VIDEO CONTAINER === */
    .hero-video-container {
        display: flex;
        width: 50%;
        height: auto;
        align-self: center;
        overflow: hidden;
        justify-self: center;
        position: relative;
        background: #000;
        align-items: center;
        border-radius: 10px;
        cursor: pointer;
        
        video {
            width: 100%;
            display: block;
        }
    }
}

/* === BOTÓN DE CONTROL DE SONIDO === */
.video-sound-toggle {
    position: absolute;
    top: 15px;
    right: 15px;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
    color: #fff;
}

.video-sound-toggle:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: scale(1.1);
}

.video-sound-toggle svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

/* Responsive */
@media (max-width: 768px) {
    .contenedor-video {
        .contenedor-video-1 {
            width: 45%;
            padding-left: 0px;
            gap: 10px;
        }
    }
    .video-sound-toggle {
        width: 38px;
        height: 38px;
        top: 10px;
        right: 10px;
    }
    .video-sound-toggle svg {
        width: 18px;
        height: 18px;
    }
}

@media (max-width: 480px) {
    .section-video {
        margin-bottom: 0px;
    }
    .contenedor-video {
        flex-direction: column;
        .contenedor-video-1 {
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 5px;
            .logos-h2 { 
                font-size: 30px;
                img {
                    height: 30px;
                }
            }
            p { 
                text-align: center;
            }
        }
        .hero-video-container { 
            width: 100%; 
        }
    }
    .video-sound-toggle {
        width: 34px;
        height: 34px;
        top: 8px;
        right: 8px;
    }
    .video-sound-toggle svg {
        width: 16px;
        height: 16px;
    }
}

/* Estado de video en pantalla completa móvil */
.hero-video-container.fullscreen-mobile {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 99999;
    border-radius: 0;
    background: #000;
}

.hero-video-container.fullscreen-mobile video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Responsive */
@media (max-width: 768px) {
    .video-sound-toggle {
        width: 38px;
        height: 38px;
        top: 10px;
        right: 10px;
    }
    .video-sound-toggle svg {
        width: 18px;
        height: 18px;
    }
    .video-close-fullscreen {
        width: 38px;
        height: 38px;
        top: 10px;
        left: 10px;
        font-size: 18px;
    }
}

@media (max-width: 480px) {
    .video-sound-toggle {
        width: 34px;
        height: 34px;
        top: 8px;
        right: 8px;
    }
    .video-sound-toggle svg {
        width: 16px;
        height: 16px;
    }
    .video-close-fullscreen {
        width: 34px;
        height: 34px;
        top: 8px;
        left: 8px;
        font-size: 16px;
    }
}
/* === SPINNER DE CARGA DEL VIDEO === */
.video-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.7);
    z-index: 5;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    pointer-events: none;
}

.video-loader.hidden {
    opacity: 0;
    visibility: hidden;
}

/* SPINNER QUE SÍ GIRA - Con !important para forzar */
.loader-spinner {
    width: 50px;
    height: 50px;
    border: 1px solid transparent;
    border-top: 1px solid var(--color--primary, #15ad3c);
    border-right: 1px solid var(--color--primary, #15ad3c);
    border-radius: 50%;
    animation: spin 0.9s linear infinite !important;
    display: block !important;
}

.video-loader span {
    color: #fff;
    font-size: 14px;
    margin-top: 15px;
    font-family: var(--font-family, 'Inter', sans-serif);
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Cuando el video está en pantalla completa móvil, el loader se oculta */
.hero-video-container.fullscreen-mobile .video-loader {
    display: none !important;
}

/* Responsive */
@media (max-width: 768px) {
    .loader-spinner {
        width: 40px;
        height: 40px;
    }
    .video-loader span {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .loader-spinner {
        width: 32px;
        height: 32px;
        border-width: 3px;
    }
    .video-loader span {
        font-size: 11px;
        margin-top: 10px;
    }
}

/*==================================================================================================
Features 2
==================================================================================================*/

.feature-disfruta {
    display: flex;
    justify-content: center;
    margin: 40px 0;
    height: fit-content;
}
.contenedor-feature-disfruta {
    width: var(--tamano-contenedores);
    display: flex;
    border-radius: var(--border-contenedores);
    box-shadow: var(--shadow--natural);
    flex-direction: column;
}
.disfruta-top {
    display: flex;
    align-items: center;
    padding: 20px 20px 10px 20px;
    background-color: var(--color--secondary);
    gap: 10px;
    border-radius: var(--border-contenedores) var(--border-contenedores) 0 0;
}
.disfruta-top a {
    margin-left: auto;
    background-color: transparent;
}
.disfruta-top .principal {
    color: white;
    background-color: transparent;
    padding: 5px 20px 5px 20px;
    background-image: linear-gradient(270deg, var(--color--primary) 0%, var(--color--tertiary) 100%);
    border-radius: 20px 20px 20px 0px;
}
.disfruta-top .secundario {
    font-weight: 500;
}
.disfruta-bottom {
    display: flex;
    background-color: white;
    padding: 10px 20px 20px 20px;
    gap: 20px;
    height: fit-content;
    border-radius: 0 0 var(--border-contenedores) var(--border-contenedores);
}
.disfruta-bottom .solar, .disfruta-bottom .torvan, .disfruta-bottom .envio {
    width: 100%;
    height: 300px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.disfruta-bottom .solar {
    background-image: url(../img/Recurso\ 63.webp);
    /*filter: brightness(0.8);*/
}
.disfruta-bottom .torvan {
    background-image: url(../img/royal-enfield-5919885_1280.webp);
}
.disfruta-bottom .envio {
    background-image: url(../img/Recurso\ 65.webp);
    /*filter: brightness(0.8);*/
}
.disfruta-bottom .solar .contenido, .disfruta-bottom .torvan .contenido, .disfruta-bottom .envio .contenido {
    display: flex;
    height: 50%;
    box-sizing: border-box;
    padding: 15px;
    gap: 15px;
    justify-content: space-between;
    align-items: flex-end;
    background-image: linear-gradient(180deg, #00000000 0%, #000000 100%) !important;
    border-radius: 0 0 var(--border-contenedores) var(--border-contenedores);
}
.sako, .torvan-icon , .sdexpres {
    background-color: white;
    border-radius: 10px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 50px;
    width: 80px;
    height: 80px;
}
.sako {
    background-image: url(../img/Sako.svg);
}
.torvan-icon {
    background-image: url(../img/Torvan.svg);
}
.sdexpres {
    background-image: url(../img/sdexpress.svg);
    background-size: 70px;
}
.disfruta-bottom .contenido .text {
    width: 75%;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 10px;
    gap: 10px;
}
.disfruta-bottom .contenido .text p {
    color: inherit;
}
.movil { display: none; }

@media(max-width: 800px) {
    .feature-disfruta {
        margin: 10px 0;
    }
    .disfruta-bottom {
        flex-direction: column;
    }
    .disfruta-bottom .solar .contenido, .disfruta-bottom .torvan .contenido, .disfruta-bottom .envio .contenido {
        display: flex;
        height: 80%;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    .disfruta-bottom .contenido .text {
        align-items: center;
    }
    .minibanner-2 img {
        width: 30%; 
    }
    .grid-categorias .categorias-contenedor {
        gap: 0px !important;
    }
    
}
@media(max-width: 500px) {
    .disfruta-bottom .contenido .text p,
    .disfruta-bottom .contenido .text h3 {
        text-align: center;
    }
    .feature-disfruta {
        margin: 10px 0;
    }
    .desktop { display: none; }
    .movil { display: flex; font-size: .75rem;}
}

/*==================================================================================================
Mini banner tiendas
==================================================================================================*/

.minibanners-3 {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}

.contenedor-minibaner-3 {
    width: var(--tamano-contenedores);
    display: inherit;
    gap: 20px;
}

.minibanner-3 {
    position: relative;
    border-radius: var(--border-contenedores);
    box-shadow: var(--shadow--natural);
    width: 100%;
    display: flex;
    height: fit-content;
    justify-content: space-between;
    text-decoration: none;
}

.minibanner-3:first-child {
    background-color: white;
    color: black;
}

.minibanner-3 .banner-texto {
    padding: 50px;
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 20px;
}
.minibanner-3 .banner-texto .btn {
    width: 160px;
}

.minibanner-3 .banner-texto h2, .banner-texto .link {
    font-size: 1.5rem;
    text-transform: uppercase;
    font-weight: 500;
}

.minibanner-3 .banner-texto .link {
    margin-top: auto;
}

.minibanner-3 .banner-texto p {
    font-size: 1.125rem;
    text-transform: uppercase;
    font-weight: 400;
    color: black;
    line-height: 1;
    width: 80%;
}

.minibanner-3  img {
    position: absolute;
    bottom: 0;
    right: 20px;
    width: 300px;
    height: auto;
    object-fit: cover;
    border-radius: 0 10px 10px 0;
}
@media(max-width: 1025px) {
    .minibanner-3 img {
        right: 20px;
    }
    .minibanner-3 .banner-texto {
        width: 50%;
    }
}

@media(max-width: 800px) {
    .contenedor-minibaner-3 {
        flex-wrap: wrap;
        gap: 10px;
    }
    .minibanner-3 .banner-texto {
        padding: 20px;
        width: 60%;
    }
    .minibanner-3 .banner-texto h2, .minibanner-3 .banner-texto p{
        font-size: 1rem;
    }
    .minibanners-3 {
        margin: 10px 5%;
    }
    .minibanner-3 img {
        width: 30%;
    }
}
@media(max-width: 500px) {
    .minibanner-3 img {
        right: 10px;
        width: 55%;
    }
    .minibanner-3 .banner-texto .btn {
        width: 160px;
        z-index: 10;
    }
    .minibanners-3 {
        margin: 10px 5%;
    }
    .minibanner-3 .banner-texto p {
        font-size: .8rem;
        width: 70%;
    }
    .minibanner-3 .banner-texto {
        gap: 5px;
        width: 55%;
    }
}
@media(max-width: 321px) {
    .minibanner-3 .banner-texto {
        gap: 5px;
        width: 70%;
    }
}

/*==================================================================================================
Par de mini banner 3
==================================================================================================*/

.minibanners-2 {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}

.contenedor-minibaner-2 {
    width: var(--tamano-contenedores);
    display: inherit;
    gap: 20px;
}

.minibanner-2 {
    border-radius: var(--border-contenedores);
    box-shadow: var(--shadow--natural);
    width: 100%;
    display: flex;
    height: 250px;
    justify-content: space-between;
    text-decoration: none;
}

.minibanner-2:first-child, .minibanner-2:last-child {
    background-color: white;
    color: black;
}

.minibanner-2 .banner-texto {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 20px;
}

.minibanner-2 .banner-texto h2, .banner-texto .link {
    font-size: .625rem;
    text-transform: uppercase;
    font-weight: 400;
}

.minibanner-2 .banner-texto .link {
    margin-top: auto;
}

.minibanner-2 .banner-texto p {
    font-size: 1.125rem;
    text-transform: uppercase;
    font-weight: 400;
    color: black;
    line-height: 1;
}

.minibanner-2  img {
    width: 45%;
    height: auto;
    object-fit: cover;
    border-radius: 0 10px 10px 0;
}

@media(max-width: 800px) {
    .contenedor-minibaner-2 {
        flex-wrap: wrap;
        gap: 10px;
    }
    .minibanners-2 {
        margin: 10px 5%;
    }
    .minibanner-2 {
        height: 200px;
    }
    .minibanner-2 img {
        width: 30%;
    }
}
@media(max-width: 500px) {
    .minibanners-2 {
        margin: 10px 5%;
    }
    .minibanner-2 .banner-texto p {
        font-size: .8rem;
    }
    .minibanner-2 img {
        width: 55%;
    }
    .minibanner-2 .banner-texto {
        gap: 10px;
    }
}

/*==================================================================================================
Categorias
==================================================================================================*/

.grid-categorias {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}
.grid-categorias .categorias-contenedor {
    width: var(--tamano-contenedores);
    display: inherit;
    gap: 20px;
    background-color: white;
    border-radius: var(--border-contenedores);
    box-shadow: var(--shadow--natural);
    flex-direction: column;
    padding: 20px;
    box-sizing: border-box;
}
.grid-categorias .categorias-contenedor h2 {
    font-size: 1rem;
    line-height: 1;
    font-weight: 400;
    margin-bottom: 10px;
    text-transform: capitalize;
}
.grid-categorias .categorias-contenedor .categorias {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}
.grid-categorias .categorias-contenedor .categorias h3 {
    font-weight: bold;
}
.grid-categorias .categorias-contenedor .categorias .categoria-item img {
    transition: all var(--tiempo--transiciones) ease;
}
.grid-categorias .categorias-contenedor .categorias .categoria-item img:hover {
    transform: scale(1.05);
}
.categoria-descripcion {
    font-size: 0.625rem;
    opacity: 0.7;
    text-align: center;
}
@media(max-width: 800px) {
    .grid-categorias {
        margin: 10px 0;
    }
    .grid-categorias .categorias-contenedor .categorias {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}
@media(max-width: 500px) {
    .grid-categorias .categorias-contenedor .categorias {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .grid-categorias .categorias-contenedor .categorias .categoria-item img {
        width: 70px;
        height: 70px;
    }
}

/*==================================================================================================
Marcas Colaboradoras
==================================================================================================*/

.colaboraciones {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin: 4a0px;
}