/* =========================================================
   QBIT CATÁLOGO 2.0
   Categorías + listado + cards
   ========================================================= */


/* =========================================================
   FONDO GENERAL DE LISTADO
   ========================================================= */

body .article-list {
    background: #f4f6f8;
}


/* =========================================================
   CABECERA DE CATEGORÍA
   ========================================================= */

body .list-header {
    margin-bottom: 0 !important;
    padding: 20px 0 22px;
    border-bottom: 1px solid #e1e7ed;
    background: #fff !important;
}

body .list-header .container-xxl {
    max-width: 1320px;
}

body .list-header .row {
    margin-left: 0;
    margin-right: 0;
}

body .list-header h1,
body .list-header h1.h2 {
    margin: 10px 0 0;
    color: #153d68;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 650;
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

body .list-header .breadcrumb {
    margin: 0;
    padding: 0;
    background: transparent;
    font-size: 12px;
}

body .list-header .breadcrumb-item,
body .list-header .breadcrumb-item a {
    color: #778491;
    text-decoration: none;
}

body .list-header .breadcrumb-item a:hover {
    color: #0872cf;
}

body .list-header .breadcrumb-item.active {
    color: #48596a;
}


/* =========================================================
   DESCRIPCIÓN DE CATEGORÍA
   ========================================================= */

body .list-header .categoryDescription {
    max-width: 780px;
    margin-top: 10px;
    padding-bottom: 0 !important;
    color: #687684;
    font-size: 13px;
    line-height: 1.55;
}


/* =========================================================
   SUBCATEGORÍAS
   ========================================================= */

body .cat-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
    margin-bottom: 24px !important;
    padding-bottom: 0 !important;
}

body .cat-list-item {
    min-height: 39px;
    padding: 7px 12px;
    border: 1px solid #d9e2ea;
    border-radius: 7px;
    background: #fff;
    color: #42566a;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    transition:
        border-color .12s ease,
        background-color .12s ease,
        color .12s ease;
}

body .cat-list-item:hover {
    border-color: #b8c8d8;
    background: #f7f9fb;
    color: #0872cf;
}

body .cat-list-item-img {
    width: 26px !important;
    height: 26px !important;
    object-fit: contain;
}

body .cat-list-item-name {
    font-size: 12px;
    line-height: 1.2;
}


/* =========================================================
   ÁREA DE PRODUCTOS
   ========================================================= */

body .article-list {
    padding-top: 24px;
}

body .article-list > .container-xxl {
    max-width: 1320px;
}


/* =========================================================
   LOCATOR / ORDENACIÓN
   ========================================================= */

body .article-list .locator {
    min-height: 50px;
    margin-bottom: 18px !important;
    padding: 9px 12px;
    border: 1px solid #dce4ec;
    border-radius: 8px;
    background: #fff;
}

body .article-list .locator select,
body .article-list .locator .form-select,
body .article-list .locator .form-control {
    min-height: 35px;
    border-color: #d3dde6;
    border-radius: 6px;
    color: #405366;
    font-size: 12px;
}

body .article-list .locator .btn {
    border-color: #d3dde6;
    color: #5d6d7d;
}

body .article-list .locator .btn:hover {
    border-color: #aebfce;
    background: #f5f8fa;
    color: #0872cf;
}


/* =========================================================
   GRID
   ========================================================= */

body #productList .grid-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
}

body #productList .grid-row > .col {
    width: auto;
    max-width: none;
    margin: 0 !important;
    padding: 0;
}


/* =========================================================
   PRODUCT CARD
   ========================================================= */

.qbit-product-card {
    position: relative;
    height: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #dce4ec;
    border-radius: 10px;
    background: #fff;
    display: flex;
    flex-direction: column;
    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        transform .15s ease;
}

.qbit-product-card:hover {
    border-color: #bdcbd8;
    box-shadow: 0 7px 20px rgba(29, 61, 94, .08);
    transform: translateY(-2px);
}


/* =========================================================
   IMAGEN
   ========================================================= */

.qbit-product-card-image {
    position: relative;
    height: 230px;
    padding: 18px;
    border-bottom: 1px solid #edf1f4;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qbit-product-card-image > a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qbit-product-card-image img {
    width: 100%;
    height: 100%;
    max-width: 270px;
    object-fit: contain;
}

.qbit-product-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 8px;
    border-radius: 5px;
    background: #eaf5ff;
    color: #0872cf;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}


/* =========================================================
   CUERPO
   ========================================================= */

.qbit-product-card-body {
    min-height: 235px;
    padding: 15px 16px 16px;
    display: flex;
    flex-direction: column;
}


/* =========================================================
   SKU + STOCK
   ========================================================= */

.qbit-product-meta {
    min-height: 18px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.qbit-product-sku {
    min-width: 0;
    overflow: hidden;
    color: #94a0ab;
    font-size: 9.5px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.qbit-product-stock {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 9.5px;
    font-weight: 600;
}

.qbit-product-stock-ok {
    color: #218551;
}

.qbit-product-stock-ok > span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.qbit-product-stock-none {
    color: #8b6870;
}


/* =========================================================
   TÍTULO
   ========================================================= */

.qbit-product-title {
    margin: 0;
    min-height: 52px;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 600;
}

.qbit-product-title a {
    color: #24496d;
    text-decoration: none;
}

.qbit-product-title a:hover {
    color: #0872cf;
}


/* =========================================================
   DESCRIPCIÓN CORTA
   ========================================================= */

.qbit-product-shortdesc {
    margin-top: 7px;
    color: #7c8792;
    font-size: 10.5px;
    line-height: 1.4;

    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}


/* =========================================================
   PRECIO + ACCIONES
   ========================================================= */

.qbit-product-card-bottom {
    margin-top: auto;
    padding-top: 15px;
}

.qbit-product-price {
    margin-bottom: 12px;
}

.qbit-product-price strong {
    display: block;
    color: #113f72;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
}

.qbit-product-price small {
    display: block;
    margin-top: 3px;
    color: #939da6;
    font-size: 9.5px;
}

.qbit-product-old-price {
    display: block;
    margin-bottom: 2px;
    color: #9aa4ad;
    font-size: 10px;
    text-decoration: line-through;
}

.qbit-product-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px;
    gap: 7px;
}

.qbit-product-details {
    min-height: 39px;
    padding: 8px 12px;
    border: 1px solid #c6d4e0;
    border-radius: 6px;
    background: #fff;
    color: #0872cf;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
}

.qbit-product-details:hover {
    border-color: #0872cf;
    background: #f4f9fe;
    color: #0872cf;
    text-decoration: none;
}

.qbit-product-cart-form {
    margin: 0;
}

.qbit-product-cart {
    width: 42px;
    height: 39px;
    padding: 0;
    border: 1px solid #0872cf;
    border-radius: 6px;
    background: #0872cf;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.qbit-product-cart svg {
    width: 19px;
    height: 19px;
}

.qbit-product-cart:hover {
    background: #075fae;
    border-color: #075fae;
}


/* =========================================================
   PAGINACIÓN
   ========================================================= */

body .article-list .pagination {
    margin-top: 22px;
}

body .article-list .page-link {
    color: #42617f;
    border-color: #d7e0e8;
}

body .article-list .page-item.active .page-link {
    border-color: #0872cf;
    background: #0872cf;
    color: #fff;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1199.98px) {

    body #productList .grid-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {

    body #productList .grid-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body .list-header h1,
    body .list-header h1.h2 {
        font-size: 27px;
    }
}

@media (max-width: 575.98px) {

    body #productList .grid-row {
        grid-template-columns: 1fr;
    }

    body .list-header {
        padding-top: 16px;
        padding-bottom: 17px;
    }

    body .list-header h1,
    body .list-header h1.h2 {
        font-size: 24px;
    }

    .qbit-product-card-image {
        height: 245px;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.0A
   Toolbar, filtros, categoría compacta y fabricante
   ========================================================= */


/* =========================================================
   CABECERA DE CATEGORÍA MÁS COMPACTA
   ========================================================= */

body .list-header {
    margin-bottom: 0 !important;
    padding-top: 14px !important;
    padding-bottom: 16px !important;
}

body .list-header .container-xxl {
    max-width: 1320px;
}

body .list-header .breadcrumb {
    margin-bottom: 7px !important;
}

body .list-header h1,
body .list-header h1.h2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-size: 25px !important;
    line-height: 1.15;
}

body .list-header .categoryDescription {
    margin-top: 7px !important;
}


/* =========================================================
   ÁREA DE LISTADO
   ========================================================= */

body .article-list {
    padding-top: 18px !important;
}


/* =========================================================
   NUEVA TOOLBAR QBIT
   ========================================================= */

.qbit-catalog-toolbar {
    width: 100%;
    margin-bottom: 18px;
    border: 1px solid #dce4ec;
    border-radius: 9px;
    background: #fff;
    overflow: visible;
}

.qbit-catalog-toolbar-main {
    min-height: 58px;
    padding: 9px 11px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}


/* =========================================================
   CONTADOR
   ========================================================= */

.qbit-catalog-toolbar-summary {
    min-width: 165px;
    display: flex;
    align-items: center;
    gap: 9px;
}

.qbit-catalog-result-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: 7px;
    background: #edf6ff;
    color: #0872cf;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qbit-catalog-result-icon svg {
    width: 18px;
    height: 18px;
}

.qbit-catalog-toolbar-summary strong,
.qbit-catalog-toolbar-summary small {
    display: block;
}

.qbit-catalog-toolbar-summary strong {
    color: #334d67;
    font-size: 11.5px;
    line-height: 1.2;
    font-weight: 600;
}

.qbit-catalog-toolbar-summary small {
    margin-top: 2px;
    color: #909ba5;
    font-size: 9.5px;
}


/* =========================================================
   CONTROLES DERECHA
   ========================================================= */

.qbit-catalog-toolbar-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}


/* =========================================================
   BOTÓN FILTROS
   ========================================================= */

.qbit-filter-toggle {
    min-height: 37px;
    padding: 7px 10px;
    border: 1px solid #cfd9e3;
    border-radius: 6px;
    background: #fff;
    color: #40566d;
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
}

.qbit-filter-toggle:hover,
.qbit-filter-toggle[aria-expanded="true"] {
    border-color: #9fb5c9;
    background: #f6f9fb;
    color: #0872cf;
}

.qbit-filter-toggle svg {
    width: 17px;
    height: 17px;
}

.qbit-filter-count {
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: #edf6ff;
    color: #0872cf;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
}


/* =========================================================
   NORMALIZAR CONTROLES NATIVOS APEX
   ========================================================= */

.qbit-catalog-native-control {
    display: flex;
    align-items: center;
}

.qbit-catalog-native-control .sort-list {
    margin-left: 0 !important;
}

.qbit-catalog-native-control .form-select,
.qbit-catalog-native-control button,
.qbit-catalog-native-control .btn {
    min-height: 37px;
    border-color: #cfd9e3 !important;
    border-radius: 6px !important;
    background-color: #fff;
    color: #40566d;
    font-size: 10.5px;
}

.qbit-catalog-native-control .sort-list > button {
    min-width: 110px;
    padding-left: 11px;
    padding-right: 28px;
}

.qbit-catalog-native-control .dropdown-toggle.arrow {
    min-width: 122px;
    padding: 7px 10px;
    border: 1px solid #cfd9e3;
}

.qbit-catalog-native-control .btn-group {
    margin: 0 !important;
}

.qbit-catalog-native-control .btn-icon {
    width: 39px;
    height: 37px;
    padding: 8px;
}

.qbit-catalog-native-control .btn-icon.active {
    border-color: #0872cf !important;
    background: #0872cf !important;
    color: #fff !important;
}

.qbit-catalog-native-control .dropdown-menu {
    font-size: 11px;
}


/* =========================================================
   PANEL DE FILTROS
   ========================================================= */

.qbit-filter-panel {
    border-top: 1px solid #e5ebf0;
    background: #fafcfd;
}

.qbit-filter-panel-inner {
    padding: 15px;
}

.qbit-filter-heading {
    margin-bottom: 12px;
}

.qbit-filter-heading strong,
.qbit-filter-heading small {
    display: block;
}

.qbit-filter-heading strong {
    margin-bottom: 2px;
    color: #31506e;
    font-size: 12px;
    font-weight: 600;
}

.qbit-filter-heading small {
    color: #8a959f;
    font-size: 10px;
}


/* =========================================================
   ATRIBUTOS NATIVOS OXID
   ========================================================= */

.qbit-filter-native > form[name="_filterlist"] {
    width: 100%;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.qbit-filter-native > form[name="_filterlist"] .form-select {
    width: 100%;
    min-width: 0;
    height: 38px;
    margin: 0 !important;
    padding-left: 10px;
    padding-right: 28px;
    border: 1px solid #d3dde6;
    border-radius: 6px;
    background-color: #fff;
    color: #45596d;
    font-size: 10.5px;
    text-overflow: ellipsis;
}

.qbit-filter-native > form[name="_filterlist"] .form-select:hover {
    border-color: #aebfce;
}

.qbit-filter-native > form[name="_filterlist"] .form-select:focus {
    border-color: #7fb4e6;
    box-shadow: 0 0 0 2px rgba(8,114,207,.08);
}


/* Reset filter */

.qbit-filter-native #resetFilter {
    margin: 10px 0 0 !important;
}

.qbit-filter-native #resetFilter .btn {
    min-height: 34px;
    margin: 0 !important;
    padding: 6px 11px;
    border: 1px solid #ccd7e1;
    border-radius: 6px;
    background: #fff;
    color: #667686;
    font-size: 10px;
}

.qbit-filter-native #resetFilter .btn:hover {
    border-color: #a9bac9;
    color: #0872cf;
}


/* =========================================================
   FABRICANTE EN PRODUCT CARD
   ========================================================= */

.qbit-product-brand {
    min-height: 15px;
    margin-bottom: 6px;
    overflow: hidden;
    color: #0872cf;
    font-size: 9.5px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .045em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}


/* Cambiar jerarquía: marca antes que SKU */

.qbit-product-meta {
    margin-bottom: 7px;
}

.qbit-product-sku {
    color: #9aa4ae;
}


/* =========================================================
   PRODUCT CARD: PEQUEÑO REFINAMIENTO
   ========================================================= */

.qbit-product-title {
    min-height: 51px;
}

