*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
svg.lucide{stroke-width:1.5}
:root{
  --navy:#18355E;--gold:#D4AF37;--gold-light:#E8CC6A;
  --green:#61CE70;--green-alt:#7AC143;--green-dark:#3BA34A;
  --blue:#004B87;--teal:#00A19A;
  --dark:#0D1B2A;--text:#333;--muted:#666;--light:#999;
  --bg:#fff;--bg-alt:#F5F5F5;--bg-warm:#FAFAF8;--border:#E5E5E5;
  --font-h:'Montserrat',sans-serif;--font-b:'Lato',sans-serif;
  --radius:8px;
  --ease:cubic-bezier(.4,0,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);
  --header-h:116px;
}
@media(max-width:640px){:root{--header-h:72px}}
html{scroll-behavior:smooth;height:100%}
/* Global offset for fixed header — auto-adjusts when secondary nav hides on mobile */
.insights-v2,.aboutv2,.contactv2,.conv-page,.eq-page,.rgc-page,.sustainv2,.insight-single-v2,.product-single-v2,.legal-page,.error404-v2,.page-shell,.royalgold-gads-lp-page,.conv-gads-lp-page,.conv-gads-lp-2-page,.conv-gads-lp-3-page,.conv-gads-lp-4-page,.about-2-page{margin-top:var(--header-h)!important}
body{font-family:var(--font-b);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column}
body>main{flex:1 0 auto}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
.container{max-width:1480px;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem)}
.eyebrow{font-family:var(--font-h);font-weight:600;font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase}
.section-pad{padding:clamp(4rem,8vw,7rem) 0}

