/*
 * SEART B2B Lifting
 * Custom styles loaded after Smartwave Porto.
 */

/* =========================================================
   DESIGN TOKENS
   ========================================================= */

:root {
    --seart-bg: #F7F6F1;
    --seart-surface: #FFFFFF;

    --seart-text: #252622;
    --seart-text-muted: #686961;

    --seart-olive: #74775C;
    --seart-olive-hover: #5F6249;

    --seart-beige: #E8E4D8;
    --seart-border: #D8D5CC;

    --seart-footer: #252A28;
    --seart-footer-text: #F2F1EC;

    --seart-success: #5D7F39;
    --seart-warning: #B28542;
    --seart-error: #A85145;
	
	--seart-footer-muted: #C8C9C3;
	--seart-accent-soft: #C4BA82;
}
/* =========================================================
   BASE / GLOBAL
   ========================================================= */

html,
body {
    background-color: var(--seart-bg);
    color: var(--seart-text);
}

body {
    color: var(--seart-text);
}

.page-wrapper {
    color: var(--seart-text);
}


/* =========================================================
   TYPOGRAPHY / LINKS
   ========================================================= */

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--seart-text);
}

a {
    color: var(--seart-text);
}

a:hover,
a:focus {
    color: var(--seart-olive-hover);
}


/* =========================================================
   PRIMARY BUTTONS
   ========================================================= */

.action.primary,
.action-primary,
button.action.primary,
button.primary,
input.action.primary {
    background-color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
    color: #fff !important;
}

.action.primary:hover,
.action.primary:focus,
.action-primary:hover,
.action-primary:focus,
button.action.primary:hover,
button.action.primary:focus,
button.primary:hover,
button.primary:focus,
input.action.primary:hover,
input.action.primary:focus {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}


/* =========================================================
   FORM ELEMENTS
   ========================================================= */

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
textarea,
select {
    border-color: var(--seart-border);
    color: var(--seart-text);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color: var(--seart-olive-hover);
}


/* =========================================================
   BASIC BORDERS
   ========================================================= */

fieldset,
.table-wrapper,
.cart.table-wrapper {
    border-color: var(--seart-border);
}

/* =========================================================
   HEADER / TOP LINKS
   ========================================================= */

.page-header a,
.page-header .action,
.header.links a {
    color: var(--seart-text);
}

.page-header a:hover,
.page-header a:focus,
.header.links a:hover,
.header.links a:focus {
    color: var(--seart-olive);
}


/* =========================================================
   MAIN NAVIGATION
   ========================================================= */

.navigation,
.sections.nav-sections {
    background: var(--seart-beige);
}

.navigation .level0 > .level-top {
    color: var(--seart-text) !important;
}

.navigation .level0 > .level-top:hover,
.navigation .level0.active > .level-top,
.navigation .level0.has-active > .level-top {
    color: var(--seart-olive) !important;
}


/* =========================================================
   BREADCRUMBS
   ========================================================= */

.breadcrumbs {
    color: var(--seart-text-muted);
}

.breadcrumbs a {
    color: var(--seart-text-muted) !important;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus {
    color: var(--seart-olive) !important;
}


/* =========================================================
   SEARCH
   ========================================================= */

.block-search input {
    border-color: var(--seart-border);
    color: var(--seart-text);
}

.block-search input:focus {
    border-color: var(--seart-olive-hover);
}

.block-search .action.search {
    color: var(--seart-text-muted);
}

.block-search .action.search:hover {
    color: var(--seart-olive);
}


/* =========================================================
   MINICART
   ========================================================= */

.minicart-wrapper .action.showcart {
    color: var(--seart-text);
}

.minicart-wrapper .action.showcart:hover {
    color: var(--seart-olive);
}

.minicart-wrapper .action.showcart .counter.qty {
    background: var(--seart-olive) !important;
    color: #fff;
}


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

.toolbar .sorter-action,
.toolbar a {
    color: var(--seart-olive);
}

.toolbar .sorter-action:hover,
.toolbar a:hover {
    color: var(--seart-olive-hover);
}

/* =========================================================
   PORTO HEADER TYPE 1
   ========================================================= */

/* Top bar */
.page-header.type1 {
    background-color: var(--seart-surface) !important;
    border-top-color: var(--seart-border) !important;
}

.page-header.type1 > .panel.wrapper {
    background-color: var(--seart-bg) !important;
    color: var(--seart-text-muted) !important;
}

.page-header.type1 .panel.header .switcher {
    border-left-color: var(--seart-border) !important;
    color: var(--seart-text-muted) !important;
}

.page-header.type1 .panel.header .switcher,
.page-header.type1 .panel.header .switcher a,
.page-header.type1 .panel.header .header.links > li,
.page-header.type1 .panel.header .header.links > li > a,
.page-header.type1 .panel.header .header.links > li > span {
    color: var(--seart-text-muted) !important;
}

.page-header.type1 .panel.header .switcher a:hover,
.page-header.type1 .panel.header .header.links > li > a:hover,
.page-header.type1 .panel.header .header.links > li > a:focus {
    color: var(--seart-olive) !important;
}


/* Main header */
.page-header.type1 .header.content {
    background-color: var(--seart-surface) !important;
}


/* Search */
.page-header.type1 .block-search input {
    background-color: #fff !important;
    border-color: var(--seart-border) !important;
    color: var(--seart-text) !important;
}

.page-header.type1 .block-search input:focus {
    border-color: var(--seart-olive) !important;
}

.page-header.type1 .block-search .action.search {
    border-left-color: var(--seart-border) !important;
}

.page-header.type1 .block-search .action.search:before,
.page-header.type1 .block-search .action.search:hover:before,
.page-header.type1 .block-search .action.search:focus:before {
    color: var(--seart-text-muted) !important;
}


/* Cart */
.page-header.type1 .minicart-wrapper .action.showcart,
.page-header.type1 .minicart-wrapper .action.showcart:hover {
    color: var(--seart-text) !important;
}

.page-header.type1 .minicart-wrapper .action.showcart:before,
.page-header.type1 .minicart-wrapper .action.showcart.active:before,
.page-header.type1 .minicart-wrapper .action.showcart:hover:before,
.page-header.type1 .minicart-wrapper .action.showcart:active:before {
    color: var(--seart-text) !important;
}

.page-header.type1 .minicart-wrapper .action.showcart .counter.qty {
    background-color: var(--seart-olive) !important;
    color: #fff !important;
}


/* =========================================================
   PORTO TYPE 1 — MAIN MENU
   ========================================================= */

@media (min-width: 768px) {
    .page-header.type1 .nav-sections,
    .page-header.type1 .navigation {
        background-color: #fff !important;
    }

    .page-header.type1 .navigation > ul {
        background-color: #fff !important;
        border-top: 1px solid var(--seart-border) !important;
        border-bottom: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
    }

    .page-header.type1 .navigation li.level0,
    .page-header.type1 .navigation li.level0 > .level-top,
    .page-header.type1 .navigation li.level0 > .level-top:focus,
    .page-header.type1 .navigation li.level0 > .level-top:hover {
        color: var(--seart-text) !important;
        background-color: transparent !important;
    }

    .page-header.type1 .navigation li.level0.active,
    .page-header.type1 .navigation li.level0.has-active,
    .page-header.type1 .navigation li.level0:hover,
    .page-header.type1 .navigation li.level0.parent:hover {
        color: var(--seart-olive) !important;
        background-color: transparent !important;
    }

    .page-header.type1 .navigation li.level0.active > .level-top,
    .page-header.type1 .navigation li.level0.has-active > .level-top,
    .page-header.type1 .navigation li.level0:hover > .level-top {
        color: var(--seart-olive) !important;
        background-color: transparent !important;
    }

    .page-header.type1 .navigation .level0 .submenu,
    .page-header.type1 .sw-megamenu.navigation .level0 .submenu {
        background-color: #fff !important;
        border-color: var(--seart-border) !important;
        border-top-color: var(--seart-border) !important;
    }

    .page-header.type1 .navigation .level0 .submenu a {
        color: var(--seart-text-muted) !important;
    }

    .page-header.type1 .navigation .level0 .submenu a:hover,
    .page-header.type1 .navigation .level0 .submenu a:focus,
    .page-header.type1 .navigation .level0 .submenu .active > a {
        color: var(--seart-olive) !important;
    }
}


/* Mobile menu */
@media (max-width: 767px) {
    .page-header.type1 .navigation a,
    .page-header.type1 .nav-sections .header.links a {
        color: var(--seart-text) !important;
    }

    .page-header.type1 .navigation a:hover,
    .page-header.type1 .navigation a:focus,
    .page-header.type1 .nav-sections .header.links a:hover {
        color: var(--seart-olive) !important;
    }

    .page-header.type1 .nav-sections-item-title.active,
    .page-header.type1 .nav-sections-item-title.active > a {
        background-color: transparent !important;
        color: var(--seart-olive) !important;
    }
}


/* Porto theme utility classes */
.theme-color {
    color: var(--seart-olive) !important;
}

.theme-hover-color:hover {
    color: var(--seart-olive-hover) !important;
}

.theme-bg-color {
    background-color: var(--seart-olive) !important;
}

.theme-hover-bg-color:hover {
    background-color: var(--seart-olive-hover) !important;
}

.theme-border-color {
    border-color: var(--seart-olive) !important;
}

/* =========================================================
   BREADCRUMBS
   ========================================================= */

.page-wrapper > .breadcrumbs {
    background-color: var(--seart-beige) !important;
    color: var(--seart-text-muted) !important;
}

.page-wrapper > .breadcrumbs a,
.page-wrapper > .breadcrumbs a:visited,
.page-wrapper > .breadcrumbs a:focus {
    color: var(--seart-text-muted) !important;
}

.page-wrapper > .breadcrumbs a:hover {
    color: var(--seart-olive) !important;
}

.breadcrumbs .item:not(:last-child):after {
    color: var(--seart-olive) !important;
}


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

.sorter-action:before,
.sorter-action:hover:before {
    color: var(--seart-olive) !important;
}


/* =========================================================
   PRICE SLIDER
   ========================================================= */

#ln_slider_price.ui-slider-horizontal {
    background: var(--seart-border) !important;
}

#ln_slider_price .ui-slider-handle {
    background: var(--seart-olive) !important;
    color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
}

/* =========================================================
   CUSTOMER / LOGIN / ACCOUNT FORMS
   ========================================================= */

.login-container,
.form.password.reset,
.form.send.confirmation,
.form.password.forget,
.form.create.account,
.form.form-edit-account,
.form-address-edit,
.form-newsletter-manage {
    border-top-color: var(--seart-olive) !important;
}

/* Tytuł strony, np. "Logowanie" */
.customer-account-login .page-main > .page-title-wrapper .page-title,
.customer-account-create .page-main > .page-title-wrapper .page-title,
.customer-account-forgotpassword .page-main > .page-title-wrapper .page-title {
    color: var(--seart-text) !important;
}

/* Nagłówki/legendy formularzy */
.customer-account-login .fieldset > .legend,
.customer-account-create .fieldset > .legend,
.form.password.reset .fieldset > .legend,
.form.password.forget .fieldset > .legend {
    color: var(--seart-text) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color: var(--seart-olive-hover) !important;
    box-shadow: 0 0 0 1px var(--seart-olive-hover) !important;
}

/* =========================================================
   FOOTER
   Zgodnie z WDROZENIE_MAGENTO.md
   ========================================================= */

.footer-top,
.footer-middle,
.footer-middle.footer-middle-2,
.footer-bottom {
    background-color: var(--seart-footer) !important;
}


/* Nagłówki: Informacje / Strefa klienta / Kontakt */
.footer-middle .block-title,
.footer-middle .block-title strong,
.footer-middle h1,
.footer-middle h2,
.footer-middle h3,
.footer-middle h4,
.footer-middle h5,
.footer-middle h6 {
    color: var(--seart-footer-text) !important;
}


/* Tekst pomocniczy */
.footer-middle,
.footer-middle p,
.footer-middle li,
.footer-middle span {
    color: var(--seart-footer-muted);
}


/* Linki */
.footer-middle a,
.footer-middle a:visited,
.footer-bottom a,
.footer-bottom a:visited {
    color: var(--seart-footer-text) !important;
    text-decoration: none;
}


/* Hover zgodnie z wytycznymi: czysty biały */
.footer-middle a:hover,
.footer-middle a:focus,
.footer-bottom a:hover,
.footer-bottom a:focus {
    color: #FFFFFF !important;
}


/* =========================================================
   FOOTER ICONS / ARROWS
   ========================================================= */

.footer-middle [class^="porto-icon-"].theme-color,
.footer-middle [class*=" porto-icon-"].theme-color,
.footer-middle ul.links li [class^="porto-icon-"],
.footer-middle ul.links li [class*=" porto-icon-"] {
    color: var(--seart-accent-soft) !important;
}


/* Dolna linia */
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.28) !important;
}


/* Dolny tekst / copyright */
.footer-bottom,
.footer-bottom address,
.footer-bottom .custom-block {
    color: var(--seart-footer-muted) !important;
}

/* =========================================================
   COLOR AUDIT — PORTO #99CA3C OVERRIDES
   Based on WDROZENIE_MAGENTO.md palette.
   ========================================================= */

/* Layered navigation / filters */
.filter-options-title:after {
    background-color: #fff !important;
    border-color: var(--seart-border) !important;
    color: var(--seart-text-muted) !important;
}