.qbit-product-card-image {
    height: 218px;
}

.qbit-product-card-body {
    min-height: 240px;
}


/* =========================================================
   ELIMINAR ESTILO LOCATOR ANTIGUO
   ========================================================= */

body .article-list .locator {
    min-height: initial;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 991.98px) {

    .qbit-catalog-toolbar-main {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .qbit-catalog-toolbar-controls {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .qbit-filter-native > form[name="_filterlist"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {

    .qbit-catalog-toolbar-main {
        padding: 10px;
    }

    .qbit-catalog-toolbar-summary {
        width: 100%;
    }

    .qbit-catalog-toolbar-controls {
        gap: 6px;
    }

    .qbit-filter-toggle {
        flex: 1 1 auto;
        justify-content: center;
    }

    .qbit-sort-control {
        flex: 1 1 auto;
    }

    .qbit-sort-control .sort-list {
        width: 100%;
    }

    .qbit-sort-control .sort-list > button {
        width: 100%;
    }

    .qbit-perpage-control {
        display: none;
    }

    .qbit-filter-native > form[name="_filterlist"] {
        grid-template-columns: 1fr;
    }

    body .list-header h1,
    body .list-header h1.h2 {
        font-size: 23px !important;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.0A END
   ========================================================= */

/* =========================================================
   QBIT CATÁLOGO 2.0B
   Sidebar de filtros
   ========================================================= */


/* =========================================================
   TOOLBAR
   ========================================================= */

.qbit-catalog-toolbar {
    margin-bottom: 16px;
}

.qbit-filter-mobile-button {
    display: none;
}


/* =========================================================
   SIDEBAR DESKTOP
   ========================================================= */

.qbit-catalog-sidebar {
    position: absolute;
    left: max(
        20px,
        calc((100vw - 1320px) / 2)
    );
    width: 235px;
    z-index: 2;
    border: 1px solid #dce4ec;
    border-radius: 9px;
    background: #fff;
    overflow: hidden;
}

.qbit-catalog-sidebar-header {
    min-height: 59px;
    padding: 13px 14px;
    border-bottom: 1px solid #e5ebf0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.qbit-catalog-sidebar-header strong,
.qbit-catalog-sidebar-header small {
    display: block;
}

.qbit-catalog-sidebar-header strong {
    margin-bottom: 2px;
    color: #294966;
    font-size: 12px;
    font-weight: 650;
}

.qbit-catalog-sidebar-header small {
    color: #909aa4;
    font-size: 9.5px;
}

.qbit-catalog-sidebar-content {
    padding: 12px;
}


/* =========================================================
   HACER ESPACIO AL SIDEBAR
   ========================================================= */

body .article-list #productList {
    margin-left: 255px;
}

body .article-list .locator {
    margin-left: 255px !important;
}


/* =========================================================
   FILTROS NATIVOS EN VERTICAL
   ========================================================= */

.qbit-catalog-sidebar .qbit-filter-native > form[name="_filterlist"] {
    width: 100%;
    display: flex !important;
    flex-direction: column;
    gap: 9px;
}

.qbit-catalog-sidebar .qbit-filter-native select.form-select {
    width: 100%;
    height: 39px;
    margin: 0 !important;
    padding-left: 10px;
    padding-right: 28px;
    border: 1px solid #d5dee6;
    border-radius: 6px;
    background-color: #fff;
    color: #43576b;
    font-size: 10.5px;
}

.qbit-catalog-sidebar .qbit-filter-native select.form-select:hover {
    border-color: #b0bfcc;
}

.qbit-catalog-sidebar .qbit-filter-native select.form-select:focus {
    border-color: #7fb4e6;
    box-shadow: 0 0 0 2px rgba(8,114,207,.08);
}


/* =========================================================
   FILTROS TÉCNICOS OCULTOS
   ========================================================= */

.qbit-filter-technical-hidden {
    display: none !important;
}


/* =========================================================
   RESET
   ========================================================= */

.qbit-catalog-sidebar #resetFilter {
    margin-top: 5px !important;
}

.qbit-catalog-sidebar #resetFilter .btn {
    width: 100%;
    min-height: 36px;
    margin: 0 !important;
    border: 1px solid #cad5df;
    border-radius: 6px;
    background: #fff;
    color: #607285;
    font-size: 10.5px;
}

.qbit-catalog-sidebar #resetFilter .btn:hover {
    border-color: #9eb2c4;
    color: #0872cf;
}


/* =========================================================
   CERRAR / OVERLAY SOLO MÓVIL
   ========================================================= */

.qbit-filter-mobile-close,
.qbit-filter-overlay {
    display: none;
}


/* =========================================================
   AJUSTAR GRID CUANDO HAY SIDEBAR
   ========================================================= */

body .article-list #productList .grid-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 991.98px) {

    .qbit-filter-mobile-button {
        min-height: 37px;
        padding: 7px 11px;
        border: 1px solid #cfd9e3;
        border-radius: 6px;
        background: #fff;
        color: #40566d;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        font-size: 11px;
        font-weight: 600;
    }

    .qbit-filter-mobile-button svg {
        width: 17px;
        height: 17px;
    }

    .qbit-catalog-sidebar {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        width: min(340px, 88vw);
        max-height: 100vh;
        z-index: 1060;
        border: 0;
        border-radius: 0;
        overflow-y: auto;
        transform: translateX(-105%);
        transition: transform .18s ease;
        box-shadow: 8px 0 30px rgba(20,45,70,.14);
    }

    .qbit-catalog-sidebar.is-open {
        transform: translateX(0);
    }

    .qbit-filter-mobile-close {
        width: 34px;
        height: 34px;
        border: 0;
        background: transparent;
        color: #71808e;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        cursor: pointer;
    }

    .qbit-filter-overlay {
        position: fixed;
        inset: 0;
        z-index: 1050;
        background: rgba(14,34,53,.36);
    }

    .qbit-filter-overlay.is-open {
        display: block;
    }

    body.qbit-filter-open {
        overflow: hidden;
    }

    body .article-list #productList,
    body .article-list .locator {
        margin-left: 0 !important;
    }

    body .article-list #productList .grid-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {

    body .article-list #productList .grid-row {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.0B END
   ========================================================= */


/* =========================================================
   QBIT CATÁLOGO 2.0C
   Checkbox filters sobre backend nativo OXID
   ========================================================= */


/* =========================================================
   OCULTAR SELECT NATIVO
   ========================================================= */

.qbit-catalog-sidebar select.qbit-native-filter-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}


/* =========================================================
   GRUPO DE FILTRO
   ========================================================= */

.qbit-checkbox-filter {
    width: 100%;
    padding: 0;
    border-bottom: 1px solid #e8edf2;
}

.qbit-checkbox-filter:last-of-type {
    border-bottom: 0;
}


/* =========================================================
   TÍTULO DEL FILTRO
   ========================================================= */

.qbit-checkbox-filter-heading {
    width: 100%;
    min-height: 41px;
    padding: 9px 2px;
    border: 0;
    background: transparent;
    color: #314d68;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-align: left;
    font-size: 11px;
    font-weight: 650;
    cursor: pointer;
}

.qbit-checkbox-filter-heading:hover {
    color: #0872cf;
}

.qbit-checkbox-filter-arrow {
    color: #8c9aa7;
    font-size: 13px;
    line-height: 1;
}


/* =========================================================
   LISTA DE VALORES
   ========================================================= */

.qbit-checkbox-filter-values {
    max-height: 210px;
    padding: 0 1px 10px;
    overflow-y: auto;
}

.qbit-checkbox-filter.is-collapsed
.qbit-checkbox-filter-values {
    display: none;
}


/* Scroll discreto */

.qbit-checkbox-filter-values::-webkit-scrollbar {
    width: 5px;
}

.qbit-checkbox-filter-values::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #d5dee6;
}


/* =========================================================
   OPCIÓN
   ========================================================= */

.qbit-checkbox-filter-option {
    position: relative;
    min-height: 29px;
    margin: 0;
    padding: 4px 3px;
    color: #536577;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10.5px;
    line-height: 1.3;
    cursor: pointer;
}

.qbit-checkbox-filter-option:hover {
    color: #0872cf;
}


/* Checkbox real oculto visualmente */

.qbit-checkbox-filter-option input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}


/* =========================================================
   CAJA VISUAL
   ========================================================= */

.qbit-checkbox-box {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    border: 1px solid #c5d0da;
    border-radius: 4px;
    background: #fff;
    color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    transition:
        border-color .12s ease,
        background-color .12s ease,
        color .12s ease;
}

.qbit-checkbox-box svg {
    width: 11px;
    height: 11px;
}


/* Checked */

.qbit-checkbox-filter-option
input:checked + .qbit-checkbox-box {
    border-color: #0872cf;
    background: #0872cf;
    color: #fff;
}


/* Focus accesible */

.qbit-checkbox-filter-option
input:focus-visible + .qbit-checkbox-box {
    outline: 2px solid rgba(8,114,207,.22);
    outline-offset: 2px;
}


/* =========================================================
   TEXTO
   ========================================================= */

.qbit-checkbox-filter-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* =========================================================
   LIMPIAR APARIENCIA DEL FORM NATIVO
   ========================================================= */

.qbit-catalog-sidebar
.qbit-filter-native
> form[name="_filterlist"] {
    gap: 0 !important;
}

.qbit-catalog-sidebar-content {
    padding-top: 4px;
    padding-bottom: 9px;
}


/* =========================================================
   RESET FILTER
   ========================================================= */

.qbit-catalog-sidebar #resetFilter {
    margin-top: 12px !important;
    padding: 0 1px;
}


/* =========================================================
   QBIT CATÁLOGO 2.0C END
   ========================================================= */






/* =========================================================
   ========================================================= */




/* =========================================================
   QBIT CATÁLOGO 2.2B START
   GRID Y CARDS CONSOLIDADOS
   ========================================================= */


/* =========================================================
   SIDEBAR
   ========================================================= */

.qbit-catalog-sidebar {
    width: 205px !important;
}


/* =========================================================
   ÁREA REAL DEL PRODUCT LIST
   ========================================================= */

body .article-list #productList {
    width: auto !important;

    max-width: 1040px !important;

    margin-left: 221px !important;
    margin-right: 0 !important;
}


/* =========================================================
   GRID REAL DE APEX/OXID
   ========================================================= */

body .article-list #productList .grid-row,
body #productList .grid-row {

    display: grid !important;

    grid-template-columns:
        repeat(4, minmax(0, 1fr)) !important;

    gap: 10px !important;

    width: 100% !important;

    max-width: 1040px !important;

    margin: 0 !important;

    align-items: stretch !important;
}


/* Wrapper .col REAL generado por list.html.twig */

body .article-list #productList .grid-row > .col,
body #productList .grid-row > .col {

    width: auto !important;

    max-width: none !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    display: flex !important;
}


/* =========================================================
   CARD REAL QBIT
   ========================================================= */

.qbit-product-card {

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    height: 100% !important;

    border-radius: 8px !important;

    overflow: hidden !important;
}


/* =========================================================
   IMAGEN REAL
   ========================================================= */

.qbit-product-card-image {

    height: 158px !important;

    min-height: 158px !important;

    padding: 10px !important;
}

.qbit-product-card-image > a {

    width: 100% !important;
    height: 100% !important;
}

.qbit-product-card-image img {

    width: 100% !important;

    height: 100% !important;

    max-width: 180px !important;

    max-height: 138px !important;

    object-fit: contain !important;
}


/* =========================================================
   CUERPO REAL
   ========================================================= */

.qbit-product-card-body {

    min-height: 222px !important;

    padding: 11px 11px 12px !important;
}


/* =========================================================
   MARCA
   ========================================================= */

.qbit-product-brand {

    min-height: 14px !important;

    margin-bottom: 4px !important;

    font-size: 9px !important;

    line-height: 1.2 !important;

    font-weight: 650 !important;
}


/* =========================================================
   SKU + DISPONIBILIDAD
   ========================================================= */

.qbit-product-meta {

    min-height: 15px !important;

    margin-bottom: 7px !important;

    gap: 6px !important;
}

.qbit-product-sku {

    font-size: 8.5px !important;

    line-height: 1.2 !important;
}

.qbit-product-stock {

    font-size: 8.5px !important;

    line-height: 1.2 !important;
}


/* =========================================================
   TÍTULO
   IMPORTANTE:
   quitamos también la tipografía de heading heredada de APEX
   ========================================================= */

.qbit-product-title {

    min-height: 54px !important;

    margin: 0 !important;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 12.5px !important;

    line-height: 1.35 !important;

    font-weight: 400 !important;

    letter-spacing: 0 !important;

    display: -webkit-box !important;

    -webkit-line-clamp: 3 !important;

    -webkit-box-orient: vertical !important;

    overflow: hidden !important;

    text-overflow: ellipsis !important;
}

.qbit-product-title a {

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: inherit !important;

    line-height: inherit !important;

    font-weight: 400 !important;

    letter-spacing: 0 !important;

    color: #24496d !important;

    text-decoration: none !important;
}

.qbit-product-title a:hover {

    color: #0872cf !important;
}


/* =========================================================
   DESCRIPCIÓN CORTA
   ========================================================= */

.qbit-product-shortdesc {

    margin-top: 5px !important;

    font-size: 9px !important;

    line-height: 1.3 !important;

    display: -webkit-box !important;

    -webkit-line-clamp: 1 !important;

    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
}


/* =========================================================
   PRECIO
   ========================================================= */

.qbit-product-card-bottom {

    margin-top: auto !important;

    padding-top: 10px !important;
}

.qbit-product-price {

    margin-bottom: 9px !important;
}

.qbit-product-price strong {

    display: block !important;

    font-size: 18px !important;

    line-height: 1.1 !important;

    font-weight: 700 !important;

    color: #113f72 !important;
}

.qbit-product-price small {

    margin-top: 2px !important;

    font-size: 8.5px !important;
}


/* =========================================================
   BOTONES
   ========================================================= */

.qbit-product-actions {

    display: grid !important;

    grid-template-columns:
        minmax(0, 1fr) 38px !important;

    gap: 6px !important;
}

.qbit-product-details {

    min-height: 35px !important;

    padding: 6px 8px !important;

    font-size: 9.5px !important;
}

.qbit-product-cart {

    width: 38px !important;

    height: 35px !important;
}


