/* Stage 02: catalog component, scoped to preserve the home and product layouts. */
.elementor-3217 .elementor-widget-wrap,.elementor-3217 .elementor-widget-shortcode{padding:0!important;margin:0!important;}
.elementor-3217>.elementor-section>.elementor-container{max-width:none!important;}
.pz2-archive{max-width:1180px;width:calc(100% - 48px);margin:0 auto;padding:24px 0 56px;color:var(--pz-navy);font-family:'PoolZone Inter','Segoe UI',Arial,sans-serif;}
.pz2-archive *{box-sizing:border-box;}
.pz2-archive .woocommerce-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px;font-size:12px;color:var(--pz-muted);}
.pz2-archive .woocommerce-breadcrumb a{color:var(--pz-muted);}
.pz2-banner{min-height:200px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--pz-line);border-radius:8px;background:linear-gradient(90deg,#f3f9fc 0%,#f3f9fc 35%,#f3f9fcc9 58%,#f3f9fc00 100%),url('hero.png') center 60%/cover;padding:28px 32px;margin-bottom:28px;}
.pz2-banner>div:first-child{position:relative;z-index:1;max-width:530px;}
.pz2-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;color:var(--pz-blue);margin:0 0 10px;}
.pz-reference-design .pz2-banner h1{font-family:inherit;font-size:32px;line-height:1.18;font-weight:750;letter-spacing:-.8px;color:var(--pz-navy);margin:0 0 12px;overflow-wrap:anywhere;}
.pz2-banner p:not(.pz2-eyebrow){font-size:14px;line-height:1.6;max-width:440px;margin:0;color:#425c72;}
.pz2-banner-product{flex:0 0 240px;height:154px;display:flex;align-items:center;justify-content:center;}
.pz2-banner-product img{max-height:154px;max-width:240px;object-fit:contain;mix-blend-mode:multiply;}
.pz2-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:28px;align-items:start;}
.pz2-sidebar{min-width:0;}
.pz2-category-panel{border:1px solid var(--pz-line);border-radius:7px;background:#f7fafc;overflow:hidden;}
.pz2-category-panel summary{font-weight:650;padding:15px;cursor:pointer;color:var(--pz-navy);font-size:14px;}
.pz2-category-panel summary::marker{color:var(--pz-blue);}
.pz2-category-panel nav{padding:0 14px 16px;}
.pz-reference-design .pz2-category-panel h2{font-family:inherit;font-size:15px;font-weight:700;margin:0 0 12px;}
.pz2-category-panel h3{font-family:inherit;font-size:12px;font-weight:700;margin:22px 8px 10px;color:var(--pz-muted);}
.pz2-category-panel nav>a{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#415a70;font-size:13px;line-height:1.4;padding:11px 10px;border-radius:4px;overflow-wrap:anywhere;}
.pz2-category-panel nav>a:hover{background:#eaf3fa;color:var(--pz-blue);}
.pz2-category-panel nav>a[aria-current]{background:#e6f1fa;color:var(--pz-blue);font-weight:700;}
.pz2-advice{padding:22px 16px;margin-top:20px;border:1px solid var(--pz-line);border-radius:7px;}
.pz2-advice svg{width:27px;height:27px;color:var(--pz-blue);}
.pz2-advice h3{font-family:inherit;font-size:15px;font-weight:700;margin:12px 0 8px;}
.pz2-advice p{font-size:12px;color:var(--pz-muted);line-height:1.6;margin:0 0 14px;}
.pz2-advice a{font-size:12px;font-weight:650;color:var(--pz-blue);}
.pz2-results{min-width:0;}
.pz2-toolbar{min-height:44px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;}
.pz2-count{font-size:12px;color:var(--pz-muted);margin:0;}
.pz2-toolbar .pz2-ordering{margin:0;float:none;max-width:360px;display:flex;align-items:center;gap:8px;}
.pz2-ordering label{font-size:11px;color:var(--pz-muted);white-space:nowrap;}
.pz2-ordering button{font:600 11px 'PoolZone Inter','Segoe UI',sans-serif;background:#eaf3fa;color:var(--pz-blue);border:1px solid #d6e1e9;border-radius:4px;padding:9px;min-height:40px;}
.pz2-ordering.pz2-auto-submit button{display:none;}
.pz2-toolbar select{max-width:100%;height:40px;background:white;border:1px solid #d6e1e9;border-radius:5px;padding:8px 30px 8px 12px;font-family:inherit;font-size:12px;color:var(--pz-navy);}
.pz2-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.pz2-card .pzr-product-image{height:195px;padding:18px;}
.pz2-card .pzr-product-content{padding:0 16px 16px;}
.pz2-card .pzr-product-content small{font-size:9px;line-height:1.4;margin-bottom:8px;}
.pz-reference-design .pz2-card h2,.pz-reference-design .pz2-card h2 a{font-family:inherit;font-size:14px!important;font-weight:650;line-height:1.45!important;letter-spacing:0;color:var(--pz-navy);margin:0;overflow-wrap:anywhere;}
.pz2-card h2{min-height:62px;margin-bottom:14px!important;}
.pz2-card .pzr-price{font-size:18px;line-height:1.4;padding-top:8px;}
.pz2-card .pzr-price-consult{font-size:13px;}
.pz2-card .pzr-product-button{min-height:40px;font-size:12px;}
.pz2-card .pzr-product-button:hover{background:#004b9a;}
.pz2-stock{font-size:11px;color:#725324;margin:2px 0 8px;}
.pz2-no-image{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7f91;gap:10px;font-size:11px;background:#f7fafc;width:100%;border-radius:4px;}
.pz2-no-image svg{width:70px;height:70px;}
.pz2-pagination{margin-top:30px;}
.pz2-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center;margin:0;padding:0;}
.pz2-pagination .page-numbers:not(ul){min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--pz-line);border-radius:5px;color:var(--pz-blue);font-size:12px;padding:0 11px;}
.pz2-pagination .page-numbers.current{background:var(--pz-blue);color:white;border-color:var(--pz-blue);}
.pz2-empty{padding:56px 24px;border:1px solid var(--pz-line);border-radius:8px;text-align:center;}
.pz2-empty h2{font-size:22px;}.pz2-empty p,.pz2-empty a{font-size:14px;}
@media(min-width:768px){.pz2-category-panel summary{display:none;}.pz2-category-panel nav{padding-top:18px;}}
@media(max-width:1024px){.pz2-layout{grid-template-columns:176px minmax(0,1fr);gap:20px;}.pz2-products{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));}.pz2-card .pzr-product-image{height:170px;}.pz2-banner-product{flex-basis:190px;}.pz2-banner-product img{max-width:190px;}.pz2-banner>div:first-child{max-width:420px;}.pz2-banner h1{font-size:28px!important;}}
@media(max-width:767px){
 .pz2-archive{width:calc(100% - 32px);padding:18px 0 36px;}.pz2-archive .woocommerce-breadcrumb{font-size:10px;margin-bottom:14px;gap:7px;}
 .pz2-banner{min-height:180px;padding:20px 18px;gap:8px;margin-bottom:18px;background-position:70% center;}.pz2-banner>div:first-child{width:calc(100% - 72px);max-width:none;flex:none;}.pz-reference-design .pz2-banner h1{font-size:23px!important;letter-spacing:-.5px;}.pz2-banner p:not(.pz2-eyebrow){font-size:12px;line-height:1.5;}.pz2-eyebrow{font-size:8px;letter-spacing:1px;}.pz2-banner-product{position:absolute;right:4px;bottom:20px;width:80px;height:90px;margin:0;}.pz2-banner-product img{max-width:80px;max-height:90px;}
 .pz2-layout{display:flex;flex-direction:column;gap:16px;}.pz2-sidebar,.pz2-results{width:100%;}.pz2-category-panel nav h2{display:none;}.pz2-category-panel summary{min-height:46px;}.pz2-advice{display:none;}
 .pz2-toolbar{gap:10px;align-items:center;}.pz2-count{font-size:10px;}.pz2-toolbar .pz2-ordering{max-width:190px;}.pz2-ordering label{display:none;}.pz2-toolbar select{font-size:10px;padding-left:8px;height:40px;}
 .pz2-products{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));}.pz2-card .pzr-product-image{height:143px;padding:12px;}.pz2-card .pzr-product-content{padding:0 10px 11px;}.pz2-card .pzr-product-content small{font-size:8px;}.pz-reference-design .pz2-card h2,.pz-reference-design .pz2-card h2 a{font-size:12px!important;line-height:1.4!important;}.pz2-card h2{min-height:69px;margin-bottom:9px!important;}.pz2-card .pzr-price{font-size:15px;}.pz2-card .pzr-price-consult{font-size:11px;}.pz2-card .pzr-currency-code{font-size:8px;}.pz2-card .pzr-product-button{font-size:11px;min-height:40px;}.pz2-pagination .page-numbers:not(ul){min-width:32px;height:36px;padding:0 8px;font-size:11px;}
}

/* Requested compact catalog layout, 30 Oct 2026. Scoped to archive only. */
.pz2-archive .pz2-products{gap:12px;}
.pz2-archive .pz2-card .pzr-product-image{height:165px;padding:10px;}
.pz2-archive .pz2-card .pzr-product-content{padding:0 12px 12px;}
.pz2-archive .pz2-card .pzr-product-content small{margin-bottom:5px;}
.pz2-archive .pz2-card h2{min-height:41px;margin-bottom:8px!important;}
.pz2-archive .pz2-card .pzr-price{padding-top:2px;margin-bottom:9px;}
@media(max-width:1024px){.pz2-archive .pz2-products{gap:10px;}.pz2-archive .pz2-card .pzr-product-image{height:150px;}}
@media(max-width:767px){.pz2-archive .pz2-products{gap:8px;}.pz2-archive .pz2-card .pzr-product-image{height:135px;padding:9px;}.pz2-archive .pz2-card .pzr-product-content{padding:0 9px 10px;}.pz2-archive .pz2-card h2{min-height:51px;margin-bottom:6px!important;}}
/* Narrow product cards requested after visual review. */
@media(min-width:1025px){
 .pz2-archive .pz2-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
 .pz2-archive .pz2-card .pzr-product-image{height:175px;padding:6px;}
 .pz2-archive .pz2-card .pzr-product-image img{width:100%;height:100%;object-fit:contain;}
 .pz2-archive .pz2-card .pzr-product-content{padding:0 10px 10px;}
 .pz-reference-design .pz2-archive .pz2-card h2,.pz-reference-design .pz2-archive .pz2-card h2 a{font-size:13px!important;line-height:1.45!important;}
 .pz2-archive .pz2-card h2{min-height:57px;}
 .pz2-archive .pz2-card .pzr-price{font-size:16px;}
}
@media(min-width:1200px){.pz2-archive .pz2-products{grid-template-columns:repeat(5,minmax(0,1fr));}}

/* Taste 02: less space before mobile results; preserve card and image geometry. */
@media(max-width:767px){
 .pz-reference-design .pz2-archive{padding-top:12px;}
 .pz-reference-design .pz2-archive .woocommerce-breadcrumb{margin-bottom:10px;}
 .pz-reference-design .pz2-archive .pz2-banner{min-height:0;padding:12px 16px;margin-bottom:12px;}
 .pz-reference-design .pz2-archive .pz2-eyebrow{margin-bottom:6px;}
 .pz-reference-design .pz2-archive .pz2-banner h1{margin-bottom:8px;}
 .pz-reference-design .pz2-archive .pz2-layout{gap:12px;}
 .pz-reference-design .pz2-archive .pz2-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start;}
 .pz-reference-design .pz2-archive .pz3-panel,
 .pz-reference-design .pz2-archive .pz2-category-panel{margin:0;min-width:0;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details[open]{grid-column:1/-1;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details>summary{min-height:44px;padding:8px 10px;line-height:1.4;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details>summary:focus-visible{outline:3px solid #007f99;outline-offset:-3px;}
 .pz-reference-design .pz2-archive .pz2-toolbar{gap:8px;margin-bottom:8px;}
 .pz-reference-design .pz2-archive .pz2-ordering{max-width:190px;flex:0 1 58%;min-width:0;}
 .pz-reference-design .pz2-archive .pz2-toolbar select{width:100%;height:44px;}
 .pz-reference-design .pz2-archive .pzr-catalog-note{margin:8px 0 10px;}
}

/* Taste 03: tablet filters above the catalog; incomplete rows stay centered. */
@media(min-width:768px) and (max-width:1024px){
 .pz-reference-design .pz2-archive .pz2-layout{display:flex;flex-direction:column;gap:16px;}
 .pz-reference-design .pz2-archive .pz2-sidebar,.pz-reference-design .pz2-archive .pz2-results{width:100%;}
 .pz-reference-design .pz2-archive .pz2-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;}
 .pz-reference-design .pz2-archive .pz3-panel,.pz-reference-design .pz2-archive .pz2-category-panel{margin:0;min-width:0;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details[open]{grid-column:1/-1;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details>summary{display:list-item;min-height:44px;padding:10px 12px;line-height:1.4;cursor:pointer;}
 .pz-reference-design .pz2-archive .pz2-sidebar>details>summary:focus-visible{outline:3px solid #007f99;outline-offset:-3px;}
 .pz-reference-design .pz2-archive .pz2-category-panel nav{padding-top:0;}
 .pz-reference-design .pz2-archive .pz2-category-panel nav h2,.pz-reference-design .pz2-archive .pz3-form h2,.pz-reference-design .pz2-archive .pz2-advice{display:none;}
 .pz-reference-design .pz2-archive .pz2-products{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
 .pz-reference-design .pz2-archive .pz2-card{flex:0 1 280px;width:280px;}
 .pz-reference-design .pz2-archive .pz2-card .pzr-product-content{padding-bottom:4px;}
 .pz-reference-design .pz2-archive .pz2-card .pzr-product-content small{margin-bottom:2px;}
 .pz-reference-design .pz2-archive .pz2-card .pzr-product-content h2{margin-bottom:2px!important;}
 .pz-reference-design .pz2-archive .pz2-card .pzr-product-content .pzr-price{margin-bottom:2px!important;}
 .pz-reference-design .pz2-archive .pz2-card .pzq-card-add{margin-top:2px;}
}

/* EMIL 05: feedback lives inside existing controls, without new rows. */
.pz2-archive .pz3-form button.pz-catalog-pending{position:relative;color:transparent!important;cursor:progress;}
.pz2-archive .pz3-form button.pz-catalog-pending::after{content:attr(data-pz-pending-text);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none;}
.pz2-archive :is(a,select).pz-catalog-pending{box-shadow:inset 0 0 0 2px #087a9d;cursor:progress;}
.pz2-archive .pz2-count:focus{outline:3px solid #087a9d;outline-offset:3px;}
