/*
Theme Name: IMZStore 0.3 — Złoty
Description: Motyw potomny Twenty Twenty-Five dla sklepu IMZStore, oparty na natywnych blokach WordPressa i WooCommerce.
Version: 0.3.2
Template: twentytwentyfive
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: imzstore-gold
*/
/* Presentation shared by the storefront and the Site Editor. Native blocks own interactions. */
* { box-sizing: border-box; }
html { scroll-padding-top: 11rem; }
body { margin: 0; }
.wp-site-blocks { padding: 0; }
a { text-underline-offset: .18em; }
.wp-site-blocks > .wp-block-template-part:has(> .imz-header-inner) { position: sticky; top: 0; z-index: 30; background: var(--wp--preset--color--base); border-bottom: 1px solid var(--wp--preset--color--accent-3); margin-top: 0; }
body.admin-bar .wp-site-blocks > .wp-block-template-part:has(> .imz-header-inner) { top: 32px; }
.imz-header-inner, .imz-main, .imz-footer, .imz-checkout-header, .imz-checkout-footer { width: min(1240px, calc(100% - 32px)); margin-inline: auto; }
.imz-header-inner { padding-block: 12px 6px; }
.imz-header-row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 28px; align-items: center; }
.imz-header-row > *, .imz-shop-layout > *, .imz-content, .imz-product-layout > * { min-width: 0; margin-block: 0; }
.imz-brand { font-size: 1.6rem; font-weight: 800; letter-spacing: -.05em; white-space: nowrap; margin: 0; }
.imz-brand a { text-decoration: none; color: var(--wp--preset--color--contrast); }
.imz-brand span { color: var(--wp--preset--color--accent-1); }
.imz-search { width: 100%; }
.imz-search .wp-block-search__inside-wrapper { border: 1px solid #c4bbaa; border-radius: 6px; padding: 3px; }
.imz-search input { min-width: 0; border: 0; padding: 8px; font: inherit; }
.imz-search button { margin-left: 4px; border-radius: 4px; }
.imz-header-nav { display: flex; align-items: center; justify-content: space-between; position: relative; margin-top: 4px; }
.imz-header-links { display: flex; flex-wrap: wrap; gap: 24px; font-size: .875rem; }
.imz-header-links p { margin: 0; }
.imz-header-links a { display: inline-flex; align-items: center; min-height: 40px; text-decoration: none; }
.imz-mobile-categories { display: none; }
.imz-main { padding-block: 24px 40px; margin-top: 0; }
.imz-main > h1 { margin: 0 0 24px; }
.imz-shop-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 28px; align-items: start; }
.imz-categories, .imz-catalog-sidebar { background: var(--wp--preset--color--accent-2); border: 1px solid var(--wp--preset--color--accent-3); border-radius: 8px; padding: 16px; }
.imz-categories h2, .imz-catalog-sidebar h2 { margin: 0 0 12px; font-size: 1.1rem; }
.imz-categories .wc-block-product-categories, .imz-catalog-sidebar .wc-block-product-categories { margin: 0; }
:is(.imz-categories, .imz-catalog-sidebar, .imz-mobile-categories) .wc-block-product-categories__dropdown { min-width: 0; width: 100%; }
:is(.imz-categories, .imz-catalog-sidebar, .imz-mobile-categories) select { width: 100%; max-width: 100%; min-height: 44px; font: inherit; padding: 8px; border: 1px solid #c4bbaa; border-radius: 5px; background: var(--wp--preset--color--base); }
:is(.imz-categories, .imz-catalog-sidebar) .is-dropdown { display: flex; flex-direction: column; gap: 8px; }
:is(.imz-categories, .imz-catalog-sidebar, .imz-mobile-categories) .wc-block-product-categories button { min-height: 44px; border: 1px solid #c4bbaa; border-radius: 5px; background: var(--wp--preset--color--base); cursor: pointer; }
.imz-delivery { background: var(--wp--preset--color--accent-2); border: 1px solid var(--wp--preset--color--accent-3); border-radius: 8px; padding: 14px 16px; font-size: .875rem; }
.imz-delivery p { margin: 0; }
.imz-delivery a { white-space: normal; }
.imz-content > h2, .imz-products > h2 { margin-top: 24px; margin-bottom: 16px; }
.imz-products .wc-block-product-template { gap: 16px; }
.imz-products .wc-block-product { border: 1px solid var(--wp--preset--color--accent-3); border-radius: 8px; padding: 12px; display: flex; flex-direction: column; gap: 10px; margin: 0; }
.imz-products .wc-block-product > * { margin-block: 0; }
.imz-products .wc-block-components-product-image img { max-height: 150px; object-fit: contain; }
.imz-products .wp-block-post-title { font-size: .875rem; font-weight: 500; line-height: 1.45; overflow-wrap: anywhere; }
.imz-products .wp-block-post-title a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.imz-products .wp-block-woocommerce-product-price { font-size: 1.15rem; font-weight: 750; margin-top: auto; }
.imz-products .wp-block-woocommerce-product-button { margin-top: 0; }
.imz-products .wp-block-button__link { width: 100%; min-height: 44px; padding: 10px 8px; }
.imz-products .wc-block-components-product-stock-indicator { font-size: .8rem; }
body:not(.wp-admin):not(.editor-styles-wrapper) .imz-optional-collection:not(:has(.wc-block-product)) { display: none; }
.imz-catalog-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 16px; }
.imz-catalog-toolbar p, .imz-catalog-toolbar form { margin: 0; }
.imz-catalog-toolbar select { max-width: 100%; min-height: 44px; }
.imz-catalog-sidebar .wc-block-product-filters { margin-top: 24px; font-size: .875rem; }
.imz-catalog-sidebar h3 { font-size: 1rem; }
.imz-catalog-sidebar .wc-block-product-filter-price-slider__content { min-width: 0; }
.imz-empty-results { padding: 24px; background: var(--wp--preset--color--accent-2); border-radius: 8px; }
.imz-product-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; align-items: start; margin-block: 24px; }
.imz-product-gallery img { max-height: 480px; object-fit: contain; }
.imz-product-gallery .woocommerce-product-gallery { width: 100% !important; }
.imz-product-summary h1 { font-size: clamp(1.35rem,2vw,1.8rem); line-height: 1.3; overflow-wrap: anywhere; margin-top: 0; }
.imz-product-summary .wp-block-woocommerce-product-price { font-size: 1.8rem; font-weight: 750; margin-block: 16px; }
.imz-product-summary .wc-block-components-product-sku { color: #655f55; font-size: .875rem; }
.imz-product-summary .wp-block-add-to-cart-with-options { padding: 20px; border: 1px solid var(--wp--preset--color--accent-3); border-radius: 8px; background: var(--wp--preset--color--accent-2); }
.imz-product-links { font-size: .875rem; }
.imz-product-details { margin-block: 32px; scroll-margin-top: 12rem; overflow-wrap: anywhere; }
.imz-product-details :is(img,iframe,video) { max-width: 100%; height: auto; }
.imz-product-details table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-size: .875rem; }
.imz-product-details :is(th,td) { padding: 10px; border: 1px solid var(--wp--preset--color--accent-3); }
.imz-product-details :is(pre, code) { white-space: pre-wrap; overflow-wrap: anywhere; }
.imz-product-details h2 { font-size: 1.35rem; }
.imz-product-details h3 { font-size: 1.1rem; }
.imz-footer { padding-block: 32px 20px; border-top: 1px solid var(--wp--preset--color--accent-3); font-size: .875rem; }
.imz-footer-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.imz-footer h3 { font-size: 1rem; margin: 0 0 12px; }
.imz-footer p { margin: 8px 0; }
.imz-footer a { display: inline-block; padding-block: 3px; }
.imz-prototype-note { border-top: 1px solid var(--wp--preset--color--accent-3); padding-top: 16px; margin-top: 24px !important; color: #655f55; font-size: .8rem; }
.imz-information { max-width: 900px; }
.imz-information h2 { margin-top: 32px; }
.imz-information .imz-lead { font-size: 1.125rem; color: #655f55; }
.imz-information details { border-bottom: 1px solid var(--wp--preset--color--accent-3); padding-block: 12px; }
.imz-information summary { min-height: 44px; cursor: pointer; font-weight: 600; padding-block: 10px; }
.imz-information table { width: 100%; border-collapse: collapse; }
.imz-information :is(th,td) { padding: 12px; border: 1px solid var(--wp--preset--color--accent-3); text-align: left; }
.imz-information .imz-note { padding: 16px; border-radius: 6px; background: var(--wp--preset--color--accent-2); font-size: .875rem; }
.imz-information-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.imz-cart-page .wp-block-woocommerce-cart { margin-top: 24px; }
.imz-checkout-header { padding-block: 20px; border-bottom: 1px solid var(--wp--preset--color--accent-3); }
.imz-checkout-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.imz-checkout-top p { margin: 0; }
.imz-checkout-top > p:last-child { font-size: .875rem; }
.imz-checkout-steps { font-size: .8rem; color: #655f55; margin: 12px 0 0; }
.imz-checkout-page { max-width: 1100px; }
.imz-checkout-page h1 { font-size: 1.5rem; }
.imz-checkout-footer { max-width: 1100px; border-top: 1px solid var(--wp--preset--color--accent-3); padding-block: 20px; font-size: .875rem; }
.imz-checkout-page .wc-block-components-checkout-step { margin-bottom: 24px; }
:where(a, button, input, select, summary):focus-visible { outline: 3px solid var(--wp--preset--color--accent-1); outline-offset: 3px; }
@media (max-width: 1000px) {
 .imz-shop-layout { grid-template-columns: 200px minmax(0,1fr); gap: 20px; }
 .imz-products .wc-block-product-template { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 .imz-product-layout { gap: 24px; }
}
@media (max-width: 782px) { body.admin-bar .wp-site-blocks > .wp-block-template-part:has(> .imz-header-inner) { top: 46px; } }
@media (max-width: 767px) {
 .imz-header-inner { padding-top: 8px; }
 .imz-header-row { grid-template-columns: minmax(0,1fr) auto; gap: 6px; }
 .imz-search { grid-column: 1 / -1; grid-row: 2; }
 .imz-search button { min-height: 38px; padding-block: 8px; }
 .imz-brand { font-size: 1.4rem; }
 .imz-header-links { gap: 14px; font-size: .8rem; }
 .imz-header-links p:last-child { display: none; }
 .imz-header-links a { min-height: 44px; }
 .imz-mobile-categories { display: block; margin: 0; font-size: .8rem; }
 .imz-mobile-categories summary { min-height: 44px; display: list-item; padding-block: 12px; cursor: pointer; font-weight: 600; }
 .imz-mobile-categories .wc-block-product-categories { position: absolute; left: 0; right: 0; top: 100%; display: flex; gap: 8px; background: var(--wp--preset--color--base); padding: 16px; border: 1px solid var(--wp--preset--color--accent-3); box-shadow: 0 8px 16px #29272215; border-radius: 0 0 8px 8px; }
 .imz-mobile-categories button { min-width: 44px; }
 .imz-shop-layout { grid-template-columns: minmax(0,1fr); gap: 16px; }
 .imz-shop-layout > .wp-block-template-part:has(.imz-categories) { display: none; }
 .imz-sidebar-categories { display: none; }
 .imz-catalog-sidebar { padding: 0; border: 0; background: transparent; }
 .imz-catalog-sidebar .wc-block-product-filters { margin: 0; }
 .imz-main { padding-top: 20px; }
 .imz-main > h1 { margin-bottom: 20px; }
 .imz-products .wc-block-product-template { gap: 10px; }
 .imz-products .wc-block-product { padding: 10px; }
 .imz-products .wc-block-components-product-image img { max-height: 130px; }
 .imz-products .wp-block-button__link { font-size: .8rem; }
 .imz-product-layout { grid-template-columns: minmax(0,1fr); gap: 20px; }
 .imz-product-gallery img { max-height: 300px; }
 .imz-product-summary .wp-block-add-to-cart-with-options { padding: 16px; }
 .imz-footer-grid, .imz-information-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .imz-footer a { padding-block: 8px; }
 .imz-checkout-top .imz-brand { font-size: 1.25rem; }
 .imz-checkout-steps { font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
@media (max-width: 600px) { body.admin-bar .wp-site-blocks > .wp-block-template-part:has(> .imz-header-inner) { top: 0; } }
/* Override the inherited flow gaps only where groups form compact grids/rows. */
.imz-header-inner .imz-header-row > *, .imz-header-inner .imz-header-nav > *, .imz-main .imz-shop-layout > *, .imz-footer .imz-footer-grid > * { margin-block: 0; }
.imz-header-inner .imz-header-nav { margin-top: 4px; }
/* Presentation of the already installed delivery-point integration. */
.imz-checkout-page #amp-map-button, .imz-checkout-page #apaczka_mp_geowidget_show_map { max-width: 100%; min-height: 44px; padding: 12px 18px; border: 0; border-radius: 6px; background: var(--wp--preset--color--accent-1); color: var(--wp--preset--color--base); box-shadow: none; font: inherit; cursor: pointer; }

/* 1.2: white surfaces on a quiet catalogue background. */
:root { --imz-surface: var(--wp--preset--color--surface, #fff); --imz-shadow: 0 6px 24px #29272209; }
.wp-site-blocks > .wp-block-template-part:has(> .imz-header-inner) { background: var(--imz-surface); border: 0; box-shadow: 0 3px 18px #2927220a; }
.imz-header-inner { padding-block: 14px; }
.imz-header-row { grid-template-columns: auto minmax(0,1fr) auto; gap: 24px; }
.imz-header-actions { display: flex; align-items: center; gap: 22px; font-size: .875rem; }
.imz-header-actions > *, .imz-cart-header > * { margin-block: 0 !important; }
.imz-header-actions a { text-decoration: none; color: var(--wp--preset--color--contrast); }
.imz-contact-link a, .wp-block-woocommerce-customer-account a { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.imz-cart-header { min-width: 98px; }
.imz-full-cart-link { display: none; }
body:is(.woocommerce-cart,.woocommerce-checkout) .imz-full-cart-link { display: block; }
body:is(.woocommerce-cart,.woocommerce-checkout) .imz-cart-header .wc-block-mini-cart { display: none; }
.imz-navigation { background: var(--imz-surface); border-block: 1px solid #eae5dc; margin: 0; }
.imz-navigation-inner { width: min(1240px,calc(100% - 32px)); margin-inline: auto; display: flex; align-items: center; gap: 28px; position: relative; }
.imz-menu-links { display: flex; gap: 24px; flex-wrap: wrap; margin: 0 !important; }
.imz-menu-links p { margin: 0 !important; }
.imz-menu-links a { display: flex; align-items: center; min-height: 48px; color: var(--wp--preset--color--contrast); font-size: .875rem; text-decoration: none; }
.imz-category-menu { margin: 0 !important; }
.imz-category-menu summary { cursor: pointer; padding-block: 13px; min-height: 48px; font-weight: 650; font-size: .875rem; }
.imz-category-menu > .wc-block-product-categories { position: absolute; left: 0; top: 100%; width: min(360px,100%); max-height: min(65vh,540px); overflow-y: auto; background: var(--imz-surface); border: 1px solid #e8e2d7; border-radius: 0 0 14px 14px; box-shadow: 0 14px 35px #2927221a; padding: 16px; z-index: 40; margin: 0; }
:is(.imz-category-menu,.imz-categories,.imz-sidebar-categories) .wc-block-product-categories-list { list-style: none; padding-left: 0; margin: 0; }
:is(.imz-category-menu,.imz-categories,.imz-sidebar-categories) .wc-block-product-categories-list .wc-block-product-categories-list { padding-left: 14px; border-left: 1px solid #e8e2d7; margin-left: 5px; }
:is(.imz-category-menu,.imz-categories,.imz-sidebar-categories) .wc-block-product-categories-list-item { margin: 0; }
:is(.imz-category-menu,.imz-categories,.imz-sidebar-categories) .wc-block-product-categories-list a { display: inline-block; padding-block: 7px; text-decoration: none; color: var(--wp--preset--color--contrast); font-size: .85rem; overflow-wrap: anywhere; }
.wc-block-product-categories-list-item-count { color: #786f60; font-size: .75rem; }
.imz-sidebar-categories > .wc-block-product-categories { max-height: 480px; overflow: auto; }
.imz-categories, .imz-catalog-sidebar { background: var(--imz-surface); border: 1px solid #e9e4da; border-radius: 14px; box-shadow: var(--imz-shadow); }
.imz-products .wc-block-product { background: var(--imz-surface); border: 1px solid #eae5dc; border-radius: 14px; box-shadow: 0 3px 12px #29272205; padding: 16px; }
.imz-products .wc-block-product:focus-within { box-shadow: 0 0 0 2px #80601855; }
.imz-products .wp-block-button__link, .imz-search .wp-block-search__inside-wrapper { border-radius: 9px; }
.imz-catalog-toolbar { align-items: flex-end; padding: 16px; background: var(--imz-surface); border-radius: 14px; border: 1px solid #e9e4da; box-shadow: var(--imz-shadow); }
.imz-catalog-toolbar .wp-block-shortcode { margin: 0; flex: 1; }
.imz-catalog-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.imz-page-size { display: flex; gap: 8px; align-items: center; }
.imz-page-size label { font-size: .875rem; display: flex; gap: 8px; align-items: center; }
.imz-page-size select { min-height: 44px; padding: 8px; border: 1px solid #d6cebf; border-radius: 7px; background: #fff; }
.imz-page-size button { min-height: 44px; border: 0; border-radius: 7px; padding: 8px 12px; cursor: pointer; }
.imz-view-switch { display: flex; gap: 5px; padding: 3px; background: #f5f1e9; border-radius: 8px; }
.imz-view-switch a { display: flex; align-items: center; min-height: 38px; padding: 6px 10px; border-radius: 6px; color: #655f55; text-decoration: none; font-size: .875rem; }
.imz-view-switch a[aria-current] { background: #fff; color: var(--wp--preset--color--accent-1); box-shadow: 0 2px 7px #29272213; font-weight: 650; }
.imz-pagination-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; background: var(--imz-surface); padding: 16px; border-radius: 12px; margin-top: 20px; }
.imz-pagination-bar > * { margin: 0 !important; }
.imz-pagination-bar .woocommerce-result-count { font-size: .875rem; }
.imz-view-list .imz-catalog-layout .wc-block-product-template { display: grid !important; grid-template-columns: minmax(0,1fr) !important; }
.imz-view-list .imz-catalog-layout .wc-block-product { display: grid; grid-template-columns: 130px minmax(0,1fr) 150px; grid-template-rows: auto auto auto; gap: 6px 20px; align-items: center; }
.imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-image { grid-column: 1; grid-row: 1 / 4; }
.imz-view-list .imz-catalog-layout .wp-block-post-title { grid-column: 2; grid-row: 1 / 3; font-size: 1rem; }
.imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-price { grid-column: 3; grid-row: 1; margin: 0; }
.imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-stock-indicator { grid-column: 2; grid-row: 3; }
.imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-button { grid-column: 3; grid-row: 2 / 4; }
.imz-info-banner { margin-bottom: 32px; border-radius: 20px; overflow: hidden; box-shadow: var(--imz-shadow); background: #f0e8d8; border: 1px solid #e9e0cf; }
.imz-info-track { display: flex; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; margin: 0; }
.imz-info-track > .imz-info-slide { flex: 0 0 100%; min-width: 0; margin: 0; padding: 36px 44px; min-height: 260px; scroll-snap-align: start; scroll-margin-top: 120px; background: linear-gradient(115deg,#f0e8d8,#fbf9f4); }
.imz-info-slide h2 { font-size: clamp(1.6rem,3vw,2.25rem); max-width: 700px; margin: 10px 0; letter-spacing: -.03em; }
.imz-info-slide p { max-width: 720px; }
.imz-banner-eyebrow { font-size: .75rem; letter-spacing: .1em; font-weight: 750; color: #735b2a; margin: 0; }
.imz-banner-link { font-weight: 650; }
.imz-banner-tabs { display: flex; gap: 8px; padding: 12px 24px; background: #ffffff80; margin: 0 !important; }
.imz-banner-tabs p { margin: 0 !important; }
.imz-banner-tabs a { display: inline-flex; align-items: center; min-height: 36px; padding: 5px 12px; text-decoration: none; font-size: .875rem; background: #fff; border-radius: 20px; }
.imz-carousel { background: var(--imz-surface); border: 1px solid #e9e4da; border-radius: 18px; padding: 24px; margin-block: 28px !important; box-shadow: var(--imz-shadow); }
.imz-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.imz-section-heading > * { margin: 0 !important; }
.imz-section-heading h2 { font-size: 1.5rem; letter-spacing: -.02em; }
.imz-carousel .wc-block-next-previous-buttons__button { width: 44px; height: 44px; border: 1px solid #e5dfd3; border-radius: 50%; background: #fbf9f4; color: #292722; }
.imz-carousel .wc-block-product-template { gap: 16px; }
.imz-collection-empty { background: #f8f5ef; border: 1px dashed #d4cbbd; padding: 24px; border-radius: 12px; color: #655f55; margin: 0; }
.imz-footer { background: var(--imz-surface); padding: 32px 24px 20px; border-radius: 18px 18px 0 0; border: 1px solid #e9e4da; box-shadow: var(--imz-shadow); }
.imz-information, .imz-single-product, .imz-cart-page, .imz-checkout-page { background: var(--imz-surface); padding: 28px; border: 1px solid #e9e4da; border-radius: 18px; margin-top: 24px; margin-bottom: 32px; box-shadow: var(--imz-shadow); }
.imz-product-summary .wp-block-add-to-cart-with-options { background: #faf7f2; border-radius: 14px; }
.imz-view-list .imz-catalog-layout .wc-block-product img { max-height: 120px; }
@media (max-width: 1000px) {
 .imz-header-row { gap: 14px; }
 .imz-header-actions { gap: 12px; }
 .imz-view-list .imz-catalog-layout .wc-block-product { grid-template-columns: 100px minmax(0,1fr); }
 .imz-view-list .imz-catalog-layout .wp-block-post-title { grid-column: 2; grid-row: 1; }
 .imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-price { grid-column: 2; grid-row: 2; }
 .imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-stock-indicator { grid-column: 2; grid-row: 3; }
 .imz-view-list .imz-catalog-layout .wp-block-woocommerce-product-button { grid-column: 2; grid-row: 4; }
}
@media (max-width: 767px) {
 .imz-header-inner { padding-block: 8px; }
 .imz-header-row { grid-template-columns: auto minmax(0,1fr); gap: 6px 12px; }
 .imz-header-actions { justify-content: flex-end; gap: 10px; font-size: .75rem; }
 .imz-header-actions .wc-block-customer-account__account-icon { display: none; }
 .imz-contact-link a, .wp-block-woocommerce-customer-account a { min-height: 38px; }
 .imz-cart-header { min-width: 70px; }
 .imz-cart-header .wc-block-mini-cart__button { font-size: .75rem; padding-inline: 0; }
 .imz-search { grid-column: 1 / -1; grid-row: 2; }
 .imz-navigation-inner { gap: 18px; align-items: flex-start; }
 .imz-menu-links { flex-wrap: nowrap; overflow-x: auto; min-width: 0; gap: 18px; scrollbar-width: thin; }
 .imz-menu-links a { white-space: nowrap; font-size: .8rem; }
 .imz-category-menu summary { font-size: .8rem; }
 .imz-category-menu > .wc-block-product-categories { width: 100%; max-height: 60vh; }
 .imz-catalog-sidebar { padding: 0; border: 0; box-shadow: none; background: transparent; }
 .imz-catalog-toolbar { gap: 12px; padding: 12px; }
 .imz-catalog-controls { gap: 12px; }
 .imz-catalog-toolbar .woocommerce-ordering { width: 100%; }
 .imz-catalog-toolbar .woocommerce-ordering select { width: 100%; }
 .imz-pagination-bar { padding: 12px; }
 .imz-view-list .imz-catalog-layout .wc-block-product { grid-template-columns: 90px minmax(0,1fr); gap: 6px 12px; }
 .imz-view-list .imz-catalog-layout .wp-block-post-title { font-size: .875rem; }
 .imz-info-track > .imz-info-slide { padding: 24px; min-height: 295px; }
 .imz-info-slide h2 { font-size: 1.7rem; }
 .imz-banner-tabs { padding: 10px 16px; }
 .imz-carousel { padding: 16px; border-radius: 15px; margin-block: 20px !important; }
 .imz-section-heading h2 { font-size: 1.25rem; }
 .imz-information, .imz-single-product, .imz-cart-page, .imz-checkout-page { padding: 18px; }
 .imz-footer { padding-inline: 20px; }
}
.imz-category-menu { flex: 0 0 auto; }
.imz-category-menu summary { white-space: nowrap; }
.wp-site-blocks > .wp-block-template-part:has(> .imz-navigation) { margin-block: 0; }

/* Native category data, progressively enhanced with independent disclosure buttons. */
.imz-category-row { display:flex; align-items:center; gap:6px; }
.imz-category-row > a { flex:1; min-width:0; }
.wc-block-product-categories button.imz-category-toggle { display:inline-flex; align-items:center; justify-content:center; flex:0 0 24px; width:24px; height:28px; min-height:28px; padding:0; border:0; border-radius:4px; background:transparent; color:#736b5e; cursor:pointer; }
.wc-block-product-categories button.imz-category-toggle:hover { background:#f3eee4; color:#70551c; }
.imz-category-toggle::before { content:''; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translate(-1px,-1px); transition:transform .15s; }
.imz-category-toggle[aria-expanded="true"]::before { transform:rotate(225deg) translate(-1px,-1px); }
.imz-category-sublist[hidden] { display:none !important; }
.imz-category-toggle:focus-visible,.imz-banner-pause:focus-visible { outline:3px solid #806018; outline-offset:2px; }
.imz-home-content { min-width:0; }
.imz-banner-tabs a[aria-current="true"] { background:#70551c; color:white; }
.imz-banner-pause { padding:8px 14px; min-height:44px; border:1px solid #d0c4ae; border-radius:24px; background:white; color:#70551c; cursor:pointer; font:inherit; font-size:.85rem; }
@media (prefers-reduced-motion:reduce) { .imz-info-track { scroll-behavior:auto; } .imz-category-toggle::before { transition:none; } }

@media (max-width:767px) { .wc-block-product-categories button.imz-category-toggle { flex-basis:36px; width:36px; height:36px; min-height:36px; } }

/* Airier desktop header, with balanced space for search and account actions. */
@media (min-width:1024px) {
 .imz-header-inner { padding-block:22px; }
 .imz-header-row { grid-template-columns:160px minmax(280px,1fr) minmax(400px,.85fr); gap:32px; }
 .imz-brand { font-size:1.9rem; }
 .imz-header-actions { justify-content:space-between; gap:24px; font-size:.95rem; }
 .imz-search .wp-block-search__inside-wrapper { min-height:54px; }
}

/* Brand asset and evenly distributed navigation below the sticky header. */
.imz-header-row > .imz-brand { width:140px; line-height:0; }
.imz-header-row > .imz-brand img { display:block; width:100%; height:auto; }
@media (min-width:768px) {
 .imz-navigation-inner { gap:32px; }
 .imz-menu-links { flex:1; justify-content:space-between; gap:20px; }
 .imz-menu-links a { min-height:60px; font-size:.95rem; }
 .imz-category-menu > summary { min-height:60px; align-content:center; font-size:.95rem; }
}
@media (max-width:767px) { .imz-header-row > .imz-brand { width:88px; } }
/* Banner pagination: dots, with no visible scrollbar or text tabs. */
.imz-info-banner { position:relative; }
.imz-info-track { scrollbar-width:none; }
.imz-info-track::-webkit-scrollbar { display:none; }
.imz-info-banner .imz-banner-tabs { justify-content:center; align-items:center; gap:2px; padding:8px 16px 12px; background:transparent; }
.imz-info-banner .imz-banner-tabs a { display:flex; justify-content:center; align-items:center; width:28px; height:28px; min-height:28px; padding:0; font-size:0; background:transparent; border-radius:50%; }
.imz-banner-tabs a::before { content:''; width:8px; height:8px; border-radius:50%; background:#b2a58f; }
.imz-banner-tabs a[aria-current="true"]::before { background:#70551c; }
.imz-info-banner .imz-banner-pause { position:absolute; top:12px; right:12px; width:32px; height:32px; min-height:32px; padding:0; border:0; border-radius:50%; background:#ffffffdb; opacity:0; font-size:14px; }
.imz-info-banner:hover .imz-banner-pause,.imz-info-banner:focus-within .imz-banner-pause { opacity:1; }
@media (hover:none) { .imz-info-banner .imz-banner-pause { opacity:1; } }

/* Current category stays identifiable beside its siblings. */
.wc-block-product-categories a[aria-current="page"] { font-weight:700; color:var(--wp--preset--color--accent-1); text-decoration:underline; text-underline-offset:3px; }

.imz-footer-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px 24px; border-top:1px solid var(--wp--preset--color--accent-3); padding-top:20px; margin-top:28px; font-size:.85rem; }
.imz-footer-bottom > p { margin:0; }
.imz-footer-signature strong { color:var(--wp--preset--color--contrast); font-size:1.1rem; }
.imz-footer-bottom a { text-decoration:none; }
