/**
 * Comtecs_Gabitie - Global frontend fixes applied across all storefronts.
 * Add generic cross-store CSS fixes here.
 */

/* ============================================================
   Footer
   ============================================================ */
.footer .mgz-single-image-inner img {
    height: 100px;
}

/* ============================================================
   Pricing
   ============================================================ */
.product-item-info .product-item-details .price-box,
.price-including-tax + .price-excluding-tax:before,
.weee[data-label]:before {
    font-size: 0.9rem;
}
.product-options-bottom .price-box .price,
.product-info-price .price-box .price {
    font-size: 1.25rem;
}
.product-info-main .page-title-wrapper h1 {
    font-size: 1.5rem;
}
.price-container .price-including-tax + .price-excluding-tax,
.price-container .weee,
.price-container .price-including-tax + .price-excluding-tax .price,
.price-container .weee .price,
.price-container .weee + .price-excluding-tax:before,
.price-container .weee + .price-excluding-tax .price,
.product-options-bottom .price-box .price-including-tax + .price-excluding-tax .price,
.product-info-price .price-box .price-including-tax + .price-excluding-tax .price {
    font-size: 0.75rem !important;
}
.minimal-price {
    margin: 5px;
    line-height: 19px;
    letter-spacing: .14px;
}

/* ============================================================
   CMS pages
   ============================================================ */
.cms-page-view h1 { font-size: 1.5em; }
.cms-page-view h2 { font-size: 1.3em; }
.cms-page-view h3 { font-size: 1.17em; }

/* ============================================================
   Forms
   ============================================================ */
.fieldset > .field .label {
    line-height: 13px;
}
.bundle-options-container .block-bundle-summary .product-addto-links > .action,
.action.tocompare,
.product-addto-links .action.tocompare,
.moved-add-to-links .action.tocompare,
.product-social-links .action.tocompare,
.wishlist.split.button > .action.split,
.product-social-links .action.mailto.friend,
.moved-add-to-links .action.mailto.friend,
.product-social-links .action.towishlist,
.product-addto-links .action.towishlist,
.block-bundle-summary .action.towishlist,
.product-item .action.towishlist,
.table-comparison .action.towishlist {
    width: 36px;
    height: 36px;
    line-height: 35px;
}

/* ============================================================
   Magezon
   ============================================================ */
