:root {
    --mepa-green: #007864;
    --mepa-green-light: #35a188;
    --mepa-accent: #07a488;
    --mepa-mint: #6bcfb0;
    --mepa-text: #4e4e4e;
    --mepa-dark: #3b3b3b;
    --mepa-border: #e9e9e9;
    --mepa-border-strong: #c7c7c7;
    --mepa-bg: #f8f8f8;
    --mepa-white: #fff;
    --mepa-radius: 8px;
    --mepa-gradient: linear-gradient(180deg, #007864 0%, #6bcfb0 100%);
}

html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--mepa-bg);
    color: var(--mepa-text);
    font-family: "Geologica", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}
body.admin-bar .mepa-account-tool__dropdown { z-index: 100001; }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
a { color: inherit; }

@media (min-width: 1440px) {
    .container { max-width: 1400px; }
}

/* Header – source/Figma geometry, but dynamic WordPress menus. */
.logos-mepa-header {
    padding: 12px 0 24px;
    background: var(--mepa-bg);
    position: relative;
    z-index: 100;
}
.logos-mepa-header .container { position: relative; }
.header-topper { position: relative; min-height: 172px; }
.header-topper-wrap { margin: 0; min-height: 38px; position: relative; }
.logos-mepa-top-tools {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    color: var(--mepa-green);
    font-size: 14px;
}
.mepa-top-tool {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 30px;
    color: var(--mepa-green);
    border: 0;
    background: transparent;
}
.mepa-top-tool:hover { color: var(--mepa-accent); }
.mepa-top-tool img { width: 21px; height: 20px; object-fit: contain; }
.mepa-tool-icon { font-size: 20px; line-height: 1; }
.mepa-tool-count {
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--mepa-green);
    color: #fff;
    font-size: 10px;
    line-height: 1;
}
.mepa-top-tool--cart .mepa-tool-count { margin-left: -9px; margin-top: -16px; }
.mepa-cart-summary { color: var(--mepa-green); white-space: nowrap; }
.mepa-account-tool { position: relative; }
.mepa-account-tool__button {
    border: 0;
    padding: 7px 0;
    background: transparent;
    color: var(--mepa-text);
    cursor: pointer;
    display: flex;
    gap: 8px;
    align-items: center;
}
.mepa-account-caret { font-size: 9px; }
.mepa-account-tool__dropdown {
    position: absolute;
    right: 0;
    top: calc(100% + 5px);
    width: 210px;
    padding: 8px;
    display: none;
    background: #fff;
    border: 1px solid var(--mepa-border);
    border-radius: 8px;
    box-shadow: 0 12px 35px rgba(0,0,0,.10);
    z-index: 1000;
}
.mepa-account-tool.is-open .mepa-account-tool__dropdown { display: block; }
.mepa-account-tool__dropdown a {
    display: block;
    padding: 9px 10px;
    border-radius: 5px;
    color: var(--mepa-text);
    font-size: 14px;
}
.mepa-account-tool__dropdown a:hover { color: var(--mepa-green); background: var(--mepa-bg); }
.header-topper-logo {
    position: absolute;
    top: 35px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    text-align: center;
}
.header-topper-logo a { display: block; }
.header-topper-logo img,
.header-topper-logo .logos-mepa-custom-logo {
    display: block;
    width: auto;
    height: auto;
    max-width: 220px;
    max-height: 118px;
    object-fit: contain;
}

