.elementor-535 .elementor-element.elementor-element-39a58b3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-5dfd997{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-c166fc7{font-family:var( --e-global-typography-ezsmall-font-family ), Sans-serif;font-size:var( --e-global-typography-ezsmall-font-size );font-weight:var( --e-global-typography-ezsmall-font-weight );line-height:var( --e-global-typography-ezsmall-line-height );}.elementor-535 .elementor-element.elementor-element-9009a92{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:24px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-317deaa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-f6ee173.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-535 .elementor-element.elementor-element-c53a8e6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:32px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-3a7f0e5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-44a1118{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-fa48c29{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-1664771{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-0c7f63c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-1a9adaf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-f3d1a76{--grid-columns:3;--grid-row-gap:24px;--grid-column-gap:24px;}.elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-535 .elementor-element.elementor-element-f3d1a76 .e-loop-item > .elementor-section, .elementor-535 .elementor-element.elementor-element-f3d1a76 .e-loop-item > .elementor-section > .elementor-container, .elementor-535 .elementor-element.elementor-element-f3d1a76 .e-loop-item > .e-con, .elementor-535 .elementor-element.elementor-element-f3d1a76 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-535 .elementor-element.elementor-element-f3d1a76 .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}.elementor-535 .elementor-element.elementor-element-93ae3d1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-d3ba8bb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-535 .elementor-element.elementor-element-aa8bc3c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-535 .elementor-element.elementor-element-c166fc7{font-size:var( --e-global-typography-ezsmall-font-size );line-height:var( --e-global-typography-ezsmall-line-height );}.elementor-535 .elementor-element.elementor-element-f3d1a76{--grid-columns:2;}}@media(max-width:767px){.elementor-535 .elementor-element.elementor-element-c166fc7{font-size:var( --e-global-typography-ezsmall-font-size );line-height:var( --e-global-typography-ezsmall-line-height );}.elementor-535 .elementor-element.elementor-element-f3d1a76{--grid-columns:1;}}/* Start custom CSS for text-editor, class: .elementor-element-d63adbd */.elementor-535 .elementor-element.elementor-element-d63adbd,.elementor-535 .elementor-element.elementor-element-d63adbd p{color:var(--ez-ink);font-size:var(--ez-fs-body)}/* End custom CSS */
/* Start custom CSS *//*
 * EZGATION · B (Home) + C1 (Product archive) template styles
 * ONE place for this package's layout CSS. Colours/fonts/spacing come ONLY from
 * design/ez-tokens.css variables (var(--ez-*)); no hex values in this file.
 * build.py injects this file into each template's page-settings custom_css.
 */
.ez-tpl{font-family:var(--ez-font-sans);color:var(--ez-ink)}
.ez-tpl .elementor-widget:not(:last-child){margin-block-end:0}
.ez-tpl h1,.ez-tpl h2,.ez-tpl h3{font-family:var(--ez-font-sans);color:var(--ez-ink)}
/* R5BC-FIX F2 (2026-10-09): class-less h3 -> tokens h3 24/600/1.35 (else Hello reset h3 + .elementor-heading-title{line-height:1}) */
.ez-tpl h3.elementor-heading-title{font-size:var(--ez-fs-h3);font-weight:var(--ez-fw-semibold);line-height:var(--ez-lh-snug)}
.ez-tpl .ez-wrap{max-width:var(--ez-container);margin-inline:auto;padding-inline:var(--ez-gutter);width:100%}
.ez-tpl.ez-sec{padding-block:var(--ez-space-8)}
.ez-tpl.ez-sec--alt{background:var(--ez-surface)}
.ez-tpl .ez-eyebrow .elementor-heading-title{font-size:var(--ez-fs-sm);font-weight:var(--ez-fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--ez-ink-soft)}
.ez-tpl .ez-eyebrow .elementor-heading-title::before{content:"";display:inline-block;width:1.5rem;height:3px;border-radius:var(--ez-radius-pill);background:var(--ez-primary);vertical-align:middle;margin-inline-end:var(--ez-space-2)}
.ez-tpl .ez-h2 .elementor-heading-title{font-size:var(--ez-fs-h2);font-weight:var(--ez-fw-bold);line-height:1.3;color:var(--ez-ink)}
.ez-tpl .ez-lead,.ez-tpl .ez-lead p{font-size:1.125rem;line-height:1.55;color:var(--ez-ink-soft);max-width:46rem}
.ez-tpl .ez-head{gap:var(--ez-space-3);margin-block-end:var(--ez-space-6)}
.ez-tpl .ez-head--row{flex-direction:row;justify-content:space-between;align-items:flex-end;flex-wrap:wrap}
.ez-tpl .ez-grid{display:grid !important;gap:var(--ez-space-5);grid-template-columns:repeat(var(--ezha-cols,4),minmax(0,1fr))}
.ez-tpl .ez-grid--3{--ezha-cols:3}.ez-tpl .ez-grid--2{--ezha-cols:2}.ez-tpl .ez-grid--5{--ezha-cols:5}
.ez-tpl .ez-actions{display:flex;flex-wrap:wrap;gap:var(--ez-space-3);align-items:center}
.ez-tpl .ez-btn{text-decoration:none}

/* ---------- Home hero: layered gem-green wash (light layers set off the logo) ---------- */
.ez-tpl.ezh-hero{position:relative;overflow:hidden;padding-block:var(--ez-space-8) var(--ez-space-9);
  background:radial-gradient(60rem 30rem at 85% 10%,var(--ez-primary-100),transparent 70%),
             radial-gradient(40rem 24rem at 0% 100%,var(--ez-primary-50),transparent 70%),
             linear-gradient(180deg,var(--ez-surface),var(--ez-white))}
.ez-tpl.ezh-hero::before{content:"";position:absolute;inset:auto -10rem -14rem auto;width:36rem;height:36rem;border-radius:50%;
  border:3.5rem solid var(--ez-primary-50);pointer-events:none}
.ez-tpl .ezh-hero__in{display:grid !important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--ez-space-7);align-items:center;position:relative}
.ez-tpl .ezh-hero__copy{gap:var(--ez-space-4)}
.ez-tpl.ezh-hero h1.elementor-heading-title{font-size:var(--ez-fs-display);line-height:var(--ez-lh-tight);font-weight:var(--ez-fw-bold);color:var(--ez-ink)}
.ez-tpl.ezh-hero h1 .ez-hl{color:var(--ez-primary)}
.ez-tpl .ezh-hero__media{position:relative}
.ez-tpl .ezh-hero__media .elementor-widget-image img{width:100%;aspect-ratio:1/1;object-fit:contain;background:var(--ez-white);
  border:1px solid var(--ez-border);border-radius:var(--ez-radius-lg);box-shadow:var(--ez-shadow-lg);padding:var(--ez-space-6)}
.ez-tpl .ezh-chips{display:flex;flex-wrap:wrap;gap:var(--ez-space-2);margin:0;padding:0;list-style:none}
.ez-tpl .ezh-chips li{background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-pill);padding:.35rem .8rem;font-size:var(--ez-fs-sm);font-weight:var(--ez-fw-medium);color:var(--ez-ink)}
.ez-tpl .ezh-chips li strong{color:var(--ez-ink)}
.ez-tpl .ezh-chips li::before{content:"";display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:var(--ez-primary);margin-inline-end:.45rem;vertical-align:middle}

/* Product search (hero + archive) */
.ez-tpl .ez-search{display:flex;gap:var(--ez-space-2);max-width:34rem;width:100%}
.ez-tpl .ez-search input[type=search]{flex:1;min-width:0;padding:.75rem 1rem;border:1px solid var(--ez-border);border-radius:var(--ez-radius-md);background:var(--ez-white);color:var(--ez-ink);font:inherit}
.ez-tpl .ez-search input[type=search]:focus{outline:none;border-color:var(--ez-primary);box-shadow:0 0 0 3px var(--ez-primary-100)}
.ez-tpl .ez-search button{white-space:nowrap}

/* ---------- Stats strip ---------- */
.ez-tpl.ezh-stats{margin-top:calc(-1 * var(--ez-space-8));position:relative;z-index:2}
.ez-tpl.ezh-stats .ez-grid{background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-lg);box-shadow:var(--ez-shadow-md);padding:var(--ez-space-6);gap:var(--ez-space-5)}
.ez-tpl .ezh-stat{border-inline-start:3px solid var(--ez-primary-200);padding-inline-start:var(--ez-space-4)}
.ez-tpl .ezh-stat .elementor-heading-title{font-size:var(--ez-fs-h1);font-weight:var(--ez-fw-bold);color:var(--ez-primary);line-height:1.1}
.ez-tpl .ezh-stat p{margin:var(--ez-space-1) 0 0;color:var(--ez-mute);font-size:var(--ez-fs-sm)}