.filter-options-title:hover:after {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

/* Footer vertical spacing from specification */
.footer-middle ul.links li {
    margin-bottom: 10px;
}

.footer-middle ul.links li:last-child {
    margin-bottom: 0;
}

/* Generic Porto utility / action classes still generated with #99CA3C */
.action-accept,
.action-primary.action-accept,
body .action-primary.action-accept,
.btn-primary,
.btn-default {
    background-color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
    color: #fff !important;
}

.action-accept:hover,
.action-accept:focus,
.action-primary.action-accept:hover,
.action-primary.action-accept:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn-default:hover,
.btn-default:focus {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

/* Porto applies theme color to every button hover */
button:hover,
button:focus {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

/* Content links generated by Porto with the old theme color */
.page-main a:hover,
.page-main a:focus,
.page-main a:active {
    color: var(--seart-olive-hover) !important;
}

.page-main a:visited {
    color: var(--seart-text) !important;
}

.product-item-info .product.name a:hover {
    color: var(--seart-olive-hover) !important;
}

.nav-toggle:before,
.block-search .label:before {
    color: var(--seart-text) !important;
}

.nav-toggle:hover:before,
.nav-toggle:focus:before,
.block-search .label:hover:before,
.block-search .label:focus:before {
    color: var(--seart-olive-hover) !important;
}

/* Page titles / form legends must not inherit old brand green */
.page-main > .page-title-wrapper .page-title,
.account .page-main .page-title-wrapper .page-title,
[class^="sales-guest-"] .page-main .page-title-wrapper .page-title,
.sales-guest-view .page-main .page-title-wrapper .page-title,
.fieldset > .legend {
    color: var(--seart-text) !important;
}

/* Prices: bright green is removed from the role of price color */
.product-options-bottom .price-box .price-container .price,
.product-info-price .price-box .price-container .price,
.product-info-main .product-info-price .price-wrapper .price,
.table.grouped .price-box .price,
.cart.table-wrapper .col.subtotal .price {
    color: var(--seart-text) !important;
}

/* Product tabs / active navigation */
.product.data.items > .item.title.active > .switch,
.product.data.items > .item.title.active > .switch:focus,
.product.data.items > .item.title.active > .switch:hover,
.filterproducts-tab .data.items > .item.title[aria-expanded="true"] a.switch,
.block-collapsible-nav .item.current a,
.block-collapsible-nav .item.current strong {
    color: var(--seart-olive) !important;
}

.product.info.detailed.vertical .product.data.items > .item.title.active > .switch,
.product.info.detailed.vertical .product.data.items > .item.title.active > .switch:focus,
.product.info.detailed.vertical .product.data.items > .item.title.active > .switch:hover {
    border-left-color: var(--seart-olive) !important;
}

/* Toolbar view modes and pagination */
.modes-mode.active,
.pages strong.page {
    background-color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
    color: #fff !important;
}

.modes-mode:hover,
.pages .action:hover,
.pages a.page:hover {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

.pages a.page {
    color: var(--seart-text) !important;
}

/* Product gallery / swatches */
.fotorama__nav .fotorama__thumb-border,
.swatch-option.selected {
    border-color: var(--seart-olive) !important;
}

.swatch-option.image:not(.disabled):hover,
.swatch-option.color:not(.disabled):hover,
.swatch-option:not(.disabled):hover {
    border-color: var(--seart-olive-hover) !important;
}

/* =========================================================
   PRODUCT LISTING - PRIMARY CTA
   Logged in and guest states use the same CTA styling.
   Default: olive; hover/focus: dark olive.
   ========================================================= */

/* Guest: "Zobacz więcej"; logged in: "Dodaj do koszyka" / "Sprawdź warianty" */
.products-grid .show-more-button-not-logged button.action,
.products-grid .show-more-button-not-logged .action,
.sprawdz-warianty,
.products-grid .product-item-actions .actions-primary .tocart,
.products-grid .product-item-actions .action.primary,
.products-grid.products.grid.flex-grid .product-item-details .product-item-actions .tocart,
.products-grid.divider-line .product-item-details .product-item-actions .tocart {
    background-color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
    color: #fff !important;
}

.products-grid .show-more-button-not-logged button.action:hover,
.products-grid .show-more-button-not-logged button.action:focus,
.products-grid .show-more-button-not-logged .action:hover,
.products-grid .show-more-button-not-logged .action:focus,
.sprawdz-warianty:hover,
.sprawdz-warianty:focus,
.products-grid .product-item-actions .actions-primary .tocart:hover,
.products-grid .product-item-actions .actions-primary .tocart:focus,
.products-grid .product-item-actions .action.primary:hover,
.products-grid .product-item-actions .action.primary:focus,
.products-grid.products.grid.flex-grid .product-item-details .product-item-actions .tocart:hover,
.products-grid.products.grid.flex-grid .product-item-details .product-item-actions .tocart:focus,
.products-grid.divider-line .product-item-details .product-item-actions .tocart:hover,
.products-grid.divider-line .product-item-details .product-item-actions .tocart:focus {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

/* Secondary listing / quick-view actions explicitly themed by Porto */
.products-grid .product-item-details .product-item-actions .actions-secondary:hover,
.product-item-info.type3 .product-item-photo .product-item-inner .product-item-actions > .action.tocompare:hover,
.product-item-info.type5 .product-item-photo .product-item-inner .product-item-actions > .action.tocompare:hover,
.product-item-info.type6 .product-item-photo .product-item-inner .product-item-actions > .action.tocompare:hover,
.product-item-info.type7 .product-item-inner .product-item-actions > .action:hover,
.product-item-info.type9 .product-item-inner .product-item-actions > .action:hover,
.products-grid .product-item .product-item-info:hover .weltpixel-quickview.weltpixel_quickview_button_v2 {
    background-color: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
}

/* Custom hard-coded grouped product colors */
.grouped-product-specyfication,
.specyfication-popup-header span {
    color: var(--seart-olive) !important;
}

/* Minicart / authentication panels generated with theme border */
.minicart-wrapper .block-minicart,
.authentication-dropdown,
.block-header-customer-login {
    border-top-color: var(--seart-olive) !important;
}

.minicart-wrapper .block-minicart:before,
.block-header-customer-login:before {
    border-bottom-color: var(--seart-olive) !important;
}

/* Minicart icons */
.minicart-items .action.edit:before,
.minicart-items .action.delete:before,
.modal-custom .action-close:before,
.modal-popup .action-close:before,
.modal-slide .action-close:before {
    color: var(--seart-text-muted) !important;
}

.minicart-items .action.edit:hover:before,
.minicart-items .action.delete:hover:before,
.modal-custom .action-close:hover:before,
.modal-popup .action-close:hover:before,
.modal-slide .action-close:hover:before {
    color: var(--seart-olive-hover) !important;
}

/* Checkout / customer navigation old theme-color states */
.opc-progress-bar-item._complete > span,
.checkout-payment-method .payment-option-title .action-toggle,
.checkout-payment-method .payment-option-title .action-toggle:after,
.opc-block-shipping-information .shipping-information-title .action-edit:before {
    color: var(--seart-olive) !important;
}

.block-collapsible-nav .item a:hover,
.block-collapsible-nav .item a:active,
.block-collapsible-nav .item a:focus,
.action-auth-toggle:hover,
.opc-wrapper .edit-address-link:hover,
.checkout-agreements-block .action-show:hover {
    color: var(--seart-olive-hover) !important;
}

/* Contact icons */
.contact-index-index .page-main .contact-info [class^="porto-icon-"],
.contact-index-index .page-main .contact-info [class*=" porto-icon-"] {
    background-color: var(--seart-olive) !important;
    color: #fff !important;
}

/* Mobile filter toggle */
.filter-toggle.active {
    background-color: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
}

/* Quantity controls */
.qty.field .qty-changer > a:hover {
    color: var(--seart-olive-hover) !important;
}

/* Theme-colored decorative components, if present */
.owl-theme .owl-dots .owl-dot.active span {
    background-color: var(--seart-olive) !important;
}

.owl-theme .owl-dots .owl-dot:hover span {
    background-color: var(--seart-olive-hover) !important;
}

.footer-ribbon {
    background-color: var(--seart-footer) !important;
}

.sw-dailydeal,
.catalog-product-view .sw-dailydeal .number-wrapper {
    background-color: var(--seart-olive) !important;
}

/* Keep functional green only for semantic status/success */
.stock.available,
.message.success,
.message-success {
    color: var(--seart-success) !important;
}

/* =========================================================
   PRODUCT PAGE / GALLERY
   ========================================================= */

/* Ikony galerii / zoom / fullscreen */
.fotorama .fotorama-sprite,
.fotorama .fotorama__fullscreen-icon,
.fotorama .fotorama__thumb__arr,
.fotorama .fotorama__arr .fotorama__arr__arr,
.fotorama__fullscreen .fotorama .fotorama__zoom-in,
.fotorama__fullscreen .fotorama .fotorama__zoom-out {
    color: var(--seart-olive) !important;
}

/* Hover/focus kontrolek galerii */
.fotorama .fotorama__fullscreen-icon:hover,
.fotorama .fotorama__fullscreen-icon:focus,
.fotorama__fullscreen .fotorama .fotorama__zoom-in:hover,
.fotorama__fullscreen .fotorama .fotorama__zoom-out:hover {
    color: var(--seart-olive-hover) !important;
}


/* =========================================================
   PRODUCT TABS
   ========================================================= */

.product.data.items > .item.title.active > .switch,
.product.data.items > .item.title.active > .switch:focus,
.product.data.items > .item.title.active > .switch:hover {
    color: var(--seart-olive) !important;
    border-top-color: var(--seart-olive) !important;
}

/* jeśli karta jest w układzie vertical */
.product.info.detailed.vertical
.product.data.items > .item.title.active > .switch,
.product.info.detailed.vertical
.product.data.items > .item.title.active > .switch:focus,
.product.info.detailed.vertical
.product.data.items > .item.title.active > .switch:hover {
    border-left-color: var(--seart-olive) !important;
}

.fotorama__nav .fotorama__thumb-border {
    border-color: var(--seart-olive) !important;
}

/* =========================================================
   PREV / NEXT PRODUCT POPUP
   ========================================================= */

.prev-next-products .product-nav .product-pop {
    border-top-color: var(--seart-olive) !important;
}

.prev-next-products .product-nav .product-pop:before {
    border-bottom-color: var(--seart-olive) !important;
}

/* =========================================================
   PRODUCT TABS / BORDERS
   ========================================================= */

@media (min-width: 768px) {

    /* Kontener treści zakładki */
    .product.data.items > .item.content {
        border-color: var(--seart-border) !important;
    }

    /* Nieaktywne zakładki */
    .product.data.items > .item.title > .switch {
        border-color: var(--seart-border) !important;
    }

    /* Aktywna zakładka */
    .product.data.items > .item.title.active > .switch,
    .product.data.items > .item.title.active > .switch:focus,
    .product.data.items > .item.title.active > .switch:hover {
        border-top-color: var(--seart-olive) !important;
        color: var(--seart-olive) !important;
    }
}

/* =========================================================
   PRODUCT TABS - prevent content flash before JS init
   ========================================================= */

.catalog-product-view
.product.info.detailed
.product.data.items > .item.content:not([aria-hidden]) {
    display: none !important;
}

/* =========================================================
   GROUPED PRODUCT - EMPTY REVIEW/PREVIEW WRAPPER
   ========================================================= */

/*
 * Wrapper contains #newsPreview, which is hidden by default.
 * Keep it available for JS, but do not render a white bar while empty/hidden.
 */
.table-wrapper.grouped .product-info-review-box {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

.table-wrapper.grouped .product-info-review-box #newsPreview[style*="display:none"],
.table-wrapper.grouped .product-info-review-box #newsPreview[style*="display: none"] {
    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   HEADER CONTENT ALIGNMENT
   ========================================================= */

/*
 * Keep logo, search and cart on the same centered content grid as Porto's
 * navigation/page content instead of forcing a wider 1440px header box.
 */
@media (min-width: 768px) {
    .page-header.type1 .header.content {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* =========================================================
   TYPOGRAPHY + HEADER / MENU DIMENSIONS
   Zgodnie z WDROZENIE_MAGENTO.md
   ========================================================= */

/*
 * WAŻNE:
 * Nie zmieniamy font-size na elemencie html.
 * Porto/Magento używa rem w wielu komponentach i zmiana skali root
 * powiększałaby m.in. przyciski, breadcrumb i nagłówki formularzy.
 */
body {
    font-family: "Poppins", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
}

button,
input,
select,
textarea {
    font-family: inherit;
}

/* Small metadata */
.product-info-main .product-info-stock-sku,
.product-info-main .product.attribute.sku,
.product-item .price-box .price-label,
.product-item .stock,
.product-item .product-reviews-summary {
    font-size: 13px;
    line-height: 1.4;
}

/* Footer typography */
.footer-middle,
.footer-bottom {
    font-size: 14px;
    line-height: 1.5;
}


/* Desktop header / menu dimensions */
@media (min-width: 768px) {

    /* Top bar: spec 36–38 px -> 37 px */
    .page-header.type1 > .panel.wrapper {
        min-height: 37px !important;
        height: 37px !important;
    }

    .page-header.type1 > .panel.wrapper .panel.header {
        min-height: 37px;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .page-header.type1 .panel.header .switcher,
    .page-header.type1 .panel.header .switcher a,
    .page-header.type1 .panel.header .header.links > li,
    .page-header.type1 .panel.header .header.links > li > a,
    .page-header.type1 .panel.header .header.links > li > span {
        font-size: 12px;
        line-height: 37px;
    }


    /* Main header: spec 105–115 px -> 110 px */
    .page-header.type1 .header.content {
        min-height: 110px;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box;
    }

    /* Logo: spec about 165–180 px -> 175 px */
    .page-header.type1 .logo {
        width: 175px;
        max-width: 175px;
        margin-top: 27px;
        margin-bottom: 27px;
    }

    .page-header.type1 .logo img {
        display: block;
        width: 175px;
        max-width: 100%;
        max-height: none;
        height: auto;
    }


    /* Search: spec 50–52 px -> 52 px */
    .page-header.type1 .block-search input {
        height: 52px !important;
        border-radius: 3px !important;
        padding-top: 0;
        padding-bottom: 0;
        line-height: 52px;
    }

    .page-header.type1 .block-search .action.search {
        height: 52px !important;
        line-height: 52px !important;
        min-width: 52px;
    }

    .page-header.type1 .block-search .action.search:before {
        line-height: 52px !important;
    }


    /* Main menu: spec 50–54 px -> 52 px */
    .page-header.type1 .navigation > ul {
        min-height: 52px;
    }

    .page-header.type1 .navigation .level0 > .level-top {
        min-height: 52px;
        line-height: 52px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        font-size: 14px;
        font-weight: 500;
    }

    .page-header.type1 .navigation li.level0.parent > a:after {
        line-height: 52px !important;
    }

    /* Dropdown typography must not inherit 52px line-height */
    .page-header.type1 .navigation .level0 .submenu a {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.4;
    }


    /* Sticky menu shadow from specification */
    .page-header.type1.sticky-header .nav-sections {
        box-shadow: 0 8px 24px rgba(37, 38, 34, 0.10);
    }
}

/* =========================================================
   HOMEPAGE HERO
   Zgodnie z WDROZENIE_MAGENTO.md
   ========================================================= */

/*
 * Expected CMS structure:
 * <section class="seart-home-hero">
 *   <div class="seart-home-hero__media">...</div>
 *   <div class="seart-home-hero__overlay"></div>
 *   <div class="seart-home-hero__content">...</div>
 * </section>
 */

.seart-home-hero {
    position: relative;
    overflow: hidden;
    width: calc(100% - 30px);
    max-width: 1280px;
    aspect-ratio: 2.5 / 1;
    background: #E8E4D8;
    border-radius: 4px;
    margin: 0 auto 40px;
}

.seart-home-hero picture,
.seart-home-hero__media,
.seart-home-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
}

.seart-home-hero__media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.seart-home-hero__media img {
    object-fit: cover;
    object-position: center center;
}

.seart-home-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(
            90deg,
            rgba(37, 38, 34, 0.62) 0%,
            rgba(37, 38, 34, 0.46) 34%,
            rgba(37, 38, 34, 0.16) 62%,
            rgba(37, 38, 34, 0.00) 100%
        );
}

.seart-home-hero__content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 56px 72px;
    box-sizing: border-box;
}

.seart-home-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    margin: 0 0 18px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    color: #FFFFFF;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.seart-home-hero__title {
    max-width: 620px;
    margin: 0 0 18px;
    color: #FFFFFF;
    font-size: 48px;
    line-height: 1.1;
    font-weight: 600;
}

.seart-home-hero__text {
    max-width: 560px;
    margin: 0 0 28px;
    color: rgba(255, 255, 255, 0.96);
    font-size: 18px;
    line-height: 1.55;
    font-weight: 400;
}

.seart-home-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.seart-home-hero__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    border: 1px solid var(--seart-olive);
    border-radius: 3px;
    background: var(--seart-olive);
    color: #FFFFFF !important;
    text-decoration: none !important;
    font-size: 15px;
    line-height: 1;
    font-weight: 500;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.seart-home-hero__cta:hover,
.seart-home-hero__cta:focus {
    background: var(--seart-olive-hover);
    border-color: var(--seart-olive-hover);
    color: #FFFFFF !important;
}

.seart-home-hero__cta--ghost {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.45);
}

.seart-home-hero__cta--ghost:hover,
.seart-home-hero__cta--ghost:focus {
    background: rgba(255, 255, 255, 0.20);
    border-color: rgba(255, 255, 255, 0.70);
}

@media (max-width: 1024px) {
    .seart-home-hero {
        aspect-ratio: auto;
        min-height: 500px;
    }

    .seart-home-hero__content {
        min-height: 500px;
        height: auto;
        padding: 48px 44px;
    }

    .seart-home-hero__title {
        font-size: 40px;
    }

    .seart-home-hero__text {
        font-size: 17px;
    }
}

@media (max-width: 767px) {
    .seart-home-hero {
        width: calc(100% - 30px);
        min-height: 480px;
        margin: 0 auto 28px;
        border-radius: 4px;
    }

    .seart-home-hero__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(37, 38, 34, 0.20) 0%,
                rgba(37, 38, 34, 0.52) 44%,
                rgba(37, 38, 34, 0.78) 100%
            );
    }

    .seart-home-hero__content {
        min-height: 480px;
        justify-content: flex-end;
        padding: 28px 20px 24px;
    }

    .seart-home-hero__eyebrow {
        margin-bottom: 14px;
        font-size: 12px;
    }

    .seart-home-hero__title {
        max-width: none;
        margin-bottom: 14px;
        font-size: 32px;
        line-height: 1.12;
    }

    .seart-home-hero__text {
        max-width: none;
        margin-bottom: 22px;
        font-size: 16px;
        line-height: 1.5;
    }

    .seart-home-hero__actions {
        width: 100%;
        gap: 10px;
    }

    .seart-home-hero__cta {
        width: 100%;
        min-height: 46px;
        font-size: 15px;
    }
}

@media (max-width: 390px) {
    .seart-home-hero__title {
        font-size: 28px;
    }

    .seart-home-hero__text {
        font-size: 15px;
    }
}

/* =========================================================
   HOMEPAGE - FEATURED CATEGORIES
   Zgodnie z WDROZENIE_MAGENTO.md
   ========================================================= */

.seart-featured-categories {
    width: calc(100% - 30px);
    max-width: 1280px;
    margin: 0 auto 56px;
}

.seart-featured-categories__header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.seart-featured-categories__title {
    margin: 0;
    color: var(--seart-text);
    font-size: 36px;
    line-height: 1.15;
    font-weight: 600;
}

.seart-featured-categories__all {
    flex: 0 0 auto;
    color: var(--seart-text-muted) !important;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: color .2s ease;
}

.seart-featured-categories__all:hover,
.seart-featured-categories__all:focus {
    color: var(--seart-olive-hover) !important;
}

.seart-featured-categories__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.seart-category-card {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    border-radius: 4px;
    background: var(--seart-beige);
    text-decoration: none !important;
}

.seart-category-card picture,
.seart-category-card__media,
.seart-category-card__media img {
    display: block;
    width: 100%;
    height: 100%;
}

.seart-category-card__media {
    position: absolute;
    inset: 0;
}

.seart-category-card__media img {
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform 380ms ease;
}

.seart-category-card::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 60px;
    background: rgba(37, 38, 34, 0.72);
    pointer-events: none;
}

.seart-category-card__label {
    position: absolute;
    z-index: 2;
    left: 16px;
    right: 16px;
    bottom: 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: #FFFFFF;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
}

.seart-category-card__arrow {
    flex: 0 0 auto;
    font-size: 22px;
    line-height: 1;
    transition: transform .2s ease;
}

.seart-category-card:hover .seart-category-card__media img,
.seart-category-card:focus .seart-category-card__media img {
    transform: scale(1.025);
}

.seart-category-card:hover .seart-category-card__arrow,
.seart-category-card:focus .seart-category-card__arrow {
    transform: translateX(3px);
}

.seart-category-card:focus-visible {
    outline: 2px solid var(--seart-olive-hover);
    outline-offset: 3px;
}

@media (max-width: 1024px) {
    .seart-featured-categories__title {
        font-size: 32px;
    }

    .seart-featured-categories__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }
}

