/* Portada TuImpresión: los estilos de escritorio y otras páginas se conservan. */
.inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a img {
    width: auto; height: auto;
}
@media (max-width: 1159px) {
    .inicio-responsive #container #header #test { width: 100%; }
    .inicio-responsive #container #header #header_slider {
        display: flow-root; width: calc(100% - 32px); max-width: 960px;
        height: auto; padding: 0; margin: 20px auto 16px; box-shadow: none;
    }
    .inicio-responsive #container #header #header_slider div.slides {
        float: none; width: 100%; height: auto !important; aspect-ratio: 1160 / 264;
        margin: 0 !important; border-radius: 6px;
    }
    .inicio-responsive #header_slider .camera_effected {
        max-width: 90%; box-sizing: border-box; padding: 3px !important;
        font-size: clamp(10px, 2vw, 18px) !important; line-height: 1.2;
    }
    .inicio-responsive #container #header #homepagead {
        display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;
        width: calc(100% - 32px); max-width: 960px; padding: 0; margin: 16px auto;
    }
    .inicio-responsive #container #header #homepagead > a { min-width: 0; }
    .inicio-responsive #container #header #homepagead img {
        display: block; width: 100%; max-width: 100%; height: auto; margin: 0;
    }
    .inicio-responsive #container #header #header_banner {
        width: calc(100% - 32px); max-width: 960px; height: auto; min-height: 0;
        padding: 12px; margin: 0 auto 20px; border-radius: 6px;
    }
    .inicio-responsive #container #header #header_banner .vertical-align {
        position: static; width: 100%; transform: none;
    }
    .inicio-responsive #header_banner * { max-width: 100% !important; box-sizing: border-box; }
    .inicio-responsive #header_banner img { height: auto !important; vertical-align: middle; }
    .inicio-responsive #header_banner p:empty { display: none; }
    .inicio-responsive #container #content { width: calc(100% - 32px); max-width: 960px; margin: 20px auto 0; padding: 0; }
    .inicio-responsive #container #content #page #inicio,
    .inicio-responsive #container #content #page #inicio #inicio_left {
        float: none; width: 100%; margin: 0; padding: 0;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) {
        float: none; width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria {
        float: none; clear: none; width: auto; min-width: 0; height: auto; margin: 0;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a {
        display: flex; flex-direction: column; align-items: center; float: none;
        width: 100%; height: 100%; min-width: 0; padding: 6px;
        border: 1px solid #e0e8ef; border-radius: 8px; background: #fff;
        background-image: none !important; text-decoration: none;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a img {
        width: 100%; max-width: 100%; height: auto; max-height: none; aspect-ratio: 4 / 3;
        object-fit: contain; margin: 0; border-radius: 5px;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a span.categoria {
        position: static; display: flex; align-items: center; justify-content: center;
        width: 100%; min-height: 38px; height: auto; margin: 4px 0 0 !important;
        color: #2c1a71 !important; font-size: 14px !important; line-height: 1.3; overflow-wrap: anywhere;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a:hover {
        border-color: #a5bfd2; text-decoration: none;
    }
    .inicio-responsive #inicio a:focus-visible { outline: 2px solid #14578b; outline-offset: 3px; }
    .inicio-responsive #container #content #page #inicio #inicio_left #otros_productos {
        float: none; width: 100%; margin: 24px 0 12px;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left #otros_productos label {
        float: none; display: block; width: auto; max-width: 100%; height: auto;
        min-height: 44px; line-height: 1.4; padding: 12px; box-sizing: border-box;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left #otros_productos label::after { display: none; }
    .inicio-responsive #popup_portada {
        min-height: 0; overflow-wrap: anywhere; overscroll-behavior: contain;
    }
    .inicio-responsive #popup_portada .popup_portada_inner { min-height: 0; }
    .inicio-responsive #popup_portada .popup_portada_contenido * { max-width: 100%; box-sizing: border-box; }
    .inicio-responsive #popup_portada .popup_portada_contenido img { height: auto; }
    .inicio-responsive #popup_portada .popup_portada_boton { max-width: 100%; min-height: 44px; }
    .inicio-responsive #popup_portada .popup_portada_close { min-width: 44px; min-height: 44px; }
}

@media (min-width: 600px) and (max-width: 1159px) {
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) {
        grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px;
    }
    .inicio-responsive #container #content #page #inicio #inicio_left :is(#inicio_categorias, #inicio_otros_productos) div.categoria a img { max-height: 170px; }
    .inicio-responsive #container #header #homepagead { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