/* ---------- Category cards (image-box) ---------- */
.ez-tpl .ezh-cat{background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-lg);overflow:hidden;box-shadow:var(--ez-shadow-sm);transition:box-shadow .15s ease,border-color .15s ease;height:100%}
.ez-tpl .ezh-cat:hover{box-shadow:var(--ez-shadow-md);border-color:var(--ez-primary-200)}
.ez-tpl .ezh-cat .elementor-image-box-wrapper{text-align:start}
.ez-tpl .ezh-cat .elementor-image-box-img{width:100% !important;margin:0 !important;background:var(--ez-surface);display:block}
.ez-tpl .ezh-cat .elementor-image-box-img img{width:100%;aspect-ratio:4/3;object-fit:contain;padding:var(--ez-space-4);display:block}
.ez-tpl .ezh-cat .elementor-image-box-content{padding:var(--ez-space-4) var(--ez-space-5) var(--ez-space-5)}
.ez-tpl .ezh-cat .elementor-image-box-title{font-size:var(--ez-fs-h4);font-weight:var(--ez-fw-semibold);margin:0 0 var(--ez-space-2);color:var(--ez-ink)}
.ez-tpl .ezh-cat .elementor-image-box-title a{color:inherit;text-decoration:none}
.ez-tpl .ezh-cat .elementor-image-box-title a::after{content:" →";color:var(--ez-primary)}
.ez-tpl .ezh-cat .elementor-image-box-description{color:var(--ez-mute);font-size:var(--ez-fs-sm);margin:0}
.ez-tpl .ezh-cat--cta{background:var(--ez-primary-50);border-color:var(--ez-primary-100);padding:var(--ez-space-5);justify-content:center;gap:var(--ez-space-3)}
.ez-tpl .ezh-cat--cta .elementor-heading-title{font-size:var(--ez-fs-h4);font-weight:var(--ez-fw-semibold);line-height:1.4}