/* Scroll Reveal */
.sr{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
.sr.v{opacity:1;transform:none}
.sr-d1{transition-delay:.12s}.sr-d2{transition-delay:.24s}.sr-d3{transition-delay:.36s}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:14px 30px;border-radius:var(--radius);font-family:var(--font-h);font-weight:600;font-size:.8125rem;letter-spacing:.05em;text-transform:uppercase;border:none;cursor:pointer;transition:all .35s var(--ease)}
.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:#b8860b;transform:translateY(-2px);box-shadow:0 10px 28px rgba(184,134,11,.25)}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--dark);transform:translateY(-2px);box-shadow:0 10px 28px rgba(13,27,42,.2)}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--green-dark);transform:translateY(-2px)}
.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:#009e97;transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,161,154,.28)}
.btn-outline-w{background:transparent;border:1.5px solid rgba(255,255,255,.35);color:#fff;border-radius:var(--radius)}.btn-outline-w:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
.btn-outline-n{background:transparent;border:1.5px solid var(--navy);color:var(--navy);border-radius:var(--radius)}.btn-outline-n:hover{background:var(--navy);color:#fff}
.btn-arrow{background:none;padding:0;font-family:var(--font-h);font-weight:600;font-size:.8125rem;letter-spacing:.05em;text-transform:uppercase;color:var(--teal);cursor:pointer;border:none;display:inline-flex;align-items:center;gap:.5rem;transition:color .3s,gap .3s}
.btn-arrow:hover{color:var(--navy);gap:.75rem}
.btn-arrow svg{width:16px;height:16px;transition:transform .3s}.btn-arrow:hover svg{transform:translateX(3px)}
.arrow-svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* HEADER */
/* ── Header ──────────────────────────────────────────────────── */
.header{position:fixed;top:0;left:0;right:0;z-index:100;transition:box-shadow .3s}
.admin-bar .header{top:32px}
.header.scrolled{box-shadow:0 4px 24px rgba(13,27,42,.10)}

/* Primary bar */
.header-primary{background:#fff;border-bottom:1px solid var(--border);position:relative;z-index:2}
.nav-bar{display:grid;grid-template-columns:240px 1fr 240px;align-items:center;height:72px;gap:1rem}
.logo{display:flex;align-items:center;flex:0 0 auto}
.logo-img{height:52px !important;width:auto !important;max-width:220px !important;display:block}
.nav-links{display:flex;align-items:center;justify-content:center;gap:0;list-style:none;height:72px}
.nav-link{font-family:var(--font-h);font-weight:500;font-size:.8rem;color:var(--navy);letter-spacing:.02em;padding:0 .9rem;height:100%;display:flex;align-items:center;position:relative;transition:color .25s}
.nav-link::after{content:'';position:absolute;bottom:0;left:.9rem;right:.9rem;height:2px;background:var(--teal);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform .25s}
.nav-link:hover{color:var(--teal)}
.nav-link:hover::after,.nav-link--active::after{transform:scaleX(1)}
.nav-link--active{color:var(--teal)}
.header-cta-wrap{display:flex;align-items:center;justify-content:flex-end;gap:.6rem}
.header-enquiry-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.72rem;font-weight:600;letter-spacing:.05em;color:var(--navy);opacity:.55;text-decoration:none;padding:.45rem .75rem;border-radius:6px;border:1px solid transparent;transition:all .25s}
.header-enquiry-btn svg,.header-enquiry-btn i{flex-shrink:0;width:14px;height:14px}
.header-enquiry-btn.has-items{opacity:1;border-color:rgba(0,161,154,.2);background:rgba(0,161,154,.06)}
.header-enquiry-btn.has-items:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
.header-enquiry-btn.has-items:hover .enq-count{background:#fff;color:var(--teal)}
.enq-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;background:var(--teal);color:#fff;font-size:.6rem;font-weight:700;border-radius:999px;padding:0 5px;margin-left:.1rem}
.header-cta{padding:10px 20px !important;font-size:.74rem !important;border-radius:7px !important;white-space:nowrap !important}

/* ── Mega Menu (Products hover) ── */
.nav-item--mega{position:relative}
.nav-item--mega>.nav-link{gap:.3rem}
.nav-item--mega>.nav-link .mega-chevron{width:11px;height:11px;stroke-width:2.5;flex-shrink:0;transition:transform .25s var(--ease);margin-left:1px}
.nav-item--mega:hover>.nav-link .mega-chevron{transform:rotate(180deg)}
.mega-menu{position:absolute;top:calc(100% + 2px);left:50%;transform:translateX(-50%) translateY(6px);width:680px;background:#fff;border-radius:12px;box-shadow:0 24px 64px rgba(13,27,42,.16),0 4px 16px rgba(13,27,42,.08);border:1px solid var(--border);padding:1.75rem 1.75rem 1.25rem;opacity:0;visibility:hidden;transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s;z-index:300;pointer-events:none}
.nav-item--mega:hover .mega-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.mega-menu-inner{display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;gap:0 1.25rem;align-items:start}
.mega-divider{background:var(--border);align-self:stretch;margin:0}
.mega-col-head{display:flex;align-items:center;gap:.45rem;font-family:var(--font-h);font-size:.62rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--navy);margin-bottom:.85rem;text-decoration:none;transition:color .2s}
.mega-col-head:hover{color:var(--teal)}
.mega-col-head i{color:var(--teal);width:14px;height:14px;flex-shrink:0}
.mega-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.mega-list a{display:block;padding:.38rem 0;font-family:var(--font-b);font-size:.84rem;color:var(--text);text-decoration:none;border-left:2px solid transparent;padding-left:0;transition:color .18s,padding-left .18s,border-color .18s}
.mega-list a:hover{color:var(--teal);padding-left:.4rem;border-left-color:var(--teal)}
.mega-list .badge-soon{font-size:.6rem;font-weight:600;font-family:var(--font-h);letter-spacing:.06em;color:var(--muted);vertical-align:middle;margin-left:.35rem;font-style:normal}
.mega-footer{display:flex;justify-content:flex-end;margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border)}
.mega-cta-link{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--teal);text-decoration:none;transition:gap .2s,color .2s}
.mega-cta-link:hover{gap:.65rem;color:var(--navy)}
.mega-cta-link svg{width:12px;height:12px;flex-shrink:0;transition:transform .2s}
.mega-cta-link:hover svg{transform:translateX(3px)}

/* ── Secondary nav dropdown (Washroom / Tabletop / Healthcare) ── */
.nav-sec-item{position:relative;display:inline-flex}
.nav-sec-item>.nav-sec-link{gap:.45rem}
.nav-sec-item>.nav-sec-link .sec-chevron{width:10px;height:10px;stroke-width:2.5;flex-shrink:0;transition:transform .22s var(--ease);opacity:.55}
.nav-sec-item:hover>.nav-sec-link .sec-chevron{transform:rotate(180deg);opacity:1}
.nav-sec-dropdown{position:absolute;top:calc(100% + 3px);left:50%;transform:translateX(-50%) translateY(5px);background:var(--dark);border-radius:9px;box-shadow:0 14px 44px rgba(13,27,42,.35);border:1px solid rgba(255,255,255,.08);padding:.45rem 0;min-width:210px;opacity:0;visibility:hidden;transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;z-index:300;pointer-events:none}
.nav-sec-item:hover .nav-sec-dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.nav-sec-dropdown a{display:block;padding:.48rem 1.1rem;font-family:var(--font-h);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:none;color:rgba(255,255,255,.72);text-decoration:none;transition:color .18s,background .18s,padding-left .18s;border-left:2px solid transparent}
.nav-sec-dropdown a:hover{color:#fff;background:rgba(255,255,255,.07);padding-left:1.35rem;border-left-color:var(--teal)}
.nav-sec-dropdown .badge-soon{font-size:.58rem;color:rgba(255,255,255,.35);margin-left:.3rem}

/* Secondary bar */
.header-secondary{background:var(--navy);border-top:1px solid rgba(255,255,255,.07);position:relative;z-index:1}
.nav-sec-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:44px;gap:1rem}
.nav-sec-label{display:flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.6rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.3);padding-right:1.1rem;border-right:1px solid rgba(255,255,255,.1);flex-shrink:0;white-space:nowrap;justify-self:start}
.nav-sec-label svg{width:13px;height:13px;opacity:.6}
.nav-sec-links{display:flex;align-items:center;gap:.4rem;justify-content:center}
.nav-sec-link{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-h);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6);padding:.4rem .9rem;border-radius:999px;border:1px solid transparent;transition:all .25s;white-space:nowrap}
.nav-sec-link i{width:13px;height:13px;opacity:.7;transition:opacity .25s;flex-shrink:0}
.nav-sec-link:hover{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.nav-sec-link:hover i{opacity:1}
.nav-sec-link--active{color:#fff;background:var(--teal);border-color:var(--teal)}
.nav-sec-link--active i{opacity:1}
.nav-sec-all{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;font-family:var(--font-h);font-size:.68rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.7);white-space:nowrap;transition:all .25s;flex-shrink:0}
.nav-sec-all svg{width:12px;height:12px;flex-shrink:0;transition:transform .25s}
.nav-sec-all:hover{color:#fff}
.nav-sec-all:hover svg{transform:translateX(3px)}

/* Mobile */
.mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:10px;flex-shrink:0;line-height:0}
.mobile-toggle span{display:block;width:22px;height:2px;background:var(--navy);border-radius:1px;transition:transform .3s,opacity .3s}
.mobile-toggle span+span{margin-top:5px}
.logo-mark{background:var(--gold);color:#fff;font-family:var(--font-h);font-weight:800;font-size:.7rem;letter-spacing:.15em;padding:5px 10px;border-radius:3px}
.logo-text{font-family:var(--font-h);font-weight:600;font-size:1.15rem;color:var(--navy)}
@media(max-width:1024px){
  .nav-bar{display:flex;justify-content:space-between;align-items:center}
  .nav-links,.header-cta-wrap{display:none}
  .mobile-toggle{display:block;margin-left:auto}
}
@media(max-width:640px){.header-secondary{display:none}}

/* ── Mobile nav drawer ── */
.mobile-nav-overlay{display:none;position:fixed;inset:0;background:rgba(13,27,42,.55);z-index:998;backdrop-filter:blur(3px)}
.mobile-nav-overlay.open{display:block}
.mobile-nav{position:fixed;top:0;right:0;width:min(360px,90vw);height:100dvh;background:#fff;z-index:999;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);overflow-y:auto}
.mobile-nav.open{transform:translateX(0)}
.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}
.mobile-nav-head .logo-img{height:36px;width:auto}
.mobile-nav-close{background:none;border:none;cursor:pointer;color:var(--navy);padding:6px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}
.mobile-nav-close:hover{background:var(--bg-alt)}
.mobile-nav-close i{width:20px;height:20px}
.mobile-nav-links{list-style:none;padding:.75rem 0;margin:0;flex-shrink:0}
.mobile-nav-links li a{display:block;padding:.75rem 1.5rem;font-family:var(--font-h);font-size:.9rem;font-weight:600;color:var(--navy);text-decoration:none;border-left:3px solid transparent;transition:color .2s,border-color .2s,background .2s}
.mobile-nav-links li a:hover,.mobile-nav-links li a.nav-link--active{color:var(--teal);border-left-color:var(--teal);background:rgba(0,180,180,.04)}
.mobile-nav-divider{height:1px;background:var(--border);margin:.25rem 1.5rem}
.mobile-nav-cats{padding:1rem 1.25rem;flex-shrink:0}
.mobile-nav-cats-label{display:flex;align-items:center;gap:.4rem;margin-bottom:.75rem;font-family:var(--font-h);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mobile-nav-cats-label i{width:12px;height:12px}
.mobile-nav-cats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
.mobile-nav-cats a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:.75rem .5rem;background:#fff;border:1px solid var(--border);border-radius:10px;font-family:var(--font-h);font-size:.7rem;font-weight:600;color:var(--navy);text-decoration:none;text-align:center;transition:color .2s,border-color .2s,background .2s}
.mobile-nav-cats a:hover{color:var(--teal);border-color:var(--teal);background:rgba(0,180,180,.04)}
.mobile-nav-cats a i{width:18px;height:18px;color:var(--teal);flex-shrink:0}
.mobile-nav-search-row{padding:.75rem 1.25rem;flex-shrink:0}
.mobile-nav-search-btn{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;padding:.75rem 1rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-h);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);cursor:pointer;transition:all .22s}
.mobile-nav-search-btn:hover{background:rgba(0,161,154,.08);border-color:var(--teal);color:var(--teal)}
.mobile-nav-search-btn svg{flex-shrink:0}
.mobile-nav-footer{padding:1.25rem 1.5rem 2rem;display:flex;flex-direction:column;gap:.75rem;margin-top:auto;border-top:1px solid var(--border);flex-shrink:0}
.mobile-nav-footer .btn{justify-content:center;text-align:center}
.mobile-nav-enquiry{display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-h);font-size:.8rem;font-weight:600;color:var(--navy);text-decoration:none;padding:.6rem;border:1px solid var(--border);border-radius:var(--radius);transition:color .2s,border-color .2s}
.mobile-nav-enquiry:hover{color:var(--teal);border-color:var(--teal)}
.mobile-nav-enquiry i{width:14px;height:14px}