@media (max-width: 767px) {
    .seart-featured-categories {
        margin-bottom: 40px;
    }

    .seart-featured-categories__header {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 18px;
    }

    .seart-featured-categories__title {
        font-size: 28px;
    }

    .seart-featured-categories__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .seart-category-card__label {
        left: 18px;
        right: 18px;
        bottom: 17px;
        font-size: 17px;
    }
}

@media (max-width: 767px) {
    .seart-category-card::after {
        height: 56px;
    }
}

/* =========================================================
   HOMEPAGE - BENEFITS / "WIĘCEJ NIŻ DOSTĘP DO PRODUKTÓW"
   Zgodnie z WDROZENIE_MAGENTO.md
   ========================================================= */

.seart-benefits {
    width: 100%;
    margin: 0;
    padding: 48px 0 44px;
    background: var(--seart-bg);
}

.seart-benefits__inner {
    width: calc(100% - 30px);
    max-width: 1280px;
    margin: 0 auto;
}

.seart-benefits__header {
    max-width: 760px;
    margin: 0 auto 38px;
    text-align: center;
}

.seart-benefits__title {
    position: relative;
    margin: 0 0 16px;
    padding-bottom: 16px;
    color: var(--seart-text);
    font-size: 36px;
    line-height: 1.15;
    font-weight: 500;
}

.seart-benefits__title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 54px;
    height: 2px;
    background: var(--seart-olive);
    transform: translateX(-50%);
}

.seart-benefits__intro {
    margin: 0;
    color: var(--seart-text-muted);
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
}

.seart-benefits__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.seart-benefit {
    position: relative;
    min-width: 0;
    padding: 0 30px;
    text-align: center;
}

.seart-benefit + .seart-benefit {
    border-left: 1px solid var(--seart-border);
}

.seart-benefit__icon {
    display: block;
    width: 78px;
    height: 78px;
    margin: 0 auto 18px;
    object-fit: contain;
}

.seart-benefit__title {
    position: relative;
    margin: 0;
    padding-bottom: 16px;
    color: var(--seart-text);
    font-size: 17px;
    line-height: 1.3;
    font-weight: 600;
}

.seart-benefit__title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 36px;
    height: 1px;
    background: var(--seart-accent-soft);
    transform: translateX(-50%);
}


/* Tablet: 2 x 2 */
@media (max-width: 1024px) {
    .seart-benefits {
        padding: 42px 0 38px;
    }

    .seart-benefits__title {
        font-size: 32px;
    }

    .seart-benefits__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 34px;
    }

    .seart-benefit {
        padding: 0 24px;
    }

    .seart-benefit:nth-child(3) {
        border-left: 0;
    }

    .seart-benefit:nth-child(n+3) {
        padding-top: 30px;
        border-top: 1px solid var(--seart-border);
    }
}


/* Phone: 1 column */
@media (max-width: 767px) {
    .seart-benefits {
        padding: 36px 0 34px;
    }

    .seart-benefits__header {
        margin-bottom: 28px;
    }

    .seart-benefits__title {
        font-size: 28px;
    }

    .seart-benefits__intro {
        font-size: 14px;
    }

    .seart-benefits__grid {
        grid-template-columns: 1fr;
        row-gap: 0;
    }

    .seart-benefit {
        padding: 26px 12px;
        border-left: 0 !important;
        border-top: 1px solid var(--seart-border);
    }

    .seart-benefit:first-child {
        padding-top: 0;
        border-top: 0;
    }

    .seart-benefit__icon {
        width: 74px;
        height: 74px;
        margin-bottom: 14px;
    }

    .seart-benefit__title {
        font-size: 16px;
    }
}

/* Benefits cards are links to the existing "Dlaczego warto" page */
a.seart-benefit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: inherit !important;
    text-decoration: none !important;
}

a.seart-benefit:hover,
a.seart-benefit:focus {
    color: inherit !important;
    text-decoration: none !important;
}

a.seart-benefit:hover .seart-benefit__title,
a.seart-benefit:focus-visible .seart-benefit__title {
    color: var(--seart-olive-hover) !important;
}

a.seart-benefit:focus {
    outline: none;
}

a.seart-benefit:focus-visible {
    outline: none;
}

a.seart-benefit:focus-visible .seart-benefit__title {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 5px;
}

/* Stabilizacja layoutu sekcji benefits względem styli Porto */
.seart-benefits__grid > a.seart-benefit {
    float: none !important;
    width: auto !important;
}

.seart-benefits__grid > a.seart-benefit .seart-benefit__icon {
    float: none !important;
    flex: 0 0 auto;
    margin-left: auto !important;
    margin-right: auto !important;
}

.seart-benefits__grid > a.seart-benefit .seart-benefit__title {
    display: block;
    width: 100%;
    text-align: center;
}

/* =========================================================
   FOOTER - FINAL LIFTING
   Dolny pasek + dopracowanie istniejących kolumn
   ========================================================= */

.footer-middle {
    padding-top: 44px !important;
    padding-bottom: 38px !important;
}

.footer-middle .block-title,
.footer-middle .block-title strong,
.footer-middle h3,
.footer-middle h4 {
    margin-bottom: 18px;
    color: var(--seart-footer-text) !important;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
    text-transform: uppercase;
}

.footer-middle ul {
    margin: 0;
    padding: 0;
}

.footer-middle li {
    margin-bottom: 10px;
    line-height: 1.5;
}

.footer-middle li:last-child {
    margin-bottom: 0;
}

.footer-middle a {
    transition: color 180ms ease;
}

.footer-bottom {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.footer-bottom .container {
    border-top: 1px solid rgba(255, 255, 255, 0.28);
}

.seart-footer-signature {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    min-height: 72px;
    color: var(--seart-footer-muted);
    font-size: 12px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.seart-footer-signature__brand,
.seart-footer-signature__claim {
    display: flex;
    align-items: center;
}

.seart-footer-signature__brand {
    flex: 0 0 auto;
    color: var(--seart-footer-text);
}

.seart-footer-signature__brand-main {
    color: var(--seart-footer-text);
}

.seart-footer-signature__brand-sub {
    color: var(--seart-footer-muted);
}

.seart-footer-signature__divider {
    display: block;
    width: 1px;
    height: 16px;
    margin: 0 16px;
    background: rgba(255, 255, 255, 0.32);
}

.seart-footer-signature__claim {
    flex: 1 1 auto;
    justify-content: flex-end;
    gap: 22px;
    color: var(--seart-footer-muted);
    text-align: right;
}

.seart-footer-signature__claim-line {
    display: block;
    flex: 0 0 58px;
    width: 58px;
    height: 1px;
    background: var(--seart-accent-soft);
}

.footer-middle [class^="porto-icon-"],
.footer-middle [class*=" porto-icon-"],
.footer-middle .theme-color {
    color: var(--seart-accent-soft) !important;
}

@media (max-width: 767px) {
    .footer-middle {
        padding-top: 34px !important;
        padding-bottom: 28px !important;
    }

    .seart-footer-signature {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: 14px;
        min-height: 94px;
        padding: 18px 0;
        font-size: 11px;
    }

    .seart-footer-signature__claim {
        width: 100%;
        justify-content: flex-start;
        text-align: left;
    }

    .seart-footer-signature__claim-line {
        flex-basis: 42px;
        width: 42px;
    }
}

/* =========================================================
   PRODUCT PAGE - PARTNER MATERIALS / MAGEPLAZA ATTACHMENTS
   ========================================================= */

.catalog-product-view .seart-partner-materials {
    clear: both;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
    width: 100%;
    margin: 34px 0 38px;
    padding: 26px 32px;
    background: var(--seart-bg);
    border: 1px solid var(--seart-border);
    border-radius: 4px;
}

.catalog-product-view .seart-partner-materials__intro {
    display: flex;
    align-items: center;
    gap: 24px;
    min-width: 0;
}

.catalog-product-view .seart-partner-materials__folder {
    display: flex;
    flex: 0 0 66px;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    color: var(--seart-olive);
}

.catalog-product-view .seart-partner-materials__folder svg {
    display: block;
    width: 62px;
    height: 62px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.catalog-product-view .seart-partner-materials__copy {
    min-width: 0;
}

.catalog-product-view .seart-partner-materials__title {
    margin: 0 0 7px;
    color: var(--seart-text);
    font-size: 22px;
    line-height: 1.25;
    font-weight: 600;
}

.catalog-product-view .seart-partner-materials__description {
    margin: 0;
    color: var(--seart-text-muted);
    font-size: 14px;
    line-height: 1.5;
}

.catalog-product-view .seart-partner-materials__actions {
    flex: 0 1 430px;
    min-width: 300px;
}

.catalog-product-view .seart-partner-materials__actions-list {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
}

.catalog-product-view .seart-partner-materials__action-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}

.catalog-product-view .seart-partner-materials__button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 11px;
    width: 100%;
    min-height: 52px;
    padding: 12px 20px;
    background: var(--seart-olive) !important;
    border: 1px solid var(--seart-olive) !important;
    border-radius: 3px;
    color: #fff !important;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: 0.01em;
    text-align: center;
    text-decoration: none !important;
    transition:
        background-color 180ms ease,
        border-color 180ms ease;
}

.catalog-product-view a.seart-partner-materials__button:hover,
.catalog-product-view a.seart-partner-materials__button:focus {
    background: var(--seart-olive-hover) !important;
    border-color: var(--seart-olive-hover) !important;
    color: #fff !important;
    text-decoration: none !important;
}

.catalog-product-view a.seart-partner-materials__button:focus-visible {
    outline: 2px solid var(--seart-olive-hover);
    outline-offset: 3px;
}

.catalog-product-view .seart-partner-materials__button.is-disabled {
    cursor: not-allowed;
    opacity: 0.58;
}

.catalog-product-view .seart-partner-materials__button-icon {
    display: inline-flex;
    flex: 0 0 18px;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
}

.catalog-product-view .seart-partner-materials__button-icon svg {
    display: block;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.catalog-product-view .seart-partner-materials__meta {
    display: block;
    color: var(--seart-text-muted);
    font-size: 12px;
    line-height: 1.4;
    text-align: center;
}

.catalog-product-view .seart-partner-materials__restricted {
    color: var(--seart-text-muted);
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}

/*
 * The original Mageplaza inline template is replaced in the child theme,
 * but neutralize old wrappers/styles in case another layout location is enabled.
 */
.catalog-product-view .seart-partner-materials .mp-attachment-tab,
.catalog-product-view .seart-partner-materials .mp-attachment-container {
    margin: 0 !important;
}

@media (max-width: 1024px) {
    .catalog-product-view .seart-partner-materials {
        gap: 26px;
        padding: 24px 26px;
    }

    .catalog-product-view .seart-partner-materials__actions {
        flex-basis: 380px;
    }
}

@media (max-width: 767px) {
    .catalog-product-view .seart-partner-materials {
        flex-direction: column;
        align-items: stretch;
        gap: 24px;
        margin: 28px 0 30px;
        padding: 24px 20px;
    }

    .catalog-product-view .seart-partner-materials__intro {
        align-items: flex-start;
        gap: 17px;
    }

    .catalog-product-view .seart-partner-materials__folder {
        flex-basis: 52px;
        width: 52px;
        height: 52px;
    }

    .catalog-product-view .seart-partner-materials__folder svg {
        width: 50px;
        height: 50px;
    }

    .catalog-product-view .seart-partner-materials__title {
        font-size: 19px;
    }

    .catalog-product-view .seart-partner-materials__description {
        font-size: 13px;
    }

    .catalog-product-view .seart-partner-materials__actions {
        flex: none;
        min-width: 0;
        width: 100%;
    }

    .catalog-product-view .seart-partner-materials__button {
        min-height: 50px;
        padding-left: 16px;
        padding-right: 16px;
        font-size: 11px;
    }
}

/* =========================================================
   HEADER TYPE 1 - TOP BAR VERTICAL ALIGNMENT
   Waluta / język / linki konta
   ========================================================= */

@media (min-width: 768px) {

    .page-header.type1 > .panel.wrapper {
        min-height: 38px !important;
        height: 38px !important;
    }

    .page-header.type1 > .panel.wrapper > .panel.header {
        display: flex !important;
        align-items: center !important;
        min-height: 38px !important;
        height: 38px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box;
    }

    /* Waluta + język */
    .page-header.type1 .panel.header > .switcher {
        display: flex !important;
        align-items: center !important;
        align-self: stretch;
        height: 38px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .page-header.type1 .panel.header .switcher .switcher-options,
    .page-header.type1 .panel.header .switcher .switcher-trigger {
        display: flex !important;
        align-items: center !important;
        height: 100%;
        margin: 0 !important;
    }

    .page-header.type1 .panel.header .switcher .switcher-trigger > strong,
    .page-header.type1 .panel.header .switcher .switcher-trigger > strong > span {
        display: inline-flex;
        align-items: center;
        min-height: 38px;
        line-height: 1.2 !important;
    }

    .page-header.type1 .panel.header .switcher-language .switcher-trigger img {
        display: inline-block;
        flex: 0 0 auto;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        margin-right: 7px;
        vertical-align: middle;
    }

    /* Prawa część: Sprzedaż hurtowa / kontakt / logowanie / konto */
    .page-header.type1 .panel.header > .header.links {
        display: flex !important;
        align-items: stretch !important;
        align-self: stretch;
        height: 38px !important;
        margin: 0 0 0 auto !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .page-header.type1 .panel.header > .header.links > li:not(.hide) {
        display: flex !important;
        align-items: center !important;
        height: 38px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        line-height: 1.2 !important;
    }

    .page-header.type1 .panel.header > .header.links > li:not(.hide) > a,
    .page-header.type1 .panel.header > .header.links > li:not(.hide) > span {
        display: flex !important;
        align-items: center !important;
        height: 100%;
        line-height: 1.2 !important;
    }

    /* Elementy oznaczone przez Magento/Porto jako ukryte mają pozostać ukryte. */
    .page-header.type1 .panel.header > .header.links > li.hide {
        display: none !important;
    }

    /* Nie pozwalamy wcześniejszej regule line-height:37px przesuwać tekstu */
    .page-header.type1 .panel.header .switcher,
    .page-header.type1 .panel.header .switcher a,
    .page-header.type1 .panel.header .header.links > li:not(.hide),
    .page-header.type1 .panel.header .header.links > li:not(.hide) > a,
    .page-header.type1 .panel.header .header.links > li:not(.hide) > span {
        line-height: 1.2 !important;
    }
}

/* =========================================================
   HEADER TYPE 1 - TOP BAR ORDER FIX
   Waluta i język pozostają po lewej; zmieniamy wyłącznie
   pionowe wyrównanie elementów.
   ========================================================= */

@media (min-width: 768px) {

    .page-header.type1 > .panel.wrapper > .panel.header {
        flex-direction: row !important;
    }

    .page-header.type1 .panel.header > .switcher {
        float: none !important;
    }

    .page-header.type1 .panel.header > .switcher-currency {
        order: 1 !important;
        margin-left: 0 !important;
    }

    .page-header.type1 .panel.header > .switcher-language {
        order: 2 !important;
    }

    .page-header.type1 .panel.header > .header.links {
        order: 3 !important;
        float: none !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }

    /*
     * Skip-link pozostaje funkcjonalny dla klawiatury,
     * ale nie bierze udziału w wizualnym układzie topbara.
     */
    .page-header.type1 .panel.header > .action.skip.contentarea {
        order: 0 !important;
    }
}

/* =========================================================
   PRODUCT PAGE - TYPOGRAPHY ALIGNMENT WITH CLIENT MOCK-UP
   Scope: product view only. Do not change global/root font size.
   ========================================================= */

/* Main product title */
.catalog-product-view .product-info-main .page-title-wrapper .page-title,
.catalog-product-view .product-info-main .page-title {
    font-size: 30px !important;
    line-height: 1.18 !important;
    font-weight: 600 !important;
    letter-spacing: -0.015em;
}

/* Product metadata: SKU / lead time / helper information */
.catalog-product-view .product-info-main .product-info-stock-sku,
.catalog-product-view .product-info-main .product.attribute.sku,
.catalog-product-view .product-info-main .product.attribute.sku .type,
.catalog-product-view .product-info-main .product.attribute.sku .value {
    font-size: 13px !important;
    line-height: 1.4 !important;
}

/* Tabs */
.catalog-product-view .product.data.items > .item.title > .switch {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

.catalog-product-view .product.data.items > .item.title.active > .switch {
    font-weight: 500 !important;
}

/* Tab content: keep the product-information area lighter than the global 16px body */
.catalog-product-view .product.info.detailed .product.data.items > .item.content {
    font-size: 14px;
    line-height: 1.5;
}

/* Technical specification table */
.catalog-product-view #product-attribute-specs-table,
.catalog-product-view .additional-attributes-wrapper .data.table.additional {
    width: auto;
    min-width: 410px;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.catalog-product-view #product-attribute-specs-table th,
.catalog-product-view #product-attribute-specs-table td,
.catalog-product-view .additional-attributes-wrapper .data.table.additional th,
.catalog-product-view .additional-attributes-wrapper .data.table.additional td {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.catalog-product-view #product-attribute-specs-table th,
.catalog-product-view .additional-attributes-wrapper .data.table.additional th {
    font-weight: 600 !important;
}

/* Headings inside the detailed-information panel, e.g. "SPECYFIKACJA TECHNICZNA" */
.catalog-product-view .product.info.detailed .item.content h2,
.catalog-product-view .product.info.detailed .item.content h3,
.catalog-product-view .product.info.detailed .item.content h4 {
    font-size: 15px;
    line-height: 1.35;
    font-weight: 600;
}

/* Grouped product table - proportions from the supplied grouped-product mock-up */
.catalog-product-view .table-wrapper.grouped table.grouped thead th,
.catalog-product-view .table-wrapper.grouped .table.grouped thead th {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

.catalog-product-view .table-wrapper.grouped table.grouped tbody td,
.catalog-product-view .table-wrapper.grouped .table.grouped tbody td {
    font-size: 12px;
    line-height: 1.4;
}

.catalog-product-view .table-wrapper.grouped .product-item-name,
.catalog-product-view .table-wrapper.grouped .product-item-name a {
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.catalog-product-view .table-wrapper.grouped .price-box .price {
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}

.catalog-product-view .table-wrapper.grouped .old-price .price {
    font-size: 12px !important;
    font-weight: 400 !important;
}

/* Partner materials: title in the mock-up is slightly smaller than v20-v23 */
.catalog-product-view .seart-partner-materials__title {
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
}

.catalog-product-view .seart-partner-materials__description {
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.catalog-product-view .seart-partner-materials__button {
    font-size: 12px !important;
}

.catalog-product-view .seart-partner-materials__meta {
    font-size: 12px !important;
}

/* Mobile */
@media (max-width: 767px) {
    .catalog-product-view .product-info-main .page-title-wrapper .page-title,
    .catalog-product-view .product-info-main .page-title {
        font-size: 26px !important;
        line-height: 1.2 !important;
    }

    .catalog-product-view #product-attribute-specs-table,
    .catalog-product-view .additional-attributes-wrapper .data.table.additional {
        min-width: 0;
        width: 100%;
    }

    .catalog-product-view #product-attribute-specs-table th,
    .catalog-product-view #product-attribute-specs-table td,
    .catalog-product-view .additional-attributes-wrapper .data.table.additional th,
    .catalog-product-view .additional-attributes-wrapper .data.table.additional td {
        font-size: 13px !important;
    }

    .catalog-product-view .seart-partner-materials__title {
        font-size: 19px !important;
    }
}

/* =========================================================
   PRODUCT PAGE - TECHNICAL SPECIFICATION EXACT MARKUP FIX
   Actual markup:
   #additional
   .technical-specification-header
   #product-attribute-specs-table.additional-attributes
   .product-specifications-label / .product-specifications-value
   ========================================================= */

body.catalog-product-view #additional .technical-specification-header {
    margin: 0 0 10px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes {
    width: auto !important;
    min-width: 410px;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row
.product-specifications-label,
body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row
.product-specifications-value {
    font-size: 13px !important;
    line-height: 1.35 !important;
}

body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row
.product-specifications-label {
    font-weight: 600 !important;
}

body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row
.product-specifications-value {
    font-weight: 400 !important;
}

body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row > th,
body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
.technical-specification-table-row > td {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

@media (max-width: 767px) {
    body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.catalog-product-view #additional .technical-specification-header {
        font-size: 14px !important;
    }

    body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
    .technical-specification-table-row
    .product-specifications-label,
    body.catalog-product-view #additional #product-attribute-specs-table.additional-attributes
    .technical-specification-table-row
    .product-specifications-value {
        font-size: 13px !important;
    }
}

/* =========================================================
   PRODUCT PAGE - PARTNER MATERIALS BUTTON TYPOGRAPHY
   Mock-up: white label/icon on olive button, compact 12px text.
   ========================================================= */

body.catalog-product-view a.seart-partner-materials__button,
body.catalog-product-view a.seart-partner-materials__button:visited,
body.catalog-product-view a.seart-partner-materials__button span {
    color: #FFFFFF !important;
}

body.catalog-product-view a.seart-partner-materials__button {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
}

body.catalog-product-view a.seart-partner-materials__button
.seart-partner-materials__button-icon,
body.catalog-product-view a.seart-partner-materials__button
.seart-partner-materials__button-icon svg,
body.catalog-product-view a.seart-partner-materials__button
.seart-partner-materials__button-icon svg path {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

body.catalog-product-view a.seart-partner-materials__button:hover,
body.catalog-product-view a.seart-partner-materials__button:focus,
body.catalog-product-view a.seart-partner-materials__button:hover span,
body.catalog-product-view a.seart-partner-materials__button:focus span {
    color: #FFFFFF !important;
}

/* =========================================================
   PRODUCT PAGE - TAB TYPOGRAPHY REGRESSION FIX
   Restore the lighter active-tab label from the earlier version.
   ========================================================= */

body.catalog-product-view .product.data.items > .item.title > .switch,
body.catalog-product-view .product.data.items > .item.title.active > .switch,
body.catalog-product-view .product.data.items > .item.title.active > .switch:hover,
body.catalog-product-view .product.data.items > .item.title.active > .switch:focus {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

/* =========================================================
   PRODUCT PAGE - TAB LABEL VERTICAL POSITION
   Move the tab label slightly lower without changing tab height/borders.
   ========================================================= */

body.catalog-product-view .product.data.items > .item.title > .switch {
    position: relative;
    top: 2px;
}

/* =========================================================
   PRODUCT PAGE - TAB LABEL VERTICAL POSITION v2
   Previous 2px shift was not enough; move label 5px down.
   ========================================================= */

body.catalog-product-view .product.data.items > .item.title > .switch {
    top: 5px !important;
}

/* =========================================================
   PRODUCT PAGE - TAB LABEL VERTICAL POSITION v3
   Keep the tab/border in place and move ONLY the text.
   Screenshot comparison: desired text is ~6px lower.
   ========================================================= */

body.catalog-product-view .product.data.items > .item.title > .switch {
    top: 0 !important;
}

body.catalog-product-view .product.data.items > .item.title > .switch > span {
    position: relative !important;
    top: 6px !important;
}

/* =========================================================
   PRODUCT PAGE - GPSR TAB
   Visibility is controlled by itdesk_b2b safetyinstruction.phtml
   based on the instrukcja_bezpieczenstwa product attribute.
   ========================================================= */

/* Magento controls visibility of #safetyinstruction; reveal only its inner content. */
body.catalog-product-view #safetyinstruction .safety-instructions {
    max-width: 760px;
    margin: 0;
    padding: 0;
    color: var(--seart-text);
    font-size: 13px;
    line-height: 1.55;
}

body.catalog-product-view #safetyinstruction .safety-instructions h2,
body.catalog-product-view #safetyinstruction .safety-instructions h3,
body.catalog-product-view #safetyinstruction .safety-instructions h4 {
    margin: 0 0 14px;
    color: var(--seart-text);
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

body.catalog-product-view #safetyinstruction .safety-instructions p {
    margin: 0 0 8px;
    color: var(--seart-text);
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 400;
}

body.catalog-product-view #safetyinstruction .safety-instructions p:last-child {
    margin-bottom: 0;
}

body.catalog-product-view #tab-label-safetyinstruction > .switch {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

body.catalog-product-view #tab-label-safetyinstruction > .switch > span {
    position: relative !important;
    top: 6px !important;
}

@media (max-width: 767px) {
    body.catalog-product-view #safetyinstruction .safety-instructions {
        max-width: none;
        width: 100%;
    }
}

/* =========================================================
   PRODUCT PAGE - GROUPED PRODUCT
   Exact markup verified on #super-product-table.
   ========================================================= */

body.catalog-product-view .table-wrapper.grouped {
    margin: 20px 0 0;
    overflow: visible;
}

body.catalog-product-view .table-wrapper.grouped #tabela-grupowane {
    width: 100%;
}

body.catalog-product-view #super-product-table {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    background: transparent;
}

body.catalog-product-view #super-product-table > thead > tr > th {
    height: auto;
    padding: 0 10px 11px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--seart-beige) !important;
    background: transparent !important;
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    text-transform: none;
    vertical-align: bottom;
}

body.catalog-product-view #super-product-table > thead > tr > th:first-child {
    width: 90px;
    padding-left: 8px !important;
    padding-right: 12px !important;
}

body.catalog-product-view #super-product-table > thead > tr > th.col.item {
    text-align: left !important;
}

body.catalog-product-view #super-product-table > thead > tr > th.col.qty:last-child {
    width: 112px;
    text-align: center !important;
}

body.catalog-product-view #super-product-table > tbody {
    border: 0;
}