/* =========================================================
   FILTROS
   Mantenemos los actuales
   ========================================================= */

.qbit-catalog-sidebar-header {

    padding-left: 11px !important;
    padding-right: 11px !important;
}

.qbit-checkbox-filter-heading {

    font-size: 10.5px !important;
}

.qbit-checkbox-filter-option {

    font-size: 10px !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */


/* Desktop intermedio */

@media (max-width: 1199.98px) and (min-width: 992px) {

    body .article-list #productList {

        max-width: none !important;
    }

    body .article-list #productList .grid-row,
    body #productList .grid-row {

        max-width: none !important;

        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;
    }
}


/* Tablet */

@media (max-width: 991.98px) {

    body .article-list #productList {

        max-width: none !important;

        margin-left: 0 !important;
    }

    body .article-list #productList .grid-row,
    body #productList .grid-row {

        max-width: none !important;

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    .qbit-catalog-sidebar {

        width: min(330px, 88vw) !important;
    }
}


/* Mobile */

@media (max-width: 575.98px) {

    body .article-list #productList .grid-row,
    body #productList .grid-row {

        grid-template-columns:
            1fr !important;
    }

    .qbit-product-card-image {

        height: 195px !important;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.2B END
   ========================================================= */


/* =========================================================
   QBIT CATÁLOGO 2.2C START
   Sidebar de filtros más ancho
   Cards permanecen exactamente igual
   ========================================================= */


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 1200px) {

    /*
     * Antes: 205px
     * Ahora: 255px
     */

    .qbit-catalog-sidebar {
        width: 255px !important;
    }

    /*
     * 255px sidebar + 16px separación
     */

    body .article-list #productList {
        margin-left: 271px !important;

        /*
         * MUY IMPORTANTE:
         * no modificamos el ancho del grid/productos.
         */
        max-width: 1040px !important;
    }

    body .article-list #productList .grid-row,
    body #productList .grid-row {
        max-width: 1040px !important;

        grid-template-columns:
            repeat(4, minmax(0, 1fr)) !important;
    }
}


/* =========================================================
   CABECERA DEL FILTRO
   ========================================================= */

.qbit-catalog-sidebar-header {
    padding-left: 14px !important;
    padding-right: 14px !important;
}

.qbit-catalog-sidebar-content {
    padding-left: 14px !important;
    padding-right: 14px !important;
}


/* =========================================================
   NOMBRES DE GRUPOS
   ========================================================= */

.qbit-checkbox-filter-heading {
    font-size: 11px !important;

    line-height: 1.3 !important;

    gap: 10px !important;
}


/* =========================================================
   OPCIONES
   ========================================================= */

.qbit-checkbox-filter-option {
    font-size: 10.5px !important;

    line-height: 1.35 !important;

    gap: 8px !important;
}

.qbit-checkbox-filter-label {
    white-space: normal !important;

    overflow: visible !important;

    text-overflow: initial !important;

    overflow-wrap: break-word !important;
}


/* =========================================================
   TABLET
   Mantener comportamiento anterior
   ========================================================= */

@media (max-width: 1199.98px) and (min-width: 992px) {

    .qbit-catalog-sidebar {
        width: 220px !important;
    }

    body .article-list #productList {
        margin-left: 236px !important;

        max-width: none !important;
    }

    body .article-list #productList .grid-row,
    body #productList .grid-row {
        max-width: none !important;

        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;
    }
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 991.98px) {

    body .article-list #productList {
        margin-left: 0 !important;
    }

    .qbit-catalog-sidebar {
        width: min(330px, 88vw) !important;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.2C END
   ========================================================= */


/* =========================================================
   QBIT CATÁLOGO 2.2D START
   Títulos hasta 4 líneas
   ========================================================= */


/* Más espacio para título */

.qbit-product-title {

    min-height: 68px !important;

    -webkit-line-clamp: 4 !important;
}


/* Mantener exactamente el mismo estilo */

.qbit-product-title a {

    font-weight: 400 !important;

    line-height: 1.35 !important;
}


/* Un poco más de altura general para conservar alineación */

.qbit-product-card-body {

    min-height: 240px !important;
}


/* =========================================================
   QBIT CATÁLOGO 2.2D END
   ========================================================= */





/* =========================================================
   QBIT CATÁLOGO 2.4 START
   Vista horizontal propia QBIT
   ========================================================= */


/* =========================================================
   CONTENEDOR LINE VIEW
   ========================================================= */

#productList .line-view {

    display: block !important;

    margin: 0 !important;
}


/* =========================================================
   CARD HORIZONTAL
   ========================================================= */

.qbit-line-card {

    width: 100%;

    min-width: 0;

    min-height: 190px;

    margin-bottom: 12px;

    padding: 0;

    border: 1px solid #dce4ec;

    border-radius: 9px;

    background: #fff;

    display: grid;

    grid-template-columns:
        155px
        minmax(0, 1.2fr)
        minmax(260px, .95fr)
        160px;

    gap: 0;

    overflow: hidden;

    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}

.qbit-line-card:hover {

    border-color: #bdcbd8;

    box-shadow:
        0 5px 17px rgba(29, 61, 94, .06);
}


/* =========================================================
   IMAGEN
   ========================================================= */

.qbit-line-image {

    min-width: 0;

    padding: 18px 14px;

    border-right: 1px solid #edf1f4;

    display: flex;

    align-items: center;

    justify-content: center;
}

.qbit-line-image a {

    width: 100%;

    height: 100%;

    display: flex;

    align-items: center;

    justify-content: center;
}

.qbit-line-image img {

    width: 100%;

    height: 100%;

    max-width: 135px;

    max-height: 145px;

    object-fit: contain;
}


/* =========================================================
   INFORMACIÓN PRINCIPAL
   ========================================================= */

.qbit-line-main {

    min-width: 0;

    padding: 17px 18px;

    display: flex;

    flex-direction: column;
}

.qbit-line-topline {

    min-height: 18px;

    margin-bottom: 4px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;
}


/* Marca */