/* ---------- Applications tiles ---------- */
.ez-tpl .ezh-app{background:var(--ez-white);border:1px solid var(--ez-border);border-top:4px solid var(--ez-primary);border-radius:var(--ez-radius-md);padding:var(--ez-space-5);height:100%}
.ez-tpl .ezh-app .elementor-icon-box-icon .elementor-icon{color:var(--ez-primary);font-size:1.75rem}
.ez-tpl .ezh-app .elementor-icon-box-wrapper{text-align:start}
.ez-tpl .ezh-app .elementor-icon-box-title{font-size:1.125rem;font-weight:var(--ez-fw-semibold);margin:var(--ez-space-2) 0}
.ez-tpl .ezh-app .elementor-icon-box-title a{color:var(--ez-ink);text-decoration:none}
.ez-tpl .ezh-app .elementor-icon-box-description{color:var(--ez-mute);font-size:var(--ez-fs-sm)}

/* ---------- About + production steps ---------- */
.ez-tpl .ezh-about__in{display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--ez-space-7);align-items:start}
.ez-tpl .ez-checks .elementor-icon-list-icon i,.ez-tpl .ez-checks .elementor-icon-list-icon svg{color:var(--ez-primary);fill:var(--ez-primary)}
.ez-tpl .ez-checks .elementor-icon-list-text{color:var(--ez-ink);font-size:var(--ez-fs-body)}
.ez-tpl .ezh-steps{counter-reset:ezstep;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ez-space-3);margin:0;padding:0;list-style:none}
.ez-tpl .ezh-steps li{counter-increment:ezstep;background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-md);padding:var(--ez-space-4);display:flex;gap:var(--ez-space-3);align-items:flex-start}
.ez-tpl .ezh-steps li::before{content:counter(ezstep,decimal-leading-zero);font-weight:var(--ez-fw-bold);color:var(--ez-ink);background:var(--ez-primary-100);border-radius:var(--ez-radius-sm);padding:.15rem .45rem;font-size:var(--ez-fs-sm)}
.ez-tpl .ezh-steps strong{display:block;color:var(--ez-ink)}
.ez-tpl .ezh-steps span{color:var(--ez-mute);font-size:var(--ez-fs-sm)}
.ez-tpl .ezh-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:var(--ez-space-5) 0 0;border:1px solid var(--ez-border);border-radius:var(--ez-radius-md);overflow:hidden;background:var(--ez-white)}
.ez-tpl .ezh-facts div{padding:var(--ez-space-3) var(--ez-space-4);border:1px solid var(--ez-border);margin:-1px 0 0 -1px}
.ez-tpl .ezh-facts dt{font-size:var(--ez-fs-caption);color:var(--ez-mute)}
.ez-tpl .ezh-facts dd{margin:0;font-weight:var(--ez-fw-semibold);color:var(--ez-ink);font-size:var(--ez-fs-sm)}