body.catalog-product-view #super-product-table > tbody > tr {
    border: 0;
    border-bottom: 1px solid var(--seart-beige);
    background: transparent;
}

body.catalog-product-view #super-product-table > tbody > tr > td {
    padding: 14px 10px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--seart-text);
    font-size: 12px;
    line-height: 1.4;
    vertical-align: top;
}

body.catalog-product-view #super-product-table > tbody > tr > td:first-child {
    width: 90px;
    padding-left: 8px !important;
    padding-right: 12px !important;
}

body.catalog-product-view #super-product-table .grouped-product-image {
    display: block;
    width: 70px !important;
    height: 70px !important;
    max-width: none;
    margin: 0;
    border: 1px solid var(--seart-border);
    border-radius: 2px;
    background: var(--seart-surface);
    object-fit: cover;
    transition: opacity 180ms ease, border-color 180ms ease;
}

body.catalog-product-view #super-product-table .grouped-product-image:hover {
    opacity: .88;
    border-color: var(--seart-olive);
}

body.catalog-product-view #super-product-table td.col.item {
    padding-left: 8px !important;
    padding-right: 16px !important;
}

body.catalog-product-view #super-product-table .product-item-name {
    display: block;
    margin: 0 0 3px;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body.catalog-product-view #super-product-table .sku-grupped,
body.catalog-product-view #super-product-table .lead-time {
    margin: 0 0 2px;
    color: var(--seart-text-muted);
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400;
}

body.catalog-product-view #super-product-table .price-box {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0 5px;
    margin: 2px 0 1px !important;
}

body.catalog-product-view #super-product-table .price-box .price-container,
body.catalog-product-view #super-product-table .price-box .price-wrapper {
    line-height: 1 !important;
}

body.catalog-product-view #super-product-table .price-box .price {
    color: var(--seart-text) !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
}

body.catalog-product-view #super-product-table .b2b-netto-label {
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    white-space: nowrap;
}

body.catalog-product-view #super-product-table .grouped-product-specyfication {
    display: inline-block;
    margin-top: 3px;
    color: var(--seart-olive) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    cursor: pointer;
    transition: color 180ms ease;
}

body.catalog-product-view #super-product-table .grouped-product-specyfication:hover,
body.catalog-product-view #super-product-table .grouped-product-specyfication:focus {
    color: var(--seart-olive-hover) !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.catalog-product-view #super-product-table td.col.qty {
    width: 112px;
    padding-left: 6px !important;
    padding-right: 8px !important;
    text-align: center;
    vertical-align: top;
}

body.catalog-product-view #super-product-table td.col.qty .control.qty {
    margin: 0 auto;
}

/* Porto quantity control: keep its existing +/- behaviour, only normalize sizing. */
body.catalog-product-view #super-product-table .control.qty .input-text.qty {
    height: 42px !important;
    min-height: 42px !important;
    border-color: var(--seart-border) !important;
    border-radius: 0 !important;
    background: var(--seart-surface) !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    box-shadow: none !important;
}

body.catalog-product-view #super-product-table .qty.field .qty-changer > a,
body.catalog-product-view #super-product-table .control.qty .qty-changer > a {
    border-color: var(--seart-border) !important;
    background: var(--seart-surface) !important;
    color: var(--seart-text-muted) !important;
    transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease;
}

body.catalog-product-view #super-product-table .qty.field .qty-changer > a:hover,
body.catalog-product-view #super-product-table .control.qty .qty-changer > a:hover {
    border-color: var(--seart-olive) !important;
    background: var(--seart-bg) !important;
    color: var(--seart-olive-hover) !important;
}

/* Grouped-product add-to-cart CTA */
body.catalog-product-view .table-wrapper.grouped + .box-tocart,
body.catalog-product-view #tabela-grupowane + .box-tocart,
body.catalog-product-view .product-add-form .box-tocart {
    margin-top: 18px;
}

body.catalog-product-view .product-add-form .box-tocart .fieldset {
    margin: 0;
}

body.catalog-product-view .product-add-form .box-tocart .actions {
    display: block;
}

body.catalog-product-view .product-add-form #product-addtocart-button {
    min-width: 164px;
    min-height: 44px;
    padding: 12px 22px !important;
    border: 1px solid var(--seart-olive) !important;
    border-radius: 2px !important;
    background: var(--seart-olive) !important;
    color: #FFFFFF !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    text-transform: none;
    box-shadow: none !important;
    transition: background-color 180ms ease, border-color 180ms ease;
}

body.catalog-product-view .product-add-form #product-addtocart-button:hover,
body.catalog-product-view .product-add-form #product-addtocart-button:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
    color: #FFFFFF !important;
}

/* Grouped product image/specification popup */
body.catalog-product-view #newsPreview {
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    width: calc(100% - 48px) !important;
    max-width: 760px !important;
    max-height: calc(100vh - 80px) !important;
    margin: 0 !important;
    padding: 28px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: var(--seart-surface) !important;
    box-shadow: 0 18px 50px rgba(37,38,34,.18) !important;
    transform: translate(-50%, -50%);
    overflow: auto !important;
}

body.catalog-product-view #newsPreview .image-close,
body.catalog-product-view #newsPreview .specification-close {
    width: 36px !important;
    height: 36px !important;
    margin: -8px -8px 8px 12px !important;
    color: var(--seart-text) !important;
    font-size: 24px !important;
    line-height: 36px !important;
    text-align: center;
}

body.catalog-product-view #newsPreview .specyfication-popup-header {
    margin: 0 42px 22px 0;
    color: var(--seart-text) !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 600;
    text-align: left !important;
}

body.catalog-product-view #newsPreview .specyfication-popup-header span {
    color: var(--seart-olive) !important;
}

body.catalog-product-view #newsPreview table {
    width: 100%;
    border-collapse: collapse;
}

body.catalog-product-view #newsPreview table th,
body.catalog-product-view #newsPreview table td {
    padding: 8px 10px !important;
    border-bottom: 1px solid var(--seart-border) !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    text-align: left;
}

body.catalog-product-view #newsPreview table th {
    width: 52%;
    font-weight: 600 !important;
}

/* Safe intermediate breakpoint for the grouped table. */
@media (max-width: 991px) {
    body.catalog-product-view #super-product-table > thead > tr > th:first-child,
    body.catalog-product-view #super-product-table > tbody > tr > td:first-child {
        width: 72px;
    }

    body.catalog-product-view #super-product-table .grouped-product-image {
        width: 58px !important;
        height: 58px !important;
    }

    body.catalog-product-view #super-product-table > thead > tr > th.col.qty:last-child,
    body.catalog-product-view #super-product-table td.col.qty {
        width: 98px;
    }
}

@media (max-width: 767px) {
    body.catalog-product-view #newsPreview {
        top: 16px !important;
        left: 12px !important;
        width: calc(100% - 24px) !important;
        max-height: calc(100vh - 32px) !important;
        padding: 18px !important;
        transform: none;
    }
}