/* HERO */
.hero{position:relative;height:100vh;min-height:600px;overflow:hidden;margin-top:0}
/* Page-level hero: main already has margin-top for fixed header, so reset hero margin to avoid double gap */
.sustainv2 .hero,.aboutv2 .hero{margin-top:0}
/* Sustainability (and similar) hero: container must take full width so hero content aligns with section below */
.sustainv2 .hero .container{width:100%;max-width:1480px;box-sizing:border-box}
.hero-slides{position:relative;width:100%;height:100%}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s var(--ease);display:flex;align-items:center}
.hero-slide.active{opacity:1;z-index:2}
.hero-slide .bg{position:absolute;inset:0}
.hero-slide .bg img{width:100%;height:100%;object-fit:cover}
.hero-slide .bg::after{content:'';position:absolute;inset:0}
.slide-rgc .bg::after{background:linear-gradient(to right,rgba(13,27,42,.88) 0%,rgba(13,27,42,.75) 35%,rgba(13,27,42,.35) 65%,rgba(13,27,42,.08) 100%)}
.slide-conv .bg::after{background:linear-gradient(to right,rgba(15,50,18,.90) 0%,rgba(15,50,18,.74) 35%,rgba(15,50,18,.30) 65%,rgba(15,50,18,.06) 100%)}
.slide-ntpm .bg::after{background:linear-gradient(to right,rgba(13,27,42,.97) 0%,rgba(13,27,42,.90) 38%,rgba(13,27,42,.52) 65%,rgba(13,27,42,.10) 100%)}
.hero-slide .container{width:100%;text-align:left}
.hero-content{position:relative;z-index:3;max-width:760px;margin-left:0;margin-right:auto}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);backdrop-filter:blur(6px);padding:7px 16px;border-radius:100px;margin-bottom:1.75rem}
.hero-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.hero-badge span{font-family:var(--font-h);font-weight:600;font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.hero-title{font-family:var(--font-h);font-weight:800;font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.08;color:#fff;margin-bottom:1.25rem;text-shadow:0 2px 14px rgba(0,0,0,.4)}
.hero-title em{font-family:var(--font-b);font-weight:300;font-style:italic}
.slide-rgc .hero-title em{color:var(--gold)}
.slide-conv .hero-title em{color:#b5f0bd}
.slide-ntpm .hero-title em{color:var(--teal)}
.hero-sub{font-family:var(--font-b);font-weight:400;font-size:1.0625rem;line-height:1.7;color:rgba(255,255,255,.92);margin-bottom:2.25rem;max-width:560px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.hero-chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.75rem}
.hero-chip{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);backdrop-filter:blur(6px);padding:7px 16px;border-radius:100px;font-family:var(--font-h);font-weight:600;font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.hero-chip .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse 2s infinite;flex-shrink:0}
.slide-conv .hero-chip .dot{background:var(--green)}
.hero-btns{display:flex;gap:.75rem;flex-wrap:wrap}
.brand-logo-top{display:block;height:46px;width:auto;max-width:260px;margin:0 0 1rem}
.brand-logo-top.hero{height:56px;max-width:320px;margin-bottom:1.1rem}
.brand-logo-top.center{margin:0 auto 1rem}
.hero-controls{position:absolute;bottom:2.5rem;left:clamp(1.25rem,4vw,3rem);z-index:10;display:flex;gap:1rem;align-items:center}
.hero-dot{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:transparent;cursor:pointer;transition:all .3s;padding:0}
.hero-dot.active{background:var(--gold);border-color:var(--gold);transform:scale(1.15)}
.hero-arrows{position:absolute;bottom:2.5rem;right:clamp(1.25rem,4vw,3rem);z-index:10;display:flex;gap:.625rem}
.hero-arrow{width:52px;height:52px;border-radius:var(--radius);border:1.5px solid rgba(255,255,255,.5);background:rgba(0,0,0,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;color:#fff}
.hero-arrow:hover{background:var(--gold);border-color:var(--gold);color:#fff;transform:scale(1.06)}
.hero-arrow svg{width:20px;height:20px}
.hero-progress{position:absolute;bottom:0;left:0;right:0;height:3px;z-index:10;background:rgba(255,255,255,.08)}
.hero-progress-bar{height:100%;background:var(--gold);width:0}

/* CATEGORIES */
.cat-section{background:linear-gradient(to bottom,#fff calc(100% - 120px),#F5F5F5 100%);padding:clamp(3.5rem,6vw,5.5rem) 0}
.cat-section--tight{padding-top:clamp(1.5rem,3vw,2.5rem);padding-bottom:clamp(2rem,4vw,3rem)}
.page-shell .cat-section{background:#fff}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.cat-grid--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.cat-grid--4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.cat-grid{grid-template-columns:1fr}.cat-grid--4{grid-template-columns:1fr}}
.cat-card{position:relative;border-radius:var(--radius);overflow:hidden;height:300px;cursor:pointer;display:block;text-decoration:none;color:inherit}
.cat-card .c-img{position:absolute;inset:0;transition:transform .7s var(--ease)}
.cat-card .c-img img{width:100%;height:100%;object-fit:cover}
.cat-card:hover .c-img{transform:scale(1.06)}
.cat-card .c-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,27,42,.82) 0%,rgba(13,27,42,.25) 55%,rgba(13,27,42,.05) 100%);transition:background .4s}
.cat-card:hover .c-ov{background:linear-gradient(to top,rgba(24,53,94,.88) 0%,rgba(24,53,94,.35) 55%,rgba(24,53,94,.08) 100%)}
.cat-card .c-body{position:absolute;bottom:0;left:0;right:0;padding:1.75rem;z-index:2}
.cat-card .c-label{font-family:var(--font-h);font-weight:600;font-size:1.375rem;color:#fff;margin-bottom:.4rem}
.cat-card .c-desc{font-family:var(--font-b);font-size:.8125rem;color:rgba(255,255,255,.65);line-height:1.5;max-height:0;overflow:hidden;opacity:0;transition:all .5s var(--ease)}
.cat-card:hover .c-desc{max-height:80px;opacity:1;margin-bottom:.75rem}
.cat-card .c-arrow{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-weight:600;font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);opacity:0;transform:translateY(8px);transition:all .4s}
.cat-card:hover .c-arrow{opacity:1;transform:translateY(0)}

/* SECTORS */
.sectors{background:var(--bg-alt)}
.sectors-header{text-align:center;max-width:680px;margin:0 auto clamp(2.5rem,4vw,4rem)}
.s-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
@media(max-width:900px){.s-grid{grid-template-columns:1fr}}
.s-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .4s,transform .4s}
.s-card:hover{box-shadow:0 12px 40px rgba(24,53,94,.07);transform:translateY(-3px)}
.s-card-img{height:200px;overflow:hidden;position:relative}
.s-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.s-card:hover .s-card-img img{transform:scale(1.05)}
.s-card-num{position:absolute;top:.875rem;left:1rem;background:rgba(255,255,255,.9);backdrop-filter:blur(4px);font-family:var(--font-h);font-weight:800;font-size:.8125rem;color:var(--navy);padding:5px 12px;border-radius:var(--radius)}
.s-card-body{padding:1.75rem 1.75rem 2rem}
.s-card-title{font-family:var(--font-h);font-weight:600;font-size:1.15rem;color:var(--navy);margin-bottom:.625rem}
.s-card-text{font-family:var(--font-b);font-size:.9rem;color:var(--muted);line-height:1.6;margin-bottom:1.125rem}
.s-prods{display:flex;gap:1.25rem;margin-bottom:1.25rem;flex-wrap:wrap}
.s-prods div{flex:1;min-width:160px}
.s-prods h5{font-family:var(--font-h);font-weight:600;font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin-bottom:.4rem}
.s-prods ul{list-style:none;font-family:var(--font-b);font-size:.8rem;color:var(--muted);line-height:1.75}
.s-prods li::before{content:'·';color:var(--gold);font-weight:600;margin-right:.4rem}

/* TICKER – continuous marquee */
.ticker{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1.75rem 0;overflow:hidden;background:var(--bg)}
.ticker-track{display:flex;gap:3.5rem;flex-shrink:0;width:max-content;animation:ticker-scroll 45s linear infinite;will-change:transform}
@keyframes ticker-scroll{0%{transform:translateX(0)}100%{transform:translateX(calc(-50% - 1.75rem))}}
.ticker-item{display:inline-flex;align-items:center;gap:.65rem;white-space:nowrap;font-family:var(--font-h);font-weight:600;font-size:1rem;letter-spacing:.04em;color:var(--navy);opacity:.5;flex-shrink:0}
.ticker-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);flex-shrink:0}
.rgc-page .ticker-dot{background:var(--gold)}
.conv-page .ticker-dot{background:var(--green)}

/* BRANDS */
.brand-rgc{background:var(--navy);position:relative;overflow:hidden}
.brand-rgc::before{content:'';position:absolute;top:-30%;right:-15%;width:60%;height:160%;background:radial-gradient(ellipse,rgba(212,175,55,.05) 0%,transparent 70%);pointer-events:none}
.b-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,5vw,5rem);align-items:center}
@media(max-width:900px){.b-grid{grid-template-columns:1fr}}
.b-img{border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:var(--dark)}
.b-img img{width:100%;height:100%;object-fit:cover}
.brand-conv{background:linear-gradient(160deg,#f2fbf3 0%,#e6f9e8 50%,#daf4dc 100%);position:relative;overflow:hidden}
.conv-imgs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.conv-img{border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4;background:#ddd}
.conv-img:first-child{margin-top:3.5rem}
.conv-img:last-child{margin-top:-3.5rem}
.conv-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.conv-img:hover img{transform:scale(1.03)}

/* OUR BRANDS DUAL-CARD SECTION */
.brands-duo{background:var(--bg-alt)}
.brands-duo-header{text-align:center;margin-bottom:2.5rem}
.brands-duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
@media(max-width:860px){.brands-duo-grid{grid-template-columns:1fr}}
.brand-duo-card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:540px;display:flex;flex-direction:column;justify-content:flex-end}
.bdc-bg{position:absolute;inset:0}.bdc-bg img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.brand-duo-card:hover .bdc-bg img{transform:scale(1.04)}
.bdc-ov-gold{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,27,42,.98) 0%,rgba(13,27,42,.92) 50%,rgba(13,27,42,.75) 100%)}
.bdc-ov-green{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,40,12,.98) 0%,rgba(10,40,12,.92) 50%,rgba(10,40,12,.75) 100%)}
.bdc-body{position:relative;z-index:2;padding:2rem 2rem 2.25rem}
.bdc-logo{display:block;height:52px;width:auto;max-width:240px;margin-bottom:1.1rem;object-fit:contain}
.bdc-logo-lg{height:96px;max-width:360px}
.bdc-sub{font-family:var(--font-b);font-style:normal;font-weight:400;font-size:.9rem;color:rgba(255,255,255,.92);margin:0 0 1.25rem;line-height:1.6;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.bdc-pills{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.bdc-pill{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:5px 13px;border-radius:100px;font-family:var(--font-h);font-weight:600;font-size:.58rem;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.bdc-pill-gold{border-color:rgba(212,175,55,.35);background:rgba(212,175,55,.1);color:var(--gold)}
.bdc-pill-green{border-color:rgba(97,206,112,.3);background:rgba(97,206,112,.08);color:#7dda8a}

.ben-list{list-style:none;margin:0;padding:2.5rem 0}
.ben-list li{display:flex;align-items:flex-start;gap:.625rem;font-family:var(--font-b);font-size:1rem;line-height:1.55;margin-bottom:.875rem}
.ben-ico{width:20px;height:20px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:2px}
.ben-ico svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ben-gold .ben-ico{background:rgba(212,175,55,.15);color:var(--gold)}
.ben-green .ben-ico{background:rgba(97,206,112,.18);color:var(--green-dark)}

/* ABOUT */
.about{background:var(--bg)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,5vw,4.5rem);align-items:stretch;margin-bottom:clamp(2rem,4vw,3rem)}
@media(max-width:900px){.about-grid{grid-template-columns:1fr}}
.about-video{border-radius:var(--radius);overflow:hidden;aspect-ratio:16/9;background:#000;box-shadow:0 16px 48px rgba(13,27,42,.14)}
.about-video video{width:100%;height:100%;display:block;object-fit:cover}
.about-stats{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.875rem;height:100%}
.about-stat{background:var(--bg-alt);border:1px solid rgba(0,161,154,.18);border-radius:var(--radius);padding:1.25rem 1.25rem 1.4rem;display:flex;flex-direction:column;justify-content:center}
.about-stat .as-val{font-family:var(--font-h);font-weight:500;font-size:clamp(1.75rem,2.2vw,2.5rem);color:var(--navy);line-height:1;margin-bottom:.45rem}
.about-stat .as-label{font-family:var(--font-h);font-weight:600;font-size:.6rem;color:var(--teal);text-transform:uppercase;letter-spacing:.14em;margin-bottom:.25rem}
.about-stat .as-sub{font-family:var(--font-b);font-size:.75rem;color:var(--muted);line-height:1.4}

/* SUSTAINABILITY */
.sustain{background:var(--bg-alt)}
.sustain-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,5vw,5rem);align-items:center}
@media(max-width:900px){.sustain-grid{grid-template-columns:1fr}}
.s-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:2rem}
.s-metric{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem 1.25rem}
.s-metric .m-val{font-family:var(--font-h);font-weight:600;font-size:clamp(1.75rem,2.5vw,2.25rem);color:var(--navy);line-height:1}
.s-metric .m-val.teal,.s-metric .m-val.green{color:var(--navy)}
.s-metric .m-label{font-family:var(--font-b);font-size:.78rem;color:var(--muted);margin-top:.55rem;line-height:1.4}
.sustain-img{border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4;background:#ddd}
.sustain-img img{width:100%;height:100%;object-fit:cover}

/* INSIGHTS */
.insights{background:var(--bg)}
.ins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media(max-width:900px){.ins-grid{grid-template-columns:1fr}}
.ins-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .4s,transform .4s;display:flex;flex-direction:column}
.ins-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.06);transform:translateY(-3px)}
.ins-card-img{position:relative;width:100%;padding-bottom:66.67%;overflow:hidden;background:var(--bg-alt);flex-shrink:0}
.ins-card-img a{position:absolute;inset:0;display:block}
.ins-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.ins-card:hover .ins-card-img img{transform:scale(1.04)}
.ins-tag{position:absolute;top:.75rem;left:.75rem;font-family:var(--font-h);font-weight:600;font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:.25rem .6rem;border-radius:999px;background:var(--navy);z-index:1}
.ins-card-body{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}
.ins-title{font-family:var(--font-h);font-weight:600;font-size:1.05rem;color:var(--navy);line-height:1.35;margin-bottom:.625rem;transition:color .3s}
.ins-card:hover .ins-title{color:var(--teal)}
.ins-excerpt{font-family:var(--font-b);font-size:.8125rem;color:var(--muted);line-height:1.55;margin-bottom:1rem;flex:1}

