/*
Theme Name: ZYNOVA — Gloves & Sports Goods
Theme URI: https://zynova.com/
Author: ZYNOVA
Description: ZYNOVA Gloves & Sports Goods WooCommerce theme for football, goalkeeper gloves and sports wear.
Version: 1.2.0
Text Domain: protexa
*/


/* WordPress dynamic customizer variables */
:root{
  --black: var(--protexa-black, #0a0b0d);
  --charcoal: var(--protexa-charcoal, #1a1d21);
  --ink: var(--protexa-ink, #161a1e);
  --muted: var(--protexa-muted, #666d73);
  --faint: var(--protexa-faint, #9aa0a5);
  --blue: var(--protexa-blue, #f47721);
  --blue-deep: var(--protexa-blue-deep, #c95f0d);
  --yellow: var(--protexa-yellow, #f47721);
  --yellow-deep: var(--protexa-yellow-deep, #f47721);
  --white: var(--protexa-white, #ffffff);
  --stone: var(--protexa-stone, #eef0ed);
  --stone-deep: var(--protexa-stone-deep, #e3e5e0);
  --line: var(--protexa-line, #dcdfdc);
  --line-dark: var(--protexa-line-dark, #2a2e33);
}
body{font-size:var(--protexa-body-size, 15px)}
.section-title h2,.center-title h2,.about-copy h2,.newsletter h2{font-size:var(--protexa-heading-size, clamp(42px,4.6vw,62px))}

/* =========================================================
   ZYNOVA — VISUAL REDESIGN
   Concept: "the spec sheet" — the look of a technical
   equipment catalogue. Sharp corners, hairline rule lines,
   tabbed index numbers, caliper-tick accents. Orange
   used precisely as a signal colour, not decoration.
   ========================================================= */

:root{
  --black:#0a0b0d;
  --charcoal:#1a1d21;
  --ink:#161a1e;
  --muted:#666d73;
  --faint:#9aa0a5;
  --blue:#1c4f7d;
  --blue-deep:#123853;
  --yellow:#ffc300;
  --yellow-deep:#e0a900;
  --white:#ffffff;
  --stone:#eef0ed;
  --stone-deep:#e3e5e0;
  --line:#dcdfdc;
  --line-dark:#2a2e33;
  --max:1280px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Inter",Arial,sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.55;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{display:block;width:100%}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer;background:none;border:0}
.wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

/* ---------- shared display type ---------- */
.eyebrow,
.section-title small,.center-title small,.about-copy>small,
.newsletter small,.innovation-content>small,.review-heading small{
  font-family:"Inter",Arial,sans-serif;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.05em;
  color:var(--muted);
}
.section-title small:before,.center-title small:before,
.about-copy>small:before,.review-heading small:before{
  content:"";
  width:16px;height:1px;
  background:var(--yellow-deep);
  display:inline-block;
}
.section-title h2,.center-title h2,.about-copy h2,.newsletter h2{
  font-family:"Barlow Condensed",Arial,sans-serif;
  font-weight:700;
  font-size:clamp(42px,4.6vw,62px);
  line-height:.98;
  letter-spacing:-.01em;
  color:var(--black);
}
.section-title h2 em,.center-title h2 em,.about-copy h2 em{
  font-style:normal;
  color:var(--blue);
}
.newsletter h2 em{
	  font-style:normal;
  color:#08090a !important;
	  background-color:transparent;

}

/* =========================================================
   TOP STRIP
   ========================================================= */
.top-strip{height:32px;background:var(--black);color:#9aa2a8;font-size:10px;letter-spacing:.04em}
.top-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.top-inner span:last-child{color:var(--yellow)}

/* =========================================================
   HEADER / NAV
   ========================================================= */
.header{height:84px;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:200}
.nav{height:100%;display:grid;grid-template-columns:200px 1fr 120px;align-items:center;gap:20px}
.logo{width:190px;flex:none}
.logo img{width:180px;max-height:52px;object-fit:contain;object-position:left center}

.desktop-nav{display:flex;align-items:center;justify-content:center;gap:34px;height:100%}
.desktop-nav>a,.nav-dropdown>a{
  display:flex;align-items:center;height:100%;
  font-size:13px;font-weight:600;color:#3a4046;
  position:relative;
}
.desktop-nav>a:after,.nav-dropdown>a:after{
  content:"";position:absolute;left:0;right:0;bottom:26px;height:2px;background:var(--yellow);
  transform:scaleX(0);transition:transform .2s ease;
}
.desktop-nav>a:hover,.nav-dropdown>a:hover{color:var(--black)}
.desktop-nav>a:hover:after,.nav-dropdown>a:hover:after{transform:scaleX(1)}

.nav-dropdown{height:100%;display:flex;align-items:center;position:relative}
.nav-dropdown>a{gap:7px}
.menu-chevron{
  width:6px;height:6px;
  border-right:1.5px solid var(--blue);
  border-bottom:1.5px solid var(--blue);
  transform:rotate(45deg) translateY(-2px);
  display:inline-block;
  transition:transform .2s ease;
}
.nav-dropdown:hover .menu-chevron{transform:rotate(225deg) translateY(1px)}

.dropdown-panel{
  position:absolute;left:50%;top:83px;
  width:min(980px,calc(100vw - 48px));
  padding:30px 36px;
  display:grid;grid-template-columns:1.2fr 1.2fr .8fr .8fr;gap:30px;
  background:var(--white);
  border:1px solid var(--line);
  border-top:3px solid var(--yellow);
  box-shadow:0 30px 60px -20px rgba(10,12,15,.22);
  opacity:0;visibility:hidden;
  transform:translate(-50%,6px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
  z-index:150;
}
.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{
  opacity:1;visibility:visible;transform:translate(-50%,0);
}
.dropdown-panel>div{display:flex;flex-direction:column;gap:8px}
.dropdown-panel strong{
  font-family:"Barlow Condensed";font-weight:700;font-size:19px;
  text-transform:uppercase;letter-spacing:.01em;color:var(--black);
  padding-bottom:9px;margin-bottom:2px;border-bottom:1px solid var(--line);
}
.dropdown-panel a{font-size:12.5px;color:#61686e;padding:2px 0;transition:.15s}
.dropdown-panel a:hover{color:var(--blue);padding-left:3px}

.nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}
.icon-btn{font-size:18px;color:#4a5157}
.mobile-toggle{display:none;font-size:20px;color:var(--black)}

/* mobile menu */
.mobile-menu{
  display:none;position:absolute;top:100%;left:0;right:0;
  background:var(--white);border-top:3px solid var(--yellow);
  box-shadow:0 20px 45px rgba(0,0,0,.14);
  padding:8px 22px 20px;max-height:calc(100vh - 72px);overflow-y:auto;
}
.mobile-menu.open{display:block}
.mobile-menu > a{
  display:block;padding:15px 2px;border-bottom:1px solid var(--line);
  font-size:14px;font-weight:600;color:var(--ink);
}
.mobile-products{border-bottom:1px solid var(--line)}
.mobile-products-toggle{
  width:100%;min-height:52px;padding:15px 2px;
  display:flex;align-items:center;justify-content:space-between;
  font-size:14px;font-weight:600;color:var(--ink);text-align:left;
}
.mobile-chevron{
  width:7px;height:7px;
  border-right:1.5px solid var(--blue);border-bottom:1.5px solid var(--blue);
  transform:rotate(45deg) translateY(-2px);
  transition:transform .2s ease;
}
.mobile-products-toggle[aria-expanded="true"] .mobile-chevron{transform:rotate(225deg) translateY(1px)}
.mobile-submenu{display:none;padding:2px 0 14px 6px}
.mobile-submenu.open{display:block}
.mobile-category{border-top:1px solid var(--line)}
.mobile-category:first-child{border-top:0}
.mobile-category-toggle{
  width:100%;min-height:46px;padding:12px 2px;
  display:flex;align-items:center;justify-content:space-between;
  font-size:13.5px;font-weight:600;color:#2c3136;text-align:left;
}
.category-plus{width:18px;font-size:17px;line-height:1;font-weight:400;color:var(--muted);transition:transform .2s ease}
.mobile-category-toggle[aria-expanded="true"] .category-plus{transform:rotate(45deg);color:var(--blue)}
.mobile-category-links{display:none;padding:0 0 12px 10px}
.mobile-category-links.open{display:block}
.mobile-category-links a{display:block;padding:7px 0;font-size:13px;color:var(--muted)}
.mobile-category-links a:hover{color:var(--blue)}
@media(min-width:801px){.mobile-menu{display:none!important}}

/* =========================================================
   BUTTONS
   ========================================================= */
.btn{
  min-height:48px;padding:0 24px;
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
  border:1px solid transparent;transition:.2s ease;
}
.btn span{font-size:15px;transition:transform .2s ease}
.btn:hover span{transform:translateX(3px)}
.btn.yellow{background:var(--yellow);color:var(--black)}
.btn.yellow:hover{background:var(--yellow-deep)}
.btn.outline{border-color:rgba(255,255,255,.4);color:#fff}
.btn.outline:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.btn.black{background:var(--black);color:#fff}
.btn.black:hover{background:var(--blue)}
.centered-btn{margin:36px auto 0;display:flex;width:max-content}

/* =========================================================
   HERO
   ========================================================= */
.hero{min-height:660px;background:var(--black);position:relative;color:#fff;overflow:hidden}
.hero-slides{position:relative;min-height:660px}
.hero-slide{
  position:absolute;inset:0;opacity:0;visibility:hidden;z-index:1;
  transition:opacity .8s ease,visibility .8s ease;
}
.hero-slide.is-active{opacity:1;visibility:visible;z-index:2}
.hero-image{
  position:absolute;inset:0;left:44%;
  background:
    linear-gradient(90deg,rgba(10,11,13,.15),transparent 30%),
    center/cover no-repeat;
  filter:grayscale(.15) contrast(1.05);
}
.hero-image-1{background-image:none}
.hero-image-2{background-image:none}
.hero-image-3{background-image:none}
.hero-image:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,var(--black) 0%,rgba(10,11,13,.7) 18%,rgba(10,11,13,.15) 40%,transparent 60%);
}
.hero-content{position:relative;z-index:2;min-height:660px;display:grid;grid-template-columns:1.15fr .85fr}

.hero-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:44px;height:44px;border:1px solid rgba(255,255,255,.35);background:rgba(10,11,13,.4);
  color:#fff;font-size:16px;display:grid;place-items:center;transition:.2s;backdrop-filter:blur(3px);
}
.hero-arrow:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.hero-arrow.prev{left:22px}.hero-arrow.next{right:22px}
.hero-dots{position:absolute;left:50%;bottom:46px;transform:translateX(-50%);z-index:5;display:flex;gap:8px}
.hero-dots button{width:7px;height:7px;border:1px solid rgba(255,255,255,.6);background:transparent;padding:0;transition:.2s}
.hero-dots button.active{background:var(--yellow);border-color:var(--yellow);width:22px}
.hero-copy{align-self:center;padding:64px 60px 54px 0;position:relative}
.hero-copy:before{
  content:"";position:absolute;left:-30px;top:6px;bottom:6px;width:3px;background:var(--yellow);
}
.hero .eyebrow{color:#e7e9ea;margin-bottom:18px}
.hero .eyebrow:before{content:none}
.hero .eyebrow i{width:22px;height:2px;background:var(--yellow);display:block}
.hero h1{
  font-family:"Barlow Condensed";font-weight:700;
  font-size:clamp(52px,6.6vw,88px);line-height:.94;
  letter-spacing:-.01em;max-width:640px;
}
.hero h1 span{color:var(--yellow)}
.hero-copy>p{max-width:440px;color:#cfd2d4;font-size:14.5px;line-height:1.7;margin:24px 0}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:52px}
.hero-stats{display:flex;gap:38px;border-top:1px solid rgba(255,255,255,.16);padding-top:24px}
.hero-stats div{display:flex;gap:10px}
.hero-stats strong{font-family:"Barlow Condensed";font-weight:700;font-size:24px;color:var(--yellow);line-height:1}
.hero-stats span{font-size:10px;line-height:1.35;color:#b9bdc0;letter-spacing:.02em}

.hero-side{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}
.hero-side-label{position:absolute;top:32px;right:0;color:rgba(255,255,255,.55);font-size:10px;letter-spacing:.1em}
.hero-side-badge{
  position:relative;width:220px;padding:26px 22px;
  background:rgba(10,11,13,.55);backdrop-filter:blur(4px);
  border:1px dashed rgba(255,255,255,.4);
  display:flex;flex-direction:column;gap:10px;
}
.hero-side-badge:before{content:"";position:absolute;top:-1px;left:-1px;width:14px;height:14px;border-top:2px solid var(--yellow);border-left:2px solid var(--yellow)}
.hero-side-badge span{font-family:"Barlow Condensed";font-weight:700;font-size:26px;color:var(--yellow);line-height:1}
.hero-side-badge strong{font-family:"Barlow Condensed";font-weight:700;font-size:19px;line-height:1.08;letter-spacing:.01em}
.hero-side-badge small{color:#aeb2b5;font-size:10px;letter-spacing:.06em}
.hero-side-bottom{
  position:absolute;right:0;bottom:36px;
  border-top:1px solid rgba(255,255,255,.3);padding-top:10px;
  width:240px;display:flex;justify-content:space-between;gap:15px;
}
.hero-side-bottom span{font-size:10px;color:var(--yellow)}
.hero-side-bottom b{font-size:12px;font-weight:600}
.hero-bottom{
  position:absolute;bottom:20px;left:50%;transform:translateX(-50%);
  font-size:9px;letter-spacing:.14em;color:#c6c9cb;display:flex;align-items:center;gap:9px;
}
.hero-bottom b{font-size:13px;color:var(--yellow)}

/* =========================================================
   BRAND TICKER
   ========================================================= */
.brand-ticker{height:42px;overflow:hidden;background:var(--yellow);display:flex;align-items:center}
.ticker-track{
  display:flex;gap:22px;align-items:center;white-space:nowrap;
  font-family:"Barlow Condensed";font-weight:700;font-size:13px;
  text-transform:uppercase;letter-spacing:.04em;color:var(--black);
  animation:marquee 24s linear infinite;
}
.ticker-track i{font-style:normal;font-size:10px;color:rgba(10,11,13,.5)}
@keyframes marquee{to{transform:translateX(-50%)}}

/* =========================================================
   SHARED SECTION RHYTHM
   ========================================================= */
.categories,.products,.facilities,.materials,.exhibitions{padding:88px 0}
.categories{background:#fff}
.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}
.section-title.compact{margin-bottom:28px}
.section-title>div{max-width:680px}
.section-title>p{max-width:360px;color:var(--muted);font-size:13.5px;line-height:1.6}
.section-description{color:var(--muted);font-size:13.5px;max-width:600px;margin:-14px 0 30px;line-height:1.6}
.text-link{
  font-size:11px;font-weight:700;letter-spacing:.02em;
  border-bottom:1px solid #c7cbc8;padding-bottom:6px;white-space:nowrap;
  transition:.2s;
}
.text-link:hover{color:var(--blue);border-color:var(--blue)}
.center-title{text-align:center;max-width:680px;margin:0 auto 38px}
.center-title small{justify-content:center}
.center-title small:before{display:none}
.center-title h2{margin-bottom:14px}
.center-title p{color:var(--muted);font-size:13.5px}

/* =========================================================
   CATEGORIES
   ========================================================= */
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:230px 230px;gap:3px}
.category-card{height:auto;min-height:0;position:relative;overflow:hidden;background:var(--charcoal)}
.category-card:nth-child(1){grid-column:span 2;grid-row:span 2}
.category-card:nth-child(2){grid-column:3;grid-row:1}
.category-card:nth-child(3){grid-column:4;grid-row:1}
.category-card:nth-child(4){grid-column:3 / span 2;grid-row:2}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.08) 68%)}
.category-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .5s ease;filter:grayscale(.18)}
.category-card:hover img{transform:scale(1.05);filter:grayscale(0)}
.category-card>div{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;color:#fff}
.category-card small{font-size:10px;color:var(--yellow);font-weight:700;letter-spacing:.05em}
.category-card h3{font-family:"Barlow Condensed";font-weight:700;font-size:clamp(25px,2.4vw,38px);line-height:.95;margin:8px 0}
.category-card span{font-size:11px;color:#e1e4e5}
.category-card:nth-child(n+2) h3{font-size:28px}
@media(max-width:900px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:300px 220px 220px}
  .category-card:nth-child(1){grid-column:1 / span 2;grid-row:1}
  .category-card:nth-child(2){grid-column:1;grid-row:2}
  .category-card:nth-child(3){grid-column:2;grid-row:2}
  .category-card:nth-child(4){grid-column:1 / span 2;grid-row:3}
}
@media(max-width:560px){
  .category-grid{grid-template-columns:1fr;grid-template-rows:300px 230px 230px 260px}
  .category-card:nth-child(1),.category-card:nth-child(2),.category-card:nth-child(3),.category-card:nth-child(4){grid-column:1;grid-row:auto}
}

/* =========================================================
   PRODUCTS
   ========================================================= */
.products{background:var(--stone)}
.product-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.filter-tab{
  height:38px;padding:0 18px;border:1px solid var(--line);background:#fff;
  font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.01em;transition:.2s;
}
.filter-tab:hover{border-color:var(--blue);color:var(--blue)}
.filter-tab.is-active{background:var(--black);border-color:var(--black);color:#fff}
.product-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.product{background:#fff;min-width:0}
.product[hidden]{display:none}
.product-empty{margin-top:24px;color:var(--muted);font-size:13.5px}
.product-empty a{color:var(--blue);font-weight:600}
.product-img{height:250px;position:relative;background:#e5e7e4;overflow:hidden}
.product-img img{height:100%;object-fit:cover;transition:transform .4s ease}
.product:hover .product-img img{transform:scale(1.06)}
.product-info{padding:18px 16px 20px;border-top:1px solid var(--line)}
.product-info h3{font-family:"Barlow Condensed";font-weight:700;font-size:19px;line-height:1.1;color:var(--black)}
.product-info small{display:block;color:var(--muted);font-size:11px;margin-top:7px}
.product-info a{display:inline-block;color:var(--blue);font-size:10.5px;font-weight:700;margin-top:13px}
.product-info a:hover{color:var(--blue-deep)}

/* =========================================================
   SPLIT PROMOS
   ========================================================= */
.split-promos{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding-top: 80px;}
.promo{height:420px;position:relative;overflow:hidden;color:#fff}
.promo img{height:100%;object-fit:cover;transition:transform .5s ease;filter:grayscale(.2)}
.promo:hover img{transform:scale(1.05);filter:grayscale(0)}
.promo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,7,9,.82),transparent 62%)}
.promo>div{position:absolute;z-index:2;left:6%;bottom:44px}
.promo small{font-size:10px;letter-spacing:.1em;color:var(--yellow);font-weight:600}
.promo h3{font-family:"Barlow Condensed";font-weight:700;font-size:46px;line-height:.9;margin:9px 0 16px}
.promo h3 b{font-weight:700}
.promo span{font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:8px}

/* =========================================================
   CATALOG
   ========================================================= */
.catalog{padding:96px 0;background:#fff}
.catalog-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}
.catalog-grid>div:first-child{padding-left:0}
.catalog-grid small{
  font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.05em;
  display:inline-flex;align-items:center;gap:8px;
}
.catalog-grid small:before{content:"";width:16px;height:1px;background:var(--yellow-deep)}
.catalog h2{font-family:"Barlow Condensed";font-weight:700;font-size:52px;line-height:1;margin:16px 0 20px;color:var(--black)}
.catalog h2 em{font-style:normal;color:var(--blue)}
.catalog p{max-width:480px;color:var(--muted);font-size:13.5px;line-height:1.7;margin-bottom:26px}
.catalog-art{height:500px;overflow:hidden;background:#fdfdfd;position:relative}
.catalog-art:before{content:"";position:absolute;top:16px;left:16px;width:22px;height:22px;border-top:2px solid var(--yellow);border-left:2px solid var(--yellow);z-index:2}
.catalog-art img{height:100%;object-fit:contain}

/* =========================================================
   INNOVATION BANNER
   ========================================================= */
.innovation{height:560px;position:relative;color:#fff;overflow:hidden}
.innovation>img{position:absolute;inset:0;height:100%;object-fit:cover;filter:grayscale(.3)}
.innovation-overlay{position:absolute;inset:0;background:linear-gradient(90deg, rgb(8 9 11 / 8%), rgba(8, 9, 11, .35) 65%), linear-gradient(0deg, rgba(8, 9, 11, .35), transparent 45%)}
.innovation-content{position:relative;height:100%;display:flex;justify-content:center;flex-direction:column;max-width:620px}
.innovation-content>small{color:var(--yellow);font-size:11px;font-weight:600;letter-spacing:.06em}
.innovation h2{font-family:"Barlow Condensed";font-weight:700;font-size:clamp(42px,4.6vw,60px);line-height:.98;margin:16px 0}
.innovation h2 em{font-style:normal;color:var(--yellow)}
.innovation p{max-width:460px;color:#c7cacc;font-size:13.5px;line-height:1.7}

/* =========================================================
   FACILITIES
   ========================================================= */
.facilities{background:#fff}
.facility-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px}
.facility-grid>div{height:220px;position:relative;overflow:hidden;background:var(--charcoal)}
.facility-grid img{height:100%;object-fit:cover;transition:transform .4s ease;filter:grayscale(.3)}
.facility-grid>div:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 55%)}
.facility-grid b{position:absolute;z-index:2;bottom:16px;left:16px;color:#fff;font-family:"Barlow Condensed";font-weight:700;font-size:16px}
.facility-grid>div:hover img{transform:scale(1.06);filter:hue-rotate(-25deg) saturate(1.35);}

/* =========================================================
   ABOUT
   ========================================================= */
.about{padding:104px 0;background:var(--stone)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.about-image{height:480px;overflow:hidden;position:relative}
.about-image:before{content:"";position:absolute;top:16px;left:16px;width:22px;height:22px;border-top:2px solid var(--yellow);border-left:2px solid var(--yellow);z-index:2}
.about-image img{height:100%;object-fit:cover}
.about-copy{max-width:560px}
.about-copy h2{margin-bottom:22px}
.about-copy p{color:#565d62;font-size:13.5px;line-height:1.75;margin-bottom:14px}
.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:32px}
.about-points div{border-top:2px solid var(--black);padding-top:12px}
.about-points b{font-family:"Barlow Condensed";font-weight:700;font-size:26px;color:var(--blue)}
.about-points span{display:block;font-size:10.5px;color:var(--muted);line-height:1.35;margin-top:5px}

/* =========================================================
   MATERIALS
   ========================================================= */
.materials{background:#fff}
.material-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}
.material-grid div{height:118px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:background .2s}
.material-grid div:hover{background:var(--stone)}
.material-grid div:last-child{border-right:0}
.material-grid strong{font-family:"Barlow Condensed";font-weight:700;font-size:21px;color:var(--black)}
.material-grid span{font-size:10.5px;color:var(--muted)}

/* =========================================================
   ZYNOVA ARCHIVE
   ========================================================= */
.exhibitions{background:var(--stone)}
.expo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.expo-grid article{background:#fff}
.expo-grid img{height:250px;object-fit:cover;filter:grayscale(.15)}
.expo-grid h3{font-family:"Barlow Condensed";font-weight:700;font-size:21px;line-height:1.15;margin:16px 18px 5px;color:var(--black)}
.expo-grid small{display:block;font-size:11px;color:var(--muted);margin:0 18px 18px}

/* =========================================================
   CERTIFICATIONS
   ========================================================= */
.certifications{padding:80px 0 80px;background:var(--blue)}
.certifications .center-title small{color:#c7d7e5}
.certifications .center-title h2{color:#fff}
.certifications .center-title h2 em{color:var(--yellow)}
.certifications .center-title p{color:#c1d1de}
.cert-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px}
.cert-grid div{height:130px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;transition:background .2s}
.cert-grid div:hover{background:rgba(255,255,255,.1)}
.cert-grid b{font-family:"Barlow Condensed";font-weight:700;font-size:30px;color:#fff}
.cert-grid span{font-size:10px;color:#c1d1de}

/* =========================================================
   REVIEWS / TESTIMONIAL CAROUSEL
   ========================================================= */
.reviews{padding:92px 0;background:#fff}
.review-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px;gap:30px}
.review-heading h2{font-family:"Barlow Condensed";font-weight:700;font-size:clamp(40px,4.4vw,56px);line-height:.98;color:var(--black)}
.review-heading h2 em{font-style:normal;color:var(--blue)}
.rating{display:flex;align-items:center;gap:14px}
.rating strong{font-family:"Barlow Condensed";font-weight:700;font-size:44px;color:var(--black)}
.rating span{font-size:10.5px;color:var(--muted);line-height:1.4}
.rating span:first-line{color:var(--yellow-deep)}

.testimonial-carousel{position:relative;padding:0 50px 38px}
.testimonial-viewport{overflow:hidden}
.review-track{display:flex;transition:transform .45s ease;will-change:transform}
.review-card{
  flex:0 0 33.3333%;background:var(--stone);border:1px solid var(--line);
  padding:26px 24px;min-height:210px;margin-right:14px;box-sizing:border-box;
}
.review-card .stars{color:var(--yellow-deep);letter-spacing:3px;font-size:12px}
.review-card p{font-size:13px;line-height:1.65;color:#4a5156;margin:18px 0 22px}
.review-card b{display:block;font-size:11px;color:var(--black)}
.review-card small{display:block;font-size:10px;color:var(--muted);margin-top:3px}
.carousel-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  width:38px;height:38px;border:1px solid var(--line);background:#fff;color:var(--blue);
  font-size:16px;display:grid;place-items:center;transition:.2s;
}
.carousel-arrow:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.carousel-arrow.prev{left:0}.carousel-arrow.next{right:0}
.carousel-dots{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;gap:7px}
.carousel-dots button{width:6px;height:6px;border:0;background:#c9cdc9;padding:0;transition:.2s}
.carousel-dots button.active{background:var(--blue);width:20px}

/* =========================================================
   BLOG
   ========================================================= */
.blog{background:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.blog-grid article{border:1px solid var(--line);background:#fff;overflow:hidden}
.blog-grid img{height:220px;object-fit:cover;filter:grayscale(.15)}
.blog-grid article>small{display:block;font-size:10px;color:var(--muted);margin:18px 18px 6px}
.blog-grid h3{font-family:"Barlow Condensed";font-weight:700;font-size:22px;line-height:1.15;padding:0px;color:var(--black)}
.blog-grid a{display:inline-block;color:var(--blue);font-size:10.5px;font-weight:700;padding:0px}
.blog-grid a:hover{color:var(--blue-deep)}

/* =========================================================
   NEWSLETTER
   ========================================================= */
.newsletter{background:var(--yellow);padding:64px 0}
.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
.newsletter small{color:rgba(10,11,13,.6)}
.newsletter small:before{background:var(--black)}
.newsletter h2{color:var(--black)}
.newsletter h2 em{color:var(--blue)}
.newsletter form{width:min(500px,100%);display:flex;background:#fff;padding:5px}
.newsletter input{border:0;outline:0;padding:0 16px;height:48px;flex:1;font-size:13px}
.newsletter button{background:var(--black);color:#fff;padding:0 20px;font-size:10.5px;font-weight:700;letter-spacing:.03em}
.newsletter button:hover{background:var(--blue)}

/* =========================================================
   FOOTER
   ========================================================= */
footer{background:var(--black);color:#fff;padding-top:70px}
.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:56px;padding-bottom:56px}
.footer-brand img{width:180px}
.footer-brand p{max-width:320px;color:#9aa1a6;font-size:12.5px;line-height:1.7;margin-top:18px}
.footer-socials{display:flex;gap:9px;margin-top:22px}
.footer-socials a{
  width:32px;height:32px;border:1px solid var(--line-dark);
  display:grid;place-items:center;color:#c9cdd0;transition:.2s;
}
.footer-socials a svg{width:16px;height:16px;display:block}
.footer-socials a:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.footer-col{display:flex;flex-direction:column;gap:11px}
.footer-col small{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--yellow);margin-bottom:5px}
.footer-col a{font-size:12.5px;color:#a7adb1;transition:.2s}
.footer-col a:hover{color:#fff}
.footer-contact span{font-size:12.5px;color:#a7adb1}
.footer-bottom{
  border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;
  padding:20px 0;color:#767c80;font-size:10.5px;letter-spacing:.02em;
}

/* =========================================================
   BACK TO TOP
   ========================================================= */
.back-to-top{
  position:fixed;right:28px;bottom:28px;width:48px;height:48px;
  border:1px solid var(--yellow);background:var(--black);color:var(--yellow);
  display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;line-height:1;
  z-index:9999;opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .2s ease,color .2s ease;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--yellow);color:var(--black)}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:1100px){
  .nav{grid-template-columns:170px 1fr 90px}
  .desktop-nav{gap:20px}
  .desktop-nav>a,.nav-dropdown>a{font-size:12.5px}
  .dropdown-panel{width:min(880px,calc(100vw - 36px));gap:22px;padding:26px}
  .category-grid{grid-template-columns:repeat(2,1fr)}
  .product-row{grid-template-columns:repeat(3,1fr)}
  .facility-grid{grid-template-columns:repeat(3,1fr)}
  .facility-grid>div:nth-child(n+4){display:none}
}
@media(max-width:800px){
  .wrap{width:min(calc(100% - 28px),var(--max))}
  .top-strip{display:none}
  .header{height:70px}
  .nav{display:flex;justify-content:space-between;align-items:center}
  .logo{width:150px}
  .logo img{width:145px;max-height:44px}
  .desktop-nav{display:none}
  .nav-actions .icon-btn{display:none}
  .mobile-toggle{display:block}

  .hero{min-height:600px}
  .hero-slides{min-height:600px}
  .hero-image{left:0;opacity:.38}
  .hero-content{min-height:600px;display:block}
  .hero-copy{padding:96px 0 46px;max-width:600px}
  .hero-copy:before{left:0}
  .hero-copy{padding-left:24px}
  .hero h1{font-size:56px}
  .hero-side{display:none}
  .hero-stats{gap:16px;flex-wrap:wrap}
  .hero-bottom{display:none}
  .hero-arrow{display:none}
  .hero-dots{bottom:10px}

  .section-title{align-items:flex-start;flex-direction:column;gap:16px}
  .category-grid{grid-template-columns:1fr 1fr}
  .category-card{height:250px}
  .product-row{grid-template-columns:1fr 1fr}
  .product-img{height:210px}
  .product-filters{gap:7px}
  .filter-tab{height:36px;padding:0 14px;font-size:11px}
  .split-promos{grid-template-columns:1fr}
  .promo{height:320px}
  .catalog-grid{grid-template-columns:1fr;gap:34px}
  .catalog-art{height:300px}
  .innovation{height:480px}
  .facility-grid{grid-template-columns:repeat(2,1fr)}
  .facility-grid>div{height:180px;display:block!important}
  .facility-grid>div:nth-child(n+5){display:none!important}
  .about-grid{grid-template-columns:1fr;gap:34px}
  .about-image{height:300px}
  .material-grid{grid-template-columns:repeat(2,1fr)}
  .material-grid div{border-bottom:1px solid var(--line)}
  .material-grid div:nth-child(2n){border-right:0}
  .material-grid div:last-child{grid-column:span 2}
  .expo-grid{grid-template-columns:1fr}
  .cert-grid{grid-template-columns:repeat(2,1fr)}
  .cert-grid div:last-child{grid-column:span 2}
  .review-heading{align-items:flex-start;flex-direction:column;gap:22px}
  .review-card{flex-basis:100%}
  .testimonial-carousel{padding-inline:42px}
  .blog-grid{grid-template-columns:1fr}
  .newsletter-inner{align-items:flex-start;flex-direction:column}
  .newsletter form{width:100%}
  .footer-main{grid-template-columns:1fr 1fr;gap:32px}
  .footer-brand{grid-column:span 2}
  .footer-bottom{flex-direction:column;gap:8px}
  .back-to-top{right:16px;bottom:18px;width:44px;height:44px;font-size:18px}
}
@media(max-width:480px){
  .category-grid,.product-row{grid-template-columns:1fr}
  .category-card{height:270px}
  .hero h1{font-size:46px}
  .hero-stats{display:grid;grid-template-columns:1fr 1fr}
  .about-points{grid-template-columns:1fr}
  .material-grid{grid-template-columns:1fr}
  .material-grid div,.material-grid div:last-child{grid-column:auto;border-right:0}
  .cert-grid{grid-template-columns:1fr}
  .cert-grid div:last-child{grid-column:auto}
  .footer-main{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ticker-track{animation:none}
  .hero-slide{transition:none}
}

/* =========================================================
   QUOTE FORM
   ========================================================= */
.quote{padding:96px 0;background:var(--stone)}
.quote-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
.quote-copy{max-width:420px}
.quote-copy small{
  display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;
  letter-spacing:.05em;color:var(--muted);
}
.quote-copy small:before{content:"";width:16px;height:1px;background:var(--yellow-deep)}
.quote-copy h2{
  font-family:"Barlow Condensed";font-weight:700;font-size:clamp(38px,4vw,52px);
  line-height:1;letter-spacing:-.01em;color:var(--black);margin:16px 0 18px;
}
.quote-copy h2 em{font-style:normal;color:var(--blue)}
.quote-copy>p{color:var(--muted);font-size:13.5px;line-height:1.7;margin-bottom:30px}
.quote-meta{display:grid;gap:16px}
.quote-meta div{border-top:1px solid var(--line);padding-top:10px}
.quote-meta b{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}
.quote-meta a,.quote-meta span{font-size:14px;color:var(--black);font-weight:600}

.quote-form{background:#fff;border:1px solid var(--line);padding:34px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.quote-form label{
  display:block;font-size:11px;font-weight:600;color:var(--muted);
  letter-spacing:.02em;
}
.quote-form label.full{margin-bottom:18px}
.quote-form input,.quote-form select,.quote-form textarea{
  display:block;width:100%;margin-top:7px;border:1px solid var(--line);
  padding:11px 12px;font-size:13.5px;color:var(--ink);background:#fff;outline:0;
  transition:border-color .2s;font-family:inherit;
}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue)}
.quote-form textarea{resize:vertical}
.quote-form .btn{border:0;width:100%}
.form-note{margin-top:14px;font-size:11px;color:var(--faint);line-height:1.5}

@media(max-width:900px){
  .quote-grid{grid-template-columns:1fr;gap:40px}
  .quote-copy{max-width:none}
}
@media(max-width:560px){
  .quote-form{padding:24px 20px}
  .form-row{grid-template-columns:1fr}
}


/* =========================================================
   PRODUCT CARD STYLE — V7 VISUAL TREATMENT ONLY
   (Grid/layout intentionally unchanged)
   ========================================================= */
.product{background:#fff;min-width:0;border:1px solid #eceeed;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.product:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(10,14,18,.10);border-color:#d9dcda}
.product-img{height:260px;position:relative;background:#e8e9e8;overflow:hidden}
.product-img img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.product:hover .product-img img{transform:scale(1.05)}
.product-info{padding:16px 14px 18px;border-top:0;background:#fff}
.product-info h3{font-family:"Barlow Condensed";font-weight:700;font-size:21px;text-transform:uppercase;line-height:1;color:var(--black);letter-spacing:.01em}
.product-info small{display:block;color:#8a9095;font-size:9px;margin-top:8px;line-height:1.35}
.product-info a{display:inline-block;color:var(--blue);font-size:9px;font-weight:800;text-transform:uppercase;margin-top:13px;letter-spacing:.03em;transition:color .2s ease}
.product-info a:hover{color:var(--blue-deep)}

/* =========================================================
   STEP UPDATE — PRODUCT COUNT / ARTICLE NUMBERS
   ========================================================= */
.product-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.product{border:1px solid var(--line);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.product:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(10,11,13,.08)}
.product-img{height:270px}
.product-info{padding:17px 18px 20px}
.article-number{display:block;margin-top:6px;font-size:10px!important;line-height:1.2;color:var(--blue)!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase}

/* =========================================================
   STEP UPDATE — BLOG REFERENCE STYLE
   ========================================================= */
section.blog{background:#f1f3f1;padding:88px 0 10px}
.blog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;margin-bottom:30px}
.blog-heading>div{max-width:760px}
.blog-heading small{display:flex;align-items:center;gap:9px;color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.15em}
.blog-heading small:before{content:"";width:16px;height:1px;background:var(--yellow-deep)}
.blog-heading h2{font-family:"Barlow Condensed";font-weight:700;font-size:clamp(40px,4.4vw,58px);line-height:.92;letter-spacing:-.025em;margin:13px 0 15px;color:var(--black);text-transform:uppercase}
.blog-heading h2 em{font-style:normal;color:var(--blue)}
.blog-heading p{font-size:11px;color:var(--muted);line-height:1.55;margin:0}
.blog-heading .text-link{margin-top:44px;font-size:9px;color:var(--black);font-weight:700;text-transform:uppercase;border-bottom:1px solid var(--yellow-deep)}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.blog-grid article{border:1px solid #d8dcda;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-height:358px}
.blog-image{height:300px;position:relative;overflow:hidden;background:#e6e8e5}
.blog-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;aspect-ratio: 4 / 3;filter:none}
.blog-grid article:hover .blog-image img{transform:scale(1.035)}
.blog-info{padding:20px 15px 17px;display:flex;flex-direction:column;flex:1}
.blog-info>small{font-size:8px;font-weight:700;letter-spacing:.13em;color:var(--blue);margin-bottom:11px}
.blog-info h3{font-family:"Barlow Condensed";font-weight:700;font-size:22px;line-height:1.02;text-transform:uppercase;color:var(--black);margin:0;max-width:270px}
.blog-info a{margin-top:auto;padding-top:18px;font-size:8.5px;font-weight:800;letter-spacing:.06em;color:var(--black)}
.blog-info a:hover{color:var(--blue)}
.blog .centered-btn{margin:34px auto 0;display:flex;width:max-content;min-width:123px;justify-content:center;font-size:8px;height:40px}

@media(max-width:900px){
  .product-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-heading{align-items:flex-end}
  .blog-heading .text-link{margin-top:0}
}
@media(max-width:560px){
  .product-row{grid-template-columns:1fr}
  .blog{padding:60px 0}
  .blog-heading{display:block;margin-bottom:25px}
  .blog-heading .text-link{display:inline-block;margin-top:18px}
  .blog-grid{grid-template-columns:1fr}
  .blog-grid article{min-height:0}
  .blog-image{height:220px}
}

/* =========================================================
   STEP UPDATE — PROMO WIDTH / CATEGORY SLIDE CLEANUP / INNOVATION
   ========================================================= */
/* Keep the two collection panels aligned with the same content width as other sections. */
.split-promos{
  width:min(calc(100% - 48px),var(--max));
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2px;
}

/* Clean category slides: image-led cards without the floating text panel treatment. */
.category-card>div{
  left:0;
  right:0;
  bottom:0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.category-card>div:before,
.category-card>div:after{
  display:none!important;
}

/* Innovation: keep the copy anchored to the left, matching the reference treatment. */
.innovation-content{
  max-width:none;
  width:min(calc(100% - 48px),var(--max));
  margin-inline:auto;
  justify-content:center;
  align-items:flex-start;
  padding-top:118px;
  text-align:left;
}
.innovation-content>small,
.innovation-content h2,
.innovation-content p{
  text-align:left;
}
.innovation-content h2{max-width:760px}
.innovation-content p{max-width:560px}

@media(max-width:900px){
  .split-promos{width:min(calc(100% - 32px),var(--max));grid-template-columns:1fr;gap:2px}
  .innovation-content{width:min(calc(100% - 32px),var(--max));padding-top:90px}
}
@media(max-width:560px){
  .split-promos{width:calc(100% - 24px)}
  .innovation-content{width:calc(100% - 32px);padding-top:72px}
}


/* STEP 4 — CATEGORY BANNER MOSAIC + BACK TO TOP */
.hero-side-badge{display:none!important}

/* One dominant banner + three supporting category banners */
.category-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:250px 250px;
  gap:3px;
  align-items:stretch;
}
.category-card{
  height:auto!important;
  min-height:0;
  margin:0!important;
  position:relative;
  overflow:hidden;
  background:var(--charcoal);
}
.category-card:nth-child(1){grid-column:1 / span 2;grid-row:1 / span 2}
.category-card:nth-child(2){grid-column:3;grid-row:1}
.category-card:nth-child(3){grid-column:4;grid-row:1}
.category-card:nth-child(4){grid-column:3 / span 2;grid-row:2}
.category-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .45s ease;filter:grayscale(.12)}
.category-card:hover img{transform:scale(1.045);filter:grayscale(0)}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.05) 65%)}
.category-card>div{position:absolute;z-index:2;left:24px;right:22px;bottom:22px;padding:0;background:transparent;border:0;box-shadow:none;color:#fff}
.category-card small{display:block;margin-bottom:8px;font-size:10px;color:var(--yellow);font-weight:700;letter-spacing:.05em}
.category-card h3{font-family:"Barlow Condensed";font-weight:700;font-size:clamp(28px,3vw,42px);line-height:.94;margin:0 0 9px;text-transform:uppercase}
.category-card span{font-size:11px;color:#e2e5e6}
.category-card:nth-child(n+2) h3{font-size:28px}

@media(max-width:900px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:300px 220px 220px}
  .category-card:nth-child(1){grid-column:1 / span 2;grid-row:1}
  .category-card:nth-child(2){grid-column:1;grid-row:2}
  .category-card:nth-child(3){grid-column:2;grid-row:2}
  .category-card:nth-child(4){grid-column:1 / span 2;grid-row:3}
}
@media(max-width:560px){
  .category-grid{grid-template-columns:1fr;grid-template-rows:300px 230px 230px 260px;gap:8px}
  .category-card:nth-child(1),.category-card:nth-child(2),.category-card:nth-child(3),.category-card:nth-child(4){grid-column:1;grid-row:auto}
  .category-card h3,.category-card:nth-child(n+2) h3{font-size:28px}
}

/* Ensure the back-to-top control is visible once the user scrolls */
.back-to-top{
  position:fixed;right:28px;bottom:28px;width:50px;height:50px;
  border:1px solid var(--yellow);background:var(--black);color:var(--yellow);
  display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:700;line-height:1;cursor:pointer;
  z-index:99999;opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .2s ease,color .2s ease;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--yellow);color:var(--black)}
@media(max-width:560px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px;font-size:19px}}


/* WordPress menu structure */
.desktop-nav > .primary-menu{display:flex;align-items:center;justify-content:center;gap:34px;height:100%;list-style:none;margin:0;padding:0}
.desktop-nav .primary-menu > li{height:100%;display:flex;align-items:center;position:relative}
.desktop-nav .primary-menu > li > a{display:flex;align-items:center;height:100%;font-size:13px;font-weight:600;color:#3a4046;position:relative}
.desktop-nav .primary-menu > li > a:after{content:"";position:absolute;left:0;right:0;bottom:26px;height:2px;background:var(--yellow);transform:scaleX(0);transition:.2s}
.desktop-nav .primary-menu > li:hover > a:after,.desktop-nav .primary-menu > li:focus-within > a:after{transform:scaleX(1)}
.desktop-nav .primary-menu > li.mega-parent > a:after{transform:none;left:auto;right:-12px;bottom:auto;top:50%;width:7px;height:7px;background:none;border-right:1.5px solid var(--blue);border-bottom:1.5px solid var(--blue);transform:rotate(45deg) translateY(-5px)}
.desktop-nav .primary-menu .sub-menu{list-style:none;margin:0;padding:0}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{position:absolute;left:50%;top:83px;width:min(1040px,calc(100vw - 48px));padding:30px 36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--yellow);box-shadow:0 30px 60px -20px rgba(10,12,15,.22);opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:150}
.desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,.desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.desktop-nav .mega-submenu > li > a{display:block;font-family:"Barlow Condensed";font-weight:700;font-size:19px;text-transform:uppercase;color:var(--black);padding-bottom:9px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.desktop-nav .mega-submenu > li > .sub-menu{display:flex;flex-direction:column;gap:8px}
.desktop-nav .mega-submenu > li > .sub-menu a{font-size:12.5px;color:#61686e;padding:2px 0}
.desktop-nav .mega-submenu > li > .sub-menu a:hover{color:var(--blue);padding-left:3px}
.desktop-nav .primary-menu > li:not(.mega-parent) > .sub-menu{display:none}
/* Mobile WP menu */
.mobile-primary-menu,.mobile-primary-menu ul{list-style:none;margin:0;padding:0}
.mobile-menu .mobile-menu-item > a,.mobile-menu .mobile-parent-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:15px 2px;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--ink);text-align:left}
.mobile-menu .mobile-parent-toggle b{font-size:18px;font-weight:400;color:var(--blue)}
.mobile-menu .sub-menu{display:none;padding-left:10px}
.mobile-menu .sub-menu.open{display:block}
.mobile-menu .sub-menu .mobile-parent-toggle{font-size:13.5px;min-height:46px}
.mobile-menu .sub-menu .sub-menu a{font-size:13px;font-weight:400;color:var(--muted);padding:7px 0;border-bottom:0}
.protexa-search{position:absolute;right:24px;top:calc(100% + 8px);width:min(420px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);box-shadow:0 20px 45px rgba(0,0,0,.14);padding:10px;z-index:210}
.protexa-search form{display:flex}.protexa-search input{flex:1;border:1px solid var(--line);padding:11px}.protexa-search button{background:var(--black);color:#fff;padding:0 16px;font-size:11px;font-weight:700}
.product-placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#e5e7e4,#f5f6f4)}
.material-logo,.cert-logo{width:auto;max-width:130px;max-height:90px;object-fit:contain}
.innovation-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.site-page{padding:100px 0;background:var(--stone);min-height:60vh}.page-eyebrow{display:block;color:var(--blue);font-size:11px;letter-spacing:.12em;font-weight:700;margin-bottom:12px}.page-content h1{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(50px,6vw,82px);line-height:.95;margin-bottom:28px;color:var(--black)}.page-content h1 em{font-style:normal;color:var(--blue)}.entry-content{font-size:15px;line-height:1.8;color:#50575c}.entry-content img{height:auto}.single-exhibition>img{margin-bottom:30px}
.woocommerce .products{padding:0;background:transparent}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.woocommerce ul.products li.product{width:auto!important;margin:0!important}
.footer-col .menu,.footer-col .menu-item{list-style:none;margin:0;padding:0}.footer-col .menu{display:flex;flex-direction:column;gap:11px}.footer-col .menu a{font-size:12.5px;color:#a7adb1}.footer-brand .custom-logo{width:180px;height:auto;background:transparent;padding:0}
@media(max-width:800px){.desktop-nav{display:none}.mobile-toggle{display:block}.protexa-search{right:14px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr}.site-page{padding:70px 0}}

/* Header action icon */
.nav-actions .header-action-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;color:var(--black);text-decoration:none;font-size:21px;line-height:1;transition:color .2s,background .2s}
.nav-actions .header-action-link:hover{color:var(--blue)}
.nav-actions .header-action-link svg{width:19px;height:19px;display:block}

/* Primary menu: keep the requested clean five-item header while the product hierarchy lives in the mega menu. */
.desktop-nav{min-width:0;flex:1;display:flex;justify-content:center}
.desktop-nav > .primary-menu{gap:30px;max-width:900px}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{left:50vw;top:83px}
.product-placeholder{background:linear-gradient(145deg,#ecefed 0%,#dfe3e0 48%,#f7f8f6 100%);position:relative}
.product-placeholder:before{content:'ZYNOVA';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(28px,4vw,54px);font-weight:700;letter-spacing:.06em;color:rgba(28,79,125,.16)}

/* Mobile menu refinement */
@media(max-width:800px){
  .mobile-menu{max-height:calc(100vh - 70px);overflow-y:auto;background:#fff;}
  .mobile-primary-menu > li > a,.mobile-primary-menu > li > .mobile-parent-toggle{padding:17px 2px;font-size:15px;}
  .mobile-menu .mobile-parent-toggle{cursor:pointer;background:transparent;border:0;border-bottom:1px solid var(--line);font-family:inherit;}
  .mobile-menu .mobile-parent-toggle b{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--line);font-size:16px;line-height:1;}
  .mobile-menu .sub-menu{padding-left:12px;background:#fafbfa;}
  .mobile-menu .sub-menu .mobile-parent-toggle{padding:13px 4px;font-size:14px;}
  .mobile-menu .sub-menu .sub-menu{padding-left:16px;background:#fff;}
  .mobile-menu .sub-menu .sub-menu a{display:block;padding:9px 4px;font-size:13px;border-bottom:1px solid #edf0ef;}
}


/* Final menu arrow alignment */
.desktop-nav .primary-menu > li.mega-parent > a:after{
  top:50%; bottom:auto; right:-15px; left:auto; width:7px; height:7px;
  transform:translateY(-50%) rotate(45deg);
}

/* V5 header alignment + live product tabs */
@media(min-width:901px){
  .header{height:82px}
  .nav{grid-template-columns:150px minmax(0,1fr) 150px;gap:16px}
  .logo{width:130px}
  .logo img{width:125px;max-height:54px}
  .desktop-nav{min-width:0;width:100%;justify-content:center}
  .desktop-nav > .primary-menu{width:max-content;max-width:100%;gap:32px;justify-content:center}
  .desktop-nav .primary-menu > li{white-space:nowrap}
  .desktop-nav .primary-menu > li > a{justify-content:center}
  .desktop-nav .primary-menu > li.mega-parent > a{padding-right:14px}
  .desktop-nav .primary-menu > li.mega-parent > a:after{right:0;top:50%;transform:translateY(-50%) rotate(45deg)}
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{top:82px;left:50%;}
  .nav-actions{width:100%;justify-content:flex-end}
}
@media(max-width:900px){
  .header{height:74px}
  .nav{display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:10px}
  .logo{width:auto;display:flex;align-items:center}
  .logo img{width:118px;max-height:50px}
  .desktop-nav{display:none!important}
  .nav-actions{margin-left:auto;display:flex;align-items:center;gap:4px}
  .header-action-link{width:38px!important;height:38px!important}
  .mobile-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:40px;height:40px;border:0;background:transparent;font-size:0;position:relative}
  .mobile-toggle:before,.mobile-toggle:after,.mobile-toggle{ }
  .mobile-toggle:before{content:'☰';font-size:22px;line-height:1;color:var(--black)}
  .mobile-toggle{color:transparent}
  .mobile-menu{top:74px;max-height:calc(100vh - 74px);left:0;right:0;padding:6px 18px 24px;}
}
@media(max-width:560px){
  .top-strip{display:none}
  .nav{padding:0 14px}
  .logo img{width:110px}
  .mobile-menu{padding-inline:16px}
}
.product-row{transition:opacity .2s ease}
.product-row.is-loading{opacity:.45;pointer-events:none}
.product-filters{align-items:center}
.filter-tab{cursor:pointer}

/* V6: viewport-centered mega menu and robust responsive navigation */
@media (min-width:901px){
  .desktop-nav .primary-menu > li.mega-parent{position:static!important;}
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
    position:absolute;
    left:50%!important;
    top:82px!important;
    width:min(1040px,calc(100vw - 48px));
    transform:translate(-50%,6px);
  }
  .desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,
  .desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{
    transform:translate(-50%,0);
  }
}

@media (max-width:900px){
  .mobile-menu .mobile-primary-menu > li.has-children > .mobile-parent-toggle,
  .mobile-menu .mobile-primary-menu .mobile-menu-item.has-children > .mobile-parent-toggle{
    position:relative;
    width:100%;
  }
  .mobile-menu .mobile-parent-toggle b{
    flex:0 0 24px;
    margin-left:auto;
  }
  .mobile-menu .sub-menu{display:none!important;}
  .mobile-menu .sub-menu.open{display:block!important;}
}

/* V7 product cards: always use the clean PROTEXA placeholder image, while title/SKU/category remain real WooCommerce data. */
.product-img .product-placeholder{display:block;width:100%;height:100%;}
.product-row .product[hidden]{display:none!important;}
.product-filter-empty{grid-column:1/-1;padding:30px 0;}

/* REAL WOOCOMMERCE PRODUCT DATA */
.product-row{align-items:start;}
.product-img{height:270px!important;display:block;background:#e8e9e8!important;}
.product-placeholder{display:flex!important;align-items:center;justify-content:center;width:100%;height:100%;font-family:"Barlow Condensed",sans-serif;font-size:52px;font-weight:700;letter-spacing:.12em;color:#c5d0d6;background:linear-gradient(145deg,#eef1ef,#e4e8e6);}
.product-info{display:block!important;visibility:visible!important;opacity:1!important;min-height:145px;}
.product-info h3,.product-info small,.product-info>a,.article-number{display:block!important;visibility:visible!important;opacity:1!important;}
.product-info>a{display:inline-block!important;}
.product-row.is-loading{opacity:.45;pointer-events:none;}

/* V8 polish: footer social brand marks, hero spacing, and centered desktop submenu chevron. */
.footer-socials a{font-size:0;text-transform:none}
.footer-socials a svg{width:16px;height:16px}
@media(min-width:901px){
  .hero-copy{padding-left:42px;padding-right:60px}
  .hero-copy:before{left:12px}
  .desktop-nav .primary-menu > li.mega-parent > a{position:relative;padding-right:18px}
  .desktop-nav .primary-menu > li.mega-parent > a:after{
    content:"";position:absolute!important;left:auto!important;right:2px!important;top:50%!important;bottom:auto!important;
    width:7px!important;height:7px!important;background:transparent!important;
    border:0!important;border-right:1.5px solid var(--blue)!important;border-bottom:1.5px solid var(--blue)!important;
    transform:translateY(-50%) rotate(45deg)!important;
  }
}


/* V10 — WooCommerce product archive + single product pages */
.shop-archive,.single-product-page{background:var(--white);min-height:60vh}
.shop-hero,.product-detail-hero{background:linear-gradient(180deg,#f7f8f6 0%,#fff 100%);border-bottom:1px solid var(--line);text-align:center;padding:72px 0 58px}
.shop-eyebrow,.product-detail-hero small{display:inline-flex;align-items:center;gap:18px;color:var(--blue);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}
.shop-eyebrow:before,.shop-eyebrow:after,.product-detail-hero small:before,.product-detail-hero small:after{content:"";width:42px;height:1px;background:var(--yellow)}
.shop-hero h1,.product-detail-hero h1{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(48px,6vw,76px);line-height:.92;text-transform:uppercase;color:#fff;margin:12px 0 14px;letter-spacing:-.01em}
.shop-breadcrumb,.product-breadcrumb{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#fff;}
.shop-breadcrumb a,.product-breadcrumb a{color:var(--blue)}
.shop-catalog{padding:70px 0 96px;background:#fff}
.shop-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px;align-items:start}
.shop-sidebar{position:sticky;top:105px}
.shop-sidebar-title{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:13px;font-weight:700;letter-spacing:.18em;color:var(--black);padding-bottom:15px;border-bottom:1px solid var(--line)}
.shop-category-list{border-bottom:1px solid var(--line)}
.shop-category-group{border-bottom:1px solid var(--line)}
.shop-category-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 2px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#394047;transition:.2s ease}
.shop-category-link span{min-width:0}
.shop-category-link small,.shop-child-categories small{font-size:9px;color:var(--faint);font-weight:600}
.shop-category-link:hover,.shop-category-link.is-current{color:var(--blue);font-weight:700}
.shop-child-categories{padding:0 0 10px 12px}
.shop-child-categories a{display:flex;justify-content:space-between;gap:8px;padding:7px 0;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
.shop-child-categories a:hover{color:var(--blue)}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}
.shop-result-count{font-size:11px;color:var(--muted);letter-spacing:.03em}
.shop-result-count strong{color:var(--black);font-weight:600}
.shop-sorting .woocommerce-ordering{float:none;margin:0}
.shop-sorting .orderby{min-width:205px;height:38px;border:1px solid var(--line);background:#f8f9f8;color:var(--black);padding:0 13px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;outline:0}
.archive-product-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.archive-product-row .product{min-width:0;background:#fff;border:1px solid var(--line)}
.archive-product-row .product-img{height:290px!important;border-bottom:1px solid var(--line)}
.archive-product-row .product-info{padding:18px 18px 20px;min-height:158px}
.archive-product-row .product-info h3{font-size:22px}
.archive-product-row .product-info small{font-size:10px;line-height:1.5}
.archive-product-row .product-info>a{font-size:9px}
.archive-product-row .article-number{font-size:10px;color:#6f777d;margin-top:7px;letter-spacing:.03em}
.shop-empty{padding:60px 20px;text-align:center;border:1px solid var(--line);background:#fafbfa}
.shop-empty strong{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:28px;text-transform:uppercase;color:var(--black)}
.shop-empty p{max-width:550px;margin:12px auto 0;color:var(--muted);font-size:13px}
.protexa-pagination{margin-top:40px;border-top:1px solid var(--line);padding-top:24px}
.protexa-pagination ul{display:flex;justify-content:center;align-items:center;gap:7px;list-style:none;margin:0;padding:0}
.protexa-pagination li{margin:0!important}
.protexa-pagination a,.protexa-pagination span{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--line);font-size:10px;font-weight:700;color:var(--black);text-transform:uppercase}
.protexa-pagination a:hover,.protexa-pagination .current{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.protexa-pagination .dots{border:0;background:transparent}

.product-detail{padding:72px 0 100px;background:#fff}
.product-detail-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:64px;align-items:start}
.product-gallery{min-width:0}
.product-gallery-layout{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;align-items:start}
.product-main-image{height:620px;border:1px solid var(--line);background:#f0f2f0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.product-main-img{width:100%;height:100%;object-fit:contain;background:#fff}
.product-detail-placeholder{display:flex!important;width:100%;height:100%;font-size:clamp(42px,6vw,76px)!important}
.product-thumbs{display:flex;flex-direction:column;gap:12px;max-height:620px;overflow-y:auto;overflow-x:hidden}
.product-thumb{width:86px;height:86px;flex:0 0 86px;border:1px solid var(--line);background:#fff;padding:5px;opacity:.72;transition:.2s ease}
.product-thumb:hover,.product-thumb.is-active{border-color:var(--blue);opacity:1}
.product-thumb img{width:100%;height:100%;object-fit:contain}
.product-plugin-actions form.cart .single_add_to_cart_button,.product-plugin-actions form.cart .quantity{display:none!important}
.product-plugin-actions form.cart{margin:0!important}
.product-plugin-actions:empty{display:none}
.product-short-description{padding:22px 0 10px;color:var(--muted);font-size:13px;line-height:1.75}
.product-short-description p{margin:0 0 8px}
.product-summary{padding:12px 0 0}
.product-summary-label{display:inline-flex;align-items:center;gap:10px;color:var(--blue);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.product-summary-label:before{content:"";width:20px;height:1px;background:var(--yellow)}
.product-summary h2{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(42px,5vw,66px);line-height:.92;text-transform:uppercase;color:var(--black);margin:16px 0 24px}
.product-rule{height:1px;background:var(--line);margin-bottom:20px}
.product-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}
.product-meta-grid div{min-width:0}
.product-meta-grid span{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--faint);margin-bottom:5px}
.product-meta-grid strong{display:block;color:var(--black);font-size:11px;line-height:1.5;font-weight:600}
.product-plugin-actions{padding:4px 0 22px}
.product-plugin-actions form.cart{margin:0}
.product-plugin-actions form.cart:empty{display:none}
.product-share{border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;gap:8px}
.product-share>span{font-size:9px;color:var(--faint);letter-spacing:.14em;margin-right:5px}
.product-share a{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);font-size:10px;font-weight:700;color:var(--muted)}
.product-share a:hover{border-color:var(--yellow);background:var(--yellow);color:var(--black)}
.product-description-area{margin-top:80px;border-top:1px solid var(--line)}
.product-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line)}
.product-tabs span{position:relative;padding:18px 0;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--faint)}
.product-tabs span.is-active{color:var(--black)}
.product-tabs span.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--yellow)}
.product-description-content{padding:28px 0 0;max-width:900px}
.product-description-content h3{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:22px;text-transform:uppercase;margin-bottom:12px;color:var(--black)}
.product-description-content .entry-content{font-size:13px;line-height:1.8;color:var(--muted)}
.product-description-content .entry-content p{margin-bottom:14px}
.related-products-section{margin-top:88px}
.related-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.related-heading small{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--blue)}
.related-heading small:before{content:"";width:20px;height:1px;background:var(--yellow)}
.related-heading h2{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(38px,4vw,54px);line-height:.95;text-transform:uppercase;color:var(--black);margin-top:8px}
.related-arrows{display:flex;gap:7px}
.related-arrow{width:42px;height:42px;border:1px solid var(--line);font-size:18px;color:var(--black)}
.related-arrow:hover{background:var(--yellow);border-color:var(--yellow)}
.related-carousel{overflow:hidden}
.related-track{display:flex;transition:transform .35s ease;will-change:transform}
.related-slide{flex:0 0 25%;padding-right:14px;min-width:0}
.related-slide .product{border:1px solid var(--line);background:#fff}
.related-slide .product-img{height:250px!important}
.related-slide .product-info{min-height:145px}

@media(max-width:1000px){
  .shop-layout{grid-template-columns:210px minmax(0,1fr);gap:28px}
  .archive-product-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-detail-grid{grid-template-columns:1fr;gap:40px}
  .product-gallery-layout{grid-template-columns:1fr}
  .product-thumbs{order:-1;flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}
  .product-thumb{width:78px;height:78px;flex-basis:78px}
  .product-main-image{height:560px}
  .related-slide{flex-basis:50%}
}
@media(max-width:700px){
  .shop-hero,.product-detail-hero{padding:58px 0 46px}
  .shop-eyebrow,.product-detail-hero small{letter-spacing:.18em}
  .shop-eyebrow:before,.shop-eyebrow:after,.product-detail-hero small:before,.product-detail-hero small:after{width:24px}
  .shop-catalog{padding:48px 0 70px}
  .shop-layout{grid-template-columns:1fr;gap:35px}
  .shop-sidebar{position:static}
  .shop-category-list{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
  .shop-category-group{min-width:0}
  .shop-toolbar{align-items:flex-start;flex-direction:column;gap:14px}
  .shop-sorting{width:100%}
  .shop-sorting .orderby{width:100%}
  .archive-product-row{grid-template-columns:1fr 1fr;gap:12px}
  .archive-product-row .product-img{height:230px!important}
  .archive-product-row .product-info{padding:14px 12px 16px;min-height:145px}
  .archive-product-row .product-info h3{font-size:19px}
  .product-detail{padding:48px 0 72px}
  .product-main-image{height:440px}
  .product-meta-grid{grid-template-columns:1fr}
  .product-description-area{margin-top:58px}
  .related-products-section{margin-top:65px}
  .related-slide{flex-basis:50%;padding-right:10px}
}
@media(max-width:480px){
  .shop-category-list{grid-template-columns:1fr}
  .archive-product-row{grid-template-columns:1fr}
  .archive-product-row .product-img{height:280px!important}
  .product-main-image{height:360px}
  .product-thumbs{gap:7px}
  .product-thumb{width:76px;height:76px;flex-basis:76px}
  .related-slide{flex-basis:100%;padding-right:0}
  .related-arrows{display:none}
}

/* V11 product archive/category accordion + product detail tabs/variation design */
.shop-category-parent-row{display:flex;align-items:center;border-bottom:1px solid var(--line)}
.shop-category-parent-row .shop-category-link{flex:1;border:0}
.shop-category-toggle{width:34px;height:34px;flex:0 0 34px;border:1px solid var(--line);background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:17px;line-height:1;cursor:pointer;margin-right:0;transition:.2s ease}
.shop-category-toggle:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.shop-child-categories{display:none;padding:6px 0 10px 12px}
.shop-child-categories.is-open{display:block}
.shop-category-group.is-current-group .shop-category-parent-row .shop-category-link{color:var(--blue);font-weight:700}

.product-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line)}
.product-tab{position:relative;padding:18px 0;border:0;background:transparent;font:inherit;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--faint);cursor:pointer}
.product-tab.is-active{color:var(--black)}
.product-tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--yellow)}
.product-tab-panel{padding:28px 0 0;max-width:900px}
.product-tab-panel[hidden]{display:none!important}
.product-tab-panel h3{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:22px;text-transform:uppercase;margin-bottom:12px;color:var(--black)}
.product-tab-panel .entry-content{font-size:13px;line-height:1.8;color:var(--muted)}
.product-reviews-panel .woocommerce-Reviews{margin:0}
.product-reviews-panel .comment-reply-title{font-family:var(--protexa-heading-font,"Barlow Condensed");text-transform:uppercase;color:var(--black)}
.product-reviews-panel .commentlist{margin:0 0 28px;padding:0;list-style:none}
.product-reviews-panel .commentlist li{padding:18px 0;border-bottom:1px solid var(--line)}
.product-reviews-panel .comment-text p{margin:8px 0;color:var(--muted);font-size:13px;line-height:1.7}
.product-reviews-panel .comment-form label{font-size:11px;color:var(--black);font-weight:600}
.product-reviews-panel .comment-form input,.product-reviews-panel .comment-form textarea{width:100%;border:1px solid var(--line);padding:11px;background:#fff}
.reviews-disabled{color:var(--muted);font-size:13px}

/* Variable products: keep WooCommerce's native variation form functional, but offer an optional button-style presentation. */
.variation-design-buttons .variations_form .variations select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.protexa-variation-choice-group{margin:0 0 18px}
.protexa-variation-choice-label{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--black);margin-bottom:8px}
.protexa-variation-choices{display:flex;flex-wrap:wrap;gap:8px}
.protexa-variation-choice{min-width:48px;min-height:38px;padding:8px 14px;border:1px solid var(--line);background:#fff;color:var(--black);font-size:11px;cursor:pointer;transition:.2s ease}
.protexa-variation-choice:hover,.protexa-variation-choice.is-selected{border-color:var(--blue);background:var(--blue);color:#fff}
.protexa-variation-choice.is-disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.variation-design-buttons .variations_form .reset_variations{font-size:10px;color:var(--blue);margin-top:4px}

@media(max-width:700px){
  .shop-category-toggle{width:32px;height:32px;flex-basis:32px}
  .product-tabs{gap:20px}
  .product-tab{font-size:9px}
  .protexa-variation-choice{min-width:44px;padding:8px 11px}
}


/* V13 — archive/category spacing, robust product media, and full-width PROTEXA enquiry page styling */
.shop-category-parent-row{gap:12px}
.shop-category-parent-row .shop-category-link{min-width:0}
.shop-category-toggle{margin-left:2px;margin-right:2px}

/* Product media: keep the thumbnail rail fixed and give the main viewer the full remaining width. */
.product-gallery-layout{display:flex!important;align-items:flex-start;gap:16px;width:100%;min-width:0}
.product-thumbs{width:86px;flex:0 0 86px;min-width:86px}
.product-main-image{flex:1 1 auto!important;width:auto!important;min-width:0!important;height:620px!important;position:relative}
.product-main-img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;object-position:center!important}
.product-detail-placeholder{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:100%!important}
.product-thumb{overflow:hidden}
.product-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}

/* The PiWeb enquiry-cart plugin supplies the functionality; PROTEXA only skins it. */
body:has(#pi-enquiry-container) .site-page{background:var(--white);padding:78px 0 100px}
body:has(#pi-enquiry-container) .page-content{width:100%;max-width:var(--max);margin-inline:auto}
body:has(#pi-enquiry-container) .page-content h1{font-size:clamp(52px,6vw,82px);margin-bottom:30px}
body:has(#pi-enquiry-container) .page-eyebrow{color:var(--blue)}
#pi-enquiry-container{width:100%;max-width:none;margin:0;padding:0;color:var(--ink);font-family:var(--protexa-body-font,"Inter",Arial,sans-serif)}
#pi-enquiry-container .enquiry-cart-content-table-1{width:100%!important;margin:0 0 38px!important;border-collapse:collapse!important;border-spacing:0!important;font-family:var(--protexa-body-font,"Inter",Arial,sans-serif)!important}
#pi-enquiry-container .enquiry-cart-content-table-1 thead{background:var(--blue)!important;border-radius:0!important}
#pi-enquiry-container .enquiry-cart-content-table-1 th{background:var(--blue)!important;color:#fff!important;padding:17px 14px!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:700!important}
#pi-enquiry-container .enquiry-cart-content-table-1 tbody tr{border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
#pi-enquiry-container .enquiry-cart-content-table-1 tbody tr:hover{border-color:var(--line)!important;box-shadow:none!important;transform:none!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td{padding:16px 14px!important;border-bottom:1px solid var(--line)!important;color:var(--ink)!important;font-size:12px!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td.product-name{text-align:left!important;max-width:none!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td.product-name a{color:var(--blue)!important;font-weight:700!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td.product-name a:hover{color:var(--blue-deep)!important;text-decoration:none!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td.product-price{color:var(--blue)!important}
#pi-enquiry-container .enquiry-cart-content-table-1 .pi-quantity{max-width:82px!important;padding:9px!important;border:1px solid var(--line)!important;border-radius:0!important;color:var(--black)!important;background:#fff!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td textarea{border:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;color:var(--ink)!important}
#pi-enquiry-container .enquiry-cart-content-table-1 td textarea:focus{border-color:var(--blue)!important;box-shadow:0 0 0 2px rgba(28,79,125,.08)!important}
#pi-enquiry-container .enquiry-cart-content-table-1 .pi-eqw-product-thumb{max-width:74px!important;padding:0!important;border-radius:0!important;background:#f3f4f2!important}
#pi-enquiry-container .enquiry-cart-content-table-1 a.remove.pi-remove-product{color:#7b8389!important}
#pi-enquiry-container .enquiry-cart-content-table-1 a.remove.pi-remove-product:hover{color:var(--blue)!important}
#pi-enquiry-container .pi-form-control{border:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;color:var(--ink)!important;padding:12px!important}
#pi-enquiry-container .pi-form-control:focus{border-color:var(--blue)!important;outline:0!important;box-shadow:0 0 0 2px rgba(28,79,125,.08)!important}
#pi-enquiry-container .pi-btn{background:var(--yellow)!important;color:var(--black)!important;border:0!important;border-radius:0!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.06em!important;padding:13px 22px!important}
#pi-enquiry-container .pi-btn:hover{background:var(--yellow-deep)!important}
#pi-enquiry-container #pi-eqw-enquiry-form{margin-top:34px}
#pi-enquiry-container .pi-row-flex{gap:18px}
#pi-enquiry-container .pi-col-4{flex:1;width:auto}
#pi-enquiry-container label{color:var(--black)}

@media(max-width:1000px){
  .product-gallery-layout{display:flex!important;flex-direction:column!important}
  .product-thumbs{width:100%;min-width:0;flex:0 0 auto;order:-1;flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}
  .product-thumb{width:78px;height:78px;flex:0 0 78px}
  .product-main-image{width:100%!important;height:560px!important;flex:0 0 auto!important}
  body:has(#pi-enquiry-container) .site-page{padding:62px 0 80px}
}
@media(max-width:768px){
  #pi-enquiry-container .enquiry-cart-content-table-1{margin-bottom:28px!important}
  #pi-enquiry-container .pi-row-flex{display:block}
  #pi-enquiry-container .pi-col-4{width:100%;margin-bottom:14px}
}
@media(max-width:560px){
  .product-main-image{height:400px!important}
}


/* V14 — real WooCommerce card images, second-image hover, enquiry archive-style header */
.product-img{position:relative!important;overflow:hidden!important}
.product-img .product-card-image{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#f4f5f3;transition:opacity .35s ease,transform .45s ease!important}
.product-img .product-card-image-primary{opacity:1;z-index:1}
.product-img .product-card-image-secondary{opacity:0;z-index:2}
.product:hover .product-card-image-primary{transform:scale(1.025)!important}
.product:hover .product-card-image-secondary{opacity:1;transform:scale(1.025)!important}
@media(hover:none){.product-img .product-card-image-secondary{display:none!important}}
.enquiry-cart-page.site-page{padding:0;background:#fff}
.enquiry-cart-content{padding:70px 0 100px;background:#fff}
.enquiry-cart-content>.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.enquiry-cart-page #pi-enquiry-container{max-width:none!important;width:100%!important}
@media(max-width:700px){.enquiry-cart-content{padding:48px 0 70px}.enquiry-cart-content>.wrap{width:min(var(--max),calc(100% - 30px))}}


/* V15 — clean white placeholders, tighter enquiry page, and product image lightbox */
.product-placeholder,
.product-img .product-placeholder,
.product-detail-placeholder{background:#fff!important;color:#c5d0d6!important}
.product-img .product-card-image{background:#fff!important}

/* Keep the enquiry page compact like the archive/product templates. */
.enquiry-cart-page .enquiry-cart-hero{padding:52px 0 42px!important}
.enquiry-cart-content{padding:34px 0 48px!important}
.enquiry-cart-content .entry-content{margin:0!important}
.enquiry-cart-page .site-page{min-height:0!important}
@media(max-width:700px){
  .enquiry-cart-page .enquiry-cart-hero{padding:42px 0 34px!important}
  .enquiry-cart-content{padding:24px 0 38px!important}
}

/* Product image viewer button and full-screen lightbox. */
.product-main-image{position:relative!important;background:#fff!important}
.product-media-zoom{position:absolute;right:16px;top:16px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.94);border:1px solid var(--line);color:var(--blue);z-index:5;box-shadow:0 5px 18px rgba(10,11,13,.08);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.product-media-zoom:hover{background:var(--yellow);color:var(--black);border-color:var(--yellow);transform:translateY(-1px)}
.product-media-zoom svg{width:20px;height:20px;display:block}
.product-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(10,11,13,.94);display:flex;align-items:center;justify-content:center;padding:40px 90px}
.product-lightbox[hidden]{display:none!important}
.product-lightbox-stage{width:min(1100px,88vw);height:min(82vh,820px);display:flex;align-items:center;justify-content:center}
.product-lightbox-stage img{display:block;width:100%;height:100%;object-fit:contain;cursor:zoom-in}
.product-lightbox-close,.product-lightbox-nav{position:absolute;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);transition:.2s ease}
.product-lightbox-close{top:24px;right:24px;width:44px;height:44px;font-size:30px;line-height:1}
.product-lightbox-nav{top:50%;transform:translateY(-50%);width:48px;height:64px;font-size:42px;line-height:1}
.product-lightbox-prev{left:24px}.product-lightbox-next{right:24px}
.product-lightbox-close:hover,.product-lightbox-nav:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
body.protexa-lightbox-open{overflow:hidden}
@media(max-width:700px){
  .product-media-zoom{right:10px;top:10px;width:40px;height:40px}
  .product-lightbox{padding:60px 52px}
  .product-lightbox-stage{width:100%;height:72vh}
  .product-lightbox-nav{width:38px;height:50px;font-size:34px}
  .product-lightbox-prev{left:8px}.product-lightbox-next{right:8px}
  .product-lightbox-close{top:12px;right:12px;width:40px;height:40px}
}

/* V16 — remove outer page padding on enquiry cart */
body:has(#pi-enquiry-container) .site-page{padding:0px!important}


/* V17 — mobile shop filter drawer, mobile enquiry layout, contact page and blog templates */
.shop-mobile-filter-trigger,.shop-filter-close,.shop-filter-overlay{display:none}
.protexa-page-hero{background-color:#f5f6f4;background-size:cover;background-position:center;border-bottom:1px solid var(--line);text-align:center;padding:72px 0 58px}
.protexa-page-hero small{display:inline-flex;align-items:center;gap:18px;color:var(--blue);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}
.protexa-page-hero small:before,.protexa-page-hero small:after{content:"";width:42px;height:1px;background:var(--yellow)}
.protexa-page-hero h1{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(48px,6vw,76px);line-height:.92;text-transform:uppercase;color:#fff;margin:12px 0 14px}
.protexa-contact-page,.protexa-blog-page,.protexa-blog-single{background:#fff}
.contact-info-section{padding:64px 0 30px}.contact-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-info-grid article{border:1px solid var(--line);background:#f8f9f7;text-align:center;padding:42px 24px;min-height:260px}.contact-info-grid article:nth-child(2){border-color:var(--yellow)}.contact-icon{width:54px;height:54px;border:1px solid var(--blue);border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;color:var(--blue);font-size:22px}.contact-info-grid small,.contact-form-copy>small{display:block;color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.2em}.contact-info-grid h3{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:25px;font-weight:500;line-height:1.1;text-transform:uppercase;margin:12px 0;color:var(--black);word-break:break-word}.contact-info-grid p{color:var(--muted);font-size:12px;line-height:1.7;margin:0}.contact-form-section{padding:60px 0 100px}.contact-form-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.contact-form-copy{padding-top:40px}.contact-form-copy>small:before{content:"";display:inline-block;width:20px;height:1px;background:var(--yellow);vertical-align:middle;margin-right:10px}.contact-form-copy h2{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(46px,5vw,68px);line-height:.9;text-transform:uppercase;margin:18px 0;color:var(--black)}.contact-form-copy p{max-width:500px;color:var(--muted);font-size:13px;line-height:1.75}.contact-form-copy ul{margin:28px 0 0;padding-left:18px;color:var(--muted);font-size:12px;line-height:2}.contact-form-copy li::marker{color:var(--yellow)}.protexa-contact-form{display:grid;gap:18px}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.protexa-contact-form input,.protexa-contact-form select,.protexa-contact-form textarea{width:100%;border:1px solid var(--line);background:#fff;color:var(--black);padding:15px 14px;font:inherit;font-size:12px;outline:0}.protexa-contact-form input:focus,.protexa-contact-form select:focus,.protexa-contact-form textarea:focus{border-color:var(--blue)}.protexa-contact-form .btn{justify-self:start;border:0;cursor:pointer}.protexa-blog-archive{padding:72px 0 100px}.archive-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.archive-blog-grid .blog-info p{font-size:11px;color:var(--muted);line-height:1.6;margin:12px 0 0}.blog-single-content{padding:72px 0 40px;max-width:1000px}.blog-single-meta{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:22px}.blog-single-image{width:100%;margin-bottom:38px;border:1px solid var(--line);background:#fff}.blog-single-image img{display:block;width:100%;height:auto}.blog-single-content .entry-content{font-size:15px;line-height:1.9;color:#50575c}.blog-single-content .entry-content h2,.blog-single-content .entry-content h3{font-family:var(--protexa-heading-font);color:var(--black);text-transform:uppercase}.related-blog-section{padding:55px 0 100px;background:#f1f3f1}

@media(max-width:700px){
  .shop-catalog>.wrap:first-child{padding:0 14px}
  .shop-mobile-filter-trigger{display:flex;width:100%;height:46px;align-items:center;justify-content:space-between;border:1px solid var(--line);background:#fff;color:var(--black);padding:0 15px;font-size:10px;font-weight:700;letter-spacing:.12em;cursor:pointer}
  .shop-filter-overlay{display:block;position:fixed;inset:0;background:rgba(10,11,13,.42);z-index:9998;opacity:0;transition:opacity .25s ease}.shop-filter-overlay[hidden]{display:none}.shop-filter-overlay.is-visible{opacity:1}
  .shop-sidebar{position:fixed!important;top:0;right:0;bottom:0;width:min(88vw,360px);height:100dvh;background:#fff;z-index:9999;overflow-y:auto;padding:70px 20px 30px;box-shadow:-12px 0 35px rgba(10,11,13,.12);transform:translateX(105%);transition:transform .28s ease}
  .shop-sidebar.is-mobile-open{transform:translateX(0)}
  .shop-filter-close{display:flex;position:absolute;top:18px;right:18px;width:34px;height:34px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;font-size:24px;color:var(--black);cursor:pointer}
  .shop-category-list{display:block}.shop-category-group{min-width:0}.shop-sidebar-title{padding-right:48px}.shop-layout{grid-template-columns:1fr!important;gap:22px}.shop-layout>.shop-sidebar{position:fixed}.shop-results{min-width:0}
  .shop-toolbar{margin-top:0}.shop-result-count{font-size:10px}
  .contact-info-section{padding:40px 0 10px}.contact-info-grid{grid-template-columns:1fr;gap:12px}.contact-info-grid article{min-height:0;padding:30px 20px}.contact-form-section{padding:40px 0 65px}.contact-form-grid{grid-template-columns:1fr;gap:28px}.contact-form-copy{padding-top:0}.contact-form-row{grid-template-columns:1fr}.protexa-contact-form{gap:12px}.protexa-page-hero{padding:54px 0 42px}.protexa-page-hero small{letter-spacing:.17em}.protexa-page-hero small:before,.protexa-page-hero small:after{width:24px}.protexa-blog-archive{padding:45px 0 65px}.archive-blog-grid{grid-template-columns:1fr}.blog-single-content{padding:45px 0 30px}.related-blog-section{padding:40px 0 65px}
  body.shop-filter-open{overflow:hidden}
  #pi-enquiry-container{width:100%!important}.enquiry-cart-content>.wrap{width:calc(100% - 24px)!important}.enquiry-cart-content{padding:18px 0 34px!important}.enquiry-cart-page .enquiry-cart-hero{padding:38px 0 30px!important}
  #pi-enquiry-container .enquiry-cart-content-table-1{display:block!important;width:100%!important;border:0!important;margin:0 0 22px!important}.enquiry-cart-content-table-1 thead{display:none!important}.enquiry-cart-content-table-1 tbody tr{padding:14px!important;background:#fff!important;border:1px solid var(--line)!important}.enquiry-cart-content-table-1 td{display:block!important;width:100%!important;border-bottom:1px solid var(--line)!important;padding:12px 2px!important;text-align:left!important}.enquiry-cart-content-table-1 td:last-child{border-bottom:0!important}.enquiry-cart-content-table-1 td.product-name{padding-top:0!important}.enquiry-cart-content-table-1 td textarea{width:100%!important;min-height:110px!important}.enquiry-cart-content-table-1 .pi-eqw-product-thumb{max-width:72px!important}.enquiry-cart-content-table-1 .pi-quantity{width:78px!important}.contact-page-hero{background-position:center}
}

/* V18 — mobile archive controls and left-side filter drawer */
@media(max-width:700px){
  .shop-toolbar{display:flex!important;flex-direction:column!important;gap:10px!important;margin:0 0 22px!important}
  .shop-result-count{order:1!important;width:100%!important;font-size:11px!important;color:var(--muted)!important;line-height:1.4!important}
  .shop-toolbar-controls{order:2!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important;width:100%!important}
  .shop-mobile-filter-trigger{display:flex!important;width:100%!important;height:46px!important;align-items:center!important;justify-content:space-between!important;border:1px solid var(--line)!important;background:#fff!important;color:var(--black)!important;padding:0 15px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.12em!important;cursor:pointer!important}
  .shop-sorting{width:100%!important}
  .shop-sorting form{width:100%!important;margin:0!important}
  .shop-sorting select{width:100%!important;height:46px!important;border:1px solid var(--line)!important;background:#fff!important;padding:0 34px 0 15px!important;font-size:10px!important;letter-spacing:.1em!important}
  .shop-sidebar{left:0!important;right:auto!important;transform:translateX(-105%)!important;box-shadow:12px 0 35px rgba(10,11,13,.12)!important}
  .shop-sidebar.is-mobile-open{transform:translateX(0)!important}
  .shop-filter-close{left:auto!important;right:18px!important}
}



/* V19 — mobile product gallery order, global title-image treatment, blog consistency and enquiry compatibility */
.product-main-image{background:#fff!important}
.product-main-img{background:#fff!important}
.product-card-image-primary,.product-card-image-secondary{background:#fff!important}

/* A page-title image is optional. When supplied, the title content moves to the right side. */
.protexa-page-hero.has-custom-title-bg,
.shop-hero.has-custom-title-bg,
.product-detail-hero.has-custom-title-bg{
  background-size:cover!important;
  background-position:center!important;
  text-align:right!important;
}
.protexa-page-hero.has-custom-title-bg .wrap,
.shop-hero.has-custom-title-bg .wrap,
.product-detail-hero.has-custom-title-bg .wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
}
.protexa-page-hero.has-custom-title-bg .shop-breadcrumb,
.shop-hero.has-custom-title-bg .shop-breadcrumb,
.product-detail-hero.has-custom-title-bg .product-breadcrumb{
  justify-content:flex-end!important;
}
.generic-page-content{padding:70px 0 100px;background:#fff}
.generic-page-content .entry-content{max-width:none!important}

/* Keep blog cards identical in structure and left/right padding across home, archive and related posts. */
.archive-blog-grid article,.related-blog-section .blog-grid article{display:flex;flex-direction:column;min-height:358px}
.archive-blog-grid .blog-image,.related-blog-section .blog-image{height:300px!important}
.archive-blog-grid .blog-info,.related-blog-section .blog-info{padding:20px 18px 17px!important;display:flex!important;flex-direction:column!important;flex:1!important}
.archive-blog-grid .blog-info h3,.related-blog-section .blog-info h3{padding:0!important;margin:0!important;max-width:100%!important}
.archive-blog-grid .blog-info a,.related-blog-section .blog-info a{padding-left:0!important;padding-right:0!important}
.blog-single-content{max-width:none!important}
.blog-single-content .entry-content{max-width:none!important}

/* The enquiry plugin owns the cart state; do not hide its WooCommerce cart/quantity controls from the theme.
   Its own Advanced Options can hide Add to Cart while preserving enquiry functionality. */
.product-plugin-actions form.cart .single_add_to_cart_button,
.product-plugin-actions form.cart .quantity{display:initial!important}
.product-plugin-actions form.cart .single_add_to_cart_button{display:none!important}

@media(max-width:700px){
  /* Product detail: thumbnails below the main image on mobile. */
  .product-gallery-layout{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
  .product-main-image{order:1!important;width:100%!important;height:440px!important;flex:0 0 auto!important}
  .product-thumbs{order:2!important;width:100%!important;min-width:0!important;flex:0 0 auto!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important;display:flex!important;flex-direction:row!important;gap:8px!important;padding:0 0 3px!important}
  .product-thumb{width:76px!important;height:76px!important;flex:0 0 76px!important}
  .protexa-page-hero.has-custom-title-bg,
  .shop-hero.has-custom-title-bg,
  .product-detail-hero.has-custom-title-bg{text-align:right!important}
  .protexa-page-hero.has-custom-title-bg .wrap,
  .shop-hero.has-custom-title-bg .wrap,
  .product-detail-hero.has-custom-title-bg .wrap{align-items:flex-end!important}
  .generic-page-content{padding:42px 0 65px}
}
@media(max-width:480px){
  .product-main-image{height:360px!important}
  .product-thumb{width:72px!important;height:72px!important;flex-basis:72px!important}
}


/* Keep the front-end header flush to the top when viewing the site while logged in. */
@media(min-width:783px){
  html.admin-bar{margin-top:0!important}
  body.admin-bar{margin-top:0!important}
}

/* Blog cards use the same fixed media/content rhythm as the homepage cards. */
.archive-blog-grid article,.related-blog-section .blog-grid article{min-height:358px!important}
.archive-blog-grid .blog-info>small,.related-blog-section .blog-info>small{margin:0 0 11px!important}
.archive-blog-grid .blog-info p{margin:12px 0 0!important}
.archive-blog-grid .blog-info a,.related-blog-section .blog-info a{margin-top:auto!important;padding-top:18px!important}


/* V20 — blog spacing/width consistency and enquiry-cart controls */

.blog .centered-btn{margin-bottom:48px!important;}
.protexa-blog-archive>.wrap,.related-blog-section>.wrap{width:min(calc(100% - 48px),var(--max))!important;margin-inline:auto!important;}
@media(max-width:700px){.protexa-blog-archive>.wrap,.related-blog-section>.wrap{width:calc(100% - 30px)!important;}}


/* V21 — blog/news page title, archive alignment, pagination and homepage blog bottom spacing */
.protexa-blog-page .protexa-page-hero{padding-left:0!important;padding-right:0!important;}
.protexa-blog-archive{padding-left:0!important;padding-right:0!important;}
.protexa-blog-archive>.wrap{width:min(calc(100% - 48px),var(--max))!important;margin-inline:auto!important;}
.protexa-blog-archive .protexa-pagination{display:block!important;}
.protexa-blog-archive .protexa-pagination ul{margin:0!important;}
@media(max-width:700px){
  .protexa-blog-archive>.wrap{width:calc(100% - 30px)!important;}
}


/* V22 — contact map and posts-page title treatment */
.contact-map-section{padding:0 0 100px;background:#fff}
.contact-map-wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.contact-map-heading{margin-bottom:22px}
.contact-map-heading small{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.contact-map-heading small:before{content:"";width:16px;height:1px;background:var(--yellow-deep)}
.contact-map-heading h2{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(40px,4.4vw,58px);line-height:.92;text-transform:uppercase;color:var(--black);margin-top:12px}
.contact-map-frame{width:100%;height:420px;border:1px solid var(--line);background:var(--stone);overflow:hidden}
.contact-map-frame iframe{display:block;width:100%;height:100%;border:0}
.protexa-posts-page .protexa-page-hero{padding-left:0!important;padding-right:0!important}
.protexa-posts-page .site-page-posts{background:#fff}
.protexa-posts-page .protexa-blog-archive{padding-left:0!important;padding-right:0!important}
@media(max-width:700px){
  .contact-map-section{padding:0 0 65px}
  .contact-map-wrap{width:calc(100% - 30px)}
  .contact-map-frame{height:320px}
}


/* V24 — News archive cards: match the requested clean blog-post card style only.
   Homepage blog cards are intentionally untouched. */
.protexa-blog-page .archive-blog-grid article{
  display:flex!important;
  flex-direction:column!important;
  min-height:358px!important;
  background:#fff!important;
  border:1px solid #d8dcda!important;
  overflow:hidden!important;
}
.protexa-blog-page .archive-blog-grid .blog-image{
  height:220px!important;
  flex:0 0 220px!important;
  position:relative!important;
  overflow:hidden!important;
  background:#e6e8e5!important;
}
.protexa-blog-page .archive-blog-grid .blog-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.protexa-blog-page .archive-blog-grid .blog-info{
  padding:20px 18px 17px!important;
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
}
.protexa-blog-page .archive-blog-grid .blog-info>small{
  margin:0 0 11px!important;
  font-size:8px!important;
  font-weight:700!important;
  letter-spacing:.13em!important;
  color:var(--blue)!important;
}
.protexa-blog-page .archive-blog-grid .blog-info h3{
  padding:0!important;
  margin:0!important;
  max-width:100%!important;
  font-family:"Barlow Condensed",Arial,sans-serif!important;
  font-size:22px!important;
  line-height:1.02!important;
  text-transform:uppercase!important;
}
.protexa-blog-page .archive-blog-grid .blog-info p{display:none!important}
.protexa-blog-page .archive-blog-grid .blog-info a{
  margin-top:auto!important;
  padding:18px 0 0!important;
  font-size:8.5px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  color:var(--black)!important;
}
@media(max-width:700px){
  .protexa-blog-page .archive-blog-grid article{min-height:0!important}
  .protexa-blog-page .archive-blog-grid .blog-image{height:220px!important;flex-basis:220px!important}
}

/* V25 — remove decorative READ/PROTEXA placeholder marks from all blog cards. */
.blog-grid .blog-image{background:#e6e8e5!important;}
.blog-grid .blog-image>span{display:none!important;}

/* V26 — Exhibitions archive: same page-title treatment as News, all exhibitions on one page,
   and the exact homepage exhibition card treatment without links or pagination. */
.protexa-exhibitions-page{background:#fff}
.protexa-exhibitions-page .protexa-page-hero{padding-left:0!important;padding-right:0!important}
.protexa-exhibitions-archive{padding:88px 0 100px;background:var(--stone)}
.protexa-exhibitions-archive>.wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.protexa-exhibitions-archive .expo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.protexa-exhibitions-archive .expo-grid article{background:#fff;overflow:hidden;border:0}
.protexa-exhibitions-archive .expo-grid article>a{display:block}
.protexa-exhibitions-archive .expo-grid img{display:block;width:100%;height:250px;object-fit:cover;filter:grayscale(.15)}
.protexa-exhibitions-archive .expo-grid h3{font-family:"Barlow Condensed";font-weight:700;font-size:21px;line-height:1.15;margin:16px 18px 5px;color:var(--black);text-transform:uppercase}
.protexa-exhibitions-archive .expo-grid small{display:block;font-size:11px;color:var(--muted);margin:0 18px 18px}
@media(max-width:900px){
  .protexa-exhibitions-archive .expo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .protexa-exhibitions-archive{padding:45px 0 65px}
  .protexa-exhibitions-archive>.wrap{width:calc(100% - 30px)}
  .protexa-exhibitions-archive .expo-grid{grid-template-columns:1fr}
  .protexa-exhibitions-archive .expo-grid img{height:250px}
}

/* V27 — full PROTEXA About Us page. Scoped so existing homepage/manual styles remain unchanged. */
.protexa-about-page{background:#fff;color:var(--ink)}
.protexa-about-page .protexa-page-hero{padding-left:0!important;padding-right:0!important}
.about-intro{padding:92px 0;background:#fff}
.about-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:76px;align-items:center}
.about-factory-image{height:520px;position:relative;overflow:hidden;background:var(--stone)}
.about-factory-image:before{content:"";position:absolute;left:18px;top:18px;width:26px;height:26px;border-left:2px solid var(--yellow);border-top:2px solid var(--yellow);z-index:2}
.about-factory-image img{width:100%;height:100%;object-fit:cover}
.about-image-label{position:absolute;left:18px;bottom:18px;background:var(--black);color:var(--yellow);font-size:9px;font-weight:800;letter-spacing:.13em;padding:9px 12px}
.about-intro-copy{max-width:560px}
.about-intro-copy>small,.about-values small,.chairman-copy>small,.management-card small{display:block;color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.16em}
.about-intro-copy>small:before,.about-values small:before,.chairman-copy>small:before,.management-card>small:before{content:"";display:inline-block;width:20px;height:1px;background:var(--yellow-deep);vertical-align:middle;margin-right:9px}
.about-intro-copy h2,.about-values h2,.chairman-copy h2{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:clamp(48px,5.2vw,72px);line-height:.9;text-transform:uppercase;color:var(--black);margin:18px 0 22px}
.about-intro-copy h2 em,.about-values h2 em,.chairman-copy h2 em{font-style:normal;color:var(--blue)}
.about-intro-copy p,.about-values p,.chairman-copy p{font-size:14px;line-height:1.85;color:var(--muted)}
.about-intro-rule{margin-top:34px;border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.about-intro-rule b{color:var(--black)}.about-intro-rule span{color:var(--faint)}
.about-difference{padding:92px 0 100px;background:var(--stone)}
.about-difference .center-title{margin-bottom:42px}
.about-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.about-pillars article{position:relative;background:#fff;border:1px solid var(--line);padding:30px 32px 32px;min-height:285px;overflow:hidden}
.about-pillars article:after{content:"";position:absolute;right:0;top:0;width:4px;height:100%;background:var(--yellow);transform:scaleY(0);transform-origin:top;transition:transform .25s ease}
.about-pillars article:hover:after{transform:scaleY(1)}
.about-pillars article>span{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:42px;line-height:1;color:var(--yellow-deep);font-weight:700}
.about-pillars h3{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:31px;line-height:1;text-transform:uppercase;color:var(--black);margin:15px 0 12px}
.about-pillars p{font-size:12px;line-height:1.75;color:var(--muted);max-width:620px}
.about-values{padding:0;background:#fff}
.about-values-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.about-vision,.about-mission{padding:92px 70px 96px}
.about-vision{background:#fff;border-right:1px solid var(--line)}
.about-mission{background:var(--black);color:#fff;position:relative;overflow:hidden}
.about-mission:after{content:"";position:absolute;right:-90px;bottom:-110px;width:300px;height:300px;border:1px solid rgba(255,255,255,.12);border-radius:50%}
.about-mission small{color:var(--yellow)}
.about-mission h2{color:#fff}.about-mission h2 em{color:var(--yellow)}
.about-mission p{color:#c4c9cc}.about-mission strong{color:#fff}
.about-big-number{position:absolute;right:38px;top:30px;font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:90px;font-weight:700;color:rgba(255,255,255,.06);line-height:1}
.chairman-section{padding:100px 0;background:var(--blue);color:#fff}
.chairman-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:center}
.chairman-image{height:520px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);position:relative;overflow:hidden}
.chairman-image img{width:100%;height:100%;object-fit:cover}
.about-image-empty{width:100%;height:100%;display:grid;place-items:center;background:var(--stone);color:#b8c3c8;font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:34px;font-weight:700;letter-spacing:.08em;text-align:center;padding:20px}
.chairman-copy>small{color:#d7e2eb}.chairman-copy>small:before{background:var(--yellow)}
.chairman-copy h2{color:#fff}.chairman-copy h2 em{color:var(--yellow)}
.chairman-copy p{color:#d5e0e7;max-width:720px}.chairman-copy blockquote{border-left:3px solid var(--yellow);padding:5px 0 5px 18px;margin:28px 0;font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:27px;text-transform:uppercase;color:#fff}
.chairman-sign{border-top:1px solid rgba(255,255,255,.22);padding-top:16px;display:flex;justify-content:space-between;gap:20px;max-width:600px}.chairman-sign strong{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:23px;text-transform:uppercase}.chairman-sign span{font-size:10px;line-height:1.5;color:#c5d3dc;text-align:right}
.about-certifications{padding:92px 0;background:#fff}.about-cert-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}.about-cert-grid>div{min-height:145px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.about-cert-grid>div:last-child{border-right:0}.about-cert-grid img{width:auto;max-width:130px;height:58px;object-fit:contain}.about-cert-grid b{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:34px;color:var(--black)}.about-cert-grid span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.management-section{padding:92px 0 110px;background:var(--stone)}.management-section .section-title{margin-bottom:38px}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.management-card{background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:.75fr 1.25fr;min-height:390px}.management-image{position:relative;min-height:100%;background:var(--stone-deep);overflow:hidden}.management-image img{width:100%;height:100%;object-fit:cover}.management-image>span{position:absolute;left:0;bottom:0;background:var(--yellow);color:var(--black);padding:9px 12px;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.management-copy{padding:27px 26px;display:flex;flex-direction:column}.management-copy small{margin-bottom:9px}.management-copy small:before{display:none}.management-copy h3{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:31px;line-height:1;text-transform:uppercase;color:var(--black);margin-bottom:14px}.management-copy p{font-size:11.5px;line-height:1.75;color:var(--muted)}.management-email{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:9px;color:var(--faint);letter-spacing:.04em}
@media(max-width:900px){
 .about-intro-grid,.chairman-grid{grid-template-columns:1fr;gap:38px}.about-factory-image,.chairman-image{height:420px}.about-pillars{grid-template-columns:1fr}.about-values-grid{grid-template-columns:1fr}.about-vision{border-right:0;border-bottom:1px solid var(--line)}.about-vision,.about-mission{padding:70px 0}.about-cert-grid{grid-template-columns:repeat(3,1fr)}.about-cert-grid>div:nth-child(3){border-right:0}.about-cert-grid>div:nth-child(-n+3){border-bottom:1px solid var(--line)}.management-grid{grid-template-columns:1fr}.management-card{min-height:350px}.chairman-grid{gap:42px}
}
@media(max-width:560px){
 .about-intro{padding:60px 0}.about-factory-image,.chairman-image{height:320px}.about-intro-copy h2,.about-values h2,.chairman-copy h2{font-size:48px}.about-difference{padding:60px 0 70px}.about-pillars article{padding:25px 22px;min-height:0}.about-vision,.about-mission{padding:58px 0}.about-big-number{font-size:70px;right:18px}.chairman-section{padding:65px 0}.chairman-sign{flex-direction:column}.chairman-sign span{text-align:left}.about-certifications{padding:60px 0}.about-cert-grid{grid-template-columns:1fr 1fr}.about-cert-grid>div{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)}.about-cert-grid>div:nth-child(2n){border-right:0!important}.about-cert-grid>div:nth-last-child(-n+2){border-bottom:0}.management-section{padding:60px 0 70px}.management-card{grid-template-columns:1fr}.management-image{height:300px;min-height:300px}.management-copy{padding:24px 20px;min-height:310px}.management-copy h3{font-size:28px}.about-intro-rule{display:block}.about-intro-rule span{display:block;margin-top:8px}
}


/* V29 — final header/footer logo containment. Preserve all existing manual CSS above. */
.logo{
  width:var(--protexa-header-logo-width,125px)!important;
  max-width:var(--protexa-header-logo-width,125px)!important;
  height:82px!important;
  max-height:82px!important;
  overflow:hidden!important;
  align-self:center;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:none;
}
.logo img,.logo .custom-logo-link,.logo .custom-logo{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:var(--protexa-header-logo-height,54px)!important;
  max-height:var(--protexa-header-logo-height,54px)!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
}
.logo .custom-logo-link{
  width:100%!important;
  height:var(--protexa-header-logo-height,54px)!important;
  display:flex!important;
  align-items:center;
  overflow:hidden!important;
}
.footer-brand img,.footer-brand .custom-logo{
  width:var(--protexa-footer-logo-width,180px)!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
}
.footer-brand .custom-logo-link{display:inline-flex;align-items:center;background:transparent!important}
@media(max-width:900px){
  .logo{width:var(--protexa-header-logo-mobile-width,118px)!important;max-width:var(--protexa-header-logo-mobile-width,118px)!important;height:74px!important;max-height:74px!important}
  .logo img,.logo .custom-logo-link,.logo .custom-logo{height:var(--protexa-header-logo-mobile-height,50px)!important;max-height:var(--protexa-header-logo-mobile-height,50px)!important}
}
@media(max-width:560px){
  .logo{width:var(--protexa-header-logo-mobile-small-width,110px)!important;max-width:var(--protexa-header-logo-mobile-small-width,110px)!important}
  .logo img,.logo .custom-logo-link,.logo .custom-logo{height:var(--protexa-header-logo-mobile-small-height,46px)!important;max-height:var(--protexa-header-logo-mobile-small-height,46px)!important}
}


/* V30 — contact addresses, contact details and conditional map */
.contact-info-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.contact-info-grid article{padding:34px 18px;min-height:280px}
.contact-info-grid h3{font-size:21px}
.footer-contact span{display:block;line-height:1.65}
.footer-contact strong{color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:1100px){.contact-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.contact-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.contact-info-grid{grid-template-columns:1fr}}


/* V31 — refined contact icons and explicit footer email label */
.contact-info-grid .contact-icon svg{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-contact>a{display:block;line-height:1.65}

/* V32 — refined contact card icons and spacing */
.contact-info-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:stretch}
.contact-info-grid article{background:#fff;border:1px solid var(--line);padding:34px 20px 30px;min-height:294px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.contact-info-grid article:hover{border-color:#cbd4dc;transform:translateY(-3px);box-shadow:0 12px 28px rgba(10,11,13,.06)}
.contact-info-grid article:nth-child(2){border-color:var(--yellow)}
.contact-icon{width:58px;height:58px;border:1.5px solid var(--blue);border-radius:50%;display:grid;place-items:center;margin:0 auto 19px;color:var(--blue);background:#fff;flex:0 0 auto}
.contact-info-grid .contact-icon svg{width:27px;height:27px;display:block;fill:none;stroke:var(--blue);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-info-grid small{display:block;text-align:center;color:var(--blue);font-size:8.5px;font-weight:800;letter-spacing:.18em;line-height:1.3;margin-bottom:10px}
.contact-info-grid h3{font-size:20px;line-height:1.12;text-align:center;margin:0;color:var(--black);max-width:230px;overflow-wrap:anywhere}
.contact-info-grid p{font-size:11.5px;line-height:1.55;text-align:center;margin:12px 0 0;color:var(--muted);max-width:220px}
@media(max-width:1100px){.contact-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-info-grid article{min-height:270px}}
@media(max-width:800px){.contact-info-grid{grid-template-columns:1fr 1fr}.contact-info-grid article{min-height:250px}}
@media(max-width:480px){.contact-info-grid{grid-template-columns:1fr}.contact-info-grid article{min-height:0;padding:28px 18px}}

/* Certification grid: 9 real certification slots */
.cert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cert-grid div{min-height:150px;height:auto;padding:18px 14px}
.cert-grid .cert-logo{width:auto;max-width:150px;height:90px;object-fit:contain}
.about-cert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.about-cert-grid>div:nth-child(3n){border-right:0}
.about-cert-grid>div:nth-child(-n+6){border-bottom:1px solid var(--line)}
@media(max-width:900px){
  .cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cert-grid div:last-child{grid-column:auto}
}
@media(max-width:560px){
  .cert-grid{grid-template-columns:1fr}
  .cert-grid div:last-child{grid-column:auto}
}


/* =========================================================
   MATERIAL + CERTIFICATION LOGO CAROUSELS
   Added without replacing the existing manual theme CSS.
   ========================================================= */
.material-carousel,.cert-carousel,.about-cert-carousel{overflow:hidden;width:100%;position:relative}
.material-track,.cert-track,.about-cert-track{display:flex;will-change:transform;transition:transform .55s ease}
.material-card{flex:0 0 calc(25% - 1px);min-width:0;height:118px;border:1px solid var(--line);border-right:0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px}
.material-card:last-child{border-right:1px solid var(--line)}
.material-card:hover{background:var(--stone)}
.material-card .material-logo{width:auto;max-width:150px;height:54px;object-fit:contain}
.material-card strong{font-family:var(--protexa-heading-font,"Barlow Condensed");font-weight:700;font-size:21px;color:var(--black);text-align:center}
.material-card span{font-size:10.5px;color:var(--muted);text-align:center}
.cert-carousel{padding:0}
.cert-card{flex:0 0 calc(20% - 1px);min-width:0;min-height:150px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.18);border-right:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;padding:18px 14px;transition:background .2s}
.cert-card:last-child{border-right:1px solid rgba(255,255,255,.18)}
.cert-card:hover{background:rgba(255,255,255,.1)}
.cert-card .cert-logo{width:auto;max-width:150px;height:90px;object-fit:contain}
.cert-card b{font-family:var(--protexa-heading-font,"Barlow Condensed");font-weight:700;font-size:30px;color:#fff;text-align:center}
.cert-card span{font-size:10px;color:#c1d1de;text-align:center}
.about-cert-carousel{border:1px solid var(--line);background:#fff}
.about-cert-card{flex:0 0 calc(33.333333%);min-width:0;min-height:145px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:18px}
.about-cert-card:last-child{border-right:0}
.about-cert-card img{width:auto;max-width:130px;height:58px;object-fit:contain}
.about-cert-card b{font-family:var(--protexa-heading-font,"Barlow Condensed");font-size:34px;color:var(--black);text-align:center}
.about-cert-card span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}
@media(max-width:900px){
  .material-card{flex-basis:50%}
  .cert-card{flex-basis:50%}
  .about-cert-card{flex-basis:50%}
}
@media(max-width:560px){
  .material-card{flex-basis:100%}
  .cert-card{flex-basis:100%}
  .about-cert-card{flex-basis:100%}
}

/* V37 — logo carousel arrows, white certification surface, manual navigation */
.material-carousel,.cert-carousel,.about-cert-carousel{overflow:hidden;position:relative;padding-inline:52px}
.material-track,.cert-track,.about-cert-track{overflow:visible}
.logo-carousel-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:42px;height:42px;padding:0;border:0;background:var(--yellow);color:var(--black);display:grid;place-items:center;font-size:22px;line-height:1;cursor:pointer;transition:transform .2s ease,background .2s ease}
.logo-carousel-arrow:hover{background:var(--yellow-deep);transform:translateY(-50%) scale(1.04)}
.logo-carousel-arrow.prev{left:0}.logo-carousel-arrow.next{right:0}
.certifications{background:#fff}
.certifications .center-title small{color:var(--blue)}
.certifications .center-title h2{color:var(--black)}
.certifications .center-title h2 em{color:var(--blue)}
.certifications .center-title p{color:var(--muted)}
.cert-card{background:#fff;border-color:var(--line);border-right:0}
.cert-card:last-child{border-right:1px solid var(--line)}
.cert-card:hover{background:var(--stone)}
.cert-card b{color:var(--black)}
.cert-card span{color:var(--muted)}
.about-cert-carousel{border:0;background:#fff}
@media(max-width:900px){.material-carousel,.cert-carousel,.about-cert-carousel{padding-inline:48px}}
@media(max-width:560px){.material-carousel,.cert-carousel,.about-cert-carousel{padding-inline:46px}.logo-carousel-arrow{width:38px;height:38px;font-size:20px}}


/* =========================================================
   CONTACT FORM 7 — NEWSLETTER
   Uses the existing newsletter design; only swaps the native
   form controls for the CF7-generated controls.
   ========================================================= */
.newsletter .wpcf7{width:min(500px,100%);margin:0}
.newsletter .wpcf7 form{width:100%;display:block;background:#fff;padding:5px;margin:0}
.newsletter .newsletter-fields{display:flex;align-items:stretch;width:100%;margin:0}
.newsletter .newsletter-fields p{margin:0;padding:0;display:contents}
.newsletter .newsletter-email{border:0!important;outline:0!important;padding:0 16px!important;height:48px!important;min-width:0;flex:1;font-size:13px!important;color:var(--ink);background:#fff!important;box-shadow:none!important}
.newsletter .newsletter-email::placeholder{color:#666d73;opacity:1}
.newsletter .newsletter-submit{height:48px!important;min-width:108px;border:0!important;border-radius:0!important;background:var(--black)!important;color:#fff!important;padding:0 20px!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.03em;cursor:pointer;transition:background .2s ease}
.newsletter .newsletter-submit:hover{background:var(--blue)!important}
.newsletter .wpcf7-not-valid-tip{font-size:10px;margin-top:4px}
.newsletter .wpcf7-response-output{margin:8px 0 0!important;border:0!important;padding:0!important;font-size:10px;color:var(--black)}
@media(max-width:800px){
  .newsletter .wpcf7{width:100%}
}
@media(max-width:480px){
  .newsletter .newsletter-fields{display:flex}
  .newsletter .newsletter-email{padding:0 12px!important;font-size:12px!important}
  .newsletter .newsletter-submit{min-width:96px;padding:0 14px!important;font-size:10px!important}
}

.newsletter .newsletter-form-wrap{width:min(500px,100%);}

/* Contact Form 7 — keep the submission spinner unobtrusive/hidden */
.wpcf7-spinner{
  visibility:hidden;
  display:inline-block;
  background-color:#23282d;
  opacity:.75;
  width:10px;
  height:24px;
  border:none;
  border-radius:100%;
  padding:0;
  margin:0;
  position:relative;
}

/* =========================================================
   ZYNOVA V1 — FINAL BRAND / CATEGORY OVERRIDES
   ========================================================= */
body{background:#fff;color:#111}
.top-strip{background:#0a0a0a;color:#a7a7a7}
.top-inner span:last-child{color:#f47b20}
.header{background:rgba(255,255,255,.98);border-bottom-color:#e8e8e8}
.desktop-nav .primary-menu > li > a:hover{color:#0a0a0a}
.desktop-nav .primary-menu > li > a:after{background:#f47b20}
.desktop-nav .primary-menu > li.mega-parent > a:after{border-color:#f47b20}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{grid-template-columns:repeat(3,minmax(0,1fr));border-top-color:#f47b20}
.desktop-nav .mega-submenu > li > a{color:#0a0a0a}
.desktop-nav .mega-submenu > li > .sub-menu a:hover{color:#f47b20}

.hero{min-height:680px;background:#080808}
.hero-slides{min-height:680px}
.hero-content{min-height:680px}
.hero h1{font-size:clamp(54px,6vw,86px);text-transform:none;letter-spacing:-.025em}
.hero h1 span{color:#f47b20}
.hero .eyebrow i,.hero-stats strong,.hero-bottom b{background:#f47b20;color:#f47b20}
.hero .eyebrow i{background:#f47b20}
.hero-arrow:hover{background:#f47b20;border-color:#f47b20}
.hero-dots button.active{background:#f47b20;border-color:#f47b20}
.btn.yellow{background:#f47b20;border-color:#f47b20;color:#0a0a0a}
.btn.yellow:hover{background:#ff8d36;border-color:#ff8d36}

/* 3 uploaded category images = V1 layout. */
.zynova-category-grid.is-three{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);
  grid-template-rows:250px 250px;
  gap:3px;
}
.zynova-category-grid.is-three .category-card:nth-child(1){grid-column:1;grid-row:1 / span 2}
.zynova-category-grid.is-three .category-card:nth-child(2){grid-column:2;grid-row:1}
.zynova-category-grid.is-three .category-card:nth-child(3){grid-column:2;grid-row:2}

/* 4 uploaded category images = the existing theme's four-tile layout. */
.zynova-category-grid.is-four{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:250px 250px;
  gap:3px;
}
.zynova-category-grid.is-four .category-card:nth-child(1){grid-column:1 / span 2;grid-row:1 / span 2}
.zynova-category-grid.is-four .category-card:nth-child(2){grid-column:3;grid-row:1}
.zynova-category-grid.is-four .category-card:nth-child(3){grid-column:4;grid-row:1}
.zynova-category-grid.is-four .category-card:nth-child(4){grid-column:3 / span 2;grid-row:2}
.zynova-category-card img{filter:none}
.zynova-category-card:hover img{filter:none}
.category-card small{color:#f47b20}

.section-title h2 em,.center-title h2 em,.about-copy h2 em,.newsletter h2 em,.blog-heading h2 em{color:#f47b20}
.section-title small:before,.center-title small:before,.about-copy>small:before,.review-heading small:before{background:#f47b20}
.text-link{border-color:#f47b20!important}
.filter-tab.is-active,.filter-tab:hover{background:#f47b20!important;border-color:#f47b20!important;color:#0a0a0a!important}
.article-number{color:#f47b20!important}
.product-info a,.blog-info a{color:#f47b20}
.product-info a:hover,.blog-info a:hover{color:#c95f0d}

@media(max-width:900px){
  .zynova-category-grid.is-four{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:300px 220px 220px}
  .zynova-category-grid.is-four .category-card:nth-child(1){grid-column:1 / span 2;grid-row:1}
  .zynova-category-grid.is-four .category-card:nth-child(2){grid-column:1;grid-row:2}
  .zynova-category-grid.is-four .category-card:nth-child(3){grid-column:2;grid-row:2}
  .zynova-category-grid.is-four .category-card:nth-child(4){grid-column:1 / span 2;grid-row:3}
  .zynova-category-grid.is-three{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px}
  .zynova-category-grid.is-three .category-card:nth-child(1){grid-column:1 / span 2;grid-row:1}
  .zynova-category-grid.is-three .category-card:nth-child(2){grid-column:1;grid-row:2}
  .zynova-category-grid.is-three .category-card:nth-child(3){grid-column:2;grid-row:2}
}
@media(max-width:560px){
  .zynova-category-grid.is-three,.zynova-category-grid.is-four{grid-template-columns:1fr;grid-template-rows:auto}
  .zynova-category-grid.is-three .category-card,.zynova-category-grid.is-four .category-card{grid-column:1!important;grid-row:auto!important;height:270px!important}
  .hero{min-height:600px}.hero-slides,.hero-content{min-height:600px}
}

/* =========================================================
   ZYNOVA V1 — FINAL REFERENCE PASS
   Uses the approved V1 reference palette/section contrast:
   black + white + light grey + ZYNOVA orange. No yellow.
   ========================================================= */
:root{
  --black:#08090a;
  --black2:#111315;
  --white:#fff;
  --soft:#f1f2f0;
  --orange:#f47721;
  --orange2:#ff9139;
  --line:#d9dcda;
  --muted:#707572;
  --yellow:#f47721;
  --yellow-deep:#f47721;
  --blue:#f47721;
  --blue-deep:#c95f0d;
}

body{background:var(--white);color:var(--black)}
.top-strip{background:var(--black);color:#aaa}
.top-inner span:last-child{color:var(--orange)}
.header{background:#fff;border-bottom:1px solid var(--line)}
.desktop-nav .primary-menu > li > a{color:#111315}
.desktop-nav .primary-menu > li > a:hover{color:var(--black)}
.desktop-nav .primary-menu > li > a:after{background:var(--orange)}
.desktop-nav .primary-menu > li.mega-parent > a:after{border-color:var(--orange)}

/* Real WordPress 3-column mega menu. Uses the user's existing menu hierarchy. */
.desktop-nav{min-width:0;display:flex;align-items:center;justify-content:center;height:100%}
.desktop-nav > .primary-menu{display:flex!important;align-items:center;justify-content:center;gap:30px;height:100%;list-style:none;margin:0;padding:0}
.desktop-nav .primary-menu > li{height:100%;display:flex;align-items:center;position:relative;white-space:nowrap}
.desktop-nav .primary-menu > li > a{display:flex;align-items:center;height:100%;font-size:12px;font-weight:600;position:relative}
.desktop-nav .primary-menu > li.mega-parent{position:static!important}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
  position:absolute!important;left:50%!important;top:82px!important;
  width:min(1080px,calc(100vw - 48px));
  padding:30px 34px;
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:30px;
  background:#fff;border:1px solid var(--line);border-top:3px solid var(--orange);
  box-shadow:0 25px 60px rgba(0,0,0,.18);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease,visibility .2s;
  z-index:9999;
}
.desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,
.desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{
  opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);
}
.desktop-nav .mega-submenu > li{display:flex!important;flex-direction:column;min-width:0;white-space:normal}
.desktop-nav .mega-submenu > li > a{
  display:block!important;font-family:"Barlow Condensed",Arial,sans-serif;font-size:20px;font-weight:700;
  text-transform:uppercase;color:var(--black);padding-bottom:9px;margin-bottom:8px;border-bottom:1px solid var(--line)
}
.desktop-nav .mega-submenu > li > .sub-menu{
  display:flex!important;flex-direction:column;gap:7px;list-style:none;margin:0;padding:0
}
.desktop-nav .mega-submenu > li > .sub-menu a{display:block;font-size:11.5px;color:#707572;padding:2px 0}
.desktop-nav .mega-submenu > li > .sub-menu a:hover{color:var(--orange);padding-left:3px}
.desktop-nav .primary-menu > li:not(.mega-parent) > .sub-menu{display:none!important}

/* Approved V1 section contrast. */
.categories{background:#fff}
.products{background:var(--soft)}
.split-promos{background:#fff}
.innovation{background:var(--black);color:#fff}
.facilities{background:var(--soft)}
.about{background:var(--soft)}
.certifications{background:#fff}
.reviews{background:var(--black);color:#fff}
.blog{background:var(--soft)}
.newsletter{background:var(--orange)}
footer{background:var(--black)}

/* Product media: never add a fake grey/white image background and never crop the real product image. */
.product-img{background:transparent!important;overflow:hidden!important}
.product-img .product-card-image,
.product-img .product-card-image-primary,
.product-img .product-card-image-secondary{
  background:transparent!important;
  object-fit:contain!important;
  object-position:center!important;
  width:100%!important;height:100%!important;
}
.product-img .product-card-image-primary{display:block!important}
.product:hover .product-img .product-card-image-primary{transform:scale(1.025)!important}
.product-info{background:#fff}

/* Orange only — eliminate the legacy yellow/blue appearance. */
.hero h1 span,.hero .eyebrow i,.hero-stats strong,.hero-bottom b,
.category-card small,.section-title h2 em,.center-title h2 em,.about-copy h2 em,.blog-heading h2 em,.article-number,.product-info a,.blog-info a,
.review-card .stars,.rating span{color:var(--orange)!important}
.hero .eyebrow i,.section-title small:before,.center-title small:before,
.about-copy>small:before,.review-heading small:before{background:var(--orange)!important}
.btn.yellow,.filter-tab.is-active,.filter-tab:hover{background:var(--orange)!important;border-color:var(--orange)!important;color:#000!important}
.hero-arrow:hover,.hero-dots button.active{background:var(--orange)!important;border-color:var(--orange)!important}
.brand-ticker{background:var(--orange)!important}

/* Testimonials remain usable even before the admin adds testimonial posts. */
.review-track{align-items:stretch}
.review-card{background:#111315;border:1px solid rgba(255,255,255,.1);min-height:220px}
.reviews .review-heading h2{color:#fff}
.reviews .review-heading h2 em{color:var(--orange)}

@media(max-width:900px){
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{width:calc(100vw - 32px);grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px;padding:24px}
}


/* =========================================================
   ZYNOVA V1 FINAL CORRECTIONS
   ========================================================= */
:root{
  --blue:var(--protexa-blue,#f47721);
  --blue-deep:#c95f0d;
  --yellow:var(--protexa-yellow,#f47721);
  --yellow-deep:var(--protexa-yellow,#f47721);
  --stone:var(--protexa-stone,#f1f2f0);
}

/* Header / existing WordPress menu */
.header{background:#fff;color:var(--black)}
.desktop-nav .primary-menu > li > a{color:var(--black)}
.desktop-nav .primary-menu > li > a:hover{color:var(--black)}
.desktop-nav .primary-menu > li > a:after{background:var(--blue)}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
  grid-template-columns:repeat(3,minmax(0,1fr));
  background:#fff;
  border-top-color:var(--blue);
}
.desktop-nav .mega-submenu > li > a{color:var(--black)}
.desktop-nav .mega-submenu > li > .sub-menu a{color:#555d63}
.desktop-nav .mega-submenu > li > .sub-menu a:hover{color:var(--blue)}
.desktop-nav .primary-menu > li.mega-parent > a:after{border-color:var(--blue)}

/* Product cards: no theme-added image background and always 4 cards per row. */
.products{background:var(--stone)}
.product-row{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:0 !important}
.product{background:#fff;min-width:0}
.product-img{
  height:270px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent !important;
  overflow:hidden;
}
.product-img img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center;
  background:transparent !important;
  transition:transform .4s ease;
}
.product:hover .product-img img{transform:scale(1.03)}
.product-info{background:#fff}

/* Testimonials: dark V1 section with highly readable white copy. */
.reviews{background:var(--black) !important;color:#fff}
.review-heading h2{color:#fff !important}
.review-heading h2 em{color:var(--blue) !important}
.review-heading small{color:#d8d8d8 !important}
.review-heading small:before{background:var(--blue) !important}
.rating strong{color:#fff !important}
.rating span{color:#d9d9d9 !important}
.review-card{background:#111315 !important;border:1px solid #2b2e31 !important}
.review-card .stars{color:var(--blue) !important}
.review-card p{color:#f1f1f1 !important}
.review-card b{color:#fff !important}
.review-card small{color:#c8c8c8 !important}
.carousel-arrow{background:#fff;color:var(--blue);border-color:#fff}
.carousel-arrow:hover{background:var(--blue);border-color:var(--blue);color:#000}

/* Improve readability across light sections without changing the V1 palette. */
.section-title>p,.center-title p,.about-copy p,.product-info small,.section-description{color:#5d6469}
.section-title small,.center-title small,.about-copy>small,.innovation-content>small,.review-heading small{color:#60676b}
.newsletter small{color:#fff;}
.section-title h2,.center-title h2,.about-copy h2,.blog-heading h2{color:#111315}
.section-title h2 em,.center-title h2 em,.about-copy h2 em,.blog-heading h2 em{color:var(--blue)}

@media(max-width:900px){
  .product-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:0 !important}
}
@media(max-width:560px){
  .product-row{grid-template-columns:1fr !important}
  .product-img{height:280px}
}

/* ZYNOVA V1 FINAL REFERENCE OVERRIDES */
:root{
  --blue:#f47721;
  --blue-deep:#c95f0d;
  --yellow:#f47721;
  --yellow-deep:#f47721;
}

/* V1 section rhythm */
.categories{background:#fff!important}
.products{background:#eef0ed!important}
.facilities{background:#fff!important;padding:64px 0 40px!important}
.about{background:#eef0ed!important}
.certifications{background:#fff!important}
.reviews{background:#08090a!important;color:#fff!important}
.blog{background:#eef0ed!important}
.newsletter{background:#f47721!important}
footer{background:#08090a!important}

/* Primary menu: preserve the user's saved menu hierarchy and make Shop/Categories a 3-column mega menu. */
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:min(1120px,calc(100vw - 48px))!important;
  background:#fff!important;
  border-top:3px solid #f47721!important;
  padding:30px 34px!important;
  gap:30px!important;
}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu > li > a{color:#0a0b0d!important}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu > li > .sub-menu a{color:#555d62!important}
.desktop-nav .primary-menu > li.mega-parent > .mega-submenu > li > .sub-menu a:hover{color:#f47721!important}
.desktop-nav .primary-menu > li > a:after{background:#f47721!important}
.desktop-nav .primary-menu > li.mega-parent > a:after{border-right-color:#f47721!important;border-bottom-color:#f47721!important}

/* Product cards: four flush columns, 315px image area, no theme-added background, no crop. */
.product-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;align-items:start!important}
.product{border:0!important;border-radius:0!important;background:#fff!important}
.product-img{width:100%!important;max-width:315px!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:transparent!important;overflow:hidden!important;margin:0 auto!important}
.product-img img.product-card-image{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:initial!important;object-position:center!important;transform:none!important;background:transparent!important}
.product:hover .product-img img.product-card-image{transform:none!important}
.product-card-image-secondary{display:none!important}
.product-info{min-height:145px!important;background:#fff!important}

/* Dark-section readability */
.reviews .review-heading h2,.reviews .review-heading h2 em{color:#fff!important}
.reviews .review-heading h2 em{color:#f47721!important}
.reviews .review-heading small{color:#fff!important}
.reviews .review-card p{color:#f2f3f3!important}
.reviews .review-card b{color:#fff!important}
.reviews .review-card small{color:#d9dcde!important}
.reviews .review-card{background:#111315!important;border-color:#2a2e33!important}
.reviews .stars,.reviews .rating span{color:#f47721!important}

/* Promo images use the full tile; remove unwanted top whitespace. */
.split-promos{padding-top:0!important;margin-top:0!important}
.promo{background:#08090a!important}

/* Facilities: local dummy images always fill the five-card row without broken remote URLs. */
.facility-grid{gap:2px!important}
.facility-grid>div{height:220px!important;background:#111315!important}
.facility-grid img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Blog fallback cards */
.blog-grid article{background:#fff!important}
.blog-image{background:#111315!important;overflow:hidden!important}
.blog-image img{width:100%!important;height:100%!important;object-fit:cover!important}
.blog-info h3{color:#0a0b0d!important}
.blog-info>small,.blog-info a{color:#f47721!important}

/* Newsletter CF7 */
.newsletter-form-wrap{width:min(520px,100%)}
.newsletter-form-wrap form{display:flex!important;align-items:center!important;gap:5px!important;background:#fff!important;padding:5px!important}
.newsletter-form-wrap input[type="email"],.newsletter-form-wrap input[type="text"]{height:48px!important;border:0!important;outline:0!important;padding:0 14px!important;flex:1!important;font-size:12px!important;min-width:0!important}
.newsletter-form-wrap input[type="submit"]{height:48px!important;background:#08090a!important;color:#fff!important;border:0!important;padding:0 20px!important;font-size:10px!important;font-weight:700!important;cursor:pointer!important}
.newsletter-form-wrap .wpcf7-spinner{display:none!important}

@media(max-width:900px){
  .product-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .product-row{grid-template-columns:1fr!important}
  .product-img{width:100%!important;max-width:315px!important;margin:0 auto!important}
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{grid-template-columns:1fr!important}
  .facilities{padding:55px 0 25px!important}
  .facility-grid{grid-template-columns:1fr 1fr!important}
  .facility-grid>div{height:180px!important}
}


/* =========================================================
   ZYNOVA V1 — FINAL USER-REQUESTED FIXES
   ========================================================= */
/* Hero image is a true full-width background. Text stays on the left,
   but the selected hero image continues behind the entire hero. */
.hero-image{
  left:0!important;
  right:0!important;
  width:100%!important;
  inset:0!important;
  background-size:cover!important;
  background-position:center center!important;
  opacity:1!important;
}
.hero-image:after{
  background:linear-gradient(90deg,rgba(5,6,7,.96) 0%,rgba(5,6,7,.82) 25%,rgba(5,6,7,.38) 52%,rgba(5,6,7,.10) 78%,rgba(5,6,7,.04) 100%)!important;
}
.hero-copy{position:relative;z-index:3}
.hero-side{position:relative;z-index:3}

/* ZYNOVA orange only — remove every legacy yellow/blue visual from V1. */
.hero-arrow:hover,
.hero-dots button.active,
.brand-ticker,
.btn.yellow,
.hero h1 span,
.hero .eyebrow i,
.hero-stats strong,
.hero-bottom b,
.promo small,
.innovation-content>small,
.innovation h2 em,
.section-title h2 em,
.center-title h2 em,
.about-copy h2 em,
.review-card .stars,
.rating span,
.article-number,
.product-info a{
  background-color:transparent;
  color:#f47721!important;
}
.hero-arrow:hover,.hero-dots button.active,.btn.yellow{background-color:#f47721!important;color:#08090a!important}
.brand-ticker{background:#f47721!important;color:#08090a!important}
.hero .eyebrow i,.section-title small:before,.center-title small:before,.about-copy>small:before,.review-heading small:before{background:#f47721!important}

/* Full-width V1 hero layout: no split-image boundary. */
@media(min-width:801px){
  .hero-content{grid-template-columns:minmax(0,1fr) minmax(260px,.45fr)!important}
}

/* Products: four desktop cards, one card per row below 600px. Keep the
   actual WooCommerce image at its natural aspect ratio; never crop it. */
.product-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  align-items:start!important;
}
.product{min-width:0!important;width:100%!important;background:#fff!important;overflow:hidden!important}
.product-img{
  display:block!important;
  width:100%!important;
  max-width:315px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  overflow:hidden!important;
  background:transparent!important;
}
.product-img img.product-card-image,
.product-img img.product-card-image-primary{
  position:absolute!important;
  display:block!important;
  width:100%!important;
  height:100% !important;
  max-width:315px!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  background:transparent!important;
  transform:none!important;
}
.product-card-image-secondary{display:none!important}
.product-info{background:#fff!important}

/* Give the promo section and product-story/facility section real breathing
   room above and below, matching the V1 reference rhythm. */
.split-promos{
  padding:80px 0!important;
  margin:0!important;
  background:#fff!important;
}
.facilities{
  padding:88px 0!important;
  margin:0!important;
}

/* Product-story images should fill their cards without creating blank lower
   space. */
.facility-grid>div{height:220px!important;overflow:hidden!important}
.facility-grid img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;filter: hue-rotate(-25deg) saturate(1.35);}

/* Stronger readable text on dark sections. */
.innovation-content p{color:#f1f2f2!important}
.reviews .review-card p{color:#f2f3f3!important}
.reviews .review-card b{color:#fff!important}
.reviews .review-card small{color:#e0e2e3!important}

/* Desktop/tablet/mobile product breakpoints requested. */
@media(max-width:900px){
  .product-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .product-row{grid-template-columns:1fr!important}
  .product-img,
  .product-img img.product-card-image,
  .product-img img.product-card-image-primary{
    width:100%!important;
    max-width:315px!important;
  }
  .split-promos{padding:55px 0!important}
  .facilities{padding:65px 0!important}
}

/* Mega menu: keep the user's saved Primary Menu and make its existing
   first-level submenu reliably visible as a three-column panel. */
@media(min-width:901px){
  .desktop-nav .primary-menu > li.mega-parent{position:static!important}
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
    position:absolute!important;
    top:82px!important;
    left:50%!important;
    width:min(1120px,calc(100vw - 48px))!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:30px!important;
    padding:30px 34px!important;
    background:#fff!important;
    border:1px solid #d9dcda!important;
    border-top:3px solid #f47721!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,8px)!important;
    z-index:99999!important;
  }
  .desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,
  .desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
  }
  .desktop-nav .mega-submenu>li{display:flex!important;flex-direction:column!important;min-width:0!important}
  .desktop-nav .mega-submenu>li>a{color:#08090a!important;font-family:"Barlow Condensed",sans-serif!important;font-size:20px!important;font-weight:700!important;text-transform:uppercase!important;border-bottom:1px solid #d9dcda!important;padding-bottom:9px!important;margin-bottom:8px!important}
  .desktop-nav .mega-submenu>li>.sub-menu{display:flex!important;flex-direction:column!important;gap:7px!important}
  .desktop-nav .mega-submenu>li>.sub-menu a{color:#555d62!important;font-size:11.5px!important}
  .desktop-nav .mega-submenu>li>.sub-menu a:hover{color:#f47721!important}
}
@media(max-width:900px){
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{grid-template-columns:1fr!important}
}

/* =========================================================
   ZYNOVA FINAL HOME FIXES — 2026-09-24
   ========================================================= */

/* Hero image must run behind the complete hero, not start halfway across. */
.hero-image{
  left:0!important;
  right:0!important;
  width:100%!important;
  background-size:cover!important;
  background-position:center center!important;
}
.hero-image:after{
  background:linear-gradient(90deg,rgba(8,9,10,.88) 0%,rgba(8,9,10,.68) 27%,rgba(8,9,10,.28) 58%,rgba(8,9,10,.08) 100%)!important;
}
.hero-content{grid-template-columns:minmax(0,1fr) minmax(220px,.55fr)!important}

/* Keep the two promo tiles centered with equal breathing room on both sides. */
.split-promos{
  width:min(calc(100% - 78px),var(--max))!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding:80px 0!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .split-promos{width:min(calc(100% - 40px),var(--max))!important;padding:60px 0!important}
}
@media(max-width:600px){
  .split-promos{width:calc(100% - 28px)!important;padding:55px 0!important}
}

/* Product grid: four equal desktop cards, 315px image area, no second image,
   no cropping, and no masonry-like blank space. */
.product-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px !important;
  align-items:start!important;
}
.product{
  width:100%!important;
  min-width:0!important;
  align-self:start!important;
  overflow:hidden!important;
  background:#0000 !important;
}
.product-img{
  width:315px!important;
  max-width:100%!important;
  height:315px!important;
  min-height:315px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:transparent!important;
}
.product-img img.product-card-image,
.product-img img.product-card-image-primary{
  position:absolute!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  background:transparent!important;
  transform:none!important;
}
.product-card-image-secondary{display:none!important}
.product:hover .product-img img.product-card-image-primary{transform:none!important}
.product-info{min-height:145px!important;background:#fff!important}
@media(max-width:900px){
  .product-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .product-img{width:315px!important;max-width:100%!important;height:315px!important;min-height:315px!important}
}
@media(max-width:600px){
  .product-row{grid-template-columns:1fr 1fr !important}
  .product-img{width:315px!important;max-width:100%!important;height:315px!important;min-height:315px!important}
}

/* Reliable three-column mega menu using the saved Primary Menu item.
   The WordPress menu itself is never edited by these styles. */
@media(min-width:901px){
  .desktop-nav .primary-menu > li.mega-parent > .mega-submenu{
    position:fixed!important;
    top:116px!important;
    left:50%!important;
    width:min(1120px,calc(100vw - 48px))!important;
    max-height:calc(100vh - 132px)!important;
    overflow:auto!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:30px!important;
    padding:30px 34px!important;
    background:#fff!important;
    border:1px solid #d9dcda!important;
    border-top:3px solid #f47721!important;
    box-shadow:0 25px 60px rgba(0,0,0,.18)!important;
    transform:translate(-50%,8px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:99999!important;
  }
  .desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,
  .desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
  }
  .desktop-nav .mega-submenu>li{display:flex!important;flex-direction:column!important;min-width:0!important}
  .desktop-nav .mega-submenu>li>a{color:#08090a!important;font-family:"Barlow Condensed",sans-serif!important;font-size:20px!important;font-weight:700!important;text-transform:uppercase!important;border-bottom:1px solid #d9dcda!important;padding-bottom:9px!important;margin-bottom:8px!important}
  .desktop-nav .mega-submenu>li>.sub-menu{display:flex!important;flex-direction:column!important;gap:7px!important;list-style:none!important;margin:0!important;padding:0!important}
  .desktop-nav .mega-submenu>li>.sub-menu a{color:#555d62!important;font-size:11.5px!important}
  .desktop-nav .mega-submenu>li>.sub-menu a:hover{color:#f47721!important}
}

/* Blog home: always present three cards, including fallback editorial cards
   when the site has fewer than three published posts. */
.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.blog-grid article{min-width:0!important;background:#fff!important;overflow:hidden!important}
.blog-grid .blog-image{height:300px!important;background:#e6e8e5!important;overflow:hidden!important}
.blog-grid .blog-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr!important}.blog-grid .blog-image{height:220px!important}}


/* =========================================================
   ZYNOVA — FINAL PRODUCT CARD RESPONSIVE FIX
   Product images stay in normal document flow so their real
   WooCommerce aspect ratio determines the card image height.
   No crop, no forced image background, no collapsed image area.
   ========================================================= */

.product-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start !important;
}

.product{
  min-width:0;
  width:100%;
  overflow:hidden;
}

.product-img{
  position:relative !important;
  display:block !important;
  width:100% !important;
  max-width:315px !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}

.product-img img,
.product-img img.product-card-image,
.product-img img.product-card-image-primary{
  position:static !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  max-height:none !important;
  object-fit:initial !important;
  object-position:center !important;
  background:transparent !important;
  transform:none !important;
}

.product-card-image-secondary{
  display:none !important;
}

.product:hover .product-img img,
.product:hover .product-img img.product-card-image-primary{
  transform:none !important;
}

.product-info{
  min-height:145px !important;
}

@media(max-width:1100px){
  .product-row{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .product-row{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:600px){
  .product-row{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .product-img{
    width:100% !important;
    max-width:315px !important;
  }
}

@media(max-width:420px){
  .product-row{
    grid-template-columns:1fr !important;
  }
}

/* FINAL FIX — overlay secondary product image instead of placing it below the card. */
.product-img{
  position:relative !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:auto !important;
  width:100% !important;
  max-width:315px !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}
.product-img img.product-card-image{
  grid-area:1 / 1 !important;
  position:relative !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  max-height:none !important;
  object-fit:initial !important;
  object-position:center !important;
  background:transparent !important;
  transform:none !important;
  transition:opacity .35s ease,transform .45s ease !important;
}
.product-img .product-card-image-primary{
  opacity:1 !important;
  z-index:1 !important;
}
.product-img .product-card-image-secondary{
  opacity:0 !important;
  z-index:2 !important;
  pointer-events:none !important;
}
.product:hover .product-img .product-card-image-primary{
  transform:scale(1.025) !important;
}
.product:hover .product-img .product-card-image-secondary{
  opacity:1 !important;
  transform:scale(1.025) !important;
}
@media(hover:none){
  .product-img .product-card-image-secondary{display:none !important}
}


/* FINAL FIX: restore existing Primary Menu mega menu and always render 3 homepage blog cards. */
@media(min-width:901px){.desktop-nav .primary-menu > li.mega-parent > .mega-submenu{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;position:absolute!important;top:82px!important;left:50%!important;width:min(1120px,calc(100vw - 48px))!important;max-height:calc(100vh - 100px)!important;overflow:auto!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,8px)!important;z-index:99999!important}.desktop-nav .primary-menu > li.mega-parent:hover > .mega-submenu,.desktop-nav .primary-menu > li.mega-parent:focus-within > .mega-submenu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}}
.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.homepage-blog-card{display:flex!important;flex-direction:column!important;min-width:0!important;background:#fff!important;overflow:hidden!important}.homepage-blog-card .blog-image{height:300px!important;overflow:hidden!important;background:#e6e8e5!important}.homepage-blog-card .blog-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}.blog-image-fallback{width:100%;height:100%;background:linear-gradient(135deg,#111315 0%,#34383b 55%,#f47721 56%,#f47721 100%)}.homepage-blog-card .blog-info{display:flex!important;flex-direction:column!important;flex:1!important;padding:20px 18px 17px!important}.homepage-blog-card .blog-info h3{margin:7px 0 10px!important}.homepage-blog-card .blog-info p{margin:0 0 16px!important;color:#666d73!important}.homepage-blog-card .blog-info a{margin-top:auto!important}@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:600px){.blog-grid{grid-template-columns:1fr!important}.homepage-blog-card .blog-image{height:220px!important}}

/* =========================================================
   ZYNOVA SHOP + PRODUCT DETAIL FINAL PASS
   Keep homepage untouched; make archive/single use the same
   clean product-card proportions and responsive behavior.
   ========================================================= */

/* Collection/product title hero: left aligned and show more of the selected background image. */
.shop-hero.has-custom-title-bg,
.product-detail-hero.has-custom-title-bg{
  text-align:left!important;
  background-size:cover!important;
  background-position:center!important;
}
.shop-hero.has-custom-title-bg .wrap,
.product-detail-hero.has-custom-title-bg .wrap{
  align-items:flex-start!important;
  text-align:left!important;
}
.shop-hero.has-custom-title-bg .shop-breadcrumb,
.product-detail-hero.has-custom-title-bg .product-breadcrumb{
  justify-content:flex-start!important;
}

/* Real category list — never leave the sidebar empty when WooCommerce categories exist. */
.shop-category-list{min-height:40px}
.shop-category-group{display:block!important}
.shop-category-parent-row{display:flex!important;align-items:center!important}
.shop-category-parent-row .shop-category-link{flex:1 1 auto!important}

/* Archive cards match the homepage cards: real image proportions, clean white card, no crop. */
.archive-product-row{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
}
.archive-product-row .product{
  min-width:0!important;
  width:100%!important;
  background:#fff!important;
  border:0!important;
  overflow:hidden!important;
}
.archive-product-row .product-img{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto!important;
  width:100%!important;
  max-width:315px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
.archive-product-row .product-img img.product-card-image{
  grid-area:1/1!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:initial!important;
}
.archive-product-row .product-img .product-card-image-primary{opacity:1!important;z-index:1!important}
.archive-product-row .product-img .product-card-image-secondary{opacity:0!important;z-index:2!important;pointer-events:none!important}
.archive-product-row .product:hover .product-img .product-card-image-primary{transform:scale(1.025)!important}
.archive-product-row .product:hover .product-img .product-card-image-secondary{opacity:1!important;transform:scale(1.025)!important}
.archive-product-row .product-info{
  min-height:145px!important;
  padding:16px 18px 18px!important;
  background:#fff!important;
}
.archive-product-row .product-info h3{font-size:22px!important;margin:0 0 5px!important}
.archive-product-row .product-info .article-number{margin:0 0 7px!important}

/* Single product: keep the large image clean and responsive like the homepage product media. */
.single-product-page .product-detail{padding:64px 0 90px!important;background:#fff!important}
.single-product-page .product-detail-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr)!important;gap:48px!important}
.single-product-page .product-main-image{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  background:#fff!important;
  border:0!important;
  align-items:flex-start!important;
}
.single-product-page .product-main-img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
  background:#fff!important;
}
.single-product-page .product-thumbs{max-height:none!important}
.single-product-page .product-thumb{background:#fff!important}
.single-product-page .related-products-section .related-track{
  display:flex!important;
  gap:0!important;
}
.single-product-page .related-products-section .related-slide{flex:0 0 25%!important;min-width:0!important;width:auto!important;padding-right:14px!important}
.single-product-page .related-products-section .product-img{height:auto!important;max-width:315px!important;background:transparent!important}

@media(max-width:1100px){
  .archive-product-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .single-product-page .related-products-section .related-slide{flex-basis:33.333%!important}
}
@media(max-width:900px){
  .archive-product-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .single-product-page .product-detail-grid{grid-template-columns:1fr!important;gap:36px!important}
  .single-product-page .related-products-section .related-slide{flex-basis:50%!important}
  .shop-hero.has-custom-title-bg .wrap,
  .product-detail-hero.has-custom-title-bg .wrap{align-items:flex-start!important}
}
@media(max-width:600px){
  .archive-product-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .single-product-page .related-products-section .related-slide{flex-basis:50%!important;padding-right:10px!important}
  .single-product-page .product-detail{padding:42px 0 65px!important}
  .shop-hero.has-custom-title-bg,
  .product-detail-hero.has-custom-title-bg{text-align:left!important}
  .shop-hero.has-custom-title-bg .shop-breadcrumb,
  .product-detail-hero.has-custom-title-bg .product-breadcrumb{justify-content:flex-start!important}
}
@media(max-width:420px){
  .archive-product-row{grid-template-columns:1fr!important}
  .single-product-page .related-products-section .related-slide{flex-basis:100%!important;padding-right:0!important}
}

/* =========================================================
   ZYNOVA — SHOP / CONTACT FINAL REQUESTED FIXES
   ========================================================= */
@media(min-width:901px){
  /* Shop archive: exactly 3 product cards per row on desktop. */
  .archive-product-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
}

/* Contact page: exactly three information boxes. */
.contact-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.contact-info-grid .contact-combined .contact-lines{width:100%;max-width:300px;display:flex;flex-direction:column;gap:12px;margin:4px 0 0}
.contact-info-grid .contact-combined .contact-lines>div{display:flex;flex-direction:column;gap:3px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.contact-info-grid .contact-combined .contact-lines>div:last-child{border-bottom:0;padding-bottom:0}
.contact-info-grid .contact-combined .contact-lines strong{font-size:9px;letter-spacing:.14em;color:var(--blue)}
.contact-info-grid .contact-combined .contact-lines a{font-size:13px;line-height:1.45;color:var(--black);overflow-wrap:anywhere}
.contact-info-grid .contact-combined .contact-lines a:hover{color:var(--blue)}
@media(max-width:900px){
  .contact-info-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .contact-info-grid{grid-template-columns:1fr!important}
}

/* Footer contact: one store address + one phone + one email only. */
.footer-contact span{display:block;line-height:1.65}
.footer-contact>a{display:block;line-height:1.65}


/* =========================================================
   ZYNOVA FINAL SITE-WIDE PAGE / CONTACT / ENQUIRY PASS
   ========================================================= */
/* Inner page hero follows the shop-page treatment: stronger image visibility,
   left-aligned title, centered content sections below. */
.protexa-page-hero,
.shop-hero.has-custom-title-bg,
.product-detail-hero.has-custom-title-bg{
  background-size:cover!important;
  background-position:center!important;
}
.protexa-page-hero.has-custom-title-bg{
  background-image:var(--page-title-bg)!important;
}
.protexa-page-hero .wrap,
.protexa-page-hero.has-custom-title-bg .wrap{
  display:block!important;
  align-items:initial!important;
  text-align:left!important;
}
.protexa-page-hero.has-custom-title-bg .shop-breadcrumb,
.protexa-page-hero .shop-breadcrumb{
  justify-content:flex-start!important;
}
/* Existing inline background gradients are lightened by this overlay pseudo-element. */
.protexa-page-hero.has-custom-title-bg{position:relative!important;isolation:isolate!important;background-image: url(https://afinityinc.com/Zynova/wp-content/uploads/2026/09/page-title.webp) !important;}
.protexa-page-hero.has-custom-title-bg:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.protexa-page-hero.has-custom-title-bg .wrap{position:relative!important;z-index:1!important}

/* Contact: exactly three cards, with one address and one phone/email contact card.
   The third card is an enquiry CTA, not another phone number. */
.contact-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.contact-info-grid .contact-enquiry-card h3{font-size:24px!important;line-height:1!important;margin:0 0 16px!important}
.contact-enquiry-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;padding:0 18px;background:#f47721!important;color:#08090a!important;border:1px solid #f47721!important;font-size:10px!important;font-weight:800!important;letter-spacing:.1em;text-transform:uppercase!important;text-decoration:none!important;transition:.2s ease!important}
.contact-enquiry-btn:hover{background:#08090a!important;color:#fff!important;border-color:#08090a!important}
.contact-info-grid .contact-enquiry-card p{margin-top:12px!important}

/* Shop count: always show the actual archive count supplied by WooCommerce. */
.shop-result-count{color:#666d73!important}
.shop-result-count strong{color:#08090a!important}

/* Shop archive stays three columns on desktop. */
@media(min-width:901px){.archive-product-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}}

/* Enquiry controls use the ZYNOVA orange/black palette and match the site buttons. */
#pi-enquiry-container .pi-btn,
#pi-enquiry-container button,
#pi-enquiry-container input[type="submit"],
#pi-enquiry-container input[type="button"]{
  border-radius:0!important;
  background:#f47721!important;
  border:1px solid #f47721!important;
  color:#08090a!important;
  font-family:var(--protexa-body-font,"Inter",Arial,sans-serif)!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  box-shadow:none!important;
}
#pi-enquiry-container .pi-btn:hover,
#pi-enquiry-container button:hover,
#pi-enquiry-container input[type="submit"]:hover,
#pi-enquiry-container input[type="button"]:hover{background:#08090a!important;border-color:#08090a!important;color:#fff!important}

/* Product reviews: ZYNOVA dark/orange presentation. */
.single-product-page .product-tabs{padding:0 18px!important}
.single-product-page .product-tab{color:#08090a!important}
.single-product-page .product-tab.is-active{color:#08090a !important}
.single-product-page .product-tab.is-active:after{background:#f47721!important}
.single-product-page .product-reviews-panel{color:#08090a !important;padding:30px!important;max-width:none!important}
.single-product-page .product-reviews-panel .comment-reply-title{color:#08090a !important}
.single-product-page .product-reviews-panel .commentlist li{border-color:#2a2e33!important}
.single-product-page .product-reviews-panel .comment-text p{color:#d8dcde!important}
.single-product-page .product-reviews-panel .comment-form label{color:#08090a !important}
.single-product-page .product-reviews-panel .comment-form input,
.single-product-page .product-reviews-panel .comment-form textarea{color:#08090a!important;border-color:#3a3f43!important}
.single-product-page .product-reviews-panel .submit{background:#f47721!important;color:#fff!important;border:0!important;padding:12px 20px!important;font-weight:800!important;text-transform:uppercase!important}
.single-product-page .product-reviews-panel .star-rating{color:#f47721!important}

/* About page: user's supplied content, centered body sections and responsive cards. */
.zynova-about-rebuild .about-intro-copy p,
.zynova-about-rebuild .about-values p,
.zynova-about-rebuild .about-pillars p,
.zynova-about-rebuild .chairman-copy p{max-width:780px}
.zynova-social-section .about-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
.zynova-about-closing{padding:80px 0!important}
.zynova-about-closing .center-title{max-width:920px;margin-inline:auto}
.zynova-about-closing .center-title h2 em{color:#f47721!important}
.zynova-rnd-section{background:#eef0ed!important}
.zynova-rnd-section .chairman-copy{color:#161a1e!important}
.zynova-rnd-section .chairman-copy>small{color:#666d73!important}
.zynova-rnd-section .chairman-copy>small:before{background:#f47721!important}
.zynova-rnd-section .chairman-copy h2{color:#08090a!important}
.zynova-rnd-section .chairman-copy h2 em{color:#f47721!important}
.zynova-rnd-section .chairman-copy p{color:#555d62!important}
.zynova-rnd-section .chairman-copy blockquote{color:#08090a!important;border-left-color:#f47721!important}

/* Footer: clean single-store contact presentation. */
.footer-contact span{margin-bottom:10px!important}
.footer-contact>a{display:block!important;margin-top:4px!important}

@media(max-width:900px){
  .contact-info-grid{grid-template-columns:1fr 1fr!important}
  .zynova-social-section .about-pillars{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  .contact-info-grid{grid-template-columns:1fr!important}
  .protexa-page-hero .wrap{padding-inline:18px!important}
  .single-product-page .product-reviews-panel{padding:22px 16px!important}
}