/* ---------- Posts (home) ---------- */
.ez-tpl.ezh-news:not(:has(.elementor-post)){display:none}
.ez-tpl.ezh-news .elementor-post__card{border:1px solid var(--ez-border);border-radius:var(--ez-radius-lg);box-shadow:var(--ez-shadow-sm)}
.ez-tpl.ezh-news .elementor-post__title a{color:var(--ez-ink)}
.ez-tpl.ezh-news .elementor-post__read-more{color:var(--ez-ink);text-decoration:underline}

/* ---------- Inquiry CTA band (surface + primary top edge; no dark green, DESIGN 4.5) ---------- */
.ez-tpl .ez-inquiry-band__in{display:flex !important;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--ez-space-5)}

/* ---------- Product card (loop item; uses .ez-card from tokens) ---------- */
.ez-card.e-con{--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;--gap:0}
.ez-card .ez-card__media img{width:100%;aspect-ratio:var(--ez-ratio-product);object-fit:contain;display:block;background:var(--ez-surface);padding:var(--ez-space-3)}
.ez-card .ez-card__body.e-con{--padding-top:var(--ez-space-4);--padding-bottom:var(--ez-space-4);--padding-left:var(--ez-space-4);--padding-right:var(--ez-space-4);--gap:var(--ez-space-2);flex:1}
.ez-card .ez-model .elementor-heading-title{font-family:var(--ez-font-mono);font-size:var(--ez-fs-sm);font-weight:var(--ez-fw-semibold);color:var(--ez-mute)}
.ez-card .ez-card__title .elementor-heading-title{font-size:1.0625rem;font-weight:var(--ez-fw-semibold);line-height:1.35;color:var(--ez-ink)}
.ez-card .ez-card__title a{color:inherit;text-decoration:none}
.ez-card .ez-card__title a:hover{text-decoration:underline}
.ez-card .ez-card__foot{margin-top:auto}
.ez-card .ez-card__actions{padding-top:var(--ez-space-2)}
.ez-card .ez-card__actions .ez-btn{font-size:var(--ez-fs-sm);padding:.55rem .9rem}
.ez-card .ez-card-add[hidden]{display:none}
.ez-card .ez-card-add.is-added{background:var(--ez-primary-50)}