/* CTA – standard height across all pages (homepage is reference) */
.cta-section{position:relative;overflow:hidden;padding:clamp(5rem,9vw,8rem) 0;min-height:min(100vh,420px)}
.cta-bg{position:absolute;inset:0}
.cta-bg img{width:100%;height:100%;object-fit:cover}
.cta-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(13,27,42,.90) 0%,rgba(13,27,42,.72) 50%,rgba(13,27,42,.45) 100%)}
.cta-inner{position:relative;z-index:2;text-align:center}

/* FOOTER */
.footer{background:var(--dark);padding:0 0 2rem;margin-top:auto;border-top:3px solid var(--teal)}
.footer-certs{background:rgba(255,255,255,.05);padding:2rem 0;border-bottom:1px solid rgba(255,255,255,.07)}
.footer-certs-label{font-family:var(--font-h);font-weight:600;font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.35);text-align:center;margin-bottom:1.5rem}
.footer-certs-logos{display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap}
.footer-certs-logos img{height:72px;width:auto;max-width:140px;object-fit:contain;background:#fff;border-radius:8px;padding:6px 10px;opacity:.95;transition:opacity .25s,transform .25s ease}
.footer-certs-logos img:hover{opacity:1;transform:scale(1.1)}
.footer-main-pad{padding-top:3.5rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:2.75rem}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{text-align:center;display:flex;flex-direction:column;align-items:center}
  .footer-grid>div:first-child p{max-width:100%;margin-left:auto;margin-right:auto}
  .f-col{text-align:center}
  .f-col ul{padding:0}
  .f-bottom{flex-direction:column;text-align:center;align-items:center}
}
.f-col h4{font-family:var(--font-h);font-weight:600;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:1.125rem}
.f-col ul{list-style:none}.f-col li{margin-bottom:.625rem}
.f-col a{font-family:var(--font-b);font-size:.8125rem;color:rgba(255,255,255,.5);transition:color .25s}.f-col a:hover{color:var(--teal)}
.f-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;font-family:var(--font-b);font-size:.6875rem;color:rgba(255,255,255,.25)}
.f-bottom a{color:rgba(255,255,255,.35);transition:color .25s}.f-bottom a:hover{color:#fff}
.li-icon{width:34px;height:34px;border-radius:var(--radius);background:rgba(255,255,255,.04);display:inline-flex;align-items:center;justify-content:center;color:rgba(255,255,255,.35);transition:all .3s}
.li-icon:hover{background:var(--gold);color:#fff}
.footer-brand-wrap{display:flex;align-items:center;min-height:40px;margin-bottom:1rem}
.footer-logo-link{display:inline-flex;align-items:center}
/* Override global img and WooCommerce so footer logo stays same size on all pages (e.g. product category) */
.footer .footer-logo-img{height:80px !important;width:auto !important;max-width:340px !important;opacity:.95;object-fit:contain}

/* Generic content pages */
.page-shell { margin-top: 116px; padding: 4rem 0; }
/* When first content is a hero, remove top and bottom padding so no blank band above banner or gap above footer */
.page-shell:has(> .product-hero) { padding-top: 0; padding-bottom: 0; }
.page-shell h1 { font-family: var(--font-h); color: var(--navy); font-size: clamp(2rem, 4vw, 3rem); margin-bottom: 1rem; }
.page-shell h2 { font-family: var(--font-h); color: var(--navy); font-size: clamp(1.5rem, 3vw, 2rem); margin-bottom: 1rem; }
.page-shell p, .page-shell li { line-height: 1.75; color: var(--text); }
.page-shell ul { margin-left: 1rem; margin-bottom: 1rem; }
.rich-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.rich-split.reverse{grid-template-columns:.95fr 1.05fr}
.stacked-images{display:grid;gap:1rem}
.stacked-images img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;box-shadow:0 14px 36px rgba(13,27,42,.08)}
.three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.four-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem}
.two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.feature-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.feature-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(24,53,94,.09)}
.feature-card img{height:220px;width:100%;object-fit:cover}
.feature-card-body{padding:1rem 1rem 1.25rem}
.feature-card-body h3{font-family:var(--font-h);font-size:1.05rem;color:var(--navy);margin:0 0 .35rem}
.feature-card-body p{font-size:.9rem;color:var(--muted)}
.quote-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}
.quote-card p{font-style:italic;color:var(--text);margin-bottom:.75rem}
.quote-card span{font-size:.85rem;color:var(--muted)}
.tick-list{list-style:none;margin:1.1rem 0 0;padding:0}
.tick-list li{margin:0 0 .5rem;padding-left:1.45rem;position:relative}
.tick-list li::before{content:'\2713';position:absolute;left:0;top:0;font-family:var(--font-h);font-size:.8rem}
.tick-list.gold li::before{color:var(--gold)}
.tick-list.green li::before{color:var(--green-dark)}
.icon-grid{display:grid;gap:1rem}
.icon-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}
.icon-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.icon-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.icon-grid div{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1rem}
.icon-grid h3{font-family:var(--font-h);font-size:1rem;color:var(--navy);margin-bottom:.25rem}
.icon-grid p{font-size:.86rem;color:var(--muted)}
.brand-kpis{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}
.brand-kpis div{border:1px solid rgba(255,255,255,.18);padding:.55rem .75rem;border-radius:6px;background:rgba(255,255,255,.05)}
.brand-kpis strong{display:block;font-family:var(--font-h);font-size:.75rem;color:#fff;line-height:1.2}
.brand-kpis span{display:block;font-size:.72rem;color:rgba(255,255,255,.72)}
.notice-box{margin-top:1rem;border:1px solid var(--border);background:var(--bg-alt);padding:.85rem 1rem;border-radius:var(--radius);font-size:.9rem}
.form-shell{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}
.form-shell p{margin-bottom:.9rem}
.form-shell label{display:block;font-family:var(--font-h);font-size:.78rem;color:var(--navy);font-weight:600}
.form-shell input,.form-shell select,.form-shell textarea{width:100%;padding:.75rem .8rem;border:1px solid var(--border);border-radius:6px;margin-top:.35rem;font-family:var(--font-b);font-size:.9rem}
.form-shell textarea{min-height:120px}
.form-shell input[type=submit]{background:var(--navy);border-color:var(--navy);color:#fff;font-family:var(--font-h);font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}
.form-shell .wpcf7-spinner{display:block}
@media(max-width:1100px){.four-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.three-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:900px){.rich-split,.rich-split.reverse,.two-grid{grid-template-columns:1fr}.icon-grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}.icon-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.three-grid,.four-grid,.icon-grid.six,.icon-grid.four,.icon-grid.two{grid-template-columns:1fr}.feature-card img{height:200px}}

/* WooCommerce */
.woocommerce .products { margin-top: 1rem !important; }
.product-archive-v2 .woocommerce .products,
.page-template-page-products .woocommerce .products {
	margin-top: 0 !important;
}
.woocommerce ul.products{
	display:grid !important;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:1.25rem;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{
	display:none !important;
	content:none !important;
}
@media(max-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
.woocommerce ul.products li.product{
	width:100% !important;
	margin:0 !important;
	float:none !important;
	border:1px solid var(--border);
	border-radius:var(--radius);
	padding:1rem;
	background:#fff;
	box-shadow:0 2px 10px rgba(13,27,42,.04);
	transition:transform .25s ease, box-shadow .25s ease;
	display:flex;
	flex-direction:column;
}
.woocommerce ul.products li.product:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,27,42,.08)}
.woocommerce ul.products li.product a img{
	border-radius:8px;
	background:#fff;
	border:1px solid var(--border);
	padding:.45rem;
	width:100%;
	aspect-ratio:1 / 1;
	height:auto;
	object-fit:contain;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link{
	display:flex;
	flex-direction:column;
	gap:.75rem;
	flex:1;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price{display:none !important;}
.woocommerce ul.products li.product .button { display: none !important; }
.woocommerce ul.products li.product h2,
.woocommerce div.product .product_title{
	font-family:var(--font-h);
	color:var(--navy);
	font-size:1rem !important;
	font-weight:600;
	line-height:1.3;
	margin-bottom:.5rem !important;
	border-bottom:none !important;
	padding-bottom:0 !important;
}
.ntpm-product-card-details{margin-top:auto;padding-top:0;border-top:none}
.ntpm-product-card-desc,
.woocommerce ul.products li.product .ntpm-product-card-desc{
	font-family:var(--font-b) !important;
	font-size:.8125rem !important;
	color:var(--muted) !important;
	line-height:1.5 !important;
	margin:0 0 1.1rem !important;
	font-weight:400 !important;
}
.ntpm-product-card-specs{
	font-family:var(--font-b);
	font-size:.72rem;
	color:var(--muted);
	line-height:1.65;
	background:var(--bg-alt);
	border-radius:6px;
	padding:.6rem .75rem;
	margin-bottom:.75rem;
}
.ntpm-product-card-specs::before{
	content:'Specifications';
	display:block;
	font-family:var(--font-h);
	font-size:.58rem;
	font-weight:600;
	letter-spacing:.1em;
	text-transform:uppercase;
	color:var(--teal);
	margin-bottom:.35rem;
}
.ntpm-product-card-code{
	display:inline-flex;
	align-items:center;
	gap:.35rem;
	font-family:var(--font-h);
	font-size:.65rem;
	font-weight:600;
	letter-spacing:.05em;
	color:var(--teal);
	background:rgba(0,161,154,.07);
	border:1px solid rgba(0,161,154,.18);
	border-radius:5px;
	padding:3px 8px;
	margin:0 0 .75rem;
}
.ntpm-product-cta-group { display: flex; gap: .75rem; margin-top: auto; flex-wrap: wrap; }
.ntpm-product-cta-group .btn{padding:10px 14px;font-size:.7rem}
.product-archive-v2 .product-archive-cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.15rem 0 1rem}
.product-archive-v2 .product-chip-row{display:flex;gap:.6rem;flex-wrap:wrap}
.product-archive-v2 .product-chip-row a{display:inline-flex;align-items:center;padding:.5rem .8rem;border-radius:999px;border:1px solid var(--border);font-family:var(--font-h);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);background:#fff;transition:.25s}
.product-archive-v2 .product-chip-row a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.product-hero{position:relative;overflow:hidden;padding:5.25rem 0 4.5rem}
.product-hero-bg{position:absolute;inset:0}
.product-hero-bg img{width:100%;height:100%;object-fit:cover}
.product-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(13,27,42,.97) 0%,rgba(13,27,42,.90) 38%,rgba(13,27,42,.60) 65%,rgba(13,27,42,.18) 100%)}
.product-hero .container{position:relative;z-index:2}
.brand-filter-pills{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.75rem}
.bfp{display:inline-flex;align-items:center;padding:.55rem 1.2rem;border-radius:999px;border:1.5px solid rgba(255,255,255,.45);font-family:var(--font-h);font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.85);background:rgba(0,0,0,.25);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .25s}
.bfp:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.75);color:#fff}
.bfp--active{background:#fff!important;color:var(--navy)!important;border-color:#fff!important}
.bfp--gold.bfp--active{background:var(--gold)!important;color:#fff!important;border-color:var(--gold)!important}
.bfp--green.bfp--active{background:var(--green)!important;color:#1a3d1f!important;border-color:var(--green)!important}
.product-archive-cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.15rem}
.product-chip-row{display:flex;gap:.6rem;flex-wrap:wrap}
.product-chip-row a{display:inline-flex;align-items:center;padding:.5rem .8rem;border-radius:999px;border:1px solid var(--border);font-family:var(--font-h);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);background:#fff;transition:.25s}
.product-chip-row a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.product-category-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem}
@media(max-width:980px){.product-category-panels{grid-template-columns:1fr}}
.product-subcategory-panels{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1480px){.product-subcategory-panels{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.product-subcategory-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.product-subcategory-panels{grid-template-columns:1fr}}
.product-cat-panel{position:relative;border-radius:var(--radius);overflow:hidden;min-height:230px}
.product-cat-panel .bg{position:absolute;inset:0}
.product-cat-panel .bg img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.product-cat-panel:hover .bg img{transform:scale(1.05)}
.product-cat-panel .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,27,42,.85),rgba(13,27,42,.15))}
.product-cat-panel .body{position:relative;z-index:2;padding:1.25rem;display:flex;flex-direction:column;justify-content:flex-end;height:100%}
.product-cat-panel .body span{font-family:var(--font-h);font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.product-cat-panel .body h3{font-family:var(--font-h);font-size:1.15rem;font-weight:600;color:#fff;margin:.35rem 0 .45rem}
.product-cat-panel .body p{font-family:var(--font-b);font-size:.86rem;line-height:1.5;color:rgba(255,255,255,.82);margin:0 0 .7rem}
.product-cat-panel .body a{font-family:var(--font-h);font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.product-cat-panel .body .panel-arrow-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.71rem}
.product-cat-panel .body .panel-arrow-link span{color:currentColor;font-size:.95rem;letter-spacing:0;text-transform:none}
/* ── Nav-sec search trigger ── */
.nav-sec-actions{display:flex;align-items:center;gap:.75rem;justify-self:end;flex-shrink:0}
.nav-sec-search{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.68rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.55);white-space:nowrap;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.32rem .85rem;cursor:pointer;transition:all .22s}
.nav-sec-search svg{width:13px;height:13px;flex-shrink:0}
.nav-sec-search:hover{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22)}
.nav-sec-search.active{color:#fff;background:var(--teal);border-color:var(--teal)}

/* ── Header search overlay (hso) ── */
.hso-backdrop{position:fixed;inset:0;background:rgba(13,27,42,.55);backdrop-filter:blur(4px);z-index:490;opacity:0;pointer-events:none;transition:opacity .28s var(--ease)}
.hso-backdrop.open{opacity:1;pointer-events:auto}
.hso{position:fixed;top:var(--header-h);left:0;right:0;z-index:495;transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .28s var(--ease),transform .28s var(--ease-out)}
.hso.open{opacity:1;transform:translateY(0);pointer-events:auto}
.admin-bar .hso{top:calc(var(--header-h) + 32px)}

/* Search bar strip */
.hso-bar{background:var(--navy);border-bottom:1px solid rgba(255,255,255,.1);padding:.75rem 0}
.hso-field{position:relative;display:flex;align-items:center;gap:.75rem}
.hso-field-icon{position:absolute;left:1.1rem;width:17px;height:17px;color:rgba(255,255,255,.45);pointer-events:none;stroke-width:2;flex-shrink:0}
.hso-input{flex:1;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.14);border-radius:10px;padding:.75rem 7rem .75rem 2.9rem;font-family:var(--font-b);font-size:.9375rem;color:#fff;outline:none;transition:border-color .2s,background .2s,box-shadow .2s;-webkit-appearance:none}
.hso-input::placeholder{color:rgba(255,255,255,.32)}
.hso-input:focus{border-color:var(--teal);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(0,161,154,.18)}
.hso-clear{position:absolute;right:5.5rem;display:none;align-items:center;justify-content:center;width:22px;height:22px;background:rgba(255,255,255,.15);border:none;border-radius:50%;color:#fff;cursor:pointer;padding:0;transition:background .2s}
.hso-clear:hover{background:rgba(255,255,255,.28)}
.hso-clear i{width:11px;height:11px;stroke-width:3}
.hso-esc-btn{position:absolute;right:1rem;display:flex;align-items:center;justify-content:center;background:none;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:rgba(255,255,255,.5);font-family:var(--font-h);font-size:.65rem;font-weight:700;letter-spacing:.08em;padding:.2rem .5rem;cursor:pointer;transition:all .2s;white-space:nowrap}
.hso-esc-btn kbd{font-family:inherit;font-size:inherit;font-weight:inherit}
.hso-esc-btn:hover{color:#fff;border-color:rgba(255,255,255,.45)}

/* Results panel */
.hso-panel{background:#fff;border-top:1px solid var(--border);padding:1.5rem 0 2rem;max-height:calc(100vh - var(--header-h) - 70px);overflow-y:auto}
.hso-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem}
.hso-panel-head-label{font-family:var(--font-h);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hso-panel-head-label strong{color:var(--teal)}
.hso-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
@media(max-width:1100px){.hso-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:740px){.hso-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.hso-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}}

/* Search result card */
.hso-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--text);background:#fff;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s}
.hso-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(13,27,42,.1);border-color:rgba(0,161,154,.3)}
.hso-card-img{background:var(--bg-alt);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:.6rem;border-bottom:1px solid var(--border)}
.hso-card-img img,.hso-card-img-eager{width:100%;height:auto;max-height:100%;object-fit:contain;display:block}
.hso-card-img-placeholder{width:40px;height:40px;color:var(--border);stroke-width:1.25}
.hso-card-body{padding:.75rem .8rem;display:flex;flex-direction:column;gap:.3rem;flex:1}
.hso-card-cats{margin-bottom:.15rem;line-height:1.4}
.hso-card-cat{font-family:var(--font-h);font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);display:inline}
.hso-card-cat+.hso-card-cat::before{content:" · ";font-weight:400;letter-spacing:0;opacity:.5}
.hso-card-title{font-family:var(--font-h);font-size:.82rem;font-weight:600;color:var(--navy);line-height:1.3}
.hso-card-sku{font-family:var(--font-b);font-size:.7rem;color:var(--light)}