/* =========================================================
   GROUPED PRODUCT POPUP - REMOVE PAGE DIMMING
   The original Porto template adds class "no-scroll" to html/body
   and sets background-color: gray. Keep scroll locking, but remove
   the visual darkening behind the specification popup.
   ========================================================= */

html.no-scroll,
body.no-scroll {
    background-color: var(--seart-bg) !important;
}

/* Keep the popup visually separated from the page without dimming it. */
body.catalog-product-view #newsPreview {
    box-shadow: 0 18px 50px rgba(37, 38, 34, .16) !important;
}

/* =========================================================
   MINICART - SEART B2B VISUAL CLEANUP
   ========================================================= */

body .minicart-wrapper .block-minicart {
    width: 390px !important;
    max-width: calc(100vw - 24px);
    padding: 22px 18px 18px !important;
    border: 1px solid var(--seart-border) !important;
    border-top: 3px solid var(--seart-olive) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    box-shadow: 0 10px 30px rgba(37, 38, 34, .12) !important;
    color: var(--seart-text);
}

/* Small Porto/Magento pointer above the dropdown */
body .minicart-wrapper .block-minicart:before {
    border-bottom-color: var(--seart-olive) !important;
}

body .minicart-wrapper .block-minicart:after {
    border-bottom-color: var(--seart-surface) !important;
}

/* Close button - remove the large olive square */
body .minicart-wrapper .block-minicart > .action.close,
body .minicart-wrapper .block-minicart .action.close {
    top: 10px !important;
    right: 10px !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: transparent !important;
    color: var(--seart-text-muted) !important;
    box-shadow: none !important;
}

body .minicart-wrapper .block-minicart .action.close:before {
    color: var(--seart-text-muted) !important;
    font-size: 20px !important;
    line-height: 34px !important;
}

body .minicart-wrapper .block-minicart .action.close:hover,
body .minicart-wrapper .block-minicart .action.close:focus {
    background: var(--seart-beige) !important;
}

body .minicart-wrapper .block-minicart .action.close:hover:before,
body .minicart-wrapper .block-minicart .action.close:focus:before {
    color: var(--seart-text) !important;
}

/* Summary row */
body .minicart-wrapper .block-minicart .items-total {
    margin: 0 0 2px !important;
    padding-right: 42px;
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
}

body .minicart-wrapper .block-minicart .items-total .count {
    color: var(--seart-text);
    font-weight: 600 !important;
}

body .minicart-wrapper .block-minicart .subtotal {
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid var(--seart-border);
    text-align: left !important;
}

body .minicart-wrapper .block-minicart .subtotal .label {
    display: block;
    margin: 0 0 2px;
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
}

body .minicart-wrapper .block-minicart .subtotal .amount .price-wrapper:first-child .price,
body .minicart-wrapper .block-minicart .subtotal .price-container .price {
    color: var(--seart-text) !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
}

/* Checkout button */
body .minicart-wrapper .block-minicart .actions .primary {
    margin: 0 0 10px !important;
}

body .minicart-wrapper .block-minicart .actions .primary .action.primary.checkout {
    width: 100% !important;
    min-height: 44px;
    padding: 12px 18px !important;
    border: 1px solid var(--seart-olive) !important;
    border-radius: 2px !important;
    background: var(--seart-olive) !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    letter-spacing: .01em;
    box-shadow: none !important;
}

body .minicart-wrapper .block-minicart .actions .primary .action.primary.checkout:hover,
body .minicart-wrapper .block-minicart .actions .primary .action.primary.checkout:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
}

/* Product list */
body .minicart-wrapper .minicart-items-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    max-height: min(420px, 52vh);
}

body .minicart-wrapper .minicart-items {
    margin: 0 !important;
}

body .minicart-wrapper .minicart-items .product-item {
    padding: 14px 0 !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--seart-border) !important;
}

body .minicart-wrapper .minicart-items .product-item:first-child {
    padding-top: 4px !important;
}

body .minicart-wrapper .minicart-items .product-item-photo {
    width: 82px !important;
    margin-right: 14px !important;
}

body .minicart-wrapper .minicart-items .product-image-container {
    border: 1px solid var(--seart-border);
    border-radius: 3px;
    background: var(--seart-surface);
    overflow: hidden;
}

body .minicart-wrapper .minicart-items .product-item-details {
    padding-left: 0 !important;
    padding-right: 30px;
}

body .minicart-wrapper .minicart-items .product-item-name {
    margin: 0 0 5px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
}

body .minicart-wrapper .minicart-items .product-item-name a,
body .minicart-wrapper .minicart-items .product-item-name a:visited {
    color: var(--seart-text) !important;
}

body .minicart-wrapper .minicart-items .product-item-name a:hover,
body .minicart-wrapper .minicart-items .product-item-name a:focus {
    color: var(--seart-olive-hover) !important;
}

/* Price in cart item */
body .minicart-wrapper .minicart-items .product-item-pricing .price-container .price,
body .minicart-wrapper .minicart-items .product-item-pricing .price-excluding-tax .price {
    color: var(--seart-text) !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
}

body .minicart-wrapper .minicart-items .product-item-pricing {
    margin-top: 2px !important;
}

body .minicart-wrapper .minicart-items .product-item-pricing .label,
body .minicart-wrapper .minicart-items .details-qty .label {
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}

/* Quantity */
body .minicart-wrapper .minicart-items .details-qty {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px !important;
}

body .minicart-wrapper .minicart-items .details-qty .item-qty {
    width: 44px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 6px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: #fff !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    text-align: center;
    box-shadow: none !important;
}

body .minicart-wrapper .minicart-items .details-qty .item-qty:focus {
    border-color: var(--seart-olive) !important;
}

/* Remove/edit controls */
body .minicart-wrapper .minicart-items .product.actions {
    right: 0 !important;
    bottom: 16px !important;
}

body .minicart-wrapper .minicart-items .action.delete,
body .minicart-wrapper .minicart-items .action.edit {
    width: 30px;
    height: 30px;
    margin: 0 0 0 2px;
    color: var(--seart-text-muted) !important;
}

body .minicart-wrapper .minicart-items .action.delete:before,
body .minicart-wrapper .minicart-items .action.edit:before {
    color: var(--seart-text-muted) !important;
    font-size: 16px !important;
}

body .minicart-wrapper .minicart-items .action.delete:hover:before,
body .minicart-wrapper .minicart-items .action.edit:hover:before {
    color: var(--seart-olive-hover) !important;
}

/* "View and edit cart" */
body .minicart-wrapper .block-minicart .actions .secondary {
    margin: 14px 0 0 !important;
}

body .minicart-wrapper .block-minicart .actions .secondary .action.viewcart {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    padding: 11px 16px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: #fff !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    text-decoration: none !important;
}

body .minicart-wrapper .block-minicart .actions .secondary .action.viewcart:hover,
body .minicart-wrapper .block-minicart .actions .secondary .action.viewcart:focus {
    border-color: var(--seart-olive) !important;
    background: var(--seart-bg) !important;
    color: var(--seart-olive-hover) !important;
}

@media (max-width: 479px) {
    body .minicart-wrapper .block-minicart {
        width: calc(100vw - 20px) !important;
        max-width: none;
        padding: 20px 16px 16px !important;
    }

    body .minicart-wrapper .minicart-items .product-item-photo {
        width: 74px !important;
        margin-right: 12px !important;
    }
}

/* =========================================================
   DESKTOP AUDIT v36
   Header dropdown + search/category listing + filters/toolbar.
   Desktop-first refinements based on the supplied PL screenshots.
   ========================================================= */


/* ---------------------------------------------------------
   HEADER / DESKTOP MEGAMENU
   --------------------------------------------------------- */

@media (min-width: 768px) {
    .page-header.type1 .navigation .level0 .submenu,
    .page-header.type1 .sw-megamenu.navigation .level0 .submenu {
        padding: 14px 10px !important;
        border: 1px solid var(--seart-border) !important;
        border-top: 2px solid var(--seart-olive) !important;
        border-radius: 0 0 3px 3px !important;
        background: var(--seart-surface) !important;
        box-shadow: 0 12px 28px rgba(37, 38, 34, .10) !important;
    }

    .page-header.type1 .navigation .level0 .submenu li {
        margin: 0 !important;
    }

    .page-header.type1 .navigation .level0 .submenu a {
        min-height: 38px;
        padding: 9px 12px !important;
        border-radius: 2px;
        color: var(--seart-text-muted) !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        font-weight: 500 !important;
        transition: background-color 180ms ease, color 180ms ease;
    }

    .page-header.type1 .navigation .level0 .submenu a:hover,
    .page-header.type1 .navigation .level0 .submenu a:focus,
    .page-header.type1 .navigation .level0 .submenu .active > a {
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
        text-decoration: none !important;
    }
}


/* ---------------------------------------------------------
   CATEGORY / SEARCH PAGE HEADINGS
   --------------------------------------------------------- */

body.catalog-category-view .page-main > .page-title-wrapper,
body.catalogsearch-result-index .page-main > .page-title-wrapper {
    margin-bottom: 18px;
}

body.catalog-category-view .page-main > .page-title-wrapper .page-title,
body.catalogsearch-result-index .page-main > .page-title-wrapper .page-title {
    margin: 0;
    color: var(--seart-text) !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
}


/* ---------------------------------------------------------
   PRODUCT GRID - SHARED SEARCH + CATEGORY CARD
   --------------------------------------------------------- */