.qbit-line-brand {

    min-width: 0;

    overflow: hidden;

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;

    line-height: 1.2;

    font-weight: 700;

    letter-spacing: .04em;

    text-transform: uppercase;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* Disponibilidad */

.qbit-line-stock {

    flex: 0 0 auto;

    color: #788694;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9px;

    font-weight: 600;
}

.qbit-line-stock-ok {

    color: #218551;
}

.qbit-line-stock-dot {

    width: 6px;

    height: 6px;

    margin-right: 4px;

    border-radius: 50%;

    background: currentColor;

    display: inline-block;
}


/* SKU */

.qbit-line-sku {

    margin-bottom: 7px;

    color: #97a2ad;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 8.5px;

    line-height: 1.25;
}


/* =========================================================
   TÍTULO
   MISMA FAMILIA VISUAL DEL MOSAICO
   ========================================================= */

.qbit-line-title {

    margin: 0 0 8px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 14px;

    line-height: 1.38;

    font-weight: 400;

    letter-spacing: 0;
}

.qbit-line-title a {

    color: #24496d;

    font-family: inherit;

    font-size: inherit;

    line-height: inherit;

    font-weight: 400;

    text-decoration: none;
}

.qbit-line-title a:hover {

    color: #0872cf;
}


/* =========================================================
   DESCRIPCIÓN
   ========================================================= */

.qbit-line-shortdesc {

    margin-bottom: 9px;

    color: #73808c;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10.5px;

    line-height: 1.4;

    display: -webkit-box;

    overflow: hidden;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;
}


/* =========================================================
   VER PRODUCTO
   ========================================================= */

.qbit-line-details {

    width: fit-content;

    margin-top: auto;

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    line-height: 1.2;

    font-weight: 600;

    text-decoration: none;
}

.qbit-line-details span {

    margin-left: 3px;
}

.qbit-line-details:hover {

    color: #075fae;

    text-decoration: none;
}


/* =========================================================
   ESPECIFICACIONES
   ========================================================= */

.qbit-line-specs {

    min-width: 0;

    padding: 17px 18px;

    border-left: 1px solid #edf1f4;

    background: #fafcfd;
}

.qbit-line-specs-title {

    margin-bottom: 9px;

    color: #344e67;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    line-height: 1.2;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: .045em;
}

.qbit-line-specs-list {

    margin: 0;
}

.qbit-line-spec {

    margin-bottom: 5px;

    display: grid;

    grid-template-columns:
        minmax(95px, .85fr)
        minmax(0, 1.15fr);

    gap: 8px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    line-height: 1.3;
}

.qbit-line-spec:last-child {

    margin-bottom: 0;
}

.qbit-line-spec dt {

    min-width: 0;

    margin: 0;

    color: #607184;

    font-weight: 600;
}

.qbit-line-spec dd {

    min-width: 0;

    margin: 0;

    overflow: hidden;

    color: #344556;

    font-weight: 400;

    text-overflow: ellipsis;

    white-space: nowrap;
}

.qbit-line-no-specs {

    color: #89949e;

    font-size: 10px;
}


/* =========================================================
   COMPRA
   ========================================================= */

.qbit-line-buy {

    min-width: 0;

    padding: 17px 14px;

    border-left: 1px solid #edf1f4;

    display: flex;

    flex-direction: column;

    align-items: stretch;

    justify-content: flex-start;
}

.qbit-line-old-price {

    margin-bottom: 3px;

    color: #99a4ae;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    text-decoration: line-through;
}

.qbit-line-price {

    color: #113f72;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 19px;

    line-height: 1.1;

    font-weight: 700;

    white-space: nowrap;
}

.qbit-line-tax {

    margin-top: 3px;

    color: #939da6;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 8.5px;
}


/* =========================================================
   CARRITO
   ========================================================= */

.qbit-line-cart-form {

    margin-top: 17px;
}

.qbit-line-cart-controls {

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        40px;

    gap: 6px;
}

.qbit-line-amount {

    width: 100%;

    min-width: 0;

    height: 37px;

    padding: 6px 9px;

    border: 1px solid #d1dce5;

    border-radius: 6px;

    background: #fff;

    color: #405366;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    outline: none;
}

.qbit-line-amount:focus {

    border-color: #7fb4e6;

    box-shadow:
        0 0 0 2px rgba(8,114,207,.08);
}

.qbit-line-cart {

    width: 40px;

    height: 37px;

    padding: 0;

    border: 1px solid #0872cf;

    border-radius: 6px;

    background: #0872cf;

    color: #fff;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;
}

.qbit-line-cart svg {

    width: 18px;

    height: 18px;
}

.qbit-line-cart:hover {

    border-color: #075fae;

    background: #075fae;
}

.qbit-line-buy-details {

    min-height: 37px;

    margin-top: 17px;

    padding: 7px 10px;

    border: 1px solid #c5d3df;

    border-radius: 6px;

    color: #0872cf;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 10px;

    font-weight: 600;

    text-decoration: none;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199.98px) {

    .qbit-line-card {

        grid-template-columns:
            130px
            minmax(0, 1fr)
            155px;
    }

    .qbit-line-specs {

        grid-column:
            2 / 3;

        border-left: 0;

        border-top: 1px solid #edf1f4;
    }

    .qbit-line-buy {

        grid-column:
            3;

        grid-row:
            1 / 3;
    }
}


/* =========================================================
   MÓVIL / TABLET PEQUEÑO
   ========================================================= */

@media (max-width: 767.98px) {

    .qbit-line-card {

        grid-template-columns:
            110px
            minmax(0, 1fr);

        min-height: 0;
    }

    .qbit-line-image {

        border-right: 0;

        border-bottom: 1px solid #edf1f4;
    }

    .qbit-line-specs {

        grid-column:
            1 / -1;

        border-left: 0;

        border-top: 1px solid #edf1f4;
    }

    .qbit-line-buy {

        grid-column:
            1 / -1;

        grid-row:
            auto;

        border-left: 0;

        border-top: 1px solid #edf1f4;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.4 END
   ========================================================= */





/* =========================================================
   QBIT CATÁLOGO 2.5A START
   Quick View dentro de la propia card
   ========================================================= */


/* =========================================================
   CARD
   ========================================================= */

.qbit-product-card {

    position: relative !important;
}


/* =========================================================
   OVERLAY
   ========================================================= */

.qbit-card-quickview {

    position: absolute;

    /*
     * Dejamos un pequeño margen para que siga siendo
     * evidente que estamos dentro de la card original.
     */
    inset: 7px;

    z-index: 20;

    padding: 15px;

    border: 1px solid #cad8e4;

    border-radius: 8px;

    background:
        rgba(255, 255, 255, .985);

    box-shadow:
        0 10px 28px rgba(25, 57, 89, .14);

    display: flex;

    flex-direction: column;

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform: translateY(4px);

    transition:
        opacity .14s ease,
        visibility .14s ease,
        transform .14s ease;
}


/* Visible */

.qbit-card-quickview.is-visible {

    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform: translateY(0);
}


/* =========================================================
   CONTENIDO
   ========================================================= */

.qbit-card-quickview-content {

    min-height: 0;

    overflow-y: auto;

    flex: 1 1 auto;
}


/* Scroll discreto */

.qbit-card-quickview-content::-webkit-scrollbar {

    width: 5px;
}

.qbit-card-quickview-content::-webkit-scrollbar-thumb {

    border-radius: 5px;

    background: #d5dee6;
}


/* =========================================================
   TÍTULO
   ========================================================= */

.qbit-card-quickview
.qbit-hover-specs-title {

    margin-bottom: 11px;

    color: #24496d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10.5px;

    line-height: 1.2;

    font-weight: 700;

    letter-spacing: .045em;

    text-transform: uppercase;
}


/* =========================================================
   CARACTERÍSTICAS
   ========================================================= */

.qbit-card-quickview
.qbit-hover-specs-list {

    margin: 0;
}

.qbit-card-quickview
.qbit-hover-spec-row {

    min-height: 31px;

    padding: 6px 0;

    border-bottom:
        1px solid #e8edf2;

    display: grid;

    grid-template-columns:
        minmax(105px, .92fr)
        minmax(0, 1.08fr);

    gap: 8px;

    align-items: start;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    line-height: 1.35;
}

.qbit-card-quickview
.qbit-hover-spec-row:last-child {

    border-bottom: 0;
}


/* Nombre */

.qbit-card-quickview
.qbit-hover-spec-row dt {

    min-width: 0;

    margin: 0;

    color: #627487;

    font-weight: 600;
}


/* Valor */

.qbit-card-quickview
.qbit-hover-spec-row dd {

    min-width: 0;

    margin: 0;

    color: #31465a;

    font-weight: 400;

    overflow-wrap: anywhere;
}


/* =========================================================
   VER FICHA COMPLETA
   ========================================================= */

.qbit-card-quickview-link {

    width: 100%;

    min-height: 36px;

    margin-top: 11px;

    padding: 7px 10px;

    border:
        1px solid #c6d4e0;

    border-radius: 6px;

    background: #fff;

    color: #0872cf;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;

    flex: 0 0 auto;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    line-height: 1.2;

    font-weight: 600;

    text-decoration: none;
}

.qbit-card-quickview-link:hover {

    border-color: #0872cf;

    background: #f4f9fe;

    color: #0872cf;

    text-decoration: none;
}


/* =========================================================
   EFECTO MUY SUTIL EN LA CARD
   ========================================================= */

.qbit-product-card.qbit-quickview-open {

    border-color: #9fc4e5 !important;

    box-shadow:
        0 8px 22px rgba(20, 63, 105, .10) !important;
}


/* =========================================================
   TOUCH
   ========================================================= */

@media (hover: none),
(pointer: coarse) {

    .qbit-card-quickview {

        display: none !important;
    }
}


/* =========================================================
   QBIT CATÁLOGO 2.5A END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.0 START
   ========================================================= */


/* =========================================================
   BREADCRUMB GLOBAL QBIT
   ========================================================= */

.breadcrumb {

    margin-bottom: 0 !important;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 11px !important;

    line-height: 1.3 !important;
}

.breadcrumb a {

    color: #68798a !important;

    font-weight: 400 !important;

    text-decoration: none !important;
}

.breadcrumb a:hover {

    color: #0872cf !important;
}

.breadcrumb-item.active {

    max-width: 520px;

    overflow: hidden;

    color: #8b97a2 !important;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* =========================================================
   DETAIL GENERAL
   ========================================================= */

.qbit-detail {

    padding: 22px 0 36px;

    background: #f4f6f8;
}

.qbit-detail .container-xxl {

    max-width: 1320px;
}


/* =========================================================
   TOP
   ========================================================= */

.qbit-detail-grid {

    overflow: hidden;

    border: 1px solid #dce4ec;

    border-radius: 11px;

    background: #fff;

    display: grid;

    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(420px, .88fr);
}


/* =========================================================
   GALERÍA
   ========================================================= */

.qbit-detail-gallery {

    min-height: 545px;

    padding: 25px;

    border-right: 1px solid #edf1f4;

    display: flex;

    align-items: center;

    justify-content: center;
}

.qbit-detail-gallery img {

    max-width: 100%;

    object-fit: contain;
}


/* =========================================================
   INFO
   ========================================================= */

.qbit-detail-info {

    min-width: 0;

    padding: 29px 31px 28px;
}


/* Marca */

.qbit-detail-brand {

    margin-bottom: 8px;

    color: #0872cf;

    display: inline-block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 11px;

    line-height: 1.2;

    font-weight: 700;

    letter-spacing: .045em;

    text-transform: uppercase;

    text-decoration: none;
}


/* Título */

.qbit-detail-title {

    margin: 0 0 10px;

    color: #173f69;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 25px !important;

    line-height: 1.25 !important;

    font-weight: 500 !important;

    letter-spacing: 0 !important;
}


/* Meta */

.qbit-detail-meta {

    margin-bottom: 16px;

    color: #8a97a3;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 12px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;
}

.qbit-detail-stock {

    color: #218551;

    display: inline-flex;

    align-items: center;

    gap: 5px;

    font-weight: 600;
}

.qbit-detail-stock > span {

    width: 6px;

    height: 6px;

    border-radius: 50%;

    background: currentColor;
}


/* =========================================================
   HIGHLIGHTS
   ========================================================= */

.qbit-detail-highlights {

    margin-top: 17px;

    padding-top: 16px;

    border-top: 1px solid #edf1f4;
}

.qbit-detail-section-label {

    margin-bottom: 10px;

    color: #53697e;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;

    font-weight: 700;

    letter-spacing: .045em;

    text-transform: uppercase;
}

.qbit-detail-highlights-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 7px;
}

.qbit-detail-highlight {

    min-width: 0;

    padding: 8px 10px;

    border: 1px solid #e0e7ed;

    border-radius: 6px;

    background: #fafcfd;
}

.qbit-detail-highlight span,
.qbit-detail-highlight strong {

    display: block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.qbit-detail-highlight span {

    margin-bottom: 3px;

    color: #87939e;

    font-size: 8px;
}

.qbit-detail-highlight strong {

    overflow: hidden;

    color: #344d65;

    font-size: 10.5px;

    font-weight: 600;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* =========================================================
   LOGÍSTICA
   ========================================================= */

.qbit-detail-logistics {

    margin-top: 15px;

    display: flex;

    flex-wrap: wrap;

    gap: 7px;
}

.qbit-detail-logistic {

    min-height: 43px;

    padding: 7px 9px;

    border: 1px solid #e0e7ed;

    border-radius: 6px;

    display: flex;

    align-items: center;

    gap: 7px;
}

.qbit-detail-logistic small,
.qbit-detail-logistic strong {

    display: block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.qbit-detail-logistic small {

    color: #8a96a2;

    font-size: 8px;
}

.qbit-detail-logistic strong {

    color: #3d5369;

    font-size: 9.5px;

    font-weight: 600;
}


/* =========================================================
   PRECIO Y COMPRA
   ========================================================= */

.qbit-detail-purchase {

    margin-top: 20px;

    padding-top: 18px;

    border-top: 1px solid #e6ecf1;
}

.qbit-detail-price {

    color: #113f72;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 30px;

    line-height: 1.05;

    font-weight: 700;
}

.qbit-detail-tax {

    margin-top: 3px;

    color: #909ca7;

    font-size: 9px;
}

.qbit-detail-cart {

    margin-top: 14px;

    display: grid;

    grid-template-columns:
        76px
        minmax(0, 1fr);

    gap: 7px;
}

.qbit-detail-amount {

    width: 100%;

    min-width: 0;

    height: 44px;

    padding: 8px 10px;

    border: 1px solid #ced9e3;

    border-radius: 6px;

    font-size: 13px;
}

.qbit-detail-cart-button {

    height: 44px;

    padding: 8px 16px;

    border: 1px solid #0872cf;

    border-radius: 6px;

    background: #0872cf;

    color: #fff;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    font-weight: 600;

    cursor: pointer;
}

.qbit-detail-cart-button svg {

    width: 18px;

    height: 18px;
}

.qbit-detail-cart-button:hover {

    border-color: #075fae;

    background: #075fae;
}


/* =========================================================
   AYUDA QBIT
   ========================================================= */

.qbit-detail-help {

    margin-top: 12px;

    padding: 10px 11px;

    border-radius: 6px;

    background: #edf6ff;

    color: #52687d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;
}

.qbit-detail-help a {

    margin-top: 3px;

    color: #0872cf;

    display: inline-block;

    font-weight: 600;

    text-decoration: none;
}


/* =========================================================
   ESPECIFICACIONES COMPLETAS
   ========================================================= */

.qbit-detail-specifications {

    margin-top: 22px;

    padding: 24px;

    border: 1px solid #dce4ec;

    border-radius: 10px;

    background: #fff;
}

.qbit-detail-section-heading {

    margin-bottom: 18px;
}

.qbit-detail-section-heading > span {

    color: #0872cf;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: .05em;

    text-transform: uppercase;
}

.qbit-detail-section-heading h2 {

    margin: 4px 0;

    color: #24496d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 20px;

    font-weight: 600;
}

.qbit-detail-section-heading p {

    margin: 0;

    color: #82909d;

    font-size: 10px;
}

.qbit-detail-spec-grid {

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    border-top: 1px solid #e5ebf0;

    border-left: 1px solid #e5ebf0;
}

.qbit-detail-spec {

    min-height: 60px;

    padding: 10px 12px;

    border-right: 1px solid #e5ebf0;

    border-bottom: 1px solid #e5ebf0;
}

.qbit-detail-spec span,
.qbit-detail-spec strong {

    display: block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.qbit-detail-spec span {

    margin-bottom: 4px;

    color: #8895a0;

    font-size: 8.5px;
}

.qbit-detail-spec strong {

    color: #334b62;

    font-size: 11px;

    font-weight: 500;
}


/* =========================================================
   OCULTAR EL ACCORDEON DE ESPECIFICACIONES DUPLICADO
   APEX SEGUIRÍA MOSTRÁNDOLO ABAJO.
   ========================================================= */

#detailsMain .details-tabs,
#detailsMain .accordion {

    /*
     * No ocultamos por completo aquí porque puede contener
     * descripción/media además de atributos.
     * Lo rediseñaremos en siguiente fase.
     */
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 991.98px) {

    .qbit-detail-grid {

        grid-template-columns: 1fr;
    }

    .qbit-detail-gallery {

        min-height: 400px;

        border-right: 0;

        border-bottom: 1px solid #edf1f4;
    }

    .qbit-detail-spec-grid {

        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {

    .qbit-detail-info {

        padding: 20px 17px;
    }

    .qbit-detail-title {

        font-size: 21px !important;
    }

    .qbit-detail-highlights-grid,
    .qbit-detail-spec-grid {

        grid-template-columns: 1fr;
    }

    .qbit-detail-price {

        font-size: 26px;
    }
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.0 END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.1B START
   Compactación y legibilidad
   ========================================================= */


/* =========================================================
   BREADCRUMB
   ========================================================= */

body .breadcrumb {

    padding-top: 9px !important;
    padding-bottom: 9px !important;

    font-size: 12px !important;
}

body .breadcrumb-item + .breadcrumb-item::before {

    color: #a3adb6 !important;
}

body .breadcrumb-item.active {

    max-width: 430px !important;

    color: #738292 !important;
}


/* =========================================================
   FICHA PRINCIPAL MÁS COMPACTA
   ========================================================= */

.qbit-detail {

    padding-top: 14px !important;

    padding-bottom: 22px !important;
}

.qbit-detail-grid {

    grid-template-columns:
        minmax(0, 1.08fr)
        minmax(445px, .92fr) !important;
}


/* Galería */

.qbit-detail-gallery {

    min-height: 465px !important;

    padding: 20px !important;
}


/* Información */

.qbit-detail-info {

    padding:
        24px
        30px
        22px !important;
}


/* =========================================================
   MARCA
   ========================================================= */

.qbit-detail-brand {

    margin-bottom: 7px !important;

    font-size: 11px !important;
}


/* =========================================================
   TÍTULO
   ========================================================= */

.qbit-detail-title {

    margin-bottom: 9px !important;

    font-size: 25px !important;

    line-height: 1.25 !important;
}


/* =========================================================
   SKU / DISPONIBILIDAD
   ========================================================= */

.qbit-detail-meta {

    margin-bottom: 13px !important;

    font-size: 10.5px !important;
}

.qbit-detail-stock {

    font-size: 10.5px !important;
}


/* =========================================================
   CARACTERÍSTICAS PRINCIPALES
   ========================================================= */

.qbit-detail-highlights {

    margin-top: 13px !important;

    padding-top: 13px !important;
}

.qbit-detail-section-label {

    margin-bottom: 9px !important;

    font-size: 10.5px !important;
}

.qbit-detail-highlights-grid {

    gap: 6px !important;
}

.qbit-detail-highlight {

    min-height: 49px;

    padding: 8px 10px !important;
}

.qbit-detail-highlight span {

    margin-bottom: 3px !important;

    font-size: 9.5px !important;
}

.qbit-detail-highlight strong {

    font-size: 12px !important;

    font-weight: 500 !important;

    white-space: normal !important;

    overflow: visible !important;

    text-overflow: initial !important;
}


/* =========================================================
   LOGÍSTICA
   ========================================================= */

.qbit-detail-logistics {

    margin-top: 12px !important;
}

.qbit-detail-logistic {

    min-height: 48px !important;

    padding: 7px 10px !important;
}

.qbit-detail-logistic small {

    font-size: 9px !important;
}

.qbit-detail-logistic strong {

    margin-top: 2px;

    font-size: 10.5px !important;
}


/* =========================================================
   PRECIO
   ========================================================= */

.qbit-detail-purchase {

    margin-top: 15px !important;

    padding-top: 15px !important;
}

.qbit-detail-price {

    font-size: 29px !important;
}

.qbit-detail-tax {

    font-size: 10px !important;
}


/* =========================================================
   CARRITO
   ========================================================= */

.qbit-detail-cart {

    margin-top: 12px !important;
}

.qbit-detail-amount,
.qbit-detail-cart-button {

    height: 44px !important;
}

.qbit-detail-cart-button {

    font-size: 12.5px !important;
}


/* =========================================================
   AYUDA
   ========================================================= */

.qbit-detail-help {

    margin-top: 10px !important;

    padding: 9px 11px !important;

    font-size: 10px !important;
}


/* =========================================================
   FICHA TÉCNICA
   ========================================================= */

.qbit-detail-specifications {

    margin-top: 16px !important;

    padding: 20px 22px !important;
}

.qbit-detail-section-heading {

    margin-bottom: 15px !important;
}

.qbit-detail-section-heading > span {

    font-size: 10px !important;
}

.qbit-detail-section-heading h2 {

    font-size: 21px !important;
}

.qbit-detail-section-heading p {

    font-size: 11px !important;
}

.qbit-detail-spec {

    min-height: 57px !important;

    padding: 9px 11px !important;
}

.qbit-detail-spec span {

    font-size: 10px !important;
}

.qbit-detail-spec strong {

    font-size: 12px !important;

    line-height: 1.35 !important;
}


/* =========================================================
   RESEÑAS
   ========================================================= */

.qbit-reviews {

    padding: 0 0 18px;

    background: #f4f6f8;
}

.qbit-reviews .container-xxl {

    max-width: 1320px;
}

.qbit-reviews-card {

    padding: 19px 22px;

    border: 1px solid #dce4ec;

    border-radius: 10px;

    background: #fff;
}

.qbit-reviews-header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;
}

.qbit-reviews-eyebrow {

    color: #0872cf;

    font-size: 9.5px;

    font-weight: 700;

    letter-spacing: .05em;

    text-transform: uppercase;
}

.qbit-reviews h2 {

    margin: 4px 0;

    color: #24496d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 19px;

    font-weight: 600;
}

.qbit-reviews p {

    margin: 0;

    color: #82909d;

    font-size: 11px;
}

.qbit-reviews-action {

    display: flex;

    align-items: center;

    gap: 14px;
}

.qbit-review-button {

    min-height: 36px;

    padding: 7px 11px;

    border: 1px solid #c6d4e0;

    border-radius: 6px;

    color: #0872cf;

    display: inline-flex;

    align-items: center;

    font-size: 10.5px;

    font-weight: 600;

    text-decoration: none;
}

.qbit-review-form {

    margin-top: 17px;
}

.qbit-review-save {

    min-height: 38px;

    margin-top: 9px;

    padding: 7px 15px;

    border: 0;

    border-radius: 6px;

    background: #0872cf;

    color: #fff;
}

.qbit-review-list {

    margin-top: 17px;
}

.qbit-review {

    padding: 12px 0;

    border-top: 1px solid #e6ecf1;
}


/* =========================================================
   FABRICANTE
   ========================================================= */

.qbit-detail-manufacturer {

    padding-bottom: 18px;

    background: #f4f6f8;
}

.qbit-detail-manufacturer .container-xxl {

    max-width: 1320px;
}

.qbit-detail-manufacturer-card {

    padding: 18px 21px;

    border: 1px solid #dce4ec;

    border-radius: 9px;

    background: #fff;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 25px;
}

.qbit-detail-manufacturer-label {

    color: #0872cf;

    font-size: 9px;

    font-weight: 700;

    text-transform: uppercase;
}

.qbit-detail-manufacturer-card h2 {

    margin: 3px 0 5px;

    color: #24496d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 18px;

    font-weight: 600;
}

.qbit-detail-manufacturer-card p {

    max-width: 820px;

    margin: 0;

    color: #71808e;

    font-size: 11px;

    line-height: 1.45;
}

.qbit-detail-manufacturer-link {

    flex: 0 0 auto;

    color: #0872cf;

    font-size: 10.5px;

    font-weight: 600;

    text-decoration: none;
}


/* =========================================================
   RELACIONADOS
   ========================================================= */

.qbit-details-related {

    padding-top: 7px;

    background: #f4f6f8;
}

.qbit-details-related .row-spacer {

    margin-top: 0 !important;

    margin-bottom: 0 !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 991.98px) {

    .qbit-detail-gallery {

        min-height: 360px !important;
    }

    .qbit-reviews-header,
    .qbit-detail-manufacturer-card {

        align-items: flex-start;

        flex-direction: column;
    }
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.1B END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.2 START
   3 columnas + disponibilidad por almacén
   ========================================================= */


/* =========================================================
   BREADCRUMB
   ALINEAR CON CONTENIDO DE 1320 PX
   ========================================================= */

body .breadcrumb {

    width: calc(100% - 32px) !important;

    max-width: 1320px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 0 !important;

    padding-right: 0 !important;
}


/* =========================================================
   CONTENEDOR PRINCIPAL
   ========================================================= */

.qbit-detail {

    padding-top: 14px !important;

    padding-bottom: 18px !important;
}


/* =========================================================
   TRES COLUMNAS
   ========================================================= */

.qbit-detail-grid {

    grid-template-columns:
        minmax(300px, .86fr)
        minmax(420px, 1.15fr)
        minmax(260px, .72fr)
        !important;

    align-items: stretch !important;
}


/* =========================================================
   GALERÍA MÁS COMPACTA
   ========================================================= */

.qbit-detail-gallery {

    min-height: 430px !important;

    padding: 20px 18px !important;
}

.qbit-detail-gallery img {

    max-height: 370px !important;
}


/* =========================================================
   INFORMACIÓN CENTRAL
   ========================================================= */

.qbit-detail-info {

    padding:
        23px
        27px
        21px
        !important;
}


/* Título */

.qbit-detail-title {

    font-size: 23px !important;

    line-height: 1.27 !important;

    font-weight: 500 !important;
}


/* Características */

.qbit-detail-highlights-grid {

    grid-template-columns:
        repeat(2, minmax(0, 1fr))
        !important;
}

.qbit-detail-highlight {

    min-height: 50px !important;
}

.qbit-detail-highlight span {

    display: block !important;

    color: #82909d !important;

    font-size: 9.5px !important;
}

.qbit-detail-highlight strong {

    margin-top: 3px;

    display: block !important;

    color: #314b64 !important;

    font-size: 12px !important;

    font-weight: 500 !important;
}


/* =========================================================
   COLUMNA ALMACENES
   ========================================================= */

.qbit-detail-warehouses {

    min-width: 0;

    padding:
        23px
        19px
        20px;

    border-left:
        1px solid #e5ebf0;

    background:
        #fafcfd;
}


/* Encabezado */

.qbit-detail-warehouse-head {

    margin-bottom: 14px;

    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 10px;
}

.qbit-detail-warehouse-head > div > span {

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;

    font-weight: 700;

    letter-spacing: .05em;

    text-transform: uppercase;
}

.qbit-detail-warehouse-head h2 {

    margin: 4px 0 0;

    color: #24496d;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 16px;

    line-height: 1.25;

    font-weight: 600;
}

.qbit-detail-warehouse-count {

    flex: 0 0 auto;

    padding: 4px 6px;

    border-radius: 10px;

    background: #eaf4fe;

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 8.5px;

    font-weight: 600;
}


/* =========================================================
   FILAS DE ALMACÉN
   ========================================================= */

.qbit-detail-warehouse-list {

    border-top:
        1px solid #e2e9ef;
}

.qbit-detail-warehouse-row {

    min-height: 39px;

    padding: 8px 1px;

    border-bottom:
        1px solid #e2e9ef;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.qbit-detail-warehouse-name {

    min-width: 0;

    color: #53687b;

    display: flex;

    align-items: center;

    gap: 7px;

    font-size: 10.5px;
}

.qbit-detail-warehouse-name i {

    width: 6px;

    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #27a061;
}

.qbit-detail-warehouse-row strong {

    flex: 0 0 auto;

    color: #274763;

    font-size: 10.5px;

    font-weight: 600;
}


/* =========================================================
   VER TODOS
   ========================================================= */

.qbit-detail-warehouse-more {

    margin-top: 8px;
}

.qbit-detail-warehouse-more summary {

    min-height: 35px;

    padding: 7px 9px;

    border: 1px solid #ccd9e4;

    border-radius: 6px;

    background: #fff;

    color: #0872cf;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 8px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10px;

    font-weight: 600;

    cursor: pointer;

    list-style: none;
}

.qbit-detail-warehouse-more summary::-webkit-details-marker {

    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-icon {

    transform: rotate(45deg);
}

.qbit-detail-warehouse-more-list {

    max-height: 220px;

    overflow-y: auto;

    padding-top: 5px;
}


/* =========================================================
   TOTAL
   ========================================================= */

.qbit-detail-warehouse-total {

    margin-top: 13px;

    padding: 10px;

    border-radius: 6px;

    background: #edf6ff;
}

.qbit-detail-warehouse-total span,
.qbit-detail-warehouse-total strong {

    display: block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.qbit-detail-warehouse-total span {

    color: #788897;

    font-size: 9px;
}

.qbit-detail-warehouse-total strong {

    margin-top: 2px;

    color: #214b73;

    font-size: 13px;

    font-weight: 600;
}


/* =========================================================
   ACTUALIZACIÓN / NOTA
   ========================================================= */

.qbit-detail-warehouse-update {

    margin-top: 9px;

    color: #929ca5;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 8.5px;
}

.qbit-detail-warehouse-note {

    margin:
        10px
        0
        0;

    color: #758493;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9px;

    line-height: 1.4;
}


/* Sin datos */

.qbit-detail-warehouse-empty {

    padding: 11px;

    border: 1px solid #e0e7ed;

    border-radius: 6px;

    background: #fff;

    display: flex;

    align-items: flex-start;

    gap: 8px;
}

.qbit-detail-warehouse-empty-dot {

    width: 7px;

    height: 7px;

    margin-top: 4px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: #95a4b0;
}

.qbit-detail-warehouse-empty strong,
.qbit-detail-warehouse-empty small {

    display: block;
}

.qbit-detail-warehouse-empty strong {

    color: #455d72;

    font-size: 10.5px;
}

.qbit-detail-warehouse-empty small {

    margin-top: 3px;

    color: #84919d;

    font-size: 9px;

    line-height: 1.35;
}


/* =========================================================
   FICHA TÉCNICA
   NOMBRE + VALOR MÁS CLAROS
   ========================================================= */

.qbit-detail-spec {

    min-height: 63px !important;
}

.qbit-detail-spec span {

    margin-bottom: 5px !important;

    color: #7b8996 !important;

    display: block !important;

    font-size: 10px !important;

    font-weight: 400 !important;
}

.qbit-detail-spec strong {

    color: #294660 !important;

    display: block !important;

    font-size: 12px !important;

    font-weight: 500 !important;
}


/* =========================================================
   DESKTOP MEDIANO
   ========================================================= */

@media (max-width: 1199.98px) {

    .qbit-detail-grid {

        grid-template-columns:
            minmax(300px, .9fr)
            minmax(410px, 1.1fr)
            !important;
    }

    .qbit-detail-warehouses {

        grid-column:
            1 / -1;

        border-top:
            1px solid #e5ebf0;

        border-left: 0;

        display: grid;

        grid-template-columns:
            minmax(220px, .8fr)
            minmax(0, 1.2fr);

        gap: 20px;
    }

    .qbit-detail-warehouse-head {

        margin-bottom: 0;
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991.98px) {

    .qbit-detail-grid {

        grid-template-columns:
            1fr !important;
    }

    .qbit-detail-gallery {

        min-height: 350px !important;
    }

    .qbit-detail-warehouses {

        grid-column: auto;

        display: block;
    }

    .qbit-detail-warehouse-head {

        margin-bottom: 14px;
    }
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.2 END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.2A START
   Tipografía legible definitiva de ficha
   ========================================================= */


/* =========================================================
   BREADCRUMB
   ========================================================= */

body .breadcrumb {

    font-size: 13px !important;

    line-height: 1.4 !important;
}

body .breadcrumb a,
body .breadcrumb-item.active {

    font-size: 13px !important;
}


/* =========================================================
   MARCA
   ========================================================= */

.qbit-detail-brand {

    font-size: 12px !important;
}


/* =========================================================
   TÍTULO
   Ya tiene buena escala: solo pequeña corrección
   ========================================================= */

.qbit-detail-title {

    font-size: 24px !important;

    line-height: 1.28 !important;
}


/* =========================================================
   SKU / DISPONIBILIDAD SUPERIOR
   ========================================================= */

.qbit-detail-meta {

    font-size: 11px !important;
}

.qbit-detail-meta > span {

    font-size: 11px !important;
}

.qbit-detail-stock {

    font-size: 11.5px !important;
}


/* =========================================================
   CARACTERÍSTICAS PRINCIPALES
   ========================================================= */

.qbit-detail-section-label {

    font-size: 11px !important;
}

.qbit-detail-highlight span {

    font-size: 11px !important;

    line-height: 1.25 !important;
}

.qbit-detail-highlight strong {

    font-size: 12.5px !important;

    line-height: 1.35 !important;
}


/* =========================================================
   PESO / DIMENSIONES / DISPONIBILIDAD
   ========================================================= */

.qbit-detail-logistic small {

    font-size: 10.5px !important;
}

.qbit-detail-logistic strong {

    font-size: 11.5px !important;

    line-height: 1.3 !important;
}


/* =========================================================
   PRECIO
   ========================================================= */

.qbit-detail-price {

    font-size: 30px !important;
}

.qbit-detail-tax {

    font-size: 11px !important;
}


/* =========================================================
   CARRITO
   ========================================================= */

.qbit-detail-amount {

    font-size: 14px !important;
}

.qbit-detail-cart-button {

    font-size: 13px !important;
}


/* =========================================================
   AYUDA WHATSAPP
   ========================================================= */

.qbit-detail-help {

    font-size: 11px !important;

    line-height: 1.4 !important;
}

.qbit-detail-help a {

    font-size: 11px !important;
}


/* =========================================================
   ALMACENES
   ========================================================= */

.qbit-detail-warehouse-head > div > span {

    font-size: 10.5px !important;
}

.qbit-detail-warehouse-head h2 {

    font-size: 17px !important;
}

.qbit-detail-warehouse-count {

    font-size: 10px !important;
}


/* Código/nombre del almacén */

.qbit-detail-warehouse-name {

    font-size: 12px !important;

    line-height: 1.35 !important;
}


/* Existencia */

.qbit-detail-warehouse-row strong {

    font-size: 12px !important;
}


/* Ver todos */

.qbit-detail-warehouse-more summary {

    font-size: 11.5px !important;
}


/* Total */

.qbit-detail-warehouse-total span {

    font-size: 10.5px !important;
}

.qbit-detail-warehouse-total strong {

    font-size: 14px !important;
}


/* Actualización */

.qbit-detail-warehouse-update {

    font-size: 10px !important;
}


/* Nota */

.qbit-detail-warehouse-note {

    font-size: 10.5px !important;

    line-height: 1.45 !important;
}


/* =========================================================
   FICHA TÉCNICA
   ========================================================= */

.qbit-detail-section-heading > span {

    font-size: 10.5px !important;
}

.qbit-detail-section-heading h2 {

    font-size: 21px !important;
}

.qbit-detail-section-heading p {

    font-size: 11.5px !important;
}

.qbit-detail-spec span {

    font-size: 11px !important;

    line-height: 1.3 !important;
}

.qbit-detail-spec strong {

    font-size: 12.5px !important;

    line-height: 1.4 !important;
}


/* =========================================================
   OPINIONES
   ========================================================= */

.qbit-reviews-eyebrow {

    font-size: 10.5px !important;
}

.qbit-reviews h2 {

    font-size: 20px !important;
}

.qbit-reviews p {

    font-size: 11.5px !important;
}

.qbit-review-button {

    font-size: 11.5px !important;
}


/* =========================================================
   FABRICANTE
   ========================================================= */

.qbit-detail-manufacturer-label {

    font-size: 10.5px !important;
}

.qbit-detail-manufacturer-card h2 {

    font-size: 19px !important;
}

.qbit-detail-manufacturer-card p {

    font-size: 11.5px !important;
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.2A END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.2B START
   Confirmación de existencia
   ========================================================= */

.qbit-detail-warehouse-help {

    margin-top: 15px;

    padding: 13px;

    border: 1px solid #d9e5ef;

    border-radius: 8px;

    background: #ffffff;

    display: grid;

    grid-template-columns:
        34px
        minmax(0, 1fr);

    gap: 10px;
}


/* =========================================================
   ICONO
   ========================================================= */

.qbit-detail-warehouse-help-icon {

    width: 34px;

    height: 34px;

    border-radius: 8px;

    background: #edf7ff;

    color: #0872cf;

    display: flex;

    align-items: center;

    justify-content: center;
}

.qbit-detail-warehouse-help-icon svg {

    width: 18px;

    height: 18px;
}


/* =========================================================
   CONTENIDO
   ========================================================= */

.qbit-detail-warehouse-help-content {

    min-width: 0;
}

.qbit-detail-warehouse-help-content > strong {

    color: #284963;

    display: block;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    line-height: 1.3;

    font-weight: 600;
}

.qbit-detail-warehouse-help-content > p {

    margin:
        4px
        0
        9px;

    color: #708191;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10.5px;

    line-height: 1.4;
}


/* =========================================================
   BENEFICIOS
   ========================================================= */

.qbit-detail-warehouse-benefits {

    margin-bottom: 10px;

    display: flex;

    flex-wrap: wrap;

    gap: 5px;
}

.qbit-detail-warehouse-benefits span {

    padding:
        4px
        7px;

    border-radius: 12px;

    background: #f1f5f8;

    color: #607386;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 9.5px;

    line-height: 1.2;

    font-weight: 500;
}


/* =========================================================
   WHATSAPP
   ========================================================= */

.qbit-detail-warehouse-whatsapp {

    width: 100%;

    min-height: 36px;

    padding:
        7px
        9px;

    border: 1px solid #bed1e0;

    border-radius: 6px;

    background: #fff;

    color: #0872cf;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 10.5px;

    line-height: 1.2;

    font-weight: 600;

    text-decoration: none;

    transition:
        border-color .12s ease,
        background-color .12s ease;
}

.qbit-detail-warehouse-whatsapp:hover {

    border-color: #0872cf;

    background: #f4f9fe;

    color: #0872cf;

    text-decoration: none;
}


/* =========================================================
   ACTUALIZACIÓN Y NOTA
   Más discretas debajo de la ayuda
   ========================================================= */

.qbit-detail-warehouse-update {

    margin-top: 12px !important;

    color: #8997a3 !important;

    font-size: 9.5px !important;
}

.qbit-detail-warehouse-note {

    margin-top: 7px !important;

    color: #748493 !important;

    font-size: 10px !important;

    line-height: 1.4 !important;
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.2B END
   ========================================================= */


/* =========================================================
   QBIT PRODUCT DETAIL 3.2C START
   Acordeón almacenes sin cortes
   ========================================================= */


/* =========================================================
   DETAILS
   ========================================================= */

.qbit-detail-warehouse-more {

    margin-top: 10px !important;

    overflow: visible !important;
}


/* =========================================================
   SUMMARY
   ========================================================= */

.qbit-detail-warehouse-more summary {

    position: relative !important;

    z-index: 2 !important;

    min-height: 38px !important;

    margin: 0 !important;

    padding:
        8px
        10px !important;

    border:
        1px solid #bfd1e0 !important;

    border-radius:
        6px !important;

    background:
        #ffffff !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        10px !important;

    cursor:
        pointer !important;

    list-style:
        none !important;
}

.qbit-detail-warehouse-more summary::-webkit-details-marker {

    display: none !important;
}


/* =========================================================
   TEXTO ABIERTO / CERRADO
   ========================================================= */

.qbit-warehouse-summary-text {

    min-width: 0;

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 11.5px;

    line-height: 1.25;

    font-weight: 600;
}

.qbit-warehouse-summary-close {

    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-open {

    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-close {

    display: inline;
}


/* =========================================================
   ICONO
   ========================================================= */

.qbit-warehouse-summary-icon {

    flex: 0 0 auto;

    color: #0872cf;

    font-size: 15px;

    line-height: 1;

    transition:
        transform .15s ease;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-icon {

    transform:
        rotate(45deg);
}


/* =========================================================
   CONTENEDOR EXPANDIDO
   ========================================================= */

.qbit-detail-warehouse-more-list {

    position: relative !important;

    z-index: 1 !important;

    max-height: 280px !important;

    margin-top: 8px !important;

    padding:
        4px
        9px
        6px !important;

    border:
        1px solid #dbe4eb !important;

    border-radius:
        6px !important;

    background:
        #ffffff !important;

    overflow-y:
        auto !important;

    overflow-x:
        hidden !important;
}


/* =========================================================
   FILAS EXPANDIDAS
   ========================================================= */

.qbit-detail-warehouse-more-list
.qbit-detail-warehouse-row {

    min-height: 38px !important;

    padding:
        8px
        1px !important;
}


/* La primera fila ya no queda pegada al summary */

.qbit-detail-warehouse-more-list
.qbit-detail-warehouse-row:first-child {

    margin-top: 0 !important;
}


/* =========================================================
   SCROLL
   ========================================================= */

.qbit-detail-warehouse-more-list::-webkit-scrollbar {

    width: 6px;
}

.qbit-detail-warehouse-more-list::-webkit-scrollbar-thumb {

    border-radius: 6px;

    background: #cbd7e1;
}

.qbit-detail-warehouse-more-list::-webkit-scrollbar-track {

    background: transparent;
}


/* =========================================================
   QBIT PRODUCT DETAIL 3.2C END
   ========================================================= */


/* =========================================================
   QBIT 3.2C1 — corrección rotación summary
   ========================================================= */

.qbit-detail-warehouse-more summary
.qbit-warehouse-summary-text,
.qbit-detail-warehouse-more[open] summary
.qbit-warehouse-summary-text,
.qbit-detail-warehouse-more summary
.qbit-warehouse-summary-open,
.qbit-detail-warehouse-more summary
.qbit-warehouse-summary-close {

    transform: none !important;

    writing-mode: horizontal-tb !important;

    rotate: none !important;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-icon {

    transform: rotate(45deg) !important;
}



/* =========================================================
   QBIT 3.2C2 — icono + / −
   ========================================================= */

.qbit-warehouse-summary-icon,
.qbit-detail-warehouse-more[open]
.qbit-warehouse-summary-icon {

    transform: none !important;

    rotate: none !important;

    width: 18px;

    height: 18px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    color: #0872cf;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 16px;

    line-height: 1;

    font-weight: 600;
}

.qbit-warehouse-icon-close {

    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-icon-open {

    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-warehouse-icon-close {

    display: inline;
}



/* ==========================================================
   QBIT SHIPPING QUOTE
   ========================================================== */

.qbit-shipping-quote {
    margin: 18px 0;
    padding: 18px;
    border: 1px solid #e2e7ec;
    border-radius: 14px;
    background: #fafbfc;
}

.qbit-shipping-quote-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.qbit-shipping-quote-head > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.qbit-shipping-quote-head strong {
    font-size: 16px;
    line-height: 1.25;
}

.qbit-shipping-quote-head span {
    font-size: 13px;
    line-height: 1.4;
    color: #667085;
}

.qbit-shipping-quote-head svg {
    width: 26px;
    height: 26px;
    flex: 0 0 auto;
}

.qbit-shipping-quote-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
}

.qbit-shipping-postal-code {
    width: 100%;
    min-height: 44px;
    padding: 9px 12px;
    border: 1px solid #cfd6dd;
    border-radius: 9px;
    background: #fff;
    font-size: 15px;
}

.qbit-shipping-postal-code:focus {
    outline: 2px solid currentColor;
    outline-offset: 1px;
}

.qbit-shipping-quote-button {
    min-height: 44px;
    padding: 9px 18px;
    border: 0;
    border-radius: 9px;
    font-weight: 600;
    cursor: pointer;
}

.qbit-shipping-quote-button:disabled {
    cursor: wait;
    opacity: .65;
}

.qbit-shipping-quote-status {
    min-height: 20px;
    margin-top: 10px;
    font-size: 13px;
}

.qbit-shipping-quote-status.is-loading {
    color: #667085;
}

.qbit-shipping-quote-status.is-success {
    color: #17643a;
}

.qbit-shipping-quote-status.is-error {
    color: #a12622;
}

.qbit-shipping-quote-results {
    display: grid;
    gap: 8px;
    margin-top: 8px;
}

.qbit-shipping-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 12px;
    border: 1px solid #e3e7eb;
    border-radius: 10px;
    background: #fff;
}

.qbit-shipping-option-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.qbit-shipping-option-info strong {
    font-size: 14px;
}

.qbit-shipping-option-info span {
    font-size: 12px;
    color: #667085;
}

.qbit-shipping-option-total {
    white-space: nowrap;
    font-size: 15px;
}

.qbit-shipping-empty {
    padding: 10px 0 2px;
    font-size: 13px;
    color: #667085;
}

@media (max-width: 575.98px) {
    .qbit-shipping-quote-form {
        grid-template-columns: 1fr;
    }

    .qbit-shipping-quote-button {
        width: 100%;
    }
}


/* ==========================================================
   QBIT SHIPPING STABLE LAYOUT 53M
   ========================================================== */

/*
 * Las tres columnas deben comenzar arriba.
 * Evita que imagen e información se recentren verticalmente
 * cuando la columna logística cambia de altura.
 */
.qbit-detail-grid {
    align-items: start;
}

.qbit-detail-gallery,
.qbit-detail-info,
.qbit-detail-warehouses {
    align-self: start;
}


/* ----------------------------------------------------------
   Cotizador compacto en columna logística
   ---------------------------------------------------------- */

.qbit-detail-warehouses .qbit-shipping-quote-sidebar {
    margin: 14px 0;
    padding: 13px;
    border-radius: 10px;
}

.qbit-detail-warehouses .qbit-shipping-quote-head {
    gap: 8px;
    margin-bottom: 10px;
}

.qbit-detail-warehouses .qbit-shipping-quote-head strong {
    font-size: 13px;
}

.qbit-detail-warehouses .qbit-shipping-quote-head span {
    font-size: 11px;
    line-height: 1.3;
}

.qbit-detail-warehouses .qbit-shipping-quote-head svg {
    width: 20px;
    height: 20px;
}

.qbit-detail-warehouses .qbit-shipping-quote-form {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
}

.qbit-detail-warehouses .qbit-shipping-postal-code {
    min-height: 36px;
    padding: 7px 9px;
    border-radius: 7px;
    font-size: 12px;
}

.qbit-detail-warehouses .qbit-shipping-quote-button {
    min-height: 36px;
    padding: 7px 11px;
    border-radius: 7px;
    font-size: 12px;
}

.qbit-detail-warehouses .qbit-shipping-quote-status {
    min-height: 17px;
    margin-top: 7px;
    font-size: 10px;
    line-height: 1.3;
}

/*
 * Reservamos el espacio aproximado para dos cotizaciones.
 * Así la columna no cambia bruscamente cuando llega AJAX.
 */
.qbit-detail-warehouses .qbit-shipping-quote-results {
    min-height: 0;
    gap: 5px;
    margin-top: 5px;
}

.qbit-detail-warehouses
.qbit-shipping-quote-status.is-success
+ .qbit-shipping-quote-results {
    min-height: 88px;
}

.qbit-detail-warehouses .qbit-shipping-option {
    gap: 8px;
    padding: 7px 8px;
    border-radius: 7px;
}

.qbit-detail-warehouses .qbit-shipping-option-info strong {
    font-size: 11px;
}

.qbit-detail-warehouses .qbit-shipping-option-info span {
    font-size: 9px;
}

.qbit-detail-warehouses .qbit-shipping-option-total {
    font-size: 11px;
}

.qbit-detail-warehouses .qbit-shipping-empty {
    padding: 5px 0 0;
    font-size: 10px;
}


/* ----------------------------------------------------------
   Almacenes extra: desplegable superpuesto.
   Abrirlo NO modifica la altura del grid principal.
   ---------------------------------------------------------- */

.qbit-detail-warehouse-more {
    position: relative;
    z-index: 30;
}

.qbit-detail-warehouse-more-list {
    position: absolute;
    z-index: 50;
    top: calc(100% + 6px);
    left: 0;
    right: 0;

    max-height: 280px;
    overflow-y: auto;

    margin: 0;
    padding: 6px;

    border: 1px solid #dbe3ec;
    border-radius: 10px;
    background: #fff;

    box-shadow:
        0 14px 35px rgba(16, 42, 67, .16);
}

.qbit-detail-warehouse-more:not([open])
.qbit-detail-warehouse-more-list {
    display: none;
}

.qbit-detail-warehouse-more[open]
.qbit-detail-warehouse-more-list {
    display: block;
}


/*
 * Evitar que un contenedor padre recorte el panel flotante.
 */
.qbit-detail-warehouses,
.qbit-detail-warehouse-list {
    overflow: visible;
}


/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media (max-width: 991.98px) {
    .qbit-detail-warehouse-more-list {
        position: static;
        max-height: 240px;
        margin-top: 6px;
        box-shadow: none;
    }
}

@media (max-width: 575.98px) {
    .qbit-detail-warehouses
    .qbit-shipping-quote-form {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .qbit-detail-warehouses
    .qbit-shipping-quote-button {
        width: auto;
    }
}

/* ==========================================================
   QBIT — Shipping quote: origen + ETA
   ========================================================== */

.qbit-shipping-origin {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: baseline;
    column-gap: 6px;
    margin: 8px 0 6px;
    padding: 0;
    background: transparent;
}

.qbit-shipping-origin-label {
    display: inline;
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.25;
    font-weight: 400;
    opacity: 0.72;
}

.qbit-shipping-origin-label::after {
    content: ":";
}

.qbit-shipping-origin-name {
    display: inline;
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.25;
    font-weight: 600;
}

.qbit-shipping-option {
    min-height: 0;
    padding: 8px 10px;
}

.qbit-shipping-option-info {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.qbit-shipping-option-info > strong {
    font-size: 0.78rem;
    line-height: 1.2;
}

.qbit-shipping-option-total {
    align-self: center;
    white-space: nowrap;
    font-size: 0.82rem;
}

.qbit-shipping-option-eta {
    display: block;
    margin-top: 1px;
    font-size: 0.74rem;
    line-height: 1.25;
    font-weight: 400;
    opacity: 0.72;
}

@media (max-width: 575.98px) {
    .qbit-shipping-origin {
        grid-template-columns: 1fr;
        row-gap: 1px;
    }

    .qbit-shipping-origin-label::after {
        content: "";
    }

    .qbit-shipping-origin-name {
        font-size: 0.82rem;
    }

    .qbit-shipping-option {
        padding: 7px 9px;
    }

    .qbit-shipping-option-eta {
        max-width: 180px;
    }
}


/* ==========================================================
   QBIT — Shipping quote integrado a ficha de producto
   ========================================================== */

.qbit-shipping-quote {
    font-family: inherit;
    color: inherit;
}

/*
 * Contenedor principal:
 * mismo lenguaje visual que el resto de las tarjetas QBIT.
 */
[data-qbit-shipping-quote] {
    color: #223b5d;
    font-family: inherit;
    background: #ffffff;
    border-color: #dbe5ef;
    box-shadow: none;
}

/*
 * Título del módulo.
 */
[data-qbit-shipping-quote] h1,
[data-qbit-shipping-quote] h2,
[data-qbit-shipping-quote] h3,
[data-qbit-shipping-quote] h4,
[data-qbit-shipping-quote] h5,
[data-qbit-shipping-quote] strong {
    font-family: inherit;
}

/*
 * Texto descriptivo.
 */
[data-qbit-shipping-quote] p,
[data-qbit-shipping-quote] small {
    color: #667b94;
}

/*
 * Campo CP: apariencia equivalente al resto
 * de controles de la ficha.
 */
[data-qbit-shipping-quote] .qbit-shipping-postal-code {
    color: #223b5d;
    font-family: inherit;
    background: #ffffff;
    border-color: #cad7e4;
    box-shadow: none;
}

[data-qbit-shipping-quote] .qbit-shipping-postal-code:focus {
    border-color: #9eb8d1;
    box-shadow: none;
    outline: none;
}

/*
 * Botón compacto y coherente con QBIT.
 */
[data-qbit-shipping-quote] [data-qbit-shipping-button] {
    font-family: inherit;
    font-weight: 600;
    color: #17395f;
}

/*
 * Estado de resultado.
 */
.qbit-shipping-quote-status {
    font-family: inherit;
    font-size: 0.72rem;
    line-height: 1.25;
}

.qbit-shipping-quote-status.is-success {
    color: #27815d;
}

/*
 * Origen:
 * información secundaria, sin competir con el precio.
 */
.qbit-shipping-origin {
    margin: 9px 0 7px;
    color: #556f8d;
}

.qbit-shipping-origin-label {
    color: #71859b;
    font-size: 0.74rem;
}

.qbit-shipping-origin-name {
    color: #17395f;
    font-size: 0.82rem;
    font-weight: 600;
}

/*
 * Opciones de transporte:
 * menos aspecto de "tarjeta dentro de tarjeta".
 */
.qbit-shipping-option {
    padding: 7px 8px;
    border-color: #dfe8f0;
    border-radius: 7px;
    background: #ffffff;
    box-shadow: none;
}

.qbit-shipping-option + .qbit-shipping-option {
    margin-top: 5px;
}

.qbit-shipping-option-info > strong {
    color: #17395f;
    font-size: 0.75rem;
    font-weight: 600;
}

.qbit-shipping-option-eta {
    color: #71859b;
    font-size: 0.71rem;
    line-height: 1.2;
}

.qbit-shipping-option-total {
    color: #17395f;
    font-size: 0.79rem;
    font-weight: 700;
}

/*
 * En móvil conservar compacidad.
 */
@media (max-width: 575.98px) {
    [data-qbit-shipping-quote] {
        font-size: inherit;
    }

    .qbit-shipping-origin {
        margin: 7px 0 6px;
    }

    .qbit-shipping-option {
        padding: 6px 7px;
    }

    .qbit-shipping-option-total {
        font-size: 0.77rem;
    }
}

/* QBIT FISCAL CHECKOUT — START */

/*
 * Facturación CFDI — Paso 2 checkout
 *
 * Estilo visual QBIT.
 * No modifica comportamiento funcional.
 */

.qbit-fiscal-checkout {
    margin-top: 18px !important;
    padding-top: 17px !important;
    border-top: 1px solid #d9e3ed !important;
}


/* =========================================================
   CHECKBOX FACTURA
   ========================================================= */

.qbit-fiscal-checkout .form-check {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 22px;
    margin: 0;
    padding: 0;
}

.qbit-fiscal-checkout .form-check-input {
    appearance: none;
    -webkit-appearance: none;

    position: relative;

    flex: 0 0 auto;

    width: 18px;
    height: 18px;

    margin: 0;

    border: 1.5px solid #aebfd0;
    border-radius: 5px;

    background: #ffffff;

    cursor: pointer;

    transition:
        border-color .16s ease,
        background-color .16s ease,
        box-shadow .16s ease;
}

.qbit-fiscal-checkout .form-check-input:hover {
    border-color: #1478cf;
}

.qbit-fiscal-checkout .form-check-input:focus {
    outline: none;

    border-color: #1478cf;

    box-shadow:
        0 0 0 3px rgba(20, 120, 207, .12);
}

.qbit-fiscal-checkout .form-check-input:checked {
    border-color: #1478cf;
    background: #1478cf;
}

.qbit-fiscal-checkout .form-check-input:checked::after {
    content: "";

    position: absolute;

    left: 5px;
    top: 2px;

    width: 5px;
    height: 9px;

    border: solid #ffffff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}

.qbit-fiscal-checkout .form-check-label {
    margin: 0;

    color: #0d3764;

    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.35;

    cursor: pointer;
}


/* =========================================================
   CAMPOS FISCALES
   ========================================================= */

.qbit-fiscal-checkout [data-qbit-fiscal-fields] {
    margin-top: 14px !important;
}

.qbit-fiscal-checkout .form-label {
    display: block;

    margin: 0 0 6px;

    color: #536b83;

    font-size: 12px;
    font-weight: 500;
    line-height: 1.3;
}


/* =========================================================
   SELECT QBIT
   ========================================================= */

.qbit-fiscal-checkout .form-select {
    display: block;

    width: 100%;
    min-height: 42px;

    padding:
        9px
        42px
        9px
        12px;

    border: 1px solid #d5e0ea;
    border-radius: 8px;

    color: #163b61;

    background-color: #f5f8fb;

    font-family: inherit;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.4;

    box-shadow: none;

    cursor: pointer;

    transition:
        border-color .16s ease,
        background-color .16s ease,
        box-shadow .16s ease;
}

.qbit-fiscal-checkout .form-select:hover {
    border-color: #b9cad9;
    background-color: #f8fafc;
}

.qbit-fiscal-checkout .form-select:focus {
    outline: none;

    border-color: #1478cf;

    background-color: #ffffff;

    box-shadow:
        0 0 0 3px rgba(20, 120, 207, .10);
}

.qbit-fiscal-checkout .form-select:required:invalid {
    color: #6f8295;
}


/* =========================================================
   TEXTO AUXILIAR / COMPATIBILIDAD
   ========================================================= */

.qbit-fiscal-checkout .form-text {
    min-height: 0;

    margin-top: 5px;

    color: #6f8295;

    font-size: 11.5px;
    line-height: 1.35;
}


/* =========================================================
   ESPACIADO
   ========================================================= */

.qbit-fiscal-checkout .row {
    --bs-gutter-x: 12px;
    --bs-gutter-y: 12px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 767.98px) {

    .qbit-fiscal-checkout {
        margin-top: 16px !important;
        padding-top: 15px !important;
    }

    .qbit-fiscal-checkout .form-select {
        min-height: 44px;
        font-size: 13.5px;
    }

}

/* QBIT FISCAL CHECKOUT — END */


/* QBIT CATALOG COMPARE 4.28B START */
/* =========================================================
   PRODUCT CARD
   COMPARAR VISIBLE + HOVER COMPACTO
   ESCALA TIPOGRAFICA QBIT DEFINITIVA
   ========================================================= */


/* ---------------------------------------------------------
   TIPOGRAFIA CARD
   --------------------------------------------------------- */

.qbit-product-brand {
    font-size: 13px !important;
    line-height: 18px !important;
}

.qbit-product-sku,
.qbit-product-stock {
    font-size: 13px !important;
    line-height: 18px !important;
}

.qbit-product-title {
    min-height: 60px;

    font-size: 15px !important;
    line-height: 21px !important;
}

.qbit-product-shortdesc {
    font-size: 13px !important;
    line-height: 19px !important;
}

.qbit-product-price small {
    font-size: 13px !important;
    line-height: 18px !important;
}

.qbit-product-old-price {
    font-size: 13px !important;
    line-height: 18px !important;
}


/* ---------------------------------------------------------
   ACCIONES
   Ver producto + Comparar + Carrito
   --------------------------------------------------------- */

.qbit-product-actions {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto
        42px;

    gap: 7px;

    align-items: stretch;
}

.qbit-product-details {
    min-width: 0;

    min-height: 42px;

    padding: 8px 10px;

    font-size: 14px !important;
    line-height: 20px !important;
}


/* COMPARAR */

.qbit-product-compare {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 6px;

    min-height: 42px;

    padding: 8px 10px;

    border: 1px solid #c6d4e0;
    border-radius: 6px;

    background: #fff;

    color: #526f87 !important;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 14px !important;
    line-height: 20px !important;

    font-weight: 600;

    white-space: nowrap;

    text-decoration: none !important;
}

.qbit-product-compare svg {
    width: 17px;
    height: 17px;

    flex: 0 0 17px;
}

.qbit-product-compare:hover {
    border-color: #0872cf;

    background: #f4f9fe;

    color: #0872cf !important;

    text-decoration: none !important;
}

.qbit-product-compare.is-active {
    border-color: #9fc8e9;

    background: #edf7ff;

    color: #0872cf !important;
}


/* CARRITO */

.qbit-product-cart {
    width: 42px;
    height: 42px;
}


/* ---------------------------------------------------------
   OVERLAY COMPACTO
   Deja siempre accesibles las acciones inferiores
   --------------------------------------------------------- */

.qbit-card-quickview {
    top: auto !important;
    right: 7px !important;
    bottom: 64px !important;
    left: 7px !important;

    width: auto !important;
    height: auto !important;
    max-height: 205px !important;

    padding: 13px !important;

    overflow: hidden;
}

.qbit-card-quickview-content {
    flex: 0 1 auto !important;

    overflow: hidden !important;
}


/* TITULO OVERLAY */

.qbit-card-quickview
.qbit-hover-specs-title {
    margin-bottom: 7px !important;

    font-size: 13px !important;
    line-height: 18px !important;
}


/* SOLO TRES FILAS YA GENERADAS POR TWIG */

.qbit-card-quickview
.qbit-hover-spec-row {
    min-height: 34px;

    padding: 6px 0;

    grid-template-columns:
        minmax(90px, .9fr)
        minmax(0, 1.1fr);

    gap: 8px;

    font-size: 13px !important;
    line-height: 18px !important;
}


/* FICHA COMPLETA */

.qbit-card-quickview-link {
    min-height: 39px;

    margin-top: 8px;

    padding: 8px 10px;

    font-size: 13px !important;
    line-height: 18px !important;
}


/* ---------------------------------------------------------
   EL HOVER NUNCA BLOQUEA LA FRANJA DE ACCIONES
   --------------------------------------------------------- */

.qbit-product-actions {
    position: relative;

    z-index: 30;
}


/* ---------------------------------------------------------
   RESPONSIVE
   En cards muy estrechas pasamos Comparar a segunda fila
   --------------------------------------------------------- */

@media (max-width: 1199.98px) {

    .qbit-product-actions {
        grid-template-columns:
            minmax(0, 1fr)
            42px;
    }

    .qbit-product-compare {
        grid-column:
            1 / -1;

        grid-row:
            2;
    }

}


@media (hover: none),
(pointer: coarse) {

    .qbit-card-quickview {
        display: none !important;
    }

}


/* QBIT CATALOG COMPARE 4.28B END */


/* QBIT CATALOG COMPARE 4.28C START */
/* =========================================================
   AJUSTE FINO:
   - evitar encimado del hover
   - alinear Ver producto / Comparar / carrito
   - mejorar cards angostas
   ========================================================= */

.qbit-product-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto 42px !important;
    gap: 8px !important;
    align-items: stretch !important;
    position: relative !important;
    z-index: 30 !important;
}

.qbit-product-details,
.qbit-product-compare,
.qbit-product-cart {
    align-self: stretch !important;
}

.qbit-product-details {
    min-height: 42px !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    line-height: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
}

.qbit-product-compare {
    min-height: 42px !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    line-height: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
}

.qbit-product-cart {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* El hover sube más para no invadir la franja de acciones */
.qbit-card-quickview {
    left: 7px !important;
    right: 7px !important;
    bottom: 118px !important;
    top: auto !important;
    width: auto !important;
    max-height: 190px !important;
    padding: 12px !important;
    overflow: hidden !important;
    z-index: 20 !important;
}

/* Ajuste de filas del hover */
.qbit-card-quickview .qbit-hover-spec-row {
    min-height: 32px !important;
    padding: 5px 0 !important;
    font-size: 13px !important;
    line-height: 18px !important;
}

.qbit-card-quickview-link {
    min-height: 38px !important;
    margin-top: 8px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    line-height: 18px !important;
}

/* Cards medias: seguir con 3 acciones, pero un poco más compactas */
@media (max-width: 420px) {
    .qbit-product-actions {
        grid-template-columns: minmax(0, 1fr) auto 42px !important;
        gap: 7px !important;
    }

    .qbit-product-details,
    .qbit-product-compare {
        padding-left: 10px !important;
        padding-right: 10px !important;
        font-size: 13.5px !important;
    }
}

/* Cards angostas: Ver producto arriba, Comparar + carrito abajo */
@media (max-width: 340px) {
    .qbit-product-actions {
        grid-template-columns: minmax(0, 1fr) 42px !important;
        gap: 7px !important;
    }

    .qbit-product-details {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        width: 100% !important;
    }

    .qbit-product-compare {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
    }

    .qbit-product-cart {
        grid-column: 2 !important;
        grid-row: 2 !important;
    }

    .qbit-card-quickview {
        bottom: 156px !important;
        max-height: 170px !important;
    }
}

/* En touch no mostramos hover */
@media (hover: none), (pointer: coarse) {
    .qbit-card-quickview {
        display: none !important;
    }
}

/* QBIT CATALOG COMPARE 4.28C END */

/* QBIT CATALOG CARD 4.28D START */
/* =========================================================
   CARD COMPACTA QBIT
   Sin overlay de características
   ========================================================= */


/* Garantía: overlay fuera del grid */

.qbit-product-card .qbit-card-quickview {
    display: none !important;
}


/* ---------------------------------------------------------
   MARCA
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-brand {
    font-size: 12.5px !important;
    line-height: 17px !important;
}


/* ---------------------------------------------------------
   SKU / STOCK
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-sku,

.qbit-product-card
.qbit-product-stock {
    font-size: 12px !important;
    line-height: 17px !important;
}


/* ---------------------------------------------------------
   TITULO
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-title {
    min-height: 58px;

    font-size: 14px !important;
    line-height: 20px !important;

    font-weight: 600;
}


/* ---------------------------------------------------------
   DESCRIPCION
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-shortdesc {
    font-size: 12.5px !important;
    line-height: 18px !important;
}


/* ---------------------------------------------------------
   PRECIO
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-price strong {
    font-size: 18px !important;
    line-height: 22px !important;
}

.qbit-product-card
.qbit-product-price small,

.qbit-product-card
.qbit-product-old-price {
    font-size: 12px !important;
    line-height: 17px !important;
}


/* ---------------------------------------------------------
   ACCIONES
   Ver producto + Comparar + carrito
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-actions {
    display: grid !important;

    grid-template-columns:
        minmax(0, 1fr)
        auto
        42px !important;

    gap: 7px !important;

    align-items: stretch !important;

    position: relative !important;

    z-index: 2 !important;
}


.qbit-product-card
.qbit-product-details,

.qbit-product-card
.qbit-product-compare {
    min-height: 40px !important;

    padding: 8px 9px !important;

    border-radius: 7px !important;

    font-size: 13px !important;
    line-height: 18px !important;

    white-space: nowrap !important;
}


.qbit-product-card
.qbit-product-compare svg {
    width: 15px !important;
    height: 15px !important;

    flex: 0 0 15px !important;
}


.qbit-product-card
.qbit-product-cart {
    width: 42px !important;
    height: 40px !important;

    min-width: 42px !important;

    border-radius: 7px !important;
}


/* ---------------------------------------------------------
   CARD BODY
   --------------------------------------------------------- */

.qbit-product-card
.qbit-product-card-body {
    min-height: 245px;
}


/* ---------------------------------------------------------
   CARDS ESTRECHAS
   Ver producto arriba
   Comparar + carrito abajo
   --------------------------------------------------------- */

@media (max-width: 1100px) {

    .qbit-product-card
    .qbit-product-actions {
        grid-template-columns:
            minmax(0, 1fr)
            42px !important;
    }

    .qbit-product-card
    .qbit-product-details {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;

        width: 100% !important;
    }

    .qbit-product-card
    .qbit-product-compare {
        grid-column: 1 !important;
        grid-row: 2 !important;

        width: 100% !important;
    }

    .qbit-product-card
    .qbit-product-cart-form {
        grid-column: 2 !important;
        grid-row: 2 !important;
    }

}


/* QBIT CATALOG CARD 4.28D END */

/* QBIT CATALOG 4.28E START */
/* =========================================================
   ACCIONES DE CARD
   2 iconos + carrito grande
   ========================================================= */

.qbit-product-card .qbit-product-actions {
    display: grid !important;
    grid-template-columns: 44px 44px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: stretch !important;
}

/* ---------------------------------------------------------
   BOTONES ICONO
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-details,
.qbit-product-card .qbit-product-compare {
    position: relative !important;

    width: 44px !important;
    min-width: 44px !important;
    height: 42px !important;
    min-height: 42px !important;

    padding: 0 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 8px !important;

    font-size: 0 !important;
    line-height: 0 !important;

    overflow: visible !important;
}

/* Icono manual para VER PRODUCTO */
.qbit-product-card .qbit-product-details::before {
    content: "↗";
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    color: #0b63ce !important;
}

/* Si comparar ya trae icono SVG, solo lo normalizamos */
.qbit-product-card .qbit-product-compare svg {
    width: 15px !important;
    height: 15px !important;
    flex: 0 0 15px !important;
}

/* Si el compare no trae svg visible, dejamos símbolo de respaldo */
.qbit-product-card .qbit-product-compare:empty::before {
    content: "≍";
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    color: #0b63ce !important;
}

/* ---------------------------------------------------------
   TOOLTIP SIMPLE
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-details[data-qbit-tip]:hover::after,
.qbit-product-card .qbit-product-details[data-qbit-tip]:focus-visible::after,
.qbit-product-card .qbit-product-compare[data-qbit-tip]:hover::after,
.qbit-product-card .qbit-product-compare[data-qbit-tip]:focus-visible::after {
    content: attr(data-qbit-tip);

    position: absolute;
    left: 50%;
    bottom: calc(100% + 8px);
    transform: translateX(-50%);

    padding: 7px 10px;
    border-radius: 8px;

    background: rgba(11, 25, 45, 0.96);
    color: #ffffff;

    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;

    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);
    z-index: 20;
    pointer-events: none;
}

/* ---------------------------------------------------------
   CARRITO GRANDE
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-cart-form {
    min-width: 0 !important;
    width: 100% !important;
}

.qbit-product-card .qbit-product-cart {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;

    padding: 0 14px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;

    border-radius: 8px !important;

    font-size: 0 !important;
    line-height: 0 !important;
}

.qbit-product-card .qbit-product-cart svg {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
}

.qbit-product-card .qbit-product-cart::after {
    content: "Agregar";
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

/* ---------------------------------------------------------
   AJUSTE EN PANTALLAS ESTRECHAS
   --------------------------------------------------------- */

@media (max-width: 420px) {
    .qbit-product-card .qbit-product-actions {
        grid-template-columns: 40px 40px minmax(0, 1fr) !important;
        gap: 6px !important;
    }

    .qbit-product-card .qbit-product-details,
    .qbit-product-card .qbit-product-compare,
    .qbit-product-card .qbit-product-cart {
        height: 40px !important;
        min-height: 40px !important;
    }

    .qbit-product-card .qbit-product-cart::after {
        content: "Agregar";
        font-size: 12.5px !important;
    }
}

/* QBIT CATALOG 4.28E END */

/* QBIT CATALOG 4.28F START */
/* =========================================================
   CARD PRODUCTO
   - ocultar ficha
   - dejar Agregar + Comparar
   - Agregar primero
   - Comparar al final
   ========================================================= */

.qbit-product-card .qbit-product-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* ---------------------------------------------------------
   OCULTAR BOTON FICHA
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-details {
    display: none !important;
}

/* ---------------------------------------------------------
   ORDEN VISUAL
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-cart-form {
    order: 1 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.qbit-product-card .qbit-product-compare {
    order: 2 !important;
    flex: 0 0 86px !important;
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
}

/* ---------------------------------------------------------
   BOTON AGREGAR
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-cart {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;

    padding: 0 14px !important;
    border-radius: 8px !important;

    font-size: 0 !important;
    line-height: 0 !important;
}

.qbit-product-card .qbit-product-cart svg {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
}

.qbit-product-card .qbit-product-cart::after {
    content: "Agregar";
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

/* ---------------------------------------------------------
   BOTON COMPARAR
   --------------------------------------------------------- */

.qbit-product-card .qbit-product-compare {
    position: relative !important;

    height: 42px !important;
    min-height: 42px !important;
    padding: 0 10px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;

    border-radius: 8px !important;

    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

/* ocultar icono anterior si existe */
.qbit-product-card .qbit-product-compare svg {
    display: none !important;
}

/* icono mas descriptivo */
.qbit-product-card .qbit-product-compare::before {
    content: "⇄";
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    color: currentColor !important;
}

/* ---------------------------------------------------------
   MOVIL
   --------------------------------------------------------- */

@media (max-width: 420px) {
    .qbit-product-card .qbit-product-actions {
        gap: 6px !important;
    }

    .qbit-product-card .qbit-product-cart,
    .qbit-product-card .qbit-product-compare {
        height: 40px !important;
        min-height: 40px !important;
    }

    .qbit-product-card .qbit-product-compare {
        flex-basis: 82px !important;
        width: 82px !important;
        min-width: 82px !important;
        max-width: 82px !important;
        padding: 0 8px !important;
    }

    .qbit-product-card .qbit-product-cart::after,
    .qbit-product-card .qbit-product-compare {
        font-size: 12.5px !important;
    }
}

/* QBIT CATALOG 4.28F END */

/* QBIT CATALOG GRID TYPOGRAPHY 4.28G START */
/* =========================================================
   MOSAICO — ESCALA VISUAL EQUIVALENTE A VISTA LISTA
   ========================================================= */

.qbit-product-card .qbit-product-brand {
    font-size: 12px !important;
    line-height: 17px !important;
}

.qbit-product-card .qbit-product-sku,
.qbit-product-card .qbit-product-stock {
    font-size: 11.5px !important;
    line-height: 16px !important;
}

.qbit-product-card .qbit-product-title {
    min-height: 56px !important;

    font-size: 14px !important;
    line-height: 19px !important;

    font-weight: 500 !important;
}

.qbit-product-card .qbit-product-title a {
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
}

.qbit-product-card .qbit-product-shortdesc {
    font-size: 12.5px !important;
    line-height: 18px !important;
}

.qbit-product-card .qbit-product-price strong {
    font-size: 18px !important;
    line-height: 22px !important;
}

.qbit-product-card .qbit-product-price small,
.qbit-product-card .qbit-product-old-price {
    font-size: 12px !important;
    line-height: 17px !important;
}

.qbit-product-card .qbit-product-cart::after,
.qbit-product-card .qbit-product-compare {
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
}

/* QBIT CATALOG GRID TYPOGRAPHY 4.28G END */

/* QBIT CATALOG COMPARE TOOLBAR 4.29B START */
/* =========================================================
   COMPARACION + MOSAICO + LISTA
   ========================================================= */

.qbit-catalog-view-actions {
    display: flex;

    align-items: center;

    gap: 7px;
}


/* ---------------------------------------------------------
   BOTONES VISTA
   --------------------------------------------------------- */

.qbit-catalog-view-button,
.qbit-catalog-compare-link {
    position: relative;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    border: 1px solid #cad7e2;
    border-radius: 8px;

    background: #fff;

    color: #42617f !important;

    text-decoration: none !important;

    transition:
        border-color .12s ease,
        background .12s ease,
        color .12s ease;
}


.qbit-catalog-view-button svg,
.qbit-catalog-compare-link svg {
    width: 18px;
    height: 18px;
}


/* hover */

.qbit-catalog-view-button:hover,
.qbit-catalog-compare-link:hover {
    border-color: #8eb9dc;

    background: #f5faff;

    color: #0872cf !important;
}


/* vista activa */

.qbit-catalog-view-button.active {
    border-color: #0872cf;

    background: #0872cf;

    color: #fff !important;
}


/* ---------------------------------------------------------
   COMPARACION
   --------------------------------------------------------- */

.qbit-catalog-compare-link.has-items {
    border-color: #a9cbe7;

    background: #f3f9fe;

    color: #0872cf !important;
}


/* contador */

.qbit-catalog-compare-count {
    position: absolute;

    top: -6px;
    right: -6px;

    display: flex;

    align-items: center;
    justify-content: center;

    min-width: 20px;
    height: 20px;

    padding: 0 5px;

    border: 2px solid #fff;
    border-radius: 10px;

    background: #0872cf;

    color: #fff;

    font-size: 11px;
    line-height: 16px;

    font-weight: 700;
}


/* ---------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------- */

@media (max-width: 767.98px) {

    .qbit-catalog-view-button,
    .qbit-catalog-compare-link {
        width: 40px;
        height: 40px;

        flex-basis: 40px;
    }

}

/* QBIT CATALOG COMPARE TOOLBAR 4.29B END */


/* QBIT COMPARE LIMIT 4.30D START */

.qbit-product-compare.is-disabled {
    cursor: not-allowed !important;

    border-color: #d4dde5 !important;

    background: #f4f6f8 !important;

    color: #93a1ad !important;

    opacity: .82 !important;

    pointer-events: auto !important;
}


.qbit-product-compare.is-disabled:hover {
    border-color: #d4dde5 !important;

    background: #f4f6f8 !important;

    color: #93a1ad !important;
}


.qbit-product-compare.is-disabled[data-qbit-tip] {
    position: relative !important;
}


.qbit-product-compare.is-disabled[data-qbit-tip]:hover::after {
    content: attr(data-qbit-tip);

    position: absolute;

    left: 50%;
    bottom: calc(100% + 8px);

    transform: translateX(-50%);

    z-index: 50;

    padding: 7px 9px;

    border-radius: 7px;

    background: #17324d;

    color: #fff;

    font-size: 12px !important;
    line-height: 16px !important;

    font-weight: 400 !important;

    white-space: nowrap;

    pointer-events: none;
}

/* QBIT COMPARE LIMIT 4.30D END */



/* =========================================================
   QBIT_PRODUCT_META_SCALE_1_00_CATALOG

   Escala auxiliar común para información de producto.
   ========================================================= */

.qbit-product-tax,
.qbit-line-tax,
.qbit-detail-tax {
    font-size: 13px !important;
    line-height: 1.4 !important;
}


/*
 * Variantes conocidas de SKU / referencia QBIT.
 * Solo afectan elementos explícitamente identificados
 * como metadata de producto.
 */
.qbit-product-sku,
.qbit-line-sku,
.qbit-detail-sku,
.qbit-product-artnum,
.qbit-line-artnum,
.qbit-detail-artnum {
    font-size: 13px !important;
    line-height: 1.4 !important;
}


/*
 * Valores secundarios explícitos.
 */
.qbit-product-meta-value,
.qbit-line-meta-value,
.qbit-detail-meta-value {
    font-size: 14px !important;
    line-height: 1.4 !important;
}

/* QBIT_PRODUCT_META_SCALE_1_00_CATALOG END */