.sw-megamenu img {
    display: none;
}
.mgz-newsletter-btn span {
    top: -6px;
    position: relative;
}
.single-subscribe .newsletter .action {
    padding: 0 35px 10px 30px !important;
}
@media (min-width: 1260px) {
    .magezon-builder .mgz-container {
        width: 1220px !important;
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media (min-width: 768px), print {
    .block.widget .products-grid .product-item {
        width: 100% !important;
    }
}

/* ============================================================
   Navigation - header type16
   ============================================================ */
.page-header.type16 .sw-megamenu.navigation li.level0.fullwidth > .submenu {
    margin-left: 0 !important;
    background-color: #403f3f !important;
}
@media (min-width: 992px) {
    .page-header.type16 .navigation:not(.side-megamenu) .level0 .level-top {
        font-weight: 600;
        letter-spacing: -0.13px;
        padding: 12px 17px 15px;
        text-align: center;
        width: 100%;
        height: 100%;
        line-height: 16px;
        text-transform: none;
        font-size: 12px;
    }
}

/* ============================================================
   Navigation - header type14 (Chandelier / House of Silk)
   ============================================================ */
@media (min-width: 992px) {
    /* Prevent nav items wrapping */
    .page-header.type14 .navigation:not(.side-megamenu) > ul {
        flex-wrap: nowrap !important;
    }

    /* Collapse empty header-left; nav (header-center) fills remaining space */
    .page-header.type14 .header-bottom .header-col.header-left {
        flex: 0 0 0 !important;
        width: 0 !important;
        overflow: hidden;
        padding: 0 !important;
        margin: 0 !important;
    }
    .page-header.type14 .header-bottom .header-col.header-center {
        flex: 1 !important;
        position: static !important;
    }
    .page-header.type14 .header-bottom .header-col.header-right {
        flex: 0 0 auto !important;
    }

    /* Fullwidth submenu: header-bottom is the containing block, nav-sections must not be */
    .page-header.type14 .header-bottom {
        position: relative;
    }
    .page-header.type14 .menu-right-block p img {
        padding-bottom: 20px;
    }
    .page-header.type14 .header-bottom .nav-sections {
        position: static !important;
        width: 100% !important;
    }
    .page-header.type14 .header-bottom .sw-megamenu.navigation li.level0.fullwidth > .submenu,
    .page-header.type14 .header-bottom .navigation li.level0.fullwidth > .submenu {
        left: 0 !important;
        right: 0 !important;
        width: auto !important;
        max-width: none !important;
    }

    /* Sticky minicart: size and align the minicart icon in the nav bar right column */
    .page-header.type14 .header-bottom .header-col.header-right .minicart-wrapper {
        display: flex;
        align-items: center;
        padding: 0 0 0 16px;
    }
}

/* ============================================================
   Navigation - Megamenu full-width submenus (all types)
   ============================================================ */
@media (min-width: 992px) {
    .sw-megamenu.navigation li.level0.fullwidth > .submenu,
    .sw-megamenu.navigation li.level0.staticwidth > .submenu {
        padding: 10px;
        left: 0;
        max-width: 100%;
    }
    .sw-megamenu img {
        display: block;
    }
}

/* ============================================================
   Page layout
   ============================================================ */
.page-main {
    padding-top: 30px !important;
}

/* ============================================================
   Layered Navigation - Filter sidebar
   ============================================================ */
.filter-options-title {
    text-transform: uppercase;
}
.filter-options-title:after {
    display: none !important;
}
.block-category-list .block-content,
.filter-options-content {
    border-bottom: 0 !important;
}
.block-category-list .block-title,
.filter-options-title,
.filter .filter-current-subtitle,
.block-category-list .block-content ol li a {
    font-size: 12px !important;
}
.filter-options-title .toggle {
    width: 0.85em;
    height: 1.2em;
    top: 72%;
}
.filter-options-item,
.filter-current,
.sidebar-title,
.filter-actions a {
    padding: 20px !important;
}

/* ============================================================
   Product listing - uniform image height
   ============================================================ */
.product-social-links {
    display: none !important;
}
.products-grid .product-item-photo,
.products-grid .product-item-photo .product-image-container,
.products-grid .product-item-photo .product-image-wrapper {
    display: block;
    width: 100%;
}
.products-grid .product-item-photo .product-image-wrapper {
    padding-bottom: 0 !important;
    height: 220px;
}
.main .products-grid .product-item-photo .product-image-photo {
    position: static !important;
    width: 100% !important;
    height: 220px !important;
    object-fit: contain;
}
.products-grid .product-item .product-item-details .product-item-name a {
    white-space: normal !important;
    overflow: hidden;
    text-overflow: ellipsis;
}
.products-grid .product-item .product-item-details .product-item-name {
    white-space: normal !important;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 65px !important;
}

.product-item [class^='swatch-opt-'] {
    display: block;
}

/* ============================================================
   Product page - Custom options radio list (ox / admin__field style)
   ============================================================ */
.options-list.nested {
    margin: 0;
    padding: 0;
    list-style: none;
}
.options-list.nested .field.choice.admin__field {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0 6px;
    padding: 5px 0;
    border-bottom: 1px solid #f0f0f0;
    margin: 0 !important;
}
.options-list.nested .field.choice.admin__field:last-child {
    border-bottom: none;
}
.options-list.nested .field.choice .admin__control-radio {
    flex-shrink: 0;
    margin-top: 2px;
}
.options-list.nested .field.choice .admin__field-label {
    font-size: 13px;
    font-weight: 500;
    color: #323232;
    cursor: pointer;
    flex-shrink: 0;
}
.options-list.nested .price-notice {
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    font-size: 12px;
    color: #666;
    white-space: nowrap;
}
.options-list.nested .price-notice .price-container {
    display: inline;
}
.options-list.nested .price-notice .price {
    font-weight: 600;
    color: #323232;
    font-size: 13px;
}
.options-list.nested .price-notice .price-including-tax,
.options-list.nested .price-notice .price-excluding-tax {
    display: inline;
}
.options-list.nested .price-notice .price-including-tax + .price-excluding-tax {
    font-size: 11px;
    color: #888;
}
.options-list.nested .price-notice .price-including-tax + .price-excluding-tax:before {
    content: "(";
}
.options-list.nested .price-notice .price-including-tax + .price-excluding-tax:after {
    content: " excl. tax)";
}

/* ============================================================
   Product page - Grouped product table (simple-detail / BSS GPO)
   ============================================================ */

/* Hide empty Attributes column */
.table-wrapper.grouped.simple-detail th.col.style,
.table-wrapper.grouped.simple-detail td[data-th="Attribute"] {
    display: none;
}

/* Table base */
.table-wrapper.grouped.simple-detail thead th {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 12px;
    background: #f4f4f4;
    border-bottom: 2px solid #ddd;
    color: #555;
}
.table-wrapper.grouped.simple-detail tbody tr td {
    padding: 12px;
    vertical-align: middle;
    border-bottom: 1px solid #eee;
}
.table-wrapper.grouped.simple-detail tbody:last-child tr td {
    border-bottom: none;
}

/* Product cell: image floated left, name+price stack to the right */
.table-wrapper.grouped.simple-detail .col.item.tooltip.simple-col {
    overflow: hidden;
}
.table-wrapper.grouped.simple-detail .col.item.tooltip.simple-col br {
    display: none;
}
.table-wrapper.grouped.simple-detail .col.item.tooltip.simple-col > img {
    float: left;
    width: 60px;
    height: 60px;
    object-fit: contain;
    margin-right: 12px;
    background: #f9f9f9;
    border: 1px solid #eee;
    border-radius: 4px;
    padding: 4px;
}
.table-wrapper.grouped.simple-detail .col.item .product-item-name {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #323232;
    line-height: 1.3;
    margin-bottom: 3px;
}

/* Price: incl. tax prominent, excl. tax inline after */
.table-wrapper.grouped.simple-detail .bss-gpo-price-box {
    margin-top: 2px;
}
.table.grouped .col.item {
    padding: 8px !important;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-including-tax {
    font-weight: 600;
    font-size: 13px !important;
    color: #323232;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-including-tax span {
    font-size: 13px !important;
}
.table.grouped .price-box .price {
    font-size: 13px !important;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-excluding-tax {
    display: inline !important;
    font-size: 11px;
    color: #888;
    top: 5px;
    position: relative;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-excluding-tax .price {
    font-size: 11px !important;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-excluding-tax:before {
    content: "(excl. tax: ";
    font-size: 11px;
    color: #888;
}
.table-wrapper.grouped.simple-detail .bss-gpo-price-box .price-excluding-tax:after {
    content: ")";
    font-size: 11px;
    color: #888;
}

/* Qty input */
.table-wrapper.grouped.simple-detail .col.qty {
    text-align: center;
    vertical-align: middle !important;
}
.table-wrapper.grouped.simple-detail .col.qty .control {
    width: auto !important;
    display: block !important;
    justify-content: unset !important;
}
.table-wrapper.grouped.simple-detail .col.qty .input-text.qty {
    border: 1px solid #bbb !important;
    border-radius: 3px !important;
    width: 64px !important;
    text-align: center;
    padding: 6px 4px;
    height: 36px;
}