body.catalog-category-view .products-grid .product-items,
body.catalogsearch-result-index .products-grid .product-items {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

body.catalog-category-view .products-grid .product-item,
body.catalogsearch-result-index .products-grid .product-item {
    display: flex;
    align-items: stretch;
    margin-bottom: 28px !important;
}

body.catalog-category-view .products-grid .product-item-info,
body.catalogsearch-result-index .products-grid .product-item-info {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    height: 100%;
    margin: 0 !important;
    padding: 10px 10px 12px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    box-shadow: none !important;
    transition:
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

body.catalog-category-view .products-grid .product-item-info:hover,
body.catalogsearch-result-index .products-grid .product-item-info:hover {
    border-color: #C8C4B9 !important;
    box-shadow: 0 8px 22px rgba(37, 38, 34, .07) !important;
    transform: translateY(-2px);
}

body.catalog-category-view .products-grid .product-item-photo,
body.catalogsearch-result-index .products-grid .product-item-photo {
    display: block;
    margin: 0 0 12px !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: #fff;
    overflow: hidden;
}

body.catalog-category-view .products-grid .product-image-container,
body.catalogsearch-result-index .products-grid .product-image-container {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    border: 0 !important;
    background: #fff;
}

body.catalog-category-view .products-grid .product-image-photo,
body.catalogsearch-result-index .products-grid .product-image-photo {
    max-width: 100% !important;
    object-fit: contain;
}

body.catalog-category-view .products-grid .product-item-details,
body.catalogsearch-result-index .products-grid .product-item-details {
    display: flex !important;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 0 4px !important;
    text-align: center;
}

body.catalog-category-view .products-grid .product-item-name,
body.catalogsearch-result-index .products-grid .product-item-name {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    min-height: 44px;
    margin: 0 0 8px !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
}

body.catalog-category-view .products-grid .product-item-name a,
body.catalog-category-view .products-grid .product-item-name a:visited,
body.catalogsearch-result-index .products-grid .product-item-name a,
body.catalogsearch-result-index .products-grid .product-item-name a:visited {
    color: var(--seart-text) !important;
    text-decoration: none !important;
}

body.catalog-category-view .products-grid .product-item-name a:hover,
body.catalog-category-view .products-grid .product-item-name a:focus,
body.catalogsearch-result-index .products-grid .product-item-name a:hover,
body.catalogsearch-result-index .products-grid .product-item-name a:focus {
    color: var(--seart-olive-hover) !important;
}

body.catalog-category-view .products-grid .price-box,
body.catalogsearch-result-index .products-grid .price-box {
    min-height: 55px;
    margin: auto 0 10px !important;
    color: var(--seart-text);
    text-align: center;
}

body.catalog-category-view .products-grid .price-box .price-label,
body.catalogsearch-result-index .products-grid .price-box .price-label {
    display: block;
    margin-bottom: 2px;
    color: var(--seart-text-muted) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

body.catalog-category-view .products-grid .price-box .price,
body.catalogsearch-result-index .products-grid .price-box .price {
    color: var(--seart-text) !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}

body.catalog-category-view .products-grid .b2b-netto-label,
body.catalogsearch-result-index .products-grid .b2b-netto-label {
    display: inline-block;
    margin-top: 2px;
    color: var(--seart-text-muted) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

body.catalog-category-view .products-grid .product-item-actions,
body.catalogsearch-result-index .products-grid .product-item-actions {
    width: 100%;
    margin: auto 0 0 !important;
    padding: 0 !important;
}

body.catalog-category-view .products-grid .product-item-actions .actions-primary,
body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary {
    display: block !important;
    width: 100%;
}

body.catalog-category-view .products-grid .product-item-actions .actions-primary .action,
body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart,
body.catalog-category-view .products-grid .sprawdz-warianty,
body.catalog-category-view .products-grid .show-more-button-not-logged .action,
body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .action,
body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart,
body.catalogsearch-result-index .products-grid .sprawdz-warianty,
body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 40px;
    margin: 0 !important;
    padding: 9px 10px !important;
    border-radius: 2px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
    text-align: center;
    white-space: normal;
}


/* ---------------------------------------------------------
   TOOLBAR - SORT / LIMITER
   --------------------------------------------------------- */

body.catalog-category-view .toolbar-products,
body.catalogsearch-result-index .toolbar-products {
    display: flex;
    align-items: center;
    min-height: 46px;
    margin: 0 0 18px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid var(--seart-border);
    color: var(--seart-text-muted);
}

body.catalog-category-view .toolbar-products .sorter,
body.catalogsearch-result-index .toolbar-products .sorter,
body.catalog-category-view .toolbar-products .limiter,
body.catalogsearch-result-index .toolbar-products .limiter {
    display: flex;
    align-items: center;
    gap: 8px;
}

body.catalog-category-view .toolbar-products label,
body.catalogsearch-result-index .toolbar-products label {
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

body.catalog-category-view .toolbar-products select,
body.catalogsearch-result-index .toolbar-products select {
    height: 38px !important;
    min-width: 108px;
    padding: 0 34px 0 11px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background-color: #fff !important;
    color: var(--seart-text) !important;
    font-size: 12px !important;
    box-shadow: none !important;
}

body.catalog-category-view .toolbar-products select:hover,
body.catalog-category-view .toolbar-products select:focus,
body.catalogsearch-result-index .toolbar-products select:hover,
body.catalogsearch-result-index .toolbar-products select:focus {
    border-color: var(--seart-olive) !important;
}

body.catalog-category-view .toolbar-products .sorter-action,
body.catalogsearch-result-index .toolbar-products .sorter-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0 !important;
    border: 1px solid var(--seart-border);
    border-radius: 2px;
    background: #fff;
}

body.catalog-category-view .toolbar-products .sorter-action:hover,
body.catalog-category-view .toolbar-products .sorter-action:focus,
body.catalogsearch-result-index .toolbar-products .sorter-action:hover,
body.catalogsearch-result-index .toolbar-products .sorter-action:focus {
    border-color: var(--seart-olive) !important;
    background: var(--seart-bg) !important;
}


/* ---------------------------------------------------------
   LAYERED NAVIGATION / FILTERS
   --------------------------------------------------------- */

body.catalog-category-view .sidebar-main .filter,
body.catalogsearch-result-index .sidebar-main .filter,
body.catalogsearch-result-index .sidebar-additional .block {
    margin-bottom: 18px;
}

body.catalog-category-view .filter-options-item,
body.catalogsearch-result-index .filter-options-item,
body.catalogsearch-result-index .sidebar-additional .block {
    margin: 0 0 10px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    overflow: hidden;
}

body.catalog-category-view .filter-options-title,
body.catalogsearch-result-index .filter-options-title,
body.catalogsearch-result-index .sidebar-additional .block-title {
    min-height: 44px;
    margin: 0 !important;
    padding: 13px 44px 12px 14px !important;
    border: 0 !important;
    background: var(--seart-surface) !important;
    color: var(--seart-text) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

body.catalog-category-view .filter-options-title:after,
body.catalogsearch-result-index .filter-options-title:after {
    top: 8px !important;
    right: 8px !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 2px !important;
    line-height: 26px !important;
}

body.catalog-category-view .filter-options-content,
body.catalogsearch-result-index .filter-options-content,
body.catalogsearch-result-index .sidebar-additional .block-content {
    margin: 0 !important;
    padding: 4px 14px 14px !important;
    border-top: 1px solid var(--seart-beige);
    color: var(--seart-text-muted);
    font-size: 12px !important;
    line-height: 1.5;
}

body.catalog-category-view .filter-options-content a,
body.catalogsearch-result-index .filter-options-content a {
    color: var(--seart-text-muted) !important;
}

body.catalog-category-view .filter-options-content a:hover,
body.catalog-category-view .filter-options-content a:focus,
body.catalogsearch-result-index .filter-options-content a:hover,
body.catalogsearch-result-index .filter-options-content a:focus {
    color: var(--seart-olive-hover) !important;
}

/* Price slider */
body.catalog-category-view .filter-options-content .ui-slider,
body.catalogsearch-result-index .filter-options-content .ui-slider {
    height: 4px !important;
    margin-top: 14px;
    border: 0 !important;
    border-radius: 4px;
    background: var(--seart-beige) !important;
}

body.catalog-category-view .filter-options-content .ui-slider-range,
body.catalogsearch-result-index .filter-options-content .ui-slider-range {
    background: var(--seart-olive) !important;
}

body.catalog-category-view .filter-options-content .ui-slider-handle,
body.catalogsearch-result-index .filter-options-content .ui-slider-handle,
body.catalog-category-view #ln_slider_price .ui-slider-handle,
body.catalogsearch-result-index #ln_slider_price .ui-slider-handle {
    width: 14px !important;
    height: 14px !important;
    margin-top: -1px;
    border: 2px solid var(--seart-olive) !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: none !important;
}


/* ---------------------------------------------------------
   SEARCH RESULTS - SUGGESTED TERMS
   Soften the old bright-yellow term highlighting.
   --------------------------------------------------------- */

body.catalogsearch-result-index .page-main mark {
    padding: 0 2px;
    background: var(--seart-beige) !important;
    color: var(--seart-text) !important;
}

body.catalogsearch-result-index .page-main [style*="background-color: yellow"],
body.catalogsearch-result-index .page-main [style*="background-color:yellow"],
body.catalogsearch-result-index .page-main [style*="background: yellow"],
body.catalogsearch-result-index .page-main [style*="background:yellow"] {
    background: var(--seart-beige) !important;
    color: var(--seart-text) !important;
}

body.catalogsearch-result-index .search.results {
    color: var(--seart-text);
}

body.catalogsearch-result-index .search.results a {
    text-decoration: none;
}


/* ---------------------------------------------------------
   DESKTOP SPACING
   --------------------------------------------------------- */

@media (min-width: 1024px) {
    body.catalog-category-view .columns,
    body.catalogsearch-result-index .columns {
        column-gap: 24px;
    }

    body.catalog-category-view .sidebar-main,
    body.catalogsearch-result-index .sidebar-main {
        padding-right: 0 !important;
    }
}

/* =========================================================
   SEARCH RESULTS - EXACT MAGEPLAZA/MIRASVIT SUGGESTIONS + COLLECTION
   Exact markup verified:
   p.suggested
   .mst-search__highlight
   .filter-options-item[attribute="kolekcja"]
   ========================================================= */

body.catalogsearch-result-index p.suggested {
    margin: 0 0 16px !important;
    padding: 12px 14px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
    box-shadow: none !important;
}

body.catalogsearch-result-index p.suggested a,
body.catalogsearch-result-index p.suggested a:visited {
    color: var(--seart-text) !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

body.catalogsearch-result-index p.suggested a:hover,
body.catalogsearch-result-index p.suggested a:focus {
    color: var(--seart-olive-hover) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

body.catalogsearch-result-index p.suggested .mst-search__highlight {
    padding: 0 2px !important;
    border-radius: 2px;
    background: var(--seart-beige) !important;
    color: var(--seart-text) !important;
    font-weight: 600 !important;
}

/* Search results: make the single "Kolekcja" filter look intentional,
   but do not affect category-page filters. */
body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"] {
    margin: 0 0 12px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    overflow: hidden;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
> .filter-options-title {
    min-height: 44px;
    padding: 13px 44px 12px 14px !important;
    background: var(--seart-surface) !important;
    color: var(--seart-text) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
> .filter-options-content {
    padding: 8px 14px 12px !important;
    border-top: 1px solid var(--seart-beige) !important;
    background: var(--seart-surface) !important;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.items {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.item {
    margin: 0;
    padding: 4px 0;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--seart-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.item > a:hover,
body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.item > a:focus {
    color: var(--seart-olive-hover) !important;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
.count {
    color: var(--seart-text-muted) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
}

body.catalogsearch-result-index
#layered-filter-block
.filter-options-item[attribute="kolekcja"]
input[type="checkbox"] {
    accent-color: var(--seart-olive);
}

/* Search page spacing: keep suggestion block visually tied to toolbar/grid. */
@media (min-width: 768px) {
    body.catalogsearch-result-index .column.main > p.suggested {
        margin-top: 0 !important;
    }

    body.catalogsearch-result-index .toolbar-products {
        margin-top: 0 !important;
    }
}

/* =========================================================
   DESKTOP FINAL AUDIT v38
   CART + CHECKOUT ACCENTS / CONTROLS
   Based on the supplied PL desktop screenshots.
   ========================================================= */


/* ---------------------------------------------------------
   CART
   --------------------------------------------------------- */

body.checkout-cart-index .cart.table-wrapper .product-item-name,
body.checkout-cart-index .cart.table-wrapper .product-item-name > a,
body.checkout-cart-index .cart.table-wrapper .product-item-name > a:visited {
    color: var(--seart-text) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body.checkout-cart-index .cart.table-wrapper .product-item-name > a:hover,
body.checkout-cart-index .cart.table-wrapper .product-item-name > a:focus {
    color: var(--seart-olive-hover) !important;
}

body.checkout-cart-index .cart.table-wrapper .col.price .price,
body.checkout-cart-index .cart.table-wrapper .col.subtotal .price {
    color: var(--seart-text) !important;
    font-weight: 600 !important;
}

body.checkout-cart-index .cart.table-wrapper .col.qty .input-text,
body.checkout-cart-index .cart.table-wrapper .input-text.qty {
    width: 52px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 6px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: #fff !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    text-align: center;
    box-shadow: none !important;
}

body.checkout-cart-index .cart.table-wrapper .col.qty .input-text:focus,
body.checkout-cart-index .cart.table-wrapper .input-text.qty:focus {
    border-color: var(--seart-olive) !important;
}

/* Remove the old bright-green cart edit/remove accents. */
body.checkout-cart-index .cart.table-wrapper .actions-toolbar > .action-edit:before,
body.checkout-cart-index .cart.table-wrapper .actions-toolbar > .action-delete:before,
body.checkout-cart-index .cart.table-wrapper .action-edit:before,
body.checkout-cart-index .cart.table-wrapper .action-delete:before {
    color: var(--seart-text-muted) !important;
}

body.checkout-cart-index .cart.table-wrapper .actions-toolbar > .action-edit:hover:before,
body.checkout-cart-index .cart.table-wrapper .actions-toolbar > .action-delete:hover:before,
body.checkout-cart-index .cart.table-wrapper .action-edit:hover:before,
body.checkout-cart-index .cart.table-wrapper .action-delete:hover:before {
    color: var(--seart-olive-hover) !important;
}

/* Coupon block */
body.checkout-cart-index .cart-discount .block > .title,
body.checkout-cart-index .cart-discount .block > .title strong,
body.checkout-cart-index .cart-discount .action.toggle {
    color: var(--seart-olive-hover) !important;
}

body.checkout-cart-index .cart-discount input[type="text"] {
    height: 42px !important;
    border-color: var(--seart-border) !important;
    border-radius: 2px 0 0 2px !important;
    box-shadow: none !important;
}

body.checkout-cart-index .cart-discount .action.primary {
    min-height: 42px;
    border-color: var(--seart-olive) !important;
    background: var(--seart-olive) !important;
    color: #fff !important;
    border-radius: 0 2px 2px 0 !important;
}

body.checkout-cart-index .cart-discount .action.primary:hover,
body.checkout-cart-index .cart-discount .action.primary:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
}

/* Cart totals box */
body.checkout-cart-index .cart-summary {
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    box-shadow: none !important;
}

body.checkout-cart-index .cart-summary .summary.title {
    color: var(--seart-text) !important;
    font-weight: 400 !important;
}

body.checkout-cart-index .cart-summary .grand.totals .amount,
body.checkout-cart-index .cart-summary .grand.totals .mark {
    color: var(--seart-text) !important;
    font-weight: 600 !important;
}

body.checkout-cart-index .checkout-methods-items .action.primary.checkout {
    min-height: 44px;
    border-color: var(--seart-olive) !important;
    border-radius: 2px !important;
    background: var(--seart-olive) !important;
    color: #fff !important;
    box-shadow: none !important;
}

body.checkout-cart-index .checkout-methods-items .action.primary.checkout:hover,
body.checkout-cart-index .checkout-methods-items .action.primary.checkout:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
}


/* ---------------------------------------------------------
   CHECKOUT - GLOBAL ACCENT
   --------------------------------------------------------- */

body.checkout-index-index input[type="radio"],
body.checkout-index-index input[type="checkbox"] {
    accent-color: var(--seart-olive);
}

/* Magento step progress: replace the original orange accent. */
body.checkout-index-index .opc-progress-bar-item._active > span:before,
body.checkout-index-index .opc-progress-bar-item._complete > span:before {
    border-color: var(--seart-olive) !important;
    background: var(--seart-olive) !important;
}

body.checkout-index-index .opc-progress-bar-item._active > span:after,
body.checkout-index-index .opc-progress-bar-item._complete > span:after {
    border-color: var(--seart-olive) !important;
    background: var(--seart-surface) !important;
    color: var(--seart-olive-hover) !important;
}

body.checkout-index-index .opc-progress-bar-item._complete > span:after {
    background: var(--seart-surface) !important;
    color: var(--seart-olive-hover) !important;
}

body.checkout-index-index .opc-progress-bar-item > span {
    color: var(--seart-text-muted) !important;
}

body.checkout-index-index .opc-progress-bar-item._active > span,
body.checkout-index-index .opc-progress-bar-item._complete > span {
    color: var(--seart-text) !important;
}

/* Shipping addresses: replace orange selected-card accent. */
body.checkout-index-index .shipping-address-item {
    border-color: transparent !important;
    border-radius: 2px;
}

body.checkout-index-index .shipping-address-item.selected-item {
    border-color: var(--seart-olive) !important;
}

body.checkout-index-index .shipping-address-item.selected-item:after {
    background: var(--seart-olive) !important;
    color: #fff !important;
}

body.checkout-index-index .shipping-address-item .action-select-shipping-item,
body.checkout-index-index .action-show-popup {
    min-height: 40px;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: #fff !important;
    color: var(--seart-text) !important;
    box-shadow: none !important;
}

body.checkout-index-index .shipping-address-item .action-select-shipping-item:hover,
body.checkout-index-index .shipping-address-item .action-select-shipping-item:focus,
body.checkout-index-index .action-show-popup:hover,
body.checkout-index-index .action-show-popup:focus {
    border-color: var(--seart-olive) !important;
    background: var(--seart-bg) !important;
    color: var(--seart-olive-hover) !important;
}

/* Checkout headings and separators */
body.checkout-index-index .checkout-shipping-address .step-title,
body.checkout-index-index .checkout-shipping-method .step-title,
body.checkout-index-index .payment-group .step-title,
body.checkout-index-index .opc-block-summary > .title,
body.checkout-index-index .shipping-information .shipping-information-title {
    color: var(--seart-text) !important;
}

body.checkout-index-index .checkout-shipping-address .step-title,
body.checkout-index-index .checkout-shipping-method .step-title,
body.checkout-index-index .payment-group .step-title {
    border-bottom-color: var(--seart-border) !important;
}

/* Shipping methods */
body.checkout-index-index .table-checkout-shipping-method tbody td {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    border-top-color: var(--seart-border) !important;
    color: var(--seart-text) !important;
}

body.checkout-index-index .table-checkout-shipping-method .col-price {
    font-weight: 600 !important;
}

/* Order summary */
body.checkout-index-index .opc-block-summary {
    border: 1px solid var(--seart-border) !important;
    border-radius: 3px !important;
    background: var(--seart-surface) !important;
    box-shadow: none !important;
}

body.checkout-index-index .opc-block-summary .table-totals {
    border-top-color: var(--seart-border) !important;
}

body.checkout-index-index .opc-block-summary .grand.totals .mark,
body.checkout-index-index .opc-block-summary .grand.totals .amount {
    color: var(--seart-text) !important;
    font-weight: 600 !important;
}

/* Edit icons in the right checkout column */
body.checkout-index-index .opc-block-shipping-information .shipping-information-title .action-edit:before,
body.checkout-index-index .shipping-information .shipping-information-title .action-edit:before {
    color: var(--seart-olive) !important;
}

body.checkout-index-index .opc-block-shipping-information .shipping-information-title .action-edit:hover:before,
body.checkout-index-index .shipping-information .shipping-information-title .action-edit:hover:before {
    color: var(--seart-olive-hover) !important;
}

/* Main checkout buttons */
body.checkout-index-index .actions-toolbar .action.primary,
body.checkout-index-index .payment-method-content .actions-toolbar .action.primary.checkout {
    min-height: 44px;
    border-color: var(--seart-olive) !important;
    border-radius: 2px !important;
    background: var(--seart-olive) !important;
    color: #fff !important;
    box-shadow: none !important;
}

body.checkout-index-index .actions-toolbar .action.primary:hover,
body.checkout-index-index .actions-toolbar .action.primary:focus,
body.checkout-index-index .payment-method-content .actions-toolbar .action.primary.checkout:hover,
body.checkout-index-index .payment-method-content .actions-toolbar .action.primary.checkout:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
}


/* ---------------------------------------------------------
   SIMPLE PRODUCT - SMALL DESKTOP NORMALIZATION
   --------------------------------------------------------- */

body.catalog-product-view .product-info-main .box-tocart .field.qty .input-text.qty {
    min-width: 52px;
    height: 44px !important;
    min-height: 44px !important;
    border: 1px solid var(--seart-border) !important;
    border-radius: 2px !important;
    background: #fff !important;
    color: var(--seart-text) !important;
    font-size: 13px !important;
    box-shadow: none !important;
}

body.catalog-product-view .product-info-main .box-tocart .field.qty .input-text.qty:focus {
    border-color: var(--seart-olive) !important;
}

/* =========================================================
   CHECKOUT DESKTOP v39
   Progress bar + shipping-address action colours
   ========================================================= */

/* Replace the remaining Magento orange progress-line segments. */
body.checkout-index-index .opc-progress-bar-item._active:before,
body.checkout-index-index .opc-progress-bar-item._complete:before {
    background: var(--seart-olive) !important;
    border-color: var(--seart-olive) !important;
}

/* Keep inactive part neutral. */
body.checkout-index-index .opc-progress-bar-item:not(._active):not(._complete):before {
    background: #E4E4E4 !important;
    border-color: #E4E4E4 !important;
}

/* Address cards: "Wysyłamy tutaj" is a primary action. */
body.checkout-index-index
.shipping-address-item
.action-select-shipping-item {
    min-height: 40px !important;
    padding: 9px 16px !important;
    border: 1px solid var(--seart-olive) !important;
    border-radius: 2px !important;
    background: var(--seart-olive) !important;
    color: #FFFFFF !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}

body.checkout-index-index
.shipping-address-item
.action-select-shipping-item:hover,
body.checkout-index-index
.shipping-address-item
.action-select-shipping-item:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-olive-hover) !important;
    color: #FFFFFF !important;
}

/* "+ Nowy adres" remains secondary, but uses the SEART palette. */
body.checkout-index-index .action-show-popup {
    min-height: 40px !important;
    padding: 9px 16px !important;
    border: 1px solid var(--seart-olive) !important;
    border-radius: 2px !important;
    background: #FFFFFF !important;
    color: var(--seart-olive-hover) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}

body.checkout-index-index .action-show-popup:hover,
body.checkout-index-index .action-show-popup:focus {
    border-color: var(--seart-olive-hover) !important;
    background: var(--seart-bg) !important;
    color: var(--seart-olive-hover) !important;
}

/* =========================================================
   CUSTOMER ACCOUNT DESKTOP v40
   Dashboard, order history, address book, account edit,
   order details. Based on supplied PL desktop screenshots.
   ========================================================= */

@media (min-width: 768px) {

    /* -----------------------------------------------------
       ACCOUNT: PAGE TITLES / SECTION TITLES
       ----------------------------------------------------- */

    body.account .page-main > .page-title-wrapper .page-title {
        margin-bottom: 20px !important;
        color: var(--seart-text) !important;
        font-size: 24px !important;
        line-height: 1.25 !important;
        font-weight: 500 !important;
    }

    /*
     * Some Porto account section titles were nearly white on
     * the warm background. Force readable section headings.
     */
    body.account .block .block-title,
    body.account .block .block-title strong,
    body.account .block-dashboard-info .block-title,
    body.account .block-dashboard-addresses .block-title,
    body.account .block-dashboard-orders .block-title,
    body.account .block-dashboard-info .block-title strong,
    body.account .block-dashboard-addresses .block-title strong,
    body.account .block-dashboard-orders .block-title strong {
        color: var(--seart-text) !important;
    }

    body.account .block .block-title {
        margin-bottom: 10px !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 600 !important;
    }

    /* -----------------------------------------------------
       ACCOUNT: LEFT NAVIGATION
       ----------------------------------------------------- */

    body.account .block-collapsible-nav {
        margin-bottom: 24px;
    }

    body.account .block-collapsible-nav .content {
        background: transparent !important;
    }

    body.account .block-collapsible-nav .item {
        margin: 0 !important;
        border-bottom: 1px solid var(--seart-border);
    }

    body.account .block-collapsible-nav .item a,
    body.account .block-collapsible-nav .item strong {
        display: block;
        min-height: 42px;
        padding: 11px 8px 10px 12px !important;
        color: var(--seart-text-muted) !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        font-weight: 400 !important;
        text-decoration: none !important;
        transition: color 180ms ease, background-color 180ms ease;
    }

    body.account .block-collapsible-nav .item a:hover,
    body.account .block-collapsible-nav .item a:focus {
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
    }

    body.account .block-collapsible-nav .item.current a,
    body.account .block-collapsible-nav .item.current strong {
        position: relative;
        background: transparent !important;
        color: var(--seart-text) !important;
        font-weight: 600 !important;
    }

    body.account .block-collapsible-nav .item.current a:before,
    body.account .block-collapsible-nav .item.current strong:before {
        content: "";
        position: absolute;
        top: 10px;
        bottom: 10px;
        left: 0;
        width: 2px;
        background: var(--seart-olive);
    }

    /* -----------------------------------------------------
       ACCOUNT: DASHBOARD / ADDRESS CARDS
       ----------------------------------------------------- */

    body.account .box,
    body.account .block-dashboard-info .box,
    body.account .block-dashboard-addresses .box {
        border: 1px solid var(--seart-border) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
        box-shadow: none !important;
    }

    body.account .box .box-title {
        margin: 0 !important;
        padding: 12px 14px !important;
        border-bottom: 1px solid var(--seart-border) !important;
        background: #F6F5F1 !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 600 !important;
        text-transform: uppercase;
    }

    body.account .box .box-content {
        min-height: 98px;
        padding: 14px !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        line-height: 1.55 !important;
    }

    body.account .box .box-actions {
        margin: 0 !important;
        padding: 10px 14px !important;
        border-top: 1px solid var(--seart-border) !important;
        background: #FBFAF7 !important;
    }

    body.account .box .box-actions a,
    body.account .box .box-actions a:visited {
        color: var(--seart-text) !important;
        font-size: 12px !important;
        text-decoration: none !important;
    }

    body.account .box .box-actions a:hover,
    body.account .box .box-actions a:focus {
        color: var(--seart-olive-hover) !important;
        text-decoration: underline !important;
        text-underline-offset: 2px;
    }

    /* -----------------------------------------------------
       ACCOUNT: TABLES
       ----------------------------------------------------- */

    body.account .table-wrapper {
        margin-bottom: 24px !important;
    }

    body.account .table-wrapper .table {
        width: 100%;
        border-collapse: collapse;
        background: transparent;
    }

    body.account .table-wrapper .table > thead > tr > th {
        padding: 11px 10px !important;
        border-bottom: 1px solid var(--seart-border) !important;
        background: #F6F5F1 !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
        font-weight: 600 !important;
        vertical-align: bottom;
    }

    body.account .table-wrapper .table > tbody > tr > td {
        padding: 13px 10px !important;
        border-bottom: 1px solid var(--seart-border) !important;
        background: transparent !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        line-height: 1.5 !important;
        vertical-align: top;
    }

    body.account .table-wrapper .table > tbody > tr:hover > td {
        background: rgba(232, 228, 216, .22) !important;
    }

    body.account .table-wrapper .table a,
    body.account .table-wrapper .table a:visited {
        color: var(--seart-text) !important;
        text-decoration: none !important;
    }

    body.account .table-wrapper .table a:hover,
    body.account .table-wrapper .table a:focus {
        color: var(--seart-olive-hover) !important;
        text-decoration: underline !important;
        text-underline-offset: 2px;
    }

    /* Semantic delete action */
    body.customer-address-index .table-addresses a.action.delete,
    body.customer-address-index .table-addresses .action.delete {
        color: var(--seart-error) !important;
    }

    /* -----------------------------------------------------
       ACCOUNT: TOOLBAR / PAGINATION
       ----------------------------------------------------- */

    body.account .toolbar {
        margin: 20px 0 0 !important;
        color: var(--seart-text-muted);
    }

    body.account .toolbar select {
        height: 36px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        box-shadow: none !important;
    }

    body.account .pages .page,
    body.account .pages .action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-width: 30px;
        height: 30px;
        margin: 0 2px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        box-shadow: none !important;
    }

    body.account .pages .current .page,
    body.account .pages .page:hover,
    body.account .pages .action:hover {
        border-color: var(--seart-olive) !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
    }

    /* -----------------------------------------------------
       ORDER HISTORY
       ----------------------------------------------------- */

    body.sales-order-history .actions-toolbar .action,
    body.sales-order-history .orders-history + .toolbar .action {
        border-radius: 2px !important;
    }

    body.sales-order-history .table-order-items-history .col.actions {
        white-space: nowrap;
    }

    body.sales-order-history .table-order-items-history .col.total {
        font-weight: 600;
    }

    /* -----------------------------------------------------
       ADDRESS BOOK
       ----------------------------------------------------- */

    body.customer-address-index .block-addresses-default {
        margin-bottom: 28px;
    }

    body.customer-address-index .table-addresses .col.actions {
        white-space: nowrap;
    }

    body.customer-address-index .actions-toolbar .action.primary {
        min-height: 40px;
        border-color: var(--seart-olive) !important;
        border-radius: 2px !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
    }

    body.customer-address-index .actions-toolbar .action.primary:hover,
    body.customer-address-index .actions-toolbar .action.primary:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
    }

    /* -----------------------------------------------------
       ACCOUNT EDIT
       ----------------------------------------------------- */

    body.customer-account-edit .form-edit-account {
        max-width: 760px;
        padding: 28px 24px 26px !important;
        border: 1px solid var(--seart-border) !important;
        border-top: 3px solid var(--seart-olive) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
        box-shadow: 0 5px 18px rgba(37, 38, 34, .06) !important;
    }

    body.customer-account-edit .form-edit-account .legend {
        color: var(--seart-text) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
    }

    body.customer-account-edit .form-edit-account .field {
        max-width: 420px;
    }

    body.customer-account-edit .form-edit-account .input-text {
        height: 42px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text) !important;
        box-shadow: none !important;
    }

    body.customer-account-edit .form-edit-account .input-text:focus {
        border-color: var(--seart-olive) !important;
    }

    body.customer-account-edit .form-edit-account .action.save.primary {
        min-height: 42px;
        border-color: var(--seart-olive) !important;
        border-radius: 2px !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
        box-shadow: none !important;
    }

    body.customer-account-edit .form-edit-account .action.save.primary:hover,
    body.customer-account-edit .form-edit-account .action.save.primary:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
    }

    /* -----------------------------------------------------
       ORDER DETAILS
       ----------------------------------------------------- */

    body.sales-order-view .order-status {
        display: inline-flex;
        align-items: center;
        min-height: 28px;
        padding: 4px 9px !important;
        border: 1px solid #D8C7A7 !important;
        border-radius: 2px !important;
        background: #F5EFE4 !important;
        color: #745D36 !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
        text-transform: uppercase;
    }

    body.sales-order-view .order-details-items {
        border: 1px solid var(--seart-border) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
        box-shadow: none !important;
    }

    body.sales-order-view .order-details-items .order-title {
        border-bottom: 1px solid var(--seart-border) !important;
        background: #F6F5F1 !important;
    }

    body.sales-order-view .order-details-items .order-title > strong {
        color: var(--seart-text) !important;
        font-size: 13px !important;
        font-weight: 500 !important;
    }

    body.sales-order-view .order-details-items .table-order-items > thead > tr > th {
        background: #F6F5F1 !important;
    }

    body.sales-order-view .order-details-items .table-order-items > tbody > tr > td {
        border-bottom-color: var(--seart-border) !important;
    }

    body.sales-order-view .order-details-items .subtotal,
    body.sales-order-view .order-details-items .grand_total {
        color: var(--seart-text) !important;
    }

    body.sales-order-view .block-order-details-view .block-title {
        margin-top: 26px !important;
        color: var(--seart-text) !important;
    }

    body.sales-order-view .block-order-details-view .box {
        border: 1px solid var(--seart-border) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
    }

    body.sales-order-view .block-order-details-view .box-title {
        background: #F6F5F1 !important;
        color: var(--seart-text) !important;
    }

    body.sales-order-view .block-order-details-view .box-content {
        min-height: 145px;
    }

    /* Print/back/order links */
    body.sales-order-view .order-actions-toolbar a,
    body.sales-order-view .order-details-items .actions-toolbar a {
        color: var(--seart-text) !important;
    }

    body.sales-order-view .order-actions-toolbar a:hover,
    body.sales-order-view .order-details-items .actions-toolbar a:hover {
        color: var(--seart-olive-hover) !important;
    }
}

/* =========================================================
   CONTACT / CMS DESKTOP v41
   Exact markup verified from the current PL contact page.
   Maps / Street View are intentionally left functionally unchanged.
   ========================================================= */

@media (min-width: 768px) {

    /* -----------------------------------------------------
       CONTACT PAGE LAYOUT
       ----------------------------------------------------- */

    body.contact-index-index #maincontent.page-main {
        padding-top: 18px;
    }

    /* The current first map row has inline padding-left:14px. */
    body.contact-index-index #maincontent .column.main > .row:first-of-type {
        margin-bottom: 30px !important;
        padding-left: 0 !important;
    }

    body.contact-index-index #maincontent .column.main > .row:first-of-type iframe {
        display: block;
        width: 100% !important;
        height: 420px !important;
        border: 0 !important;
        border-radius: 3px;
    }

    /* -----------------------------------------------------
       CONTACT FORM + CONTACT INFO
       ----------------------------------------------------- */

    body.contact-index-index #maincontent .column.main > .row:nth-of-type(2) {
        display: flex;
        align-items: flex-start;
        gap: 34px;
        margin-left: 0;
        margin-right: 0;
    }

    body.contact-index-index #maincontent .column.main > .row:nth-of-type(2) > .col-md-8 {
        flex: 1 1 auto;
        width: auto;
        padding-left: 0;
        padding-right: 0;
    }

    body.contact-index-index #maincontent .column.main > .row:nth-of-type(2) > .col-md-4.contact-info {
        flex: 0 0 300px;
        width: 300px;
        padding: 0;
    }

    body.contact-index-index .form.contact {
        margin: 0;
        padding: 26px 28px 28px;
        border: 1px solid var(--seart-border);
        border-top: 3px solid var(--seart-olive);
        border-radius: 3px;
        background: var(--seart-surface);
        box-shadow: 0 5px 18px rgba(37, 38, 34, .05);
    }

    body.contact-index-index .form.contact .fieldset {
        margin: 0;
    }

    body.contact-index-index .form.contact > .fieldset > .legend {
        display: block;
        width: 100%;
        margin: 0 0 20px !important;
        padding: 0 0 12px !important;
        border-bottom: 1px solid var(--seart-border);
        color: var(--seart-text) !important;
        font-size: 20px !important;
        line-height: 1.3 !important;
        font-weight: 500 !important;
    }

    body.contact-index-index .form.contact > .fieldset > .legend + br {
        display: none;
    }

    body.contact-index-index .form.contact .fieldset.row {
        margin-left: -10px;
        margin-right: -10px;
    }

    body.contact-index-index .form.contact .fieldset.row > .fields {
        padding-left: 10px;
        padding-right: 10px;
    }

    body.contact-index-index .form.contact .field {
        margin: 0 0 16px !important;
    }

    body.contact-index-index .form.contact .field > .label {
        display: block;
        margin: 0 0 6px;
        color: var(--seart-text) !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 500 !important;
    }

    body.contact-index-index .form.contact .field.required > .label:after,
    body.contact-index-index .form.contact .field._required > .label:after {
        color: var(--seart-error) !important;
    }

    body.contact-index-index .form.contact .input-text,
    body.contact-index-index .form.contact input[type="text"],
    body.contact-index-index .form.contact input[type="email"] {
        width: 100%;
        height: 42px !important;
        padding: 9px 11px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text) !important;
        font-size: 13px !important;
        box-shadow: none !important;
    }

    body.contact-index-index .form.contact textarea.input-text {
        width: 100%;
        min-height: 214px !important;
        height: 214px !important;
        padding: 10px 11px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text) !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
        resize: vertical;
        box-shadow: none !important;
    }

    body.contact-index-index .form.contact .input-text:focus,
    body.contact-index-index .form.contact input[type="text"]:focus,
    body.contact-index-index .form.contact input[type="email"]:focus,
    body.contact-index-index .form.contact textarea.input-text:focus {
        border-color: var(--seart-olive) !important;
        outline: 0;
        box-shadow: 0 0 0 1px rgba(116, 119, 92, .08) !important;
    }

    /* RODO */
    body.contact-index-index .form.contact .field-name-rodo {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        margin-top: 4px !important;
    }

    body.contact-index-index .form.contact .field-name-rodo input[type="checkbox"] {
        flex: 0 0 auto;
        margin-top: 3px;
        accent-color: var(--seart-olive);
    }

    body.contact-index-index .form.contact .field-name-rodo > .label {
        margin: 0 !important;
        color: var(--seart-text-muted) !important;
        font-size: 11px !important;
        line-height: 1.45 !important;
        font-weight: 400 !important;
    }

    /* Inline margin-top:-15px from template */
    body.contact-index-index .form.contact .actions-toolbar {
        margin-top: 4px !important;
    }

    body.contact-index-index .form.contact .actions-toolbar .action.submit.primary {
        min-width: 120px;
        min-height: 42px;
        padding: 10px 20px !important;
        border: 1px solid var(--seart-olive) !important;
        border-radius: 2px !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        font-weight: 500 !important;
        box-shadow: none !important;
    }

    body.contact-index-index .form.contact .actions-toolbar .action.submit.primary:hover,
    body.contact-index-index .form.contact .actions-toolbar .action.submit.primary:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
    }

    /* -----------------------------------------------------
       RIGHT CONTACT INFO
       ----------------------------------------------------- */

    body.contact-index-index .contact-info {
        padding: 24px 22px !important;
        border: 1px solid var(--seart-border);
        border-top: 3px solid var(--seart-olive);
        border-radius: 3px;
        background: var(--seart-surface);
        box-shadow: 0 5px 18px rgba(37, 38, 34, .04);
    }

    body.contact-index-index .contact-info .contacts-title {
        margin: 0 0 16px;
        padding-bottom: 12px;
        border-bottom: 1px solid var(--seart-border);
        color: var(--seart-text) !important;
        font-size: 20px !important;
        line-height: 1.3 !important;
        font-weight: 500 !important;
    }

    body.contact-index-index .contact-info > .row {
        margin: 0;
        border-bottom: 1px solid var(--seart-beige);
    }

    body.contact-index-index .contact-info > .row:last-child {
        border-bottom: 0;
    }

    body.contact-index-index .contact-info .col-md-12 {
        display: flex;
        align-items: center;
        min-height: 58px;
        padding: 0 !important;
    }

    body.contact-index-index .contact-info i {
        display: inline-flex;
        flex: 0 0 38px;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        margin: 0 12px 0 0;
        border: 1px solid var(--seart-border);
        border-radius: 2px;
        background: var(--seart-bg);
        color: var(--seart-olive) !important;
        font-size: 16px !important;
    }

    /* Override inline margins on tel/mail links. */
    body.contact-index-index .contact-info a,
    body.contact-index-index .contact-info a:visited {
        display: inline-block !important;
        margin: 0 !important;
        color: var(--seart-text) !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        text-decoration: none !important;
    }

    body.contact-index-index .contact-info a:hover,
    body.contact-index-index .contact-info a:focus {
        color: var(--seart-olive-hover) !important;
        text-decoration: underline !important;
        text-underline-offset: 2px;
    }

    /* -----------------------------------------------------
       STREET VIEW
       ----------------------------------------------------- */

    body.contact-index-index #maincontent .column.main > .row:last-child {
        margin-top: 32px;
        margin-left: 0;
        margin-right: 0;
    }

    body.contact-index-index #maincontent .column.main > .row:last-child iframe {
        display: block;
        width: 100% !important;
        height: 600px !important;
        border: 0 !important;
        border-radius: 3px;
    }
}