.logos-mepa-main-nav {
    max-width: 1400px;
    margin: 0 auto;
    display: flex !important;
    align-items: stretch !important;
}
.logos-mepa-main-nav > .menu-item {
    display: flex !important;
    align-items: center;
    width: calc(100% - 340px);
    min-width: 0;
    padding: 0 30px;
    background: var(--mepa-green-light);
    border-radius: 8px 0 0 8px;
}
.logos-mepa-main-nav > .menu-item > ul {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: clamp(12px, 2vw, 47px);
    width: 100%;
    margin: 0;
    padding: 0;
}
.logos-mepa-main-nav > .menu-item > ul > li,
.logos-mepa-main-nav > .menu-item > ul > li.mepa-nav-item {
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 auto;
    background: transparent !important;
    border-radius: 0 !important;
    display: block !important;
}
.logos-mepa-main-nav > .menu-item a {
    display: block;
    padding: 10px 0;
    color: #fff;
    font-size: clamp(16px, 1.2vw, 24px);
    line-height: 31px;
    font-weight: 600;
    text-transform: uppercase;
    white-space: nowrap;
}
.logos-mepa-main-nav > .menu-item a:hover,
.logos-mepa-main-nav > .menu-item .current-menu-item > a { color: #173c35; }
.logos-mepa-main-nav > .menu-item a::before { display: none !important; }
.logos-mepa-main-nav .menu-contact {
    display: flex;
    width: 340px;
    flex: 0 0 340px;
}
.logos-mepa-main-nav .menu-contact-item,
.logos-mepa-main-nav .menu-contact-item form { width: 100%; height: 100%; }
.logos-mepa-main-nav .menu-contact-item form input[type="search"] {
    height: 51px;
    border-radius: 0 8px 8px 0;
    background: transparent;
}
.logos-mepa-main-nav .menu-contact-item form button img { width: 20px; height: 20px; }

.logos-mepa-mobile-menu { background: var(--mepa-bg); padding: 0 0 24px; }
#flip button {
    border: 0;
    width: 100%;
    border-radius: 8px;
    background: var(--mepa-green-light);
    padding: 10px 20px;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
}
#flip button img { width: 20px; margin-right: 8px; }
#panel ul li.mepa-nav-item { background: transparent !important; width: auto !important; padding: 0 !important; }