/* ---------- Archive ---------- */
.ez-tpl.eza-hero{padding-block:var(--ez-space-6) var(--ez-space-7);
  background:radial-gradient(50rem 20rem at 100% 0%,var(--ez-primary-100),transparent 70%),linear-gradient(180deg,var(--ez-surface),var(--ez-white))}
.ez-tpl .eza-hero__in{gap:var(--ez-space-4)}
.ez-tpl.eza-hero h1.elementor-heading-title{font-size:var(--ez-fs-h1);font-weight:var(--ez-fw-bold);line-height:1.25;color:var(--ez-ink)}
.ez-tpl.eza-hero .term-description,.ez-tpl.eza-hero .page-description,.ez-tpl.eza-hero .woocommerce-archive-description{color:var(--ez-ink-soft);max-width:52rem}
.ez-tpl.eza-hero .term-description p:last-child{margin-bottom:0}
.ez-tpl .eza-crumbs,.ez-tpl .eza-crumbs a{font-size:var(--ez-fs-sm);color:var(--ez-mute)}
.ez-tpl .eza-crumbs a{text-decoration:underline;text-underline-offset:2px}
.ez-tpl .eza-subcats ul.products{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ez-space-4);margin:0 !important}
.ez-tpl .eza-subcats ul.products::before,.ez-tpl .eza-subcats ul.products::after{display:none}
.ez-tpl .eza-subcats li.product-category{width:auto !important;margin:0 !important;float:none !important;background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-md);transition:border-color .15s ease,box-shadow .15s ease}
.ez-tpl .eza-subcats li.product-category:hover{border-color:var(--ez-primary-200);box-shadow:var(--ez-shadow-sm)}
.ez-tpl .eza-subcats li.product-category a{display:flex;align-items:center;gap:var(--ez-space-3);padding:var(--ez-space-3) var(--ez-space-4);text-decoration:none;color:var(--ez-ink)}
.ez-tpl .eza-subcats li.product-category img{width:3.5rem !important;height:3.5rem !important;object-fit:contain;margin:0 !important;background:var(--ez-surface);border-radius:var(--ez-radius-sm);flex:none}
/* no cover image yet (C3 pending) -> hide Woo placeholder, keep a text tile */
.ez-tpl .eza-subcats li.product-category img[src*="woocommerce-placeholder"]{display:none}
.ez-tpl .eza-subcats .woocommerce-loop-category__title{font-size:var(--ez-fs-body) !important;font-weight:var(--ez-fw-semibold);margin:0 !important;padding:0 !important;color:var(--ez-ink)}
.ez-tpl .eza-subcats .woocommerce-loop-category__title .count{background:none;color:var(--ez-mute);font-weight:var(--ez-fw-regular);font-size:var(--ez-fs-sm)}
.ez-tpl .eza-subcats:not(:has(li)){display:none}
.ez-tpl .eza-body__in{display:grid !important;grid-template-columns:16rem minmax(0,1fr);gap:var(--ez-space-6);align-items:start}
.ez-tpl .eza-side{position:sticky;top:var(--ez-space-5);gap:var(--ez-space-5)}
.ez-tpl .eza-side .widget_product_categories ul,.ez-tpl .eza-side ul.product-categories{list-style:none;margin:0;padding:0}
.ez-tpl .eza-side ul.product-categories li{margin:0}
.ez-tpl .eza-side ul.product-categories a{display:inline-block;padding:.3rem 0;color:var(--ez-ink);text-decoration:none;font-size:var(--ez-fs-sm)}
.ez-tpl .eza-side ul.product-categories a:hover{text-decoration:underline}
.ez-tpl .eza-side ul.product-categories .children{padding-inline-start:var(--ez-space-4);border-inline-start:2px solid var(--ez-primary-100)}
.ez-tpl .eza-side ul.product-categories .current-cat > a{font-weight:var(--ez-fw-bold)}
.ez-tpl .eza-side ul.product-categories .count{color:var(--ez-mute);font-size:var(--ez-fs-caption)}
.ez-tpl .eza-side .ez-side-title .elementor-heading-title{font-size:var(--ez-fs-sm);text-transform:uppercase;letter-spacing:.06em;font-weight:var(--ez-fw-bold);color:var(--ez-ink)}
.ez-tpl .eza-box{background:var(--ez-white);border:1px solid var(--ez-border);border-radius:var(--ez-radius-md);padding:var(--ez-space-4)}
/* D27 filter slot: renders only when a pa_* filter widget is placed inside */
.ez-tpl .ez-filter-slot:not(:has(.widget,.elementor-widget-wp-widget-woocommerce_layered_nav li,form,select,input)){display:none}
.ez-tpl .eza-grid .elementor-pagination{margin-top:var(--ez-space-6);display:flex;flex-wrap:wrap;gap:var(--ez-space-2);justify-content:center}
.ez-tpl .eza-grid .elementor-pagination .page-numbers{padding:.4rem .75rem;border:1px solid var(--ez-border);border-radius:var(--ez-radius-sm);color:var(--ez-ink);text-decoration:none}
.ez-tpl .eza-grid .elementor-pagination .page-numbers.current{background:var(--ez-primary);border-color:var(--ez-primary);color:var(--ez-ink);font-weight:var(--ez-fw-bold)}
.ez-tpl .eza-count{color:var(--ez-mute);font-size:var(--ez-fs-sm)}
/* catalogue mode belt-and-braces: never show price / cart UI in these templates */
.ez-tpl .price,.ez-tpl .add_to_cart_button,.ez-tpl .added_to_cart,.ez-card .price{display:none !important}