/* =========================================================
   LOGIN DESKTOP v42
   Fix text colour on "Utwórz konto" CTA.
   ========================================================= */

body.customer-account-login .login-container .block-new-customer .action.primary,
body.customer-account-login .login-container .block-new-customer .action.primary:visited,
body.customer-account-login .login-container .block-new-customer .action.create,
body.customer-account-login .login-container .block-new-customer .action.create:visited {
    color: #FFFFFF !important;
}

body.customer-account-login .login-container .block-new-customer .action.primary:hover,
body.customer-account-login .login-container .block-new-customer .action.primary:focus,
body.customer-account-login .login-container .block-new-customer .action.create:hover,
body.customer-account-login .login-container .block-new-customer .action.create:focus {
    color: #FFFFFF !important;
}

/* =========================================================
   PRODUCT LISTING DESKTOP v43
   Visual-only correction.
   IMPORTANT: existing B2B logic in list.phtml is untouched:
   - logged B2B simple product -> Add to Cart
   - logged B2B grouped product -> Check variants
   - guest -> Show More
   ========================================================= */

@media (min-width: 768px) {

    /* Stop stretching every product to one tall boxed card. */
    body.catalog-category-view .products-grid .product-items,
    body.catalogsearch-result-index .products-grid .product-items {
        align-items: flex-start !important;
    }

    body.catalog-category-view .products-grid .product-item,
    body.catalogsearch-result-index .products-grid .product-item {
        display: block !important;
        align-self: flex-start;
        margin-bottom: 34px !important;
    }

    body.catalog-category-view .products-grid .product-item-info,
    body.catalogsearch-result-index .products-grid .product-item-info {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
    }

    body.catalog-category-view .products-grid .product-item-info:hover,
    body.catalogsearch-result-index .products-grid .product-item-info:hover {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
    }

    /* Return the visual border to the image area only. */
    body.catalog-category-view .products-grid .product-item-photo,
    body.catalogsearch-result-index .products-grid .product-item-photo {
        display: block !important;
        margin: 0 0 16px !important;
        padding: 8px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
        overflow: hidden;
        transition: border-color 180ms ease, box-shadow 180ms ease;
    }

    body.catalog-category-view .products-grid .product-item-photo:hover,
    body.catalogsearch-result-index .products-grid .product-item-photo:hover {
        border-color: #C8C4B9 !important;
        box-shadow: 0 5px 16px rgba(37, 38, 34, .05);
    }

    body.catalog-category-view .products-grid .product-image-container,
    body.catalogsearch-result-index .products-grid .product-image-container {
        border: 0 !important;
        background: #fff !important;
    }

    body.catalog-category-view .products-grid .product-item-details,
    body.catalogsearch-result-index .products-grid .product-item-details {
        display: block !important;
        min-height: 0 !important;
        padding: 0 6px !important;
        text-align: center;
    }

    /* Keep titles reasonably aligned, without creating huge empty card areas. */
    body.catalog-category-view .products-grid .product-item-name,
    body.catalogsearch-result-index .products-grid .product-item-name {
        display: block !important;
        min-height: 40px;
        margin: 0 0 9px !important;
        color: var(--seart-text) !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        font-weight: 500 !important;
        text-align: center;
    }

    /* Price sits directly below the title. */
    body.catalog-category-view .products-grid .price-box,
    body.catalogsearch-result-index .products-grid .price-box {
        min-height: 48px !important;
        margin: 0 0 10px !important;
        text-align: center;
    }

    /* Product action area no longer forces itself to the bottom of a tall card. */
    body.catalog-category-view .products-grid .product-item-actions,
    body.catalogsearch-result-index .products-grid .product-item-actions {
        width: auto !important;
        margin: 9px 0 0 !important;
        padding: 0 !important;
        text-align: center;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary {
        display: flex !important;
        justify-content: center;
        width: 100% !important;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary form,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary form {
        display: inline-block;
        width: auto;
        margin: 0;
    }

    /*
     * Logged B2B CTA:
     * keep the existing PHP logic, change only its visual scale.
     */
    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart,
    body.catalog-category-view .products-grid .sprawdz-warianty,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: auto !important;
        min-width: 146px;
        min-height: 38px;
        margin: 0 auto !important;
        padding: 8px 14px !important;
        border: 1px solid var(--seart-olive) !important;
        border-radius: 2px !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
        font-weight: 500 !important;
        text-align: center;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart:hover,
    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart:focus,
    body.catalog-category-view .products-grid .sprawdz-warianty:hover,
    body.catalog-category-view .products-grid .sprawdz-warianty:focus,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart:hover,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart:focus,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty:hover,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
        color: #fff !important;
    }

    /*
     * Guest "Zobacz więcej":
     * restore the lighter, secondary appearance from the old listing,
     * while keeping the new SEART palette.
     */
    body.catalog-category-view .products-grid .show-more-button-not-logged,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged {
        margin: 10px 0 0 !important;
        text-align: center;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged .action,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: auto !important;
        min-width: 116px;
        min-height: 36px;
        margin: 0 auto !important;
        padding: 7px 13px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text-muted) !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged .action:hover,
    body.catalog-category-view .products-grid .show-more-button-not-logged .action:focus,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action:hover,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action:focus {
        border-color: var(--seart-olive) !important;
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
    }

    /* Create the missing visual gap between filters and the product column. */
    body.catalog-category-view .sidebar-main,
    body.catalogsearch-result-index .sidebar-main {
        padding-right: 20px !important;
        box-sizing: border-box;
    }
}

/* =========================================================
   PRODUCT LISTING DESKTOP v44
   Return to the approved card layout.
   Visual only — B2B logic in list.phtml remains untouched.
   ========================================================= */

@media (min-width: 768px) {

    /* Restore equal-height product cards per row. */
    body.catalog-category-view .products-grid .product-items,
    body.catalogsearch-result-index .products-grid .product-items {
        display: flex !important;
        flex-wrap: wrap;
        align-items: stretch !important;
    }

    body.catalog-category-view .products-grid .product-item,
    body.catalogsearch-result-index .products-grid .product-item {
        display: flex !important;
        align-items: stretch !important;
        align-self: stretch !important;
        margin-bottom: 26px !important;
    }

    body.catalog-category-view .products-grid .product-item-info,
    body.catalogsearch-result-index .products-grid .product-item-info {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 3px !important;
        background: var(--seart-surface) !important;
        box-shadow: none !important;
        transform: none !important;
        overflow: hidden;
        transition: border-color 180ms ease, box-shadow 180ms ease;
    }

    body.catalog-category-view .products-grid .product-item-info:hover,
    body.catalogsearch-result-index .products-grid .product-item-info:hover {
        border-color: #C8C4B9 !important;
        background: var(--seart-surface) !important;
        box-shadow: 0 7px 20px rgba(37, 38, 34, .06) !important;
        transform: none !important;
    }

    /* Large image area at the top of the card. */
    body.catalog-category-view .products-grid .product-item-photo,
    body.catalogsearch-result-index .products-grid .product-item-photo {
        display: block !important;
        margin: 0 !important;
        padding: 12px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        overflow: hidden;
    }

    body.catalog-category-view .products-grid .product-image-container,
    body.catalogsearch-result-index .products-grid .product-image-container {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        border: 0 !important;
        background: #fff !important;
    }

    body.catalog-category-view .products-grid .product-image-wrapper,
    body.catalogsearch-result-index .products-grid .product-image-wrapper {
        background: #fff !important;
    }

    body.catalog-category-view .products-grid .product-image-photo,
    body.catalogsearch-result-index .products-grid .product-image-photo {
        max-width: 100% !important;
        object-fit: contain;
    }

    /* Information block — left aligned like the approved layout. */
    body.catalog-category-view .products-grid .product-item-details,
    body.catalogsearch-result-index .products-grid .product-item-details {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: column !important;
        min-height: 250px !important;
        padding: 14px 14px 12px !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .product-item-name,
    body.catalogsearch-result-index .products-grid .product-item-name {
        display: block !important;
        min-height: 48px !important;
        margin: 0 0 10px !important;
        color: var(--seart-text) !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        font-weight: 600 !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .product-item-name a,
    body.catalog-category-view .products-grid .product-item-name a:visited,
    body.catalogsearch-result-index .products-grid .product-item-name a,
    body.catalogsearch-result-index .products-grid .product-item-name a:visited {
        color: var(--seart-text) !important;
        text-decoration: none !important;
    }

    body.catalog-category-view .products-grid .product-item-name a:hover,
    body.catalog-category-view .products-grid .product-item-name a:focus,
    body.catalogsearch-result-index .products-grid .product-item-name a:hover,
    body.catalogsearch-result-index .products-grid .product-item-name a:focus {
        color: var(--seart-olive-hover) !important;
    }

    /* Stock/status if Porto/module renders it. */
    body.catalog-category-view .products-grid .stock,
    body.catalogsearch-result-index .products-grid .stock {
        margin: 3px 0 12px !important;
        font-size: 11px !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .stock.available,
    body.catalogsearch-result-index .products-grid .stock.available {
        color: var(--seart-success) !important;
    }

    body.catalog-category-view .products-grid .stock.unavailable,
    body.catalogsearch-result-index .products-grid .stock.unavailable {
        color: var(--seart-text-muted) !important;
    }

    /* Price block sits toward the bottom, before CTA. */
    body.catalog-category-view .products-grid .price-box,
    body.catalogsearch-result-index .products-grid .price-box {
        min-height: 54px !important;
        margin: auto 0 12px !important;
        color: var(--seart-text) !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .price-box .price-label,
    body.catalogsearch-result-index .products-grid .price-box .price-label {
        display: block;
        margin: 0 0 3px !important;
        color: var(--seart-text-muted) !important;
        font-size: 10px !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;
    }

    body.catalog-category-view .products-grid .price-box .price,
    body.catalogsearch-result-index .products-grid .price-box .price {
        color: var(--seart-text) !important;
        font-size: 18px !important;
        line-height: 1.15 !important;
        font-weight: 600 !important;
    }

    body.catalog-category-view .products-grid .old-price .price,
    body.catalogsearch-result-index .products-grid .old-price .price {
        color: var(--seart-text-muted) !important;
        font-size: 11px !important;
        font-weight: 400 !important;
        text-decoration: line-through;
    }

    body.catalog-category-view .products-grid .b2b-netto-label,
    body.catalogsearch-result-index .products-grid .b2b-netto-label {
        color: var(--seart-text-muted) !important;
        font-size: 10px !important;
        font-weight: 400 !important;
    }

    /* Actions fixed to the bottom of the card. */
    body.catalog-category-view .products-grid .product-item-actions,
    body.catalogsearch-result-index .products-grid .product-item-actions {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary {
        display: block !important;
        width: 100% !important;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary form,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary form {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    /* Logged B2B simple product: solid Add to Cart. */
    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        border: 1px solid var(--seart-olive) !important;
        border-radius: 2px !important;
        background: var(--seart-olive) !important;
        color: #fff !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: .01em;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart:hover,
    body.catalog-category-view .products-grid .product-item-actions .actions-primary .tocart:focus,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart:hover,
    body.catalogsearch-result-index .products-grid .product-item-actions .actions-primary .tocart:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
        color: #fff !important;
    }

    /* Logged B2B grouped product: outlined "Sprawdź warianty". */
    body.catalog-category-view .products-grid .sprawdz-warianty,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        border: 1px solid var(--seart-olive) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-olive-hover) !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: .01em;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .sprawdz-warianty:hover,
    body.catalog-category-view .products-grid .sprawdz-warianty:focus,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty:hover,
    body.catalogsearch-result-index .products-grid .sprawdz-warianty:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
    }

    /* Guest "Zobacz więcej" — secondary outlined button. */
    body.catalog-category-view .products-grid .show-more-button-not-logged,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged {
        margin: 10px 0 0 !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged .action,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: auto !important;
        min-width: 126px;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 7px 13px !important;
        border: 1px solid var(--seart-border) !important;
        border-radius: 2px !important;
        background: #fff !important;
        color: var(--seart-text-muted) !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
        font-weight: 400 !important;
        text-transform: none;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged .action:hover,
    body.catalog-category-view .products-grid .show-more-button-not-logged .action:focus,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action:hover,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged .action:focus {
        border-color: var(--seart-olive) !important;
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
    }

    /* Clear visual separation between sidebar filters and products. */
    body.catalog-category-view .sidebar-main,
    body.catalogsearch-result-index .sidebar-main {
        padding-right: 26px !important;
        box-sizing: border-box;
    }

    body.catalog-category-view .column.main,
    body.catalogsearch-result-index .column.main {
        padding-left: 10px !important;
        box-sizing: border-box;
    }
}

/* =========================================================
   PRODUCT LISTING v45
   Preserve existing B2B visibility logic from list.phtml.
   The template hides guest/logged actions with inline display:none.
   Earlier visual rules used display:inline-flex!important, which could
   override that inline state. These selectors restore the template logic.
   ========================================================= */

body.catalog-category-view .products-grid .product-item-actions .tocart[style*="display:none"],
body.catalog-category-view .products-grid .sprawdz-warianty[style*="display:none"],
body.catalogsearch-result-index .products-grid .product-item-actions .tocart[style*="display:none"],
body.catalogsearch-result-index .products-grid .sprawdz-warianty[style*="display:none"] {
    display: none !important;
}

body.catalog-category-view .products-grid .show-more-button-not-logged[style*="display:none"],
body.catalogsearch-result-index .products-grid .show-more-button-not-logged[style*="display:none"] {
    display: none !important;
}

/* =========================================================
   PRODUCT LISTING v46
   Guest / not-logged CTA styling.
   Logic is unchanged: the template decides which button exists.
   ========================================================= */

@media (min-width: 768px) {

    /* Anchor the guest CTA to the bottom of the same card,
       so it occupies the same visual position as logged-in actions. */
    body.catalog-category-view .products-grid .product-item-info,
    body.catalogsearch-result-index .products-grid .product-item-info {
        position: relative !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]),
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) {
        position: absolute !important;
        left: 14px;
        right: 14px;
        bottom: 12px;
        width: auto !important;
        margin: 0 !important;
        text-align: left !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        border: 1px solid var(--seart-olive) !important;
        border-radius: 2px !important;
        background: #FFFFFF !important;
        color: var(--seart-olive-hover) !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: .01em;
        box-shadow: none !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:hover,
    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:focus,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:hover,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-bg) !important;
        color: var(--seart-olive-hover) !important;
    }

    /* Leave room for the bottom-anchored guest CTA.
       This affects the title block only when the guest CTA is present. */
    body.catalog-category-view .products-grid .product-item-name:has(.show-more-button-not-logged:not([style*="display:none"])),
    body.catalogsearch-result-index .products-grid .product-item-name:has(.show-more-button-not-logged:not([style*="display:none"])) {
        margin-bottom: 58px !important;
    }
}

/* =========================================================
   PRODUCT LISTING v47
   Guest CTA colour correction.
   "Zobacz więcej" uses the same primary olive treatment as the
   other main listing actions, while visibility logic remains unchanged.
   ========================================================= */

@media (min-width: 768px) {
    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action,
    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:visited,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:visited {
        border-color: var(--seart-olive) !important;
        background: var(--seart-olive) !important;
        color: #FFFFFF !important;
    }

    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:hover,
    body.catalog-category-view .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:focus,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:hover,
    body.catalogsearch-result-index .products-grid .show-more-button-not-logged:not([style*="display:none"]) .action:focus {
        border-color: var(--seart-olive-hover) !important;
        background: var(--seart-olive-hover) !important;
        color: #FFFFFF !important;
    }
}

/* =========================================================
   PRODUCT LISTING v48
   Guest cards: reduce empty space between product name and
   "Zobacz więcej" while keeping the CTA anchored at the bottom.
   ========================================================= */

@media (min-width: 768px) {

    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details,
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details {
        min-height: 145px !important;
        padding-bottom: 64px !important;
    }

    body.catalog-category-view .products-grid .product-item-name:has(.show-more-button-not-logged[style*="display:block"]),
    body.catalogsearch-result-index .products-grid .product-item-name:has(.show-more-button-not-logged[style*="display:block"]) {
        min-height: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* =========================================================
   PRODUCT LISTING v49
   Guest cards: further reduce vertical empty space.
   ========================================================= */

@media (min-width: 768px) {
    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details,
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details {
        min-height: 115px !important;
        padding-bottom: 56px !important;
    }
}

/* =========================================================
   PRODUCT LISTING v50
   Guest cards: compact the details area further.
   Hide empty price/action placeholders that are not used for guests.
   ========================================================= */

@media (min-width: 768px) {

    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]),
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) {
        height: auto !important;
        min-height: 0 !important;
    }

    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details,
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-details {
        flex: 0 0 auto !important;
        min-height: 96px !important;
        padding-bottom: 54px !important;
    }

    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .price-box:empty,
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .price-box:empty {
        display: none !important;
        min-height: 0 !important;
        margin: 0 !important;
    }

    body.catalog-category-view .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-inner,
    body.catalogsearch-result-index .products-grid .product-item-info:has(.show-more-button-not-logged[style*="display:block"]) .product-item-inner {
        display: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