/* General page shell. */
.logos-mepa-main { background: var(--mepa-bg); min-height: 50vh; }
.mepa-page,
.mepa-shop-page,
.mepa-posts-page,
.mepa-single-post { padding: 32px 0 100px; background: var(--mepa-bg); }
.mepa-breadcrumbs {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 26px;
    color: var(--mepa-text);
    font-size: 14px;
}
.mepa-breadcrumbs a:hover { color: var(--mepa-green); }
.mepa-breadcrumbs__sep { color: #8a8a8a; cursor: default; }
.mepa-page-title,
.mepa-section-title,
.mepa-shop-title-row h1 {
    color: var(--mepa-text);
    font-size: clamp(30px, 3vw, 44px);
    line-height: 1.15;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0 0 34px;
}
.mepa-eyebrow { color: var(--mepa-green); text-transform: uppercase; font-weight: 600; margin-bottom: 8px; }
.mepa-entry,
.mepa-page-content,
.entry-content {
    color: var(--mepa-text);
    line-height: 1.7;
}
.entry-content h2, .entry-content h3 { margin: 1.5em 0 .65em; color: var(--mepa-text); }
.entry-content p { margin-bottom: 1em; }

/* Figma home blocks. */
.Wybierz-area { padding-top: 36px; }
.Wybierz-area .row,
.PopulArne-area .row { row-gap: 0; }
.Wybierz-box,
a.Wybierz-box {
    display: block;
    color: var(--mepa-text);
    height: calc(100% - 24px);
}
.Wybierz-box img { object-fit: cover; border-radius: 4px; }
.Wybierz-box:hover { border-color: var(--mepa-green-light); transform: translateY(-2px); box-shadow: 0 9px 24px rgba(0,120,100,.07); }
.PopulArne-box { min-height: 0; height: calc(100% - 24px); display: flex; flex-direction: column; }
.PopulArne-box-img { padding: 8px 0; }
.PopulArne-box-img img { object-fit: contain; border-radius: 4px; }
.PopulArne-box h2 { min-height: 40px; }
.PopulArne-box h2 a { color: inherit; }
.PopulArne-box h3 { margin-top: auto; }
.PopulArne-box h3 .price, .PopulArne-box h3 ins { text-decoration: none; }
.mepa-card-tools { display: flex; justify-content: space-between; align-items: center; min-height: 25px; margin-bottom: 4px; }
.mepa-card-check { color: var(--mepa-accent); font-size: 14px; }
.mepa-card-icons { display: flex; align-items: center; gap: 4px; }
.mepa-icon-button {
    border: 0;
    width: 28px;
    height: 28px;
    padding: 2px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--mepa-accent);
    background: transparent;
    cursor: pointer;
    border-radius: 50%;
    line-height: 1;
}
.mepa-icon-button img { width: 24px; max-height: 18px; object-fit: contain; }
.mepa-icon-button:hover, .mepa-icon-button.is-active { color: #fff; background: var(--mepa-green); }
.mepa-product-card__sku { text-align: center; color: #8d8d8d; font-size: 12px; margin: 0 0 5px; }
.mepa-product-card__bottom { padding-top: 14px; margin-top: 10px; border-top: 1px solid var(--mepa-border); }
.mepa-product-card__stock { font-size: 13px; margin-bottom: 10px; }
.mepa-stock--in { color: var(--mepa-accent); }
.mepa-stock--out { color: #a33b3b; }
.mepa-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 16px;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    line-height: 1.2;
}
.mepa-btn--primary { color: #fff; background: var(--mepa-gradient); }
.mepa-btn--primary:hover { color: #fff; filter: brightness(.96); }
.mepa-btn--primary img { width: 24px; height: 15px; object-fit: contain; }
.mepa-btn--ghost { color: var(--mepa-green); border: 1px solid var(--mepa-green-light); background: #fff; }
.mepa-product-card__cart { width: 100%; }

/* Category/shop – adapts the Figma parts listing into WooCommerce. */
.mepa-shop-page { padding-top: 30px; }
.mepa-shop-categories { margin-bottom: 48px; }
.mepa-category-heading { display: flex; gap: 24px; align-items: center; margin-bottom: 18px; }
.mepa-category-heading h1 { margin: 0; color: var(--mepa-text); font-weight: 400; font-size: 32px; text-transform: uppercase; }
.mepa-back-link { display: inline-flex; padding: 10px; border-radius: 8px; color: #fff; background: var(--mepa-gradient); white-space: nowrap; }
.mepa-back-link:hover { color: #fff; filter: brightness(.95); }
.mepa-category-feature.cofnij-area { padding: 0 0 44px; }
.mepa-category-feature__image { background: #fff; overflow: hidden; min-height: 560px; display: flex; align-items: center; justify-content: center; }
.mepa-category-feature__image img { width: 100%; max-height: 663px; object-fit: contain; }
.mepa-category-feature__parts .cofnij-right { margin-bottom: 0; height: 100%; min-height: 116px; border-color: var(--mepa-border); }
.mepa-compact-card .cofnij-right-img { width: 37%; padding-right: 10px; }
.mepa-compact-card .cofnij-right-img img { height: 98px; object-fit: contain; }
.mepa-compact-card .cofnij-right-cnt { width: 63%; min-width: 0; }
.mepa-compact-card .cofnij-right-cnt h3 { margin: 0 0 5px; font-size: 14px; line-height: 1.25; }
.mepa-compact-card .cofnij-right-cnt h3 a { color: var(--mepa-text); }
.mepa-compact-card .cofnij-right-cnt p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mepa-compact-card .cofnij-right-cnt ul { gap: 5px; }
.mepa-compact-card .cofnij-right-cnt ul li { color: var(--mepa-green); font-size: 12px; }
.mepa-compact-card .cofnij-right-cnt ul li a { font-size: 12px; }
.mepa-catalog-toolbar {
    margin: 22px 0 24px;
    padding: 14px 16px;
    border: 1px solid var(--mepa-border);
    border-radius: 8px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.mepa-catalog-toolbar .woocommerce-result-count { margin: 0; color: #777; }
.mepa-catalog-toolbar .woocommerce-ordering { margin: 0; float: none; }
.mepa-catalog-toolbar select { min-height: 40px; border: 1px solid var(--mepa-border-strong); border-radius: 4px; padding: 0 35px 0 10px; background: #fff; color: var(--mepa-text); }
.mepa-products-grid { row-gap: 0; }
.mepa-pagination { margin-top: 24px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; gap: 6px; justify-content: center; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { min-width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--mepa-border); border-radius: 4px; background: #fff; color: var(--mepa-text); }
.woocommerce nav.woocommerce-pagination ul li span.current { color: #fff; background: var(--mepa-green); border-color: var(--mepa-green); }

/* Single product – Figma Frame 4. */
.zaworu-area.mepa-single-product { padding: 30px 0 150px; }
.mepa-single-product__main { margin-top: 0; }
.mepa-single-product__gallery {
    border-radius: 8px;
    background: #fff;
    border: 1px solid var(--mepa-border);
    overflow: hidden;
}
.mepa-single-product__gallery > img,
.mepa-single-product__gallery > .woocommerce-product-gallery__image img,
.mepa-single-product__gallery > .woocommerce-placeholder { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; display: block; }
.mepa-product-thumbs { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; padding: 8px; border-top: 1px solid var(--mepa-border); }
.mepa-product-thumbs a { border: 1px solid var(--mepa-border); border-radius: 4px; overflow: hidden; }
.mepa-product-thumbs img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.mepa-single-product__summary.zaworu-right { min-height: 483px; padding: 31px 25px 27px 37px; }
.mepa-single-product__summary h1 { color: var(--mepa-text); font-size: 36px; font-weight: 400; line-height: 1.2; text-transform: uppercase; margin: 0 0 14px; }
.mepa-single-product__summary p { margin-bottom: 6px; }
.mepa-single-product__summary p span,
.mepa-single-product__summary .mepa-stock { color: var(--mepa-accent); }
.mepa-single-product__price h3 { color: var(--mepa-accent); font-size: 24px; font-weight: 400; margin: 0 0 5px; }
.mepa-single-product__price h3 .price, .mepa-single-product__price h3 ins { text-decoration: none; }
.mepa-single-product__buy { margin: 0 0 25px; }
.mepa-single-cart { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin: 0 0 12px; }
.mepa-quantity { display: flex; align-items: center; gap: 0; }
.mepa-quantity label { margin-right: 8px; }
.mepa-quantity .minus,
.mepa-quantity .plus {
    border: 0;
    background: transparent;
    padding: 7px 12px;
    color: var(--mepa-text);
    cursor: pointer;
}
.mepa-quantity .quantity { display: inline-block; }
.mepa-quantity input.qty { max-width: 58px; width: 58px; height: 40px; border: 1px solid var(--mepa-border-strong); border-radius: 4px; background: #e9e9e9; text-align: center; color: var(--mepa-text); }
.mepa-single-add {
    border: 0;
    border-radius: 4px;
    min-height: 40px;
    padding: 10px 18px;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #fff;
    background: var(--mepa-gradient);
    cursor: pointer;
}
.mepa-single-add img { width: 24px; height: 15px; }
.mepa-single-product__lists { display: flex; gap: 10px; flex-wrap: wrap; }
.mepa-list-action { border: 1px solid var(--mepa-border); border-radius: 4px; background: #fff; color: var(--mepa-text); padding: 8px 10px; cursor: pointer; }
.mepa-list-action:hover, .mepa-list-action.is-active { color: var(--mepa-green); border-color: var(--mepa-green-light); }
.mepa-single-product__description { margin-top: 12px; }
.mepa-single-product__description .mepa-label { margin-bottom: 5px; }
.mepa-single-product__description > div p:last-child { margin-bottom: 0; }
.mepa-native-cart .variations { margin-bottom: 14px; }
.mepa-native-cart .variations th, .mepa-native-cart .variations td { padding: 5px; }
.mepa-native-cart select { min-height: 40px; border: 1px solid var(--mepa-border-strong); border-radius: 4px; padding: 6px 10px; }
.mepa-native-cart .single_add_to_cart_button { border: 0; border-radius: 4px; color: #fff; background: var(--mepa-gradient) !important; }
.mepa-single-tabs { margin: 45px 0 60px; }
.mepa-single-tabs .woocommerce-tabs { border: 1px solid var(--mepa-border); border-radius: 8px; background: #fff; padding: 25px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 25px; display: flex; gap: 12px; border-bottom: 1px solid var(--mepa-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 0; border-radius: 0; background: transparent; margin: 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 10px 5px; color: var(--mepa-text); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--mepa-green); border-bottom: 2px solid var(--mepa-green); }
.mepa-related-products.PopulArne-area { padding-bottom: 0; }

/* Reviews */
.woocommerce #reviews #comments ol.commentlist { padding: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment-text { border-color: var(--mepa-border); }
.woocommerce #review_form #respond textarea { border: 1px solid var(--mepa-border-strong); border-radius: 4px; min-height: 130px; }
.woocommerce #respond input#submit { background: var(--mepa-gradient); color: #fff; border-radius: 4px; }

/* WooCommerce utility views: cart, checkout, account, notices. */
.woocommerce-notices-wrapper { margin-bottom: 20px; }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-top-color: var(--mepa-green);
    background: #fff;
    border-radius: 4px;
}
.woocommerce-message::before,
.woocommerce-info::before { color: var(--mepa-green); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container--default .select2-selection--single {
    min-height: 44px;
    border: 1px solid var(--mepa-border-strong);
    border-radius: 4px;
    background: #fff;
    padding: 8px 10px;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 27px; }
.woocommerce table.shop_table { border-color: var(--mepa-border); border-radius: 8px; background: #fff; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 14px; border-color: var(--mepa-border); }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    border-radius: 4px;
    background: var(--mepa-gradient);
    color: #fff;
    font-weight: 500;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover { color: #fff; filter: brightness(.96); }
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout #customer_details,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation {
    padding: 20px;
    border: 1px solid var(--mepa-border);
    border-radius: 8px;
    background: #fff;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--mepa-border); }
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 12px 5px; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { color: var(--mepa-green); font-weight: 600; }

/* Wishlist/compare */
.mepa-list-page { padding-bottom: 120px; }
.mepa-compare-wrap { overflow-x: auto; background: #fff; border: 1px solid var(--mepa-border); border-radius: 8px; }
.mepa-compare-table { width: 100%; min-width: 820px; border-collapse: collapse; }
.mepa-compare-table th, .mepa-compare-table td { border-bottom: 1px solid var(--mepa-border); border-right: 1px solid var(--mepa-border); padding: 15px; vertical-align: top; }
.mepa-compare-table th { width: 160px; color: var(--mepa-green); text-align: left; }
.mepa-compare-table td img { max-width: 180px; max-height: 180px; object-fit: contain; }
.mepa-compare-table tr:last-child th, .mepa-compare-table tr:last-child td { border-bottom: 0; }

/* Content blocks and blog. */
.mepa-content-block, .mepa-posts-block, .mepa-cta-block, .mepa-faq-block, .mepa-contact-block { background: var(--mepa-bg); padding: 65px 0; }
.mepa-content-block__image { width: 100%; border-radius: 8px; background: #fff; }
.mepa-content-block__copy h2, .mepa-contact-block h2 { font-size: 36px; font-weight: 400; text-transform: uppercase; margin-bottom: 18px; }
.mepa-content-block__copy p, .mepa-contact-block p { line-height: 1.7; }
.mepa-post-card { height: calc(100% - 24px); margin-bottom: 24px; border: 1px solid var(--mepa-border); border-radius: 8px; background: #fff; overflow: hidden; }
.mepa-post-card__image { display: block; aspect-ratio: 16/10; background: #eee; overflow: hidden; }
.mepa-post-card__image img { width: 100%; height: 100%; object-fit: cover; }
.mepa-post-card__body { padding: 20px; }
.mepa-post-card__date { color: var(--mepa-green); font-size: 13px; margin-bottom: 8px; }
.mepa-post-card h3 { font-size: 22px; margin-bottom: 12px; }
.mepa-post-card p { line-height: 1.6; margin-bottom: 12px; }
.mepa-text-link { color: var(--mepa-green); }
.mepa-cta-block__inner { padding: 35px; border-radius: 8px; background: var(--mepa-dark); color: #fff; display: flex; justify-content: space-between; gap: 30px; align-items: center; }
.mepa-cta-block__inner h2 { font-size: 32px; margin-bottom: 8px; }
.mepa-faq { max-width: 1000px; margin: 0 auto; }
.mepa-faq__item { border: 1px solid var(--mepa-border); border-radius: 8px; background: #fff; margin-bottom: 10px; }
.mepa-faq__item summary { cursor: pointer; padding: 18px 20px; font-weight: 600; }
.mepa-faq__item > div { padding: 0 20px 20px; line-height: 1.7; }
.mepa-contact-data { margin-top: 25px; }
.mepa-contact-data li { padding: 8px 0; border-bottom: 1px solid var(--mepa-border); }
.mepa-contact-form-wrap { background: #fff; border: 1px solid var(--mepa-border); border-radius: 8px; padding: 28px; }
.mepa-contact-form-wrap h3 { margin-bottom: 20px; }
.mepa-contact-form-wrap input, .mepa-contact-form-wrap textarea { width: 100%; border: 1px solid var(--mepa-border-strong); border-radius: 4px; padding: 10px 12px; }
.mepa-contact-form-wrap textarea { min-height: 140px; }
.mepa-contact-form-wrap .mepa-field { margin-bottom: 14px; }
.mepa-empty { padding: 35px; border: 1px dashed var(--mepa-border-strong); border-radius: 8px; background: #fff; text-align: center; }

/* Footer */
.logos-mepa-footer { margin-top: 0; padding-top: 2px; }
.logos-mepa-footer .footer-main { margin-top: -42px; }
.logos-mepa-footer .footer-main .row { align-items: flex-start; }
.logos-mepa-footer .footer-item-img img { width: 137px; height: 49px; object-fit: contain; }
.logos-mepa-footer li.mepa-nav-item { padding: 0; width: auto; background: transparent; border-radius: 0; display: block; }
.logos-mepa-footer li.mepa-nav-item + li { margin-top: 14px; }
.logos-mepa-footer .footer-item2 ul li { margin: 0 0 14px; }

/* WordPress alignment/accessibility. */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { clip: auto !important; width: auto; height: auto; margin: 0; padding: 10px; background: #fff; z-index: 100000; }
.alignwide { max-width: 1400px; margin-left: auto; margin-right: auto; }
.alignfull { width: 100%; }

@media (max-width: 1199px) {
    .logos-mepa-main-nav > .menu-item { width: calc(100% - 300px); padding: 0 20px; }
    .logos-mepa-main-nav .menu-contact { width: 300px; flex-basis: 300px; }
    .logos-mepa-main-nav > .menu-item > ul { gap: 14px; }
    .logos-mepa-main-nav > .menu-item a { font-size: 16px; }
    .mepa-category-feature__image { min-height: 480px; }
}

@media (max-width: 991px) {
    .header-topper { min-height: 170px; }
    .logos-mepa-main-nav { display: none !important; }
    .logos-mepa-mobile-menu { display: block !important; }
    .header-topper-wrap { min-height: 36px; }
    .logos-mepa-top-tools { justify-content: center; gap: 13px; font-size: 13px; }
    .header-topper-logo { top: 47px; }
    .mepa-top-tool .mepa-cart-summary { display: none; }
    .mepa-category-feature__image { min-height: 0; margin-bottom: 15px; }
    .mepa-single-product__gallery { margin-bottom: 18px; }
    .mepa-single-product__summary.zaworu-right { min-height: 0; }
    .mepa-cta-block__inner { align-items: flex-start; flex-direction: column; }
    .logos-mepa-footer .footer-item1, .logos-mepa-footer .footer-item2 { margin-bottom: 35px; }
}

@media (max-width: 767px) {
    .logos-mepa-header { padding-left: 0; padding-right: 0; }
    .header-topper { min-height: 160px; }
    .logos-mepa-top-tools { gap: 9px; }
    .mepa-top-tool:not(.mepa-top-tool--cart) .mepa-tool-count { position: absolute; right: -6px; top: 0; }
    .mepa-account-tool__button { max-width: 115px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .header-topper-logo { top: 45px; }
    .header-topper-logo img, .header-topper-logo .logos-mepa-custom-logo { max-width: 190px; max-height: 102px; }
    .logos-mepa-mobile-menu .col-md-6 + .col-md-6 { margin-top: 10px; }
    #flip button, .mobile-menu-right form input { border-radius: 8px; }
    .mobile-menu-right form input { min-height: 51px; }
    .Wybierz-area { padding-top: 25px; }
    .Wybierz-top h2, .PopulArne-top h2 { font-size: 26px; margin-bottom: 26px; }
    .mepa-page, .mepa-shop-page, .mepa-posts-page, .mepa-single-post { padding-top: 22px; padding-bottom: 80px; }
    .mepa-breadcrumbs { font-size: 12px; margin-bottom: 18px; }
    .mepa-category-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
    .mepa-category-heading h1 { font-size: 28px; }
    .mepa-category-feature__parts .cofnij-right { min-height: 110px; }
    .mepa-catalog-toolbar { align-items: stretch; flex-direction: column; }
    .mepa-catalog-toolbar select { width: 100%; }
    .zaworu-area.mepa-single-product { padding-top: 22px; padding-bottom: 100px; }
    .mepa-single-product__summary.zaworu-right { padding: 24px 20px; }
    .mepa-single-product__summary h1 { font-size: 29px; }
    .mepa-single-cart { align-items: flex-start; flex-direction: column; }
    .mepa-single-add { width: 100%; justify-content: center; }
    .mepa-single-product__lists { flex-direction: column; }
    .mepa-list-action { width: 100%; }
    .mepa-single-tabs .woocommerce-tabs { padding: 15px; }
    .woocommerce div.product .woocommerce-tabs ul.tabs { overflow-x: auto; }
    .mepa-content-block, .mepa-posts-block, .mepa-cta-block, .mepa-faq-block, .mepa-contact-block { padding: 45px 0; }
    .mepa-content-block__copy { margin-top: 25px; }
    .mepa-content-block__copy h2, .mepa-contact-block h2 { font-size: 28px; }
    .mepa-cta-block__inner { padding: 24px; }
    .logos-mepa-footer { padding-bottom: 35px; }
    .logos-mepa-footer .footer-main { margin-top: -42px; padding: 28px 24px; }
}

@media (max-width: 480px) {
    .logos-mepa-top-tools { justify-content: space-between; }
    .mepa-tool-icon--heart, .mepa-tool-icon--compare { font-size: 18px; }
    .mepa-account-tool__button { font-size: 12px; }
    .mepa-category-feature__parts > [class*="col-"] { width: 100%; }
    .mepa-compact-card .cofnij-right-img { width: 34%; }
    .mepa-compact-card .cofnij-right-cnt { width: 66%; }
    .Wybierz-box img { height: auto; aspect-ratio: 16/9; }
    .PopulArne-box-img img { height: 220px; }
}

.mepa-compare-scroll { overflow-x: auto; background: #fff; border: 1px solid var(--mepa-border); border-radius: 8px; }
.mepa-compare-product-image { display: block; margin-bottom: 12px; text-align: center; }
.mepa-compare-product-name { display: block; font-weight: 600; color: var(--mepa-text); }
.mepa-compare-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.mepa-tracking-page .woocommerce-form-track-order { max-width: 760px; padding: 28px; background: #fff; border: 1px solid var(--mepa-border); border-radius: 8px; }
.logos-mepa-site span { cursor: inherit; }
.mepa-quantity .minus, .mepa-quantity .plus, .mepa-list-action, .mepa-tool-count { cursor: pointer; }
.mepa-single-tabs .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 25px; display: flex; gap: 12px; border-bottom: 1px solid var(--mepa-border); }
.mepa-single-tabs .woocommerce-tabs ul.tabs::before { display: none; }
.mepa-single-tabs .woocommerce-tabs ul.tabs li { border: 0; border-radius: 0; background: transparent; margin: 0; padding: 0; }
.mepa-single-tabs .woocommerce-tabs ul.tabs li::before,
.mepa-single-tabs .woocommerce-tabs ul.tabs li::after { display: none; }
.mepa-single-tabs .woocommerce-tabs ul.tabs li a { padding: 10px 5px; color: var(--mepa-text); }
.mepa-single-tabs .woocommerce-tabs ul.tabs li.active a { color: var(--mepa-green); border-bottom: 2px solid var(--mepa-green); }

/* =========================================================
   LOGOS MEPA 1.1 — WooCommerce routing/layout hardening
   ========================================================= */

/* Imported product images stay inside their card/gallery frame. */
.mepa-product-card,
.PopulArne-box,
.mepa-loop-column{min-width:0}
.mepa-product-card__image,
.PopulArne-box-img,
.mepa-cart-thumb,
.mepa-product-thumbs a{overflow:hidden}
.mepa-product-card__image img,
.PopulArne-box-img img{
    width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block
}
.mepa-cart-thumb{display:flex;width:88px;height:88px;align-items:center;justify-content:center;border-radius:4px;background:#fff}
.mepa-cart-thumb img{display:block;width:100%;height:100%;object-fit:contain}

/* Product reviews/ratings are intentionally not part of this storefront. */
.woocommerce-Reviews,.star-rating,.comment-form-rating{display:none!important}

/* WooCommerce functional pages are constrained by page.php's .container and
   additionally protected against legacy/plugin styles that force 100vw. */
.woocommerce-cart .mepa-page>.container,
.woocommerce-checkout .mepa-page>.container,
.woocommerce-account .mepa-page>.container{width:100%;max-width:1400px;margin-left:auto;margin-right:auto}
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce{width:100%;max-width:100%;min-width:0}
.mepa-cart-view,.mepa-cart-form,.mepa-cart-table-wrap,.mepa-cart-summary-shell{width:100%;max-width:100%;min-width:0}
.mepa-cart-table-wrap{overflow-x:auto;border:1px solid var(--mepa-border);border-radius:8px;background:#fff}
.mepa-cart-table{margin:0!important;border:0!important;border-radius:0!important;min-width:760px}
.mepa-cart-table th,.mepa-cart-table td{vertical-align:middle!important}
.mepa-cart-table .product-remove{width:44px;text-align:center}
.mepa-cart-table .product-thumbnail{width:112px}
.mepa-cart-table .product-name a{font-weight:500;color:var(--mepa-text)}
.mepa-cart-table .product-name a:hover{color:var(--mepa-green)}
.mepa-cart-table .quantity .qty{width:76px;min-height:42px;border:1px solid var(--mepa-border-strong);border-radius:4px;padding:6px;text-align:center}
.mepa-cart-table .remove{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;color:var(--mepa-text);font-size:20px;line-height:1}
.mepa-cart-table .remove:hover{background:#f1f1f1;color:var(--mepa-green)}
.mepa-cart-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:5px 0}
.mepa-cart-coupon{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mepa-cart-coupon .input-text{width:230px;min-height:42px!important}
.mepa-cart-summary-shell{display:flex;justify-content:flex-end;margin-top:28px}
.mepa-cart-summary-shell .cart-collaterals{width:100%;display:flex;justify-content:flex-end}
.mepa-cart-summary-shell .cart_totals{float:none!important;width:min(100%,520px)!important}
.mepa-cart-totals{padding:26px;background:#fff;border:1px solid var(--mepa-border);border-radius:8px}
.mepa-cart-totals h2{font-size:26px;font-weight:500;margin:0 0 16px}
.mepa-cart-totals .shop_table{margin-bottom:18px!important}
.mepa-cart-totals .wc-proceed-to-checkout{padding:0}
.mepa-cart-totals .checkout-button{display:flex!important;width:100%;min-height:46px;align-items:center;justify-content:center;margin:0!important}

.mepa-checkout{width:100%;max-width:100%}
.mepa-commerce-card{height:100%;padding:26px;background:#fff;border:1px solid var(--mepa-border);border-radius:8px}
.mepa-checkout-order{height:auto;margin-top:28px}
.mepa-commerce-card h3,.mepa-commerce-card h2{margin-bottom:18px}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation{width:100%;max-width:100%;box-sizing:border-box}

/* Consistent breathing room on Woo fields, notices and account sections. */
.woocommerce .woocommerce-notices-wrapper{width:100%;max-width:100%;margin:0 0 24px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{margin-bottom:20px!important}
.woocommerce form .form-row{padding:0;margin:0 0 16px}
.woocommerce form .form-row label{margin-bottom:6px}
.woocommerce-account .woocommerce-MyAccount-content>p:first-child{margin-top:0}

@media(max-width:767px){
  .mepa-cart-table{min-width:680px}
  .mepa-cart-actions{align-items:stretch;flex-direction:column}
  .mepa-cart-coupon{width:100%}
  .mepa-cart-coupon .input-text{flex:1;min-width:150px;width:auto}
  .mepa-cart-summary-shell,.mepa-cart-summary-shell .cart-collaterals{display:block}
  .mepa-cart-summary-shell .cart_totals{width:100%!important}
  .mepa-commerce-card{padding:20px}
}

/* Account page follows the MEPA content grid instead of Woo's legacy floats. */
.logged-in.woocommerce-account .mepa-page>.container>.woocommerce{
    display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:28px;align-items:start
}
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation,
.logged-in.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:auto!important;margin:0}
@media(max-width:767px){
    .logged-in.woocommerce-account .mepa-page>.container>.woocommerce{grid-template-columns:1fr}
}