/* Skeleton loader */
.hso-skeleton{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.hso-skel-img{background:var(--bg-alt);aspect-ratio:1/1;animation:skelPulse 1.4s ease-in-out infinite}
.hso-skel-body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}
.hso-skel-line{background:var(--bg-alt);border-radius:4px;animation:skelPulse 1.4s ease-in-out infinite}
.hso-skel-line-sm{height:8px;width:55%}
.hso-skel-line-md{height:11px;width:90%}
.hso-skel-line-md2{height:11px;width:70%}
@keyframes skelPulse{0%,100%{opacity:1}50%{opacity:.45}}

/* No results */
.hso-empty{text-align:center;padding:2.5rem 1rem;color:var(--muted);font-family:var(--font-b);font-size:.9rem;line-height:1.6;grid-column:1/-1}
.hso-empty i{width:36px;height:36px;display:block;margin:0 auto .85rem;color:var(--border);stroke-width:1.5}
.hso-empty strong{color:var(--text)}

/* View all footer */
.hso-panel-foot{padding-top:1.1rem;border-top:1px solid var(--border);margin-top:1rem;display:flex;justify-content:flex-end;align-items:center}
.hso-view-all{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--teal);text-decoration:none;transition:gap .2s,color .2s}
.hso-view-all:hover{color:var(--navy);gap:.65rem}
.hso-view-all svg{transition:transform .2s;flex-shrink:0}
.hso-view-all:hover svg{transform:translateX(3px)}