/* ---------- Responsive (Elementor breakpoints 1024 / 767, R24) ---------- */
@media (max-width:1024px){
  .ez-tpl .ez-grid{--ezha-cols:2}
  .ez-tpl .ez-grid--5{--ezha-cols:3}
  .ez-tpl .ezh-hero__in,.ez-tpl .ezh-about__in{grid-template-columns:minmax(0,1fr)}
  .ez-tpl .ezh-hero__media{max-width:26rem}
  .ez-tpl .eza-body__in{grid-template-columns:minmax(0,1fr)}
  .ez-tpl .eza-side{position:static}
  .ez-tpl .eza-subcats ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:767px){
  .ez-tpl.ez-sec{padding-block:var(--ez-space-7)}
  .ez-tpl.ezh-hero{padding-block:var(--ez-space-6) var(--ez-space-8)}
  .ez-tpl.ezh-hero h1.elementor-heading-title{font-size:var(--ez-fs-h1)}
  .ez-tpl .ez-grid--5,.ez-tpl .ez-grid--3{--ezha-cols:1}
  .ez-tpl.ezh-stats .ez-grid{--ezha-cols:2;padding:var(--ez-space-4)}
  .ez-tpl .ezh-steps,.ez-tpl .ezh-facts{grid-template-columns:minmax(0,1fr)}
  .ez-tpl .eza-subcats ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ez-tpl .ez-search{flex-direction:column}
}
/* ---------- W1-P1 #16 archive m390 first card (A12) ---------- */
/* Hide empty subcategory strip (widget empty but wrapper kept padding). */
.ez-tpl .eza-subwrap:has(.eza-subcats:not(:has(li.product-category))){display:none}
@media (max-width:767px){
  .ez-tpl .eza-body__in{display:flex;flex-direction:column}
  .ez-tpl .eza-body__in > .eza-grid{order:-1}
  .ez-tpl .eza-body__in > .eza-side{order:1;margin-top:var(--ez-space-5)}
  .ez-tpl .eza-subcats ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ez-space-2)}
  .ez-tpl .eza-subcats li.product-category a{padding:var(--ez-space-2) var(--ez-space-3);gap:var(--ez-space-2)}
  .ez-tpl .eza-subcats li.product-category img{width:2.5rem !important;height:2.5rem !important}
  .ez-tpl .eza-subcats .woocommerce-loop-category__title{font-size:var(--ez-fs-sm) !important}
}/* End custom CSS */