/* Page-level inline search (All Products page) — keep it for compatibility */
.ps-bar{display:none}
.ps-no-results{padding:3rem 0 2rem;text-align:center}
.ps-no-results i{width:40px;height:40px;color:var(--border);display:block;margin:0 auto 1rem;stroke-width:1.5}
.ps-no-results p{font-family:var(--font-b);color:var(--muted);font-size:.9375rem;line-height:1.6}
.ps-no-results p strong{color:var(--text)}
.ps-no-results-hint{margin-top:.4rem !important;font-size:.85rem !important;color:var(--light) !important}
.ps-no-results a{color:var(--teal);text-decoration:underline}

.woocommerce nav.woocommerce-pagination{
	margin:1.5rem 0 0;
	text-align:center;
}
.woocommerce nav.woocommerce-pagination ul{
	margin:0;
	padding:0;
	border:none;
	display:inline-flex;
	gap:0;
}
.woocommerce nav.woocommerce-pagination ul li{
	border:1px solid rgba(24,53,94,.2);
	margin-left:-1px;
	background:#fff;
}
.woocommerce nav.woocommerce-pagination ul li:first-child{
	margin-left:0;
	border-top-left-radius:8px;
	border-bottom-left-radius:8px;
	overflow:hidden;
}
.woocommerce nav.woocommerce-pagination ul li:last-child{
	border-top-right-radius:8px;
	border-bottom-right-radius:8px;
	overflow:hidden;
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers{
	min-width:42px;
	height:40px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0 12px;
	font-family:var(--font-h);
	font-size:.85rem;
	font-weight:600;
	color:var(--navy);
	background:#fff;
	transition:.2s ease;
}
.woocommerce nav.woocommerce-pagination ul li a.page-numbers:hover{
	background:rgba(24,53,94,.06);
	color:var(--navy);
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers.current{
	background:var(--navy);
	color:#fff;
}
.woocommerce nav.woocommerce-pagination ul li .next.page-numbers,
.woocommerce nav.woocommerce-pagination ul li .prev.page-numbers{
	background:none;
	min-width:42px;
	height:40px;
	padding:0 12px;
	font-size:0;
	color:transparent;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	transition:opacity .25s,transform .25s;
}
.woocommerce nav.woocommerce-pagination ul li .next.page-numbers:hover,
.woocommerce nav.woocommerce-pagination ul li .prev.page-numbers:hover{
	background:none;
	opacity:.7;
	transform:translateX(2px);
}
.woocommerce nav.woocommerce-pagination ul li .prev.page-numbers:hover{
	transform:translateX(-2px);
}
.woocommerce nav.woocommerce-pagination ul li .next.page-numbers::after{
	content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300A19A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E");
	display:flex;
	align-items:center;
}
.woocommerce nav.woocommerce-pagination ul li .prev.page-numbers::before{
	content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300A19A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5'/%3E%3Cpath d='m12 19-7-7 7-7'/%3E%3C/svg%3E");
	display:flex;
	align-items:center;
}
/* ── Single Product Page ─────────────────────────────────────── */
.psp-top-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.75rem;min-height:38px}
.psp-back-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-h);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--navy);text-decoration:none;border:1.5px solid rgba(24,53,94,.22);border-radius:7px;padding:.55rem 1rem;transition:border-color .2s,background .2s}
.psp-back-btn:hover{border-color:var(--navy);background:rgba(24,53,94,.04)}
.product-single-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}
@media(max-width:980px){.product-single-layout{grid-template-columns:1fr}}
.product-media-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 4px 24px rgba(13,27,42,.06);position:sticky;top:calc(116px + 1.5rem)}
@media(max-width:1024px){.product-media-card{position:static;top:auto}}
.product-main-image{border-radius:10px;overflow:hidden;background:#fff;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}
.product-main-image img{width:100%;height:100%;object-fit:contain;display:block}
.product-gallery-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:.9rem}
.product-thumb{border:2px solid var(--border);border-radius:8px;overflow:hidden;background:#fff;aspect-ratio:1/1;cursor:pointer;transition:border-color .2s}
.product-thumb:hover{border-color:var(--teal)}
.product-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.product-info-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2rem;box-shadow:0 4px 24px rgba(13,27,42,.06);display:flex;flex-direction:column;gap:1.5rem}
.product-single-v2 .product_title{font-family:var(--font-h);font-size:clamp(1.5rem,2.5vw,2rem) !important;font-weight:600;line-height:1.18;color:var(--navy);letter-spacing:-.015em;margin:0 !important}
.psp-title-sub{font-family:var(--font-b);font-size:.88rem;color:var(--muted);line-height:1.5;margin:0 0 1rem}
.psp-brand-card{display:flex;flex-direction:column;gap:.875rem;padding:1.25rem 1.25rem 1.4rem;border-radius:var(--radius);border:1px solid}
.psp-brand-card-top{display:flex;align-items:center;gap:.75rem}
.psp-brand-logo{max-height:44px;width:auto;display:block}
.psp-brand-card-name{font-family:var(--font-h);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.psp-brand-card-desc{font-family:var(--font-b);font-size:.8125rem;color:var(--muted);line-height:1.6;margin:0}
.product-short{font-family:var(--font-b);font-size:.95rem;color:var(--muted);line-height:1.7;margin:0}
.product-enquiry-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:0}
.psp-btn-primary{display:inline-flex;align-items:center;gap:.55rem;padding:13px 22px;border-radius:8px;background:var(--navy);color:#fff;font-family:var(--font-h);font-size:.76rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;transition:background .25s}
.psp-btn-primary:hover{background:var(--blue)}
.product-specs-wrap{border-top:1.5px solid var(--bg-alt);padding-top:1.5rem;margin:0}
.product-spec-title{font-family:var(--font-h);font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin:0 0 .75rem}
.psp-reorder-wrap{display:inline-flex;flex-direction:column;gap:.3rem;background:var(--bg-alt);border-radius:8px;padding:.7rem 1rem;margin-bottom:1.25rem}
.psp-reorder-label{font-family:var(--font-h);font-size:.58rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.psp-reorder-value{font-family:var(--font-h);font-size:1.1rem;font-weight:700;color:var(--navy);letter-spacing:.04em}
.product-spec-table{width:100%;border-collapse:collapse}
.product-spec-table tr:nth-child(even) td,.product-spec-table tr:nth-child(even) th{background:rgba(0,161,154,.04)}
.product-spec-table th,.product-spec-table td{padding:.65rem .7rem;border-bottom:1px solid var(--border);text-align:left;font-size:.85rem;vertical-align:top}
.product-spec-table th{width:40%;font-family:var(--font-h);font-weight:600;color:var(--navy)}
.product-spec-table td{color:var(--muted);font-family:var(--font-b)}
.product-description-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2rem;box-shadow:0 4px 24px rgba(13,27,42,.06);margin-top:2rem}
.product-description-card h2{font-family:var(--font-h);font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1.5px solid var(--bg-alt)}
.product-desc-body{font-family:var(--font-b);font-size:.95rem;color:var(--text);line-height:1.75}
.product-desc-body p{margin-bottom:1rem}
.product-desc-body ul{padding-left:1.25rem;margin-bottom:1rem}
.product-desc-body li{margin-bottom:.35rem}
.product-related-wrap{margin-top:3rem}
.product-single-v2 .related > h2{font-family:var(--font-h);font-size:clamp(1.3rem,2vw,1.7rem);font-weight:600;color:var(--navy);margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--bg-alt)}
.ntpm-enquiry-page{
	background:var(--bg);
	padding:0;
}
.ntpm-enquiry-header{
	padding:1rem 0 .9rem;
	background:linear-gradient(180deg,#f7fbff 0%,#f2f6fb 100%);
	border-top:1px solid var(--border);
	border-bottom:1px solid var(--border);
}
.ntpm-enquiry-header h1{
	font-family:var(--font-h);
	font-size:clamp(2rem,3.4vw,2.6rem);
	line-height:1.05;
	color:var(--navy);
	margin:0 0 .45rem;
}
.ntpm-enquiry-header p{margin:0;color:var(--muted);max-width:760px}
.ntpm-enquiry-content{padding:.75rem 0 2rem}
.ntpm-enquiry-layout{
	display:grid;
	grid-template-columns:1.1fr .9fr;
	gap:1.25rem;
	align-items:start;
}
@media(max-width:980px){.ntpm-enquiry-layout{grid-template-columns:1fr}}
.ntpm-enquiry-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:1rem;
}
@media(max-width:400px){.ntpm-enquiry-grid{grid-template-columns:1fr}}
.ntpm-enquiry-item{
	position:relative;
	border:1px solid var(--border);
	border-radius:var(--radius);
	padding:1rem;
	background:#fff;
	box-shadow:0 2px 10px rgba(13,27,42,.04);
}
.ntpm-enquiry-item .woocommerce-loop-product__link{
	display:flex;
	flex-direction:column;
	gap:.75rem;
	text-decoration:none;
}
.ntpm-enquiry-item img{
	width:100%;
	aspect-ratio:1 / 1;
	height:auto;
	object-fit:contain;
	border-radius:8px;
	background:#fff;
	border:1px solid var(--border);
	padding:.45rem;
}
.ntpm-enquiry-item h2{
	font-family:var(--font-h);
	font-size:1.05rem;
	font-weight:600;
	color:var(--navy);
	line-height:1.25;
	margin:0;
	padding-right:1.8rem;
}
.ntpm-remove-item{
	position:absolute;
	top:.55rem;
	right:.55rem;
	z-index:5;
	width:28px;
	height:28px;
	border-radius:999px;
	border:1px solid var(--border);
	background:#fff;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:1.1rem;
	line-height:1;
	color:var(--navy);
	text-decoration:none;
}
.ntpm-remove-item:hover{background:#c0392b;border-color:#c0392b;color:#fff}
.ntpm-enquiry-form-sticky{
	position:sticky;
	top:132px;
}
@media(max-width:980px){.ntpm-enquiry-form-sticky{position:static;top:auto}}
.ntpm-empty-enquiry{
	background:#fff;
	border:1px solid var(--border);
	border-radius:var(--radius);
	padding:1.1rem 1.2rem;
}
.alert{margin-top:1rem;padding:.85rem 1rem;border-radius:var(--radius);font-size:.9rem}
.alert.success{background:#e7f8ec;border:1px solid #b8e4c5;color:#215e32}
.alert.error{background:#fff1f0;border:1px solid #ffd1cc;color:#8b2a21}
.form-wrap{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 2px 14px rgba(13,27,42,.04)}
.ntpm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:760px){.ntpm-form-grid{grid-template-columns:1fr}}
.field{margin-bottom:1rem}
.field label{display:block;font-family:var(--font-h);font-size:.78rem;font-weight:600;color:var(--navy);margin-bottom:.38rem}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:#fff;padding:.75rem .8rem;font-family:var(--font-b);font-size:.92rem;color:var(--text)}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:rgba(24,53,94,.45);box-shadow:0 0 0 3px rgba(24,53,94,.08)}
.submit-row{display:flex;justify-content:flex-start;gap:.75rem;align-items:center}
.btn-submit{display:inline-flex;align-items:center;gap:.5rem;padding:13px 26px;border:none;border-radius:8px;background:var(--navy);color:#fff;font-family:var(--font-h);font-weight:600;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.btn-submit:hover{background:var(--dark)}
.hidden-trap{position:absolute;left:-9999px;opacity:0;pointer-events:none}
