/*
Theme Name: JELIMO B2B Visual
Theme URI: https://jelimoco.com/
Author: JELIMO
Description: Visual Gutenberg-editable B2B WordPress theme for JELIMO — custom mats, fitness products, OEM/ODM manufacturing and RFQ lead generation.
Version: 3.1.6
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: jelimo-b2b
*/

:root{
  --navy:#0b2e5e;
  --navy-2:#153f78;
  --ink:#111827;
  --muted:#64748b;
  --line:#e7e8eb;
  --warm:#f5f3ee;
  --warm-2:#ebe7df;
  --white:#ffffff;
  --green:#1d6d58;
  --max:1440px;
  --radius:26px;
  --shadow:0 18px 60px rgba(13,34,66,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.section{padding:92px 0}
.section-sm{padding:72px 0}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}
.eyebrow:before{content:"";width:28px;height:2px;background:var(--navy)}
h1,h2,h3{line-height:1.08;margin:0;letter-spacing:-.035em}
h1{font-size:clamp(48px,6vw,88px);font-weight:650;max-width:900px}
h2{font-size:clamp(38px,4.8vw,64px);font-weight:620}
h3{font-size:26px;font-weight:620}
p{margin:0}
.lede{font-size:clamp(18px,2vw,22px);color:#526174;max-width:760px;line-height:1.6}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:760;font-size:14px;border:1px solid transparent;transition:.25s ease;cursor:pointer}
.btn-primary{background:var(--navy);color:#fff;box-shadow:0 10px 24px rgba(11,46,94,.18)}
.btn-primary:hover{background:#071f42;transform:translateY(-1px)}
.btn-secondary{border-color:#cbd5e1;background:#fff;color:var(--navy)}
.btn-secondary:hover{border-color:var(--navy);transform:translateY(-1px)}
.btn-light{background:#fff;color:var(--navy)}
.btn-link{font-weight:780;color:var(--navy);display:inline-flex;gap:8px;align-items:center}
.btn-link:after{content:"↗"}

/* V3.1.2 — Global wide layout: all wide page containers use 1440px on desktop. */
.alignwide{max-width:1440px;margin-left:auto;margin-right:auto}
.wp-site-blocks>.alignwide{width:min(calc(100% - 40px),1440px)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid rgba(15,23,42,.07)}
.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:176px;max-height:50px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:650;color:#263446}
.main-nav>.nav-item{position:relative;align-self:stretch;display:flex;align-items:center}
.main-nav>a,.main-nav>.nav-item>a{position:relative;padding:29px 0;display:flex;align-items:center;gap:6px}
.main-nav>a:after,.main-nav>.nav-item>a:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--navy);transition:.22s}
.main-nav>a:hover:after,.main-nav>.nav-item:hover>a:after,.main-nav>.nav-item:focus-within>a:after{right:0}
.nav-caret{font-size:13px;color:#768398;transform:translateY(-1px)}
.submenu{position:absolute;left:-24px;top:72px;width:330px;background:#fff;border:1px solid #e4e8ee;border-radius:18px;padding:10px;box-shadow:0 22px 60px rgba(15,23,42,.13);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease}
.has-submenu:hover .submenu,.has-submenu:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.submenu a{display:block;padding:12px 13px;border-radius:12px;color:#243349;transition:.18s}
.submenu a:hover{background:#f4f6f8;color:var(--navy)}
.submenu span{display:block;font-size:13px;font-weight:780}
.submenu small{display:block;margin-top:2px;font-size:11px;font-weight:500;color:#7c8796;line-height:1.35}
.header-actions{display:flex;align-items:center;gap:10px}
.mobile-toggle{display:none;border:0;background:transparent;padding:10px;font-size:24px;color:var(--navy)}
.mobile-panel{display:none}

/* Hero */
.hero{padding:72px 0 78px;background:linear-gradient(180deg,#fff 0%,#f8f8f6 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:54px;align-items:center}
.hero-copy{padding:18px 0}
.hero-copy .eyebrow{margin-bottom:22px}
.hero-copy h1{font-size:clamp(56px,5.7vw,86px);max-width:690px}
.hero-copy h1 span{display:block;color:var(--navy)}
.hero-copy .lede{margin-top:26px;max-width:650px;font-size:clamp(18px,1.6vw,21px)}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero-proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;color:#455468;font-size:12px;font-weight:760}
.hero-proof span{display:flex;align-items:center;gap:8px}
.hero-proof i{width:7px;height:7px;border-radius:50%;background:var(--green)}
.hero-scenes{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(170px,.92fr);gap:10px;height:560px;min-width:0}
.hero-scene-stack{display:grid;grid-template-rows:repeat(3,1fr);gap:10px;min-width:0;min-height:0}
.hero-scene{position:relative;display:block;overflow:hidden;border-radius:18px;background:#e9edf1;box-shadow:0 12px 35px rgba(15,36,64,.08);min-width:0;min-height:0}
.hero-scene img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.hero-scene:hover img{transform:scale(1.025)}
.hero-scene:after{content:"";position:absolute;inset:auto 0 0;height:44%;background:linear-gradient(180deg,transparent,rgba(4,19,38,.58));pointer-events:none}
.scene-label{position:absolute;z-index:2;left:16px;bottom:14px;display:flex;align-items:baseline;gap:8px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.28)}
.scene-label small{font-size:9px;font-weight:850;letter-spacing:.12em;opacity:.78}
.scene-label b{font-size:13px;line-height:1.1;letter-spacing:-.01em}
.hero-scene-main{border-radius:22px}
.hero-scene-main .scene-label{left:22px;bottom:20px}
.hero-scene-main .scene-label b{font-size:18px}
/* Stats strip */
.stats-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.stats-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.stat{padding:34px 22px;border-right:1px solid var(--line)}
.stat:first-child{border-left:1px solid var(--line)}
.stat strong{display:block;font-size:30px;line-height:1;color:var(--navy);letter-spacing:-.04em;margin-bottom:8px}
.stat span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#738094;font-weight:700}

/* Intro */
.split-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:end;margin-bottom:48px}
.split-head .lede{justify-self:end}

/* Categories */
.category-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.category-card{position:relative;min-height:370px;border-radius:28px;overflow:hidden;background:#111;color:#fff;isolation:isolate}
.category-card:nth-child(1){grid-column:span 7}.category-card:nth-child(2){grid-column:span 5}.category-card:nth-child(n+3){grid-column:span 4;min-height:320px}
.category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,14,28,.03) 30%,rgba(3,14,28,.82) 100%);z-index:1}
.category-card:hover img{transform:scale(1.035)}
.category-content{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}
.category-content small{text-transform:uppercase;letter-spacing:.13em;font-size:11px;opacity:.8;font-weight:800}
.category-content h3{font-size:30px;margin-top:7px}
.category-content p{font-size:14px;opacity:.84;margin-top:8px;max-width:430px}
.category-arrow{position:absolute;z-index:2;right:22px;top:22px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--navy);font-weight:900}

/* Customization */
.custom-section{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.custom-section:before{content:"";position:absolute;width:550px;height:550px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:-180px;top:-160px;box-shadow:0 0 0 95px rgba(255,255,255,.025),0 0 0 190px rgba(255,255,255,.018)}
.custom-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;position:relative;z-index:1}
.custom-head .eyebrow{color:#b9c8dd}.custom-head .eyebrow:before{background:#b9c8dd}
.custom-head .lede{color:#ccd7e5}
.custom-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.13);margin-top:54px;border:1px solid rgba(255,255,255,.13);border-radius:24px;overflow:hidden;position:relative;z-index:1}
.custom-item{background:rgba(8,35,73,.92);padding:34px;min-height:180px}
.custom-num{font-size:11px;letter-spacing:.14em;color:#9fb1c9;font-weight:800;margin-bottom:46px}
.custom-item h3{font-size:21px;margin-bottom:7px}.custom-item p{font-size:13px;color:#b8c6d8}

/* Low MOQ */
.moq-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.moq-panel{background:var(--warm);border-radius:32px;padding:62px;min-height:480px;display:flex;flex-direction:column;justify-content:space-between}
.moq-big{font-size:clamp(82px,10vw,150px);letter-spacing:-.075em;color:var(--navy);font-weight:650;line-height:.8}
.moq-big span{font-size:.25em;letter-spacing:.02em;vertical-align:top;margin-left:8px}
.moq-side{display:grid;grid-template-rows:1fr 1fr;gap:22px}
.info-card{border:1px solid var(--line);border-radius:28px;padding:36px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}
.info-card strong{font-size:44px;letter-spacing:-.05em;color:var(--navy)}
.info-card p{font-size:14px;color:#637083;max-width:400px}

/* Manufacturing */
.manufacturing{background:#f7f8fa}
.manufacturing-intro{display:grid;grid-template-columns:1fr .9fr;gap:48px;align-items:end;margin-bottom:42px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.process-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid #e8ebef}
.process-card img{width:100%;aspect-ratio:1.5/1;object-fit:cover}
.process-meta{padding:15px 16px 18px}
.process-meta small{font-size:10px;color:#8a96a8;font-weight:800;letter-spacing:.12em}.process-meta strong{display:block;font-size:13px;margin-top:3px;color:#233146}

/* B2B buyer solutions */
.solutions-section{background:#fff}
.solutions-head{margin-bottom:40px}
.buyer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.buyer-card{border:1px solid var(--line);border-radius:22px;padding:30px;background:#fff;min-height:205px;transition:.25s ease}
.buyer-card:hover{transform:translateY(-3px);box-shadow:0 16px 42px rgba(13,34,66,.07);border-color:#d4d9e1}
.buyer-card span{display:block;font-size:11px;letter-spacing:.14em;font-weight:800;color:#8995a6;margin-bottom:36px}
.buyer-card h3{font-size:23px;color:#182338}
.buyer-card p{font-size:14px;color:#687589;margin-top:10px;max-width:330px}

/* Quality / compliance */
.quality-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.quality-panel{border-radius:30px;padding:48px;background:var(--navy);color:#fff}
.quality-panel.alt{background:var(--warm);color:var(--ink)}
.quality-panel .lede{font-size:17px;color:#c7d3e2;margin-top:20px}.quality-panel.alt .lede{color:#64748b}
.quality-kpi{display:flex;align-items:flex-end;gap:14px;margin:24px 0 10px}.quality-kpi strong{font-size:48px;line-height:.9;letter-spacing:-.06em}.quality-kpi span{font-size:13px;color:#b9c8db;max-width:150px;line-height:1.35}.cert-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.cert{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 15px;font-size:12px;font-weight:800;letter-spacing:.06em}
.alt .cert{border-color:#d9d5cc;color:var(--navy);background:#fff}
.market-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:34px}
.market{padding:14px 16px;border-top:1px solid #dcd9d2;font-size:13px;font-weight:700;color:#354154}.compliance-note{font-size:11px;color:#95a8bf;margin-top:18px;max-width:520px}.rfq-direct{margin-top:30px;font-size:13px;color:#66758a}.rfq-direct a{color:var(--navy);font-weight:800;border-bottom:1px solid #aab9cc}

/* About/CTA */
.cta-band{background:#0a244a;color:#fff;border-radius:34px;padding:72px;display:grid;grid-template-columns:1fr auto;gap:45px;align-items:end}
.cta-band p{color:#bfccdc;max-width:670px;margin-top:18px;font-size:18px}

/* RFQ */
.rfq-section{background:var(--warm)}
.rfq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.rfq-points{margin-top:38px;display:grid;gap:18px}
.rfq-point{display:flex;gap:13px;color:#4b596b;font-size:14px}.rfq-point b{color:var(--navy)}
.rfq-form{background:#fff;border-radius:30px;padding:38px;border:1px solid #e6e3dc;box-shadow:0 16px 50px rgba(31,41,55,.06)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800;color:#425067}
.field input,.field select,.field textarea{width:100%;border:1px solid #d8dde5;border-radius:13px;background:#fff;padding:13px 14px;color:#172033;outline:none;transition:.2s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#7595bd;box-shadow:0 0 0 3px rgba(11,46,94,.07)}
.field textarea{min-height:125px;resize:vertical}
.field-note{font-size:11px;color:#8792a2}.hp-field{position:absolute!important;left:-10000px!important;opacity:0!important}
.form-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:18px}.privacy-note{font-size:11px;color:#8993a2;max-width:310px}
.alert{padding:14px 16px;border-radius:12px;margin-bottom:18px;font-size:13px;font-weight:700}.alert-success{background:#e9f6ef;color:#146247}.alert-error{background:#fff0f0;color:#9d2d2d}

/* Inner pages */
.page-hero{padding:92px 0 70px;background:var(--warm)}
.page-hero h1{font-size:clamp(48px,6vw,76px);max-width:980px}
.page-body{padding:82px 0 110px}.page-body .entry-content{max-width:860px;font-size:17px;color:#4d5b6d}.entry-content h2{font-size:38px;margin:48px 0 18px}.entry-content h3{font-size:26px;margin:34px 0 12px}.entry-content p{margin:0 0 20px}.entry-content ul{padding-left:20px}.entry-content li{margin:8px 0}
.product-list-grid,.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.simple-card{border:1px solid var(--line);border-radius:20px;padding:27px;background:#fff}.simple-card h3{font-size:21px}.simple-card p{font-size:14px;color:#687589;margin-top:9px}

/* Footer */
.site-footer{background:#071a36;color:#fff;padding:70px 0 30px}
.footer-grid{display:grid;grid-template-columns:1.25fr .7fr .7fr .65fr 1fr;gap:36px}
.footer-logo{filter:invert(1);width:170px}.footer-brand p{margin-top:22px;color:#9fb0c6;max-width:360px;font-size:14px}
.footer-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#8fa3bd;margin:0 0 18px}.footer-col a,.footer-col span{display:block;color:#d7e0ec;font-size:14px;margin:10px 0}.footer-col a:hover{color:#fff}
.footer-bottom{margin-top:58px;border-top:1px solid rgba(255,255,255,.11);padding-top:24px;display:flex;justify-content:space-between;gap:20px;color:#8295ad;font-size:12px}

@media(max-width:1050px){
 .main-nav{gap:18px}.header-actions .btn{display:none}
 .hero-grid,.split-head,.custom-head,.manufacturing-intro,.rfq-layout{grid-template-columns:1fr;gap:36px}
 .hero-showcase{min-height:560px;max-width:720px;width:100%;margin:0 auto}.split-head .lede{justify-self:start}
 .stats-grid{grid-template-columns:repeat(3,1fr)}.stat:nth-child(4){border-left:1px solid var(--line)}
 .category-card:nth-child(1),.category-card:nth-child(2){grid-column:span 6}.category-card:nth-child(n+3){grid-column:span 4}
 .process-grid{grid-template-columns:repeat(2,1fr)}
 .buyer-grid{grid-template-columns:repeat(2,1fr)}
 .custom-grid{grid-template-columns:repeat(2,1fr)}
 .footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr}
 .footer-brand{grid-column:1/-1}
}
@media(max-width:780px){
 .container{width:min(calc(100% - 28px),var(--max))}.section{padding:78px 0}.section-sm{padding:52px 0}
 .header-inner{height:70px}.brand img{width:145px}.main-nav,.header-actions{display:none}.mobile-toggle{display:block}
 .mobile-panel.open{display:block;position:absolute;left:0;right:0;top:70px;background:#fff;border-top:1px solid var(--line);box-shadow:0 16px 28px rgba(15,23,42,.08);padding:16px 22px 24px}.mobile-panel a{display:block;padding:12px 4px;font-weight:700;color:#243349}.mobile-panel .btn{margin-top:10px;width:100%}
 .hero{padding:52px 0 62px}.hero-grid{gap:42px}.hero-copy{padding:6px 0}.hero-copy h1{font-size:clamp(52px,12vw,74px)}.hero-copy .lede{font-size:17px}.hero-showcase{min-height:500px}.showcase-backdrop{inset:24px 2px 24px 28px;border-radius:32px}.showcase-label{top:52px;left:54px}.product-mat{left:58px;top:94px;width:205px;height:350px}.product-block{right:16px;top:102px;width:158px;height:158px}.product-wheel{right:28px;bottom:60px;width:146px;height:146px}.product-wrist{left:148px;bottom:20px;width:250px;height:94px}.chip-one{right:52px;top:48px}.chip-two{left:8px;bottom:72px}
 .stats-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:26px 18px}.stat:nth-child(odd){border-left:1px solid var(--line)}.stat strong{font-size:26px}
 .category-grid{display:grid;grid-template-columns:1fr}.category-card:nth-child(n){grid-column:auto;min-height:330px}
 .custom-grid{grid-template-columns:1fr 1fr}.custom-item{padding:26px;min-height:160px}.custom-num{margin-bottom:34px}
 .moq-wrap{grid-template-columns:1fr}.moq-panel{min-height:400px;padding:40px}.moq-side{grid-template-columns:1fr 1fr;grid-template-rows:none}.info-card{padding:28px;min-height:210px}.info-card strong{font-size:34px}
 .process-grid{grid-template-columns:repeat(2,1fr)}
 .buyer-grid{grid-template-columns:1fr 1fr}
 .quality-grid{grid-template-columns:1fr}.quality-panel{padding:38px}
 .cta-band{padding:42px;grid-template-columns:1fr}.rfq-form{padding:26px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-actions{align-items:flex-start;flex-direction:column}
 .product-list-grid,.solution-grid{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}
}
@media(max-width:520px){
 h1{font-size:46px}h2{font-size:38px}.hero-showcase{min-height:400px}.showcase-backdrop{inset:16px 0 20px 14px}.showcase-label{top:38px;left:34px}.showcase-label span{font-size:8px}.showcase-label strong{font-size:12px}.product-mat{left:34px;top:75px;width:160px;height:278px;border-radius:24px}.product-block{right:7px;top:82px;width:120px;height:120px;border-radius:20px}.product-wheel{right:18px;bottom:40px;width:112px;height:112px;border-radius:20px}.product-wrist{display:none}.showcase-chip{padding:10px 12px;border-radius:14px}.showcase-chip b{font-size:15px}.showcase-chip span{font-size:9px}.chip-one{right:30px;top:34px}.chip-two{left:2px;bottom:48px}
 .stats-grid{grid-template-columns:1fr 1fr}.stat strong{font-size:24px}.stat span{font-size:10px}
 .custom-grid{grid-template-columns:1fr}.custom-item{min-height:145px}.moq-side{grid-template-columns:1fr}.buyer-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}
 .quality-panel{padding:30px}.cta-band{padding:34px 28px}.footer-grid{grid-template-columns:1fr}
}

/* Hero scene responsive overrides — v1.3 */
@media (max-width:1050px){
 .hero-grid{grid-template-columns:1fr;gap:38px}.hero-copy{max-width:760px}.hero-scenes{height:600px;max-width:860px;width:100%;grid-template-columns:1.65fr .9fr}
}
@media (max-width:700px){
 .hero{padding:46px 0 56px}.hero-copy h1{font-size:clamp(48px,13vw,66px)}.hero-copy .lede{font-size:17px}.hero-proof{gap:14px 20px}
 .hero-scenes{height:auto;grid-template-columns:1fr;gap:9px}.hero-scene-main{height:440px}.hero-scene-stack{grid-template-columns:repeat(3,1fr);grid-template-rows:none;gap:8px}.hero-scene-stack .hero-scene{height:138px;border-radius:14px}.hero-scene-stack .scene-label{left:10px;bottom:10px;display:grid;gap:0}.hero-scene-stack .scene-label small{display:none}.hero-scene-stack .scene-label b{font-size:10px}.hero-scene-main .scene-label b{font-size:16px}
}
@media (max-width:460px){
 .hero-scene-main{height:360px}.hero-scene-stack .hero-scene{height:112px}.hero-proof{font-size:11px}.scene-label b{font-size:12px}
}


/* ===== V1.4 Product hub & category pages ===== */
.product-hub-hero,.category-page-hero{padding:78px 0 72px;background:linear-gradient(180deg,#fff 0%,#f5f6f7 100%);overflow:hidden}
.hub-hero-grid,.category-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:64px;align-items:center}
.hub-hero-copy h1,.category-hero-copy h1{font-size:clamp(52px,5.5vw,80px);max-width:760px}
.hub-hero-copy .lede,.category-hero-copy .lede{margin-top:24px;max-width:700px}
.hub-proof,.category-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.proof-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #dfe4ea;border-radius:999px;background:#fff;color:#455468;font-size:12px;font-weight:760}
.proof-pill i{width:7px;height:7px;border-radius:50%;background:var(--green)}
.hub-mosaic{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:10px;height:480px}
.hub-mosaic a{position:relative;overflow:hidden;border-radius:20px;min-height:0;background:#e7ebef}
.hub-mosaic a:first-child{grid-row:1/-1}
.hub-mosaic img{width:100%;height:100%;object-fit:cover;transition:.4s ease}
.hub-mosaic a:hover img{transform:scale(1.03)}
.hub-mosaic span{position:absolute;left:18px;bottom:16px;color:#fff;font-size:14px;font-weight:800;z-index:2}
.hub-mosaic a:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(5,20,40,.72))}
.hub-section{padding:86px 0}.hub-section.warm{background:var(--warm)}
.hub-section-head{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-bottom:42px}.hub-section-head .lede{justify-self:end}
.hub-category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.hub-category-card{border:1px solid var(--line);background:#fff;border-radius:22px;overflow:hidden;transition:.25s ease;display:flex;flex-direction:column;min-width:0}
.hub-category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d4dbe4}
.hub-category-card .visual{height:210px;background:#eef1f3;overflow:hidden}.hub-category-card img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.hub-category-card:hover img{transform:scale(1.025)}
.hub-category-card .body{padding:20px}.hub-category-card small{font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#7b8797}.hub-category-card h3{font-size:21px;margin-top:6px;color:#172033}.hub-category-card p{font-size:13px;color:#687589;margin-top:8px;line-height:1.55}.hub-category-card .go{display:inline-block;margin-top:14px;font-size:12px;font-weight:800;color:var(--navy)}
.capability-grid{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid #dfe3e8;border-radius:24px;overflow:hidden;background:#fff}.capability-box{padding:28px 22px;border-right:1px solid #e5e8ec}.capability-box:last-child{border-right:0}.capability-box span{display:block;color:#8a94a3;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.capability-box strong{display:block;color:var(--navy);font-size:19px;margin-top:11px}.capability-box p{font-size:12px;color:#6e7a8c;margin-top:7px;line-height:1.5}
.project-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.flow-card{padding:28px;border-radius:20px;border:1px solid #e1e5ea;background:#fff}.flow-card small{font-size:11px;color:#8290a3;font-weight:850;letter-spacing:.12em}.flow-card h3{font-size:20px;margin-top:22px}.flow-card p{font-size:13px;color:#69778a;margin-top:8px}

.category-hero-media{position:relative;height:520px;border-radius:30px;overflow:hidden;background:#e6e9ec;box-shadow:var(--shadow)}
.category-hero-media img{width:100%;height:100%;object-fit:cover}.category-hero-media:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(180deg,transparent,rgba(6,23,45,.45))}
.category-hero-badge{position:absolute;z-index:2;right:20px;top:20px;background:#fff;border-radius:16px;padding:14px 17px;box-shadow:0 10px 30px rgba(15,23,42,.12)}.category-hero-badge strong{display:block;color:var(--navy);font-size:19px}.category-hero-badge span{font-size:11px;color:#7a8797}
.category-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:32px}.quick-card{padding:16px;border:1px solid #dfe4e9;background:#fff;border-radius:14px}.quick-card strong{display:block;color:var(--navy);font-size:16px}.quick-card span{display:block;margin-top:3px;color:#7a8697;font-size:11px}
.category-section{padding:88px 0}.category-section.warm{background:var(--warm)}.category-section.navy{background:#0b2e5e;color:#fff}.category-section.navy .eyebrow{color:#fff}.category-section.navy .eyebrow:before{background:#fff}.category-section.navy .lede{color:#c3cfdd}
.category-section-head{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:end;margin-bottom:42px}.category-section-head .lede{justify-self:end}
.range-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.range-card{border-radius:22px;overflow:hidden;background:#fff;border:1px solid #e1e5ea;display:flex;flex-direction:column}.range-card .visual{height:230px;background:#f5f6f7;overflow:hidden}.range-card img{width:100%;height:100%;object-fit:cover}.range-card.contain img{object-fit:contain;padding:18px}.range-card .body{padding:21px}.range-card h3{font-size:20px}.range-card p{font-size:13px;color:#6b788b;margin-top:8px;line-height:1.55}.range-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px}.range-tags span{font-size:10px;font-weight:750;color:#58677a;padding:5px 8px;border-radius:999px;background:#f2f4f6}
.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.material-card{padding:28px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13)}.material-card h3{font-size:20px}.material-card p{color:#c5d1df;font-size:13px;margin-top:9px}.material-card small{display:block;color:#8fb2da;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800;margin-bottom:14px}
.custom-summary{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid #e0e4e8;border-radius:22px;overflow:hidden}.custom-summary div{padding:26px 20px;background:#fff;border-right:1px solid #e6e9ed}.custom-summary div:last-child{border-right:0}.custom-summary strong{display:block;color:#15233a;font-size:16px}.custom-summary span{display:block;color:#778396;font-size:11px;margin-top:5px}
.use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.use-card{padding:27px;border:1px solid #e1e5ea;border-radius:20px;background:#fff}.use-card span{display:block;font-size:10px;color:#8390a2;letter-spacing:.12em;font-weight:850}.use-card h3{font-size:20px;margin-top:18px}.use-card p{font-size:13px;color:#69778a;margin-top:8px}
.faq-list{display:grid;gap:10px;max-width:920px;margin:0 auto}.faq-list details{border:1px solid #e0e4e8;border-radius:16px;background:#fff;padding:0 20px}.faq-list summary{cursor:pointer;list-style:none;padding:19px 0;font-weight:780;color:#1d2a3d}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";float:right;color:var(--navy);font-size:20px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 0 20px;color:#687589;font-size:14px;max-width:780px}
.category-cta{border-radius:30px;background:#0a244a;color:#fff;padding:58px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.category-cta h2{font-size:clamp(34px,4vw,52px)}.category-cta p{color:#bfccdc;margin-top:12px;max-width:690px}
.product-breadcrumb{font-size:11px;color:#7e8998;font-weight:700;margin-bottom:18px}.product-breadcrumb a{color:var(--navy)}

@media(max-width:1100px){
 .hub-hero-grid,.category-hero-grid,.hub-section-head,.category-section-head{grid-template-columns:1fr;gap:34px}.hub-section-head .lede,.category-section-head .lede{justify-self:start}
 .hub-category-grid{grid-template-columns:repeat(3,1fr)}.capability-grid{grid-template-columns:repeat(3,1fr)}.capability-box:nth-child(3){border-right:0}.capability-box:nth-child(-n+3){border-bottom:1px solid #e5e8ec}
 .range-grid{grid-template-columns:repeat(2,1fr)}.custom-summary{grid-template-columns:repeat(3,1fr)}.custom-summary div:nth-child(3){border-right:0}.custom-summary div:nth-child(-n+3){border-bottom:1px solid #e6e9ed}
}
@media(max-width:760px){
 .product-hub-hero,.category-page-hero{padding:50px 0 58px}.hub-mosaic{height:390px;grid-template-columns:1.3fr .7fr}.hub-category-grid{grid-template-columns:1fr}.hub-category-card .visual{height:240px}
 .capability-grid,.project-flow,.category-quick,.material-grid,.use-grid{grid-template-columns:1fr}.capability-box,.capability-box:nth-child(3){border-right:0;border-bottom:1px solid #e5e8ec}.capability-box:last-child{border-bottom:0}
 .category-hero-media{height:430px}.range-grid{grid-template-columns:1fr}.range-card .visual{height:250px}.custom-summary{grid-template-columns:repeat(2,1fr)}.custom-summary div,.custom-summary div:nth-child(3){border-right:1px solid #e6e9ed;border-bottom:1px solid #e6e9ed}.custom-summary div:nth-child(2n){border-right:0}.custom-summary div:nth-last-child(-n+2){border-bottom:0}
 .category-cta{grid-template-columns:1fr;padding:38px 26px}.category-cta .btn{justify-self:start}.hub-section,.category-section{padding:70px 0}
}


/* ===== V1.5 category system completion ===== */
.product-hub-hero{padding-top:66px}
.hub-hero-copy h1{font-size:clamp(48px,4.7vw,68px);line-height:1.02;letter-spacing:-.045em;max-width:650px}
.category-hero-copy h1{font-size:clamp(46px,4.35vw,66px);line-height:1.03;letter-spacing:-.045em;max-width:700px}
.category-hero-copy h1 .accent,.hub-hero-copy h1 .accent{color:var(--navy)}
.category-page-hero{padding-top:64px}
.category-product-mosaic{display:grid;grid-template-columns:1.45fr .72fr;gap:10px;height:520px}
.category-product-mosaic .mosaic-main,.category-product-mosaic .mosaic-side a{position:relative;border-radius:22px;overflow:hidden;background:#edf0f2;border:1px solid #e1e5e9}
.category-product-mosaic .mosaic-main{height:100%}.category-product-mosaic .mosaic-side{display:grid;grid-template-rows:repeat(3,1fr);gap:10px;min-height:0}
.category-product-mosaic img{width:100%;height:100%;object-fit:cover}.category-product-mosaic .contain img{object-fit:contain;padding:18px;background:#fff}
.category-product-mosaic .tag{position:absolute;left:14px;bottom:12px;background:rgba(6,31,63,.84);backdrop-filter:blur(6px);color:#fff;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.04em}
.category-product-mosaic .mosaic-main .tag{left:18px;bottom:17px;font-size:11px}
.category-product-mosaic .mosaic-badge{position:absolute;right:18px;top:18px;z-index:3;background:#fff;border-radius:15px;padding:12px 15px;box-shadow:0 12px 32px rgba(15,23,42,.12)}
.category-product-mosaic .mosaic-badge strong{display:block;color:var(--navy);font-size:16px}.category-product-mosaic .mosaic-badge span{font-size:10px;color:#7a8797}
.hub-category-grid a.hub-category-card{color:inherit}
.hub-category-card .go{margin-top:auto;padding-top:14px}
.range-grid.range-grid-3{grid-template-columns:repeat(3,1fr)}
.range-card .visual.tall{height:260px}
.category-hero-copy .hero-cta{margin-top:28px}
.category-quick{margin-top:26px}
.category-section-head h2{max-width:760px}
.product-hub-visual{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-content:center}
.product-hub-visual a{position:relative;min-height:210px;border-radius:22px;overflow:hidden;background:#edf0f2;border:1px solid #e2e6ea}
.product-hub-visual a:first-child{grid-row:span 2;min-height:430px}.product-hub-visual img{width:100%;height:100%;object-fit:cover}
.product-hub-visual span{position:absolute;left:16px;bottom:14px;color:#fff;font-size:12px;font-weight:850;z-index:2}.product-hub-visual a:after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(180deg,transparent,rgba(6,24,47,.72))}
@media(max-width:1100px){.category-product-mosaic{height:480px}.range-grid.range-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.category-page-hero,.product-hub-hero{padding-top:38px}.category-hero-copy h1,.hub-hero-copy h1{font-size:44px}.category-product-mosaic{grid-template-columns:1fr;height:auto}.category-product-mosaic .mosaic-main{height:360px}.category-product-mosaic .mosaic-side{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr;height:130px}.category-product-mosaic .mosaic-side a{border-radius:14px}.category-product-mosaic .tag{font-size:8px;left:7px;bottom:7px;padding:5px 7px}.category-product-mosaic .mosaic-badge{right:12px;top:12px}.range-grid.range-grid-3{grid-template-columns:1fr}.product-hub-visual{grid-template-columns:1fr 1fr}.product-hub-visual a:first-child{grid-column:1/-1;grid-row:auto;min-height:300px}.product-hub-visual a{min-height:150px}}


/* v1.6 SEO product landing pages */
.seo-product-hero{padding:62px 0 76px;background:linear-gradient(180deg,#fff 0%,#f7f7f5 100%)}
.seo-product-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:58px;align-items:center}
.seo-product-copy h1{font-size:clamp(48px,5.1vw,76px);max-width:760px}
.seo-product-copy .lede{margin-top:24px;max-width:670px}
.seo-proof-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}
.seo-proof-row span{padding:10px 13px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;color:#64748b;font-size:12px;font-weight:650}
.seo-proof-row strong{color:var(--navy);margin-right:4px}
.seo-product-visual{display:grid;grid-template-columns:1.7fr .8fr;gap:12px;height:510px;min-width:0}
.seo-main-image,.seo-side-images>div{position:relative;overflow:hidden;border-radius:24px;background:#eef1f4;box-shadow:0 14px 40px rgba(15,34,58,.08)}
.seo-main-image img,.seo-side-images img{width:100%;height:100%;object-fit:cover}
.seo-side-images{display:grid;grid-template-rows:1fr 1fr;gap:12px;min-height:0}
.seo-side-images .contain img{object-fit:contain;padding:20px;background:#fff}
.seo-main-image span,.seo-side-images span{position:absolute;left:16px;bottom:14px;background:rgba(8,32,65,.88);color:#fff;padding:7px 10px;border-radius:10px;font-size:11px;font-weight:800}
.seo-product-section{padding:86px 0}.seo-product-section.warm{background:var(--warm)}.seo-product-section.navy{background:var(--navy);color:#fff}
.seo-section-head{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:end;margin-bottom:42px}
.seo-section-head .lede{justify-self:end}.seo-product-section.navy .eyebrow,.seo-product-section.navy h2{color:#fff}.seo-product-section.navy .eyebrow:before{background:#fff}.seo-product-section.navy .lede{color:#c9d5e5}
.spec-table-wrap{border:1px solid #e0e5eb;border-radius:22px;overflow:auto;background:#fff;box-shadow:0 12px 35px rgba(15,23,42,.04)}
.spec-table{width:100%;border-collapse:collapse;min-width:800px}.spec-table th,.spec-table td{padding:21px 23px;text-align:left;vertical-align:top;border-bottom:1px solid #e7ebef}.spec-table th{background:#f3f5f7;color:var(--navy);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.spec-table td{color:#5f6c7c;font-size:14px}.spec-table tr:last-child td{border-bottom:0}.spec-table td strong{color:#172033}
.seo-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dde2e8;border-radius:24px;overflow:hidden;background:#fff}.seo-feature-grid>div{padding:30px;border-right:1px solid #e3e7eb;border-bottom:1px solid #e3e7eb;min-height:190px}.seo-feature-grid>div:nth-child(3n){border-right:0}.seo-feature-grid>div:nth-child(n+4){border-bottom:0}.seo-feature-grid b{font-size:11px;letter-spacing:.16em;color:#8a97a7}.seo-feature-grid h3{font-size:22px;margin:28px 0 8px}.seo-feature-grid p{font-size:14px;color:#687688}.seo-product-section.warm .seo-feature-grid{background:#fff}
.seo-process{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid rgba(255,255,255,.15);border-radius:24px;overflow:hidden}.seo-process>div{padding:28px;border-right:1px solid rgba(255,255,255,.14);min-height:210px}.seo-process>div:last-child{border-right:0}.seo-process span{font-size:11px;letter-spacing:.14em;color:#a9bfdc}.seo-process h3{font-size:21px;margin:34px 0 10px}.seo-process p{font-size:13px;color:#c7d4e4}
.seo-buyer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.seo-buyer-grid>div{padding:28px;border:1px solid #e0e5eb;border-radius:20px;background:#fff}.seo-buyer-grid h3{font-size:21px;margin-bottom:10px}.seo-buyer-grid p{font-size:14px;color:#687688}.seo-product-section.navy .seo-buyer-grid>div{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}.seo-product-section.navy .seo-buyer-grid h3{color:#fff}.seo-product-section.navy .seo-buyer-grid p{color:#c7d4e4}
.seo-featured-products{padding:64px 0;background:#f8f8f6;border-top:1px solid #eceeed;border-bottom:1px solid #eceeed}.seo-featured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.seo-featured-grid a{padding:25px;border-radius:20px;background:#fff;border:1px solid #e2e6eb;transition:.22s}.seo-featured-grid a:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.07)}.seo-featured-grid span{font-size:11px;letter-spacing:.14em;color:#8692a2}.seo-featured-grid h3{font-size:22px;margin:24px 0 9px}.seo-featured-grid p{font-size:13px;color:#6c7888;min-height:64px}.seo-featured-grid b{display:block;margin-top:18px;color:var(--navy);font-size:13px}
.category-deep-link{background:#fff;border-bottom:1px solid #e7e9ec}.category-deep-link>.container{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:24px;padding-bottom:24px}.category-deep-link span{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8290a1;font-weight:800}.category-deep-link strong{display:block;color:var(--navy);font-size:18px;margin-top:2px}.category-deep-link p{font-size:13px;color:#778395;margin-top:3px}.category-deep-link a{white-space:nowrap;color:var(--navy);font-size:13px;font-weight:800}
@media(max-width:1000px){.seo-product-hero-grid{grid-template-columns:1fr}.seo-product-visual{height:500px}.seo-section-head{grid-template-columns:1fr;gap:14px}.seo-section-head .lede{justify-self:start}.seo-feature-grid{grid-template-columns:repeat(2,1fr)}.seo-feature-grid>div{border-right:1px solid #e3e7eb;border-bottom:1px solid #e3e7eb}.seo-feature-grid>div:nth-child(2n){border-right:0}.seo-feature-grid>div:nth-child(n+5){border-bottom:0}.seo-buyer-grid,.seo-featured-grid{grid-template-columns:repeat(2,1fr)}.seo-process{grid-template-columns:repeat(2,1fr)}.seo-process>div{border-bottom:1px solid rgba(255,255,255,.14)}.seo-process>div:nth-child(2n){border-right:0}.seo-process>div:last-child{border-bottom:0}.category-deep-link>.container{align-items:flex-start}}
@media(max-width:680px){.seo-product-hero{padding:42px 0 56px}.seo-product-copy h1{font-size:43px}.seo-product-visual{grid-template-columns:1fr;height:auto}.seo-main-image{height:360px}.seo-side-images{grid-template-columns:1fr 1fr;grid-template-rows:none;height:180px}.seo-product-section{padding:62px 0}.seo-feature-grid,.seo-buyer-grid,.seo-featured-grid{grid-template-columns:1fr}.seo-feature-grid>div{border-right:0}.seo-feature-grid>div:nth-child(n+5){border-bottom:1px solid #e3e7eb}.seo-feature-grid>div:last-child{border-bottom:0}.seo-process{grid-template-columns:1fr}.seo-process>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.category-deep-link>.container{display:block}.category-deep-link a{display:inline-block;margin-top:14px}}

/* ===== V1.7 Product Details architecture ===== */
.seo-featured-grid.five{grid-template-columns:repeat(5,1fr)}
.detail-hub-hero{padding:72px 0 78px;background:linear-gradient(180deg,#fff 0%,#f6f7f8 100%)}
.detail-hub-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:center}
.detail-hub-copy h1{font-size:clamp(52px,5.5vw,78px);max-width:760px}
.detail-hub-copy .lede{margin-top:24px;max-width:720px}
.detail-hub-visual{height:500px;border-radius:30px;overflow:hidden;position:relative;background:#eef1f4;box-shadow:var(--shadow)}
.detail-hub-visual img{width:100%;height:100%;object-fit:cover}
.detail-hub-badge{position:absolute;right:24px;bottom:24px;background:#fff;border-radius:18px;padding:16px 18px;box-shadow:0 12px 30px rgba(15,23,42,.12);display:grid;gap:2px}
.detail-hub-badge strong{color:var(--navy);font-size:18px}.detail-hub-badge span{font-size:11px;color:#778395}
.detail-hub-section{padding:84px 0}.detail-hub-section.warm{background:var(--warm)}
.detail-hub-head{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:38px}.detail-hub-head .lede{justify-self:end}
.product-detail-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-detail-link-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;transition:.24s ease;display:flex;flex-direction:column;min-width:0}
.product-detail-link-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(15,23,42,.08)}
.product-detail-link-card .visual{height:240px;background:#f1f3f5;overflow:hidden}.product-detail-link-card .visual img{width:100%;height:100%;object-fit:cover}
.product-detail-link-card .body{padding:24px;display:flex;flex-direction:column;flex:1}.product-detail-link-card small{font-size:10px;letter-spacing:.13em;color:#8692a2;font-weight:800}.product-detail-link-card h3{font-size:24px;margin:14px 0 10px}.product-detail-link-card p{font-size:13px;color:#6d798a;line-height:1.55;flex:1}.product-detail-link-card .body>span{margin-top:18px;color:var(--navy);font-size:13px;font-weight:800}
.detail-principles{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dedbd3;border-radius:24px;overflow:hidden;background:#fff}.detail-principles>div{padding:30px;border-right:1px solid #dedbd3}.detail-principles>div:last-child{border-right:0}.detail-principles strong{font-size:11px;letter-spacing:.14em;color:#8090a4}.detail-principles h3{font-size:22px;margin:34px 0 10px}.detail-principles p{font-size:13px;color:#6d798a}

.individual-product-hero{padding:70px 0 78px;background:linear-gradient(180deg,#fff 0%,#f5f6f7 100%)}
.individual-product-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:64px;align-items:center}.individual-product-copy h1{font-size:clamp(54px,5.8vw,82px);max-width:760px}.individual-product-copy .lede{margin-top:24px}.individual-product-visual{position:relative;background:#eef1f4;border-radius:30px;min-height:520px;overflow:hidden;box-shadow:var(--shadow)}
.individual-product-image{position:absolute;inset:0}.individual-product-image img{width:100%;height:100%;object-fit:cover}.individual-product-label{position:absolute;left:24px;bottom:24px;background:#fff;padding:15px 18px;border-radius:16px;box-shadow:0 12px 30px rgba(15,23,42,.12);display:grid;gap:2px}.individual-product-label span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8290a1;font-weight:800}.individual-product-label strong{font-size:17px;color:var(--navy)}
.individual-product-section{padding:82px 0}.individual-product-section.warm{background:var(--warm)}.individual-product-section.navy{background:var(--navy);color:#fff}.individual-product-section.navy .lede{color:#bdc9d8}.individual-product-section.navy .eyebrow{color:#dce6f2}.individual-product-section.navy .eyebrow:before{background:#dce6f2}
.individual-detail-head{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:36px}.individual-detail-head .lede{justify-self:end}
.individual-spec-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff}.individual-spec-grid>div{padding:27px;border-right:1px solid var(--line)}.individual-spec-grid>div:last-child{border-right:0}.individual-spec-grid small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8a96a7;margin-bottom:14px;font-weight:800}.individual-spec-grid strong{font-size:17px;line-height:1.45;color:#243349}
.individual-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.individual-feature-grid>div{background:#fff;border:1px solid #e2ded5;border-radius:20px;padding:25px;min-height:190px}.individual-feature-grid span{font-size:10px;letter-spacing:.14em;color:#8a96a7;font-weight:800}.individual-feature-grid h3{font-size:20px;margin-top:54px}
.detail-custom-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.18);border-radius:22px;overflow:hidden}.detail-custom-grid>div{padding:28px;border-right:1px solid rgba(255,255,255,.18)}.detail-custom-grid>div:last-child{border-right:0}.detail-custom-grid strong{font-size:18px}.detail-custom-grid p{font-size:13px;color:#bdc9d8;margin-top:10px}
.related-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.related-product-grid>a{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;transition:.22s}.related-product-grid>a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.07)}.related-product-grid .visual{height:190px;background:#f1f3f5;overflow:hidden}.related-product-grid img{width:100%;height:100%;object-fit:cover}.related-product-grid>a>div:last-child{padding:18px}.related-product-grid h3{font-size:19px;margin-bottom:10px}.related-product-grid span{font-size:12px;color:var(--navy);font-weight:800}.related-all-link{margin-top:28px;text-align:center}

@media(max-width:1100px){.seo-featured-grid.five{grid-template-columns:repeat(3,1fr)}.detail-hub-hero-grid,.individual-product-grid{grid-template-columns:1fr}.detail-hub-visual,.individual-product-visual{height:500px;min-height:0}.detail-hub-head,.individual-detail-head{grid-template-columns:1fr;gap:14px}.detail-hub-head .lede,.individual-detail-head .lede{justify-self:start}.product-detail-link-grid{grid-template-columns:repeat(2,1fr)}.individual-spec-grid{grid-template-columns:repeat(2,1fr)}.individual-spec-grid>div{border-bottom:1px solid var(--line)}.individual-spec-grid>div:nth-child(2n){border-right:0}.individual-feature-grid,.detail-custom-grid,.related-product-grid{grid-template-columns:repeat(2,1fr)}.detail-custom-grid>div{border-bottom:1px solid rgba(255,255,255,.18)}.detail-custom-grid>div:nth-child(2n){border-right:0}}
@media(max-width:700px){.seo-featured-grid.five{grid-template-columns:1fr}.detail-hub-hero,.individual-product-hero{padding:46px 0 56px}.detail-hub-copy h1,.individual-product-copy h1{font-size:44px}.detail-hub-visual,.individual-product-visual{height:380px}.product-detail-link-grid{grid-template-columns:1fr}.detail-principles{grid-template-columns:1fr}.detail-principles>div{border-right:0;border-bottom:1px solid #dedbd3}.detail-principles>div:last-child{border-bottom:0}.individual-spec-grid,.individual-feature-grid,.detail-custom-grid,.related-product-grid{grid-template-columns:1fr}.individual-spec-grid>div,.detail-custom-grid>div{border-right:0;border-bottom:1px solid var(--line)}.detail-custom-grid>div{border-bottom-color:rgba(255,255,255,.18)}.individual-spec-grid>div:last-child,.detail-custom-grid>div:last-child{border-bottom:0}.product-detail-link-card .visual{height:220px}}

/* v2.0 editable-content additions */
.editable-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:56px;align-items:center}
.editable-hero-image{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);background:#f3f4f6;min-height:280px}
.editable-hero-image img{width:100%;height:100%;min-height:280px;max-height:460px;object-fit:cover}
.editable-page-content{max-width:920px}
.editable-page-content>*+*{margin-top:18px}
.editable-page-content h2{font-size:clamp(30px,3.2vw,48px);margin-top:46px}
.editable-page-content h3{margin-top:32px}
.editable-page-content p,.editable-page-content li{font-size:17px;color:#526174;line-height:1.8}
.editable-page-content a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.contact-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:46px 0 70px}
.contact-details-grid>div{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;display:flex;flex-direction:column;gap:8px}
.contact-details-grid strong{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.contact-details-grid a,.contact-details-grid span{font-weight:700;color:var(--navy)}
.contact-rfq{margin-top:28px}
.product-gallery-section{padding-top:58px;padding-bottom:58px}
.product-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;background:#f4f5f6}
.range-card{color:inherit}
.range-card .body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

@media(max-width:900px){
 .editable-hero-grid{grid-template-columns:1fr;gap:32px}
 .contact-details-grid{grid-template-columns:1fr}
 .product-gallery-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){.product-gallery-grid{grid-template-columns:1fr}}

/* WordPress editable menu support */
.main-nav>ul{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0;height:82px}
.main-nav>ul>li{position:relative;height:82px;display:flex;align-items:center}
.main-nav>ul>li>a{padding:29px 0;font-size:14px;font-weight:650;color:#263446;position:relative}
.main-nav>ul>li>a:after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:2px;background:var(--navy);transition:.22s}
.main-nav>ul>li:hover>a:after{right:0}
.main-nav .sub-menu{position:absolute;left:-20px;top:72px;width:290px;background:#fff;border:1px solid #e4e8ee;border-radius:18px;padding:10px;box-shadow:0 22px 60px rgba(15,23,42,.13);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;list-style:none;margin:0;z-index:60}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.main-nav .sub-menu a{display:block;padding:11px 13px;border-radius:12px;color:#243349;font-size:13px;font-weight:650}
.main-nav .sub-menu a:hover{background:#f4f6f8;color:var(--navy)}

/* =========================================================
   V3 VISUAL GUTENBERG CONTENT
   ========================================================= */
.jelimo-visual-content{overflow:hidden}
.jelimo-ve-section{padding:86px max(20px,calc((100vw - var(--max))/2));margin:0!important}
.jelimo-ve-section>.wp-block-group__inner-container{max-width:var(--max);margin-inline:auto}
.jelimo-ve-page-hero,.jelimo-ve-hero{background:linear-gradient(180deg,#fff 0%,#f8f8f6 100%)}
.jelimo-ve-page-hero{padding-top:74px;padding-bottom:70px}
.jelimo-ve-dark{background:var(--navy);color:#fff}
.jelimo-ve-dark .jelimo-ve-eyebrow,.jelimo-ve-dark h1,.jelimo-ve-dark h2,.jelimo-ve-dark h3{color:#fff}
.jelimo-ve-dark .jelimo-ve-lede,.jelimo-ve-dark p{color:#cbd7e6}
.jelimo-ve-warm{background:var(--warm)}
.jelimo-ve-cta{background:#0a244a;color:#fff;padding-top:64px;padding-bottom:64px}
.jelimo-ve-cta h2{color:#fff}.jelimo-ve-cta p{color:#c7d2e0}
.jelimo-ve-eyebrow{display:flex;align-items:center;gap:10px;color:var(--navy);font-size:12px!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px!important}
.jelimo-ve-eyebrow:before{content:"";width:28px;height:2px;background:currentColor;display:inline-block}
.jelimo-ve-section h1{font-size:clamp(48px,5.4vw,78px);line-height:1.04;letter-spacing:-.05em;margin:0 0 22px;font-weight:650}
.jelimo-ve-section h1 span{color:var(--navy)}
.jelimo-ve-section h2{font-size:clamp(36px,4.3vw,58px);line-height:1.08;letter-spacing:-.04em;margin:0 0 20px;font-weight:620}
.jelimo-ve-section h3{font-size:24px;line-height:1.16;letter-spacing:-.025em;margin:12px 0 6px}
.jelimo-ve-lede{font-size:19px!important;line-height:1.65;color:#607086;max-width:760px;margin:0 0 24px!important}
.jelimo-ve-proof{font-size:12px;color:#58687a;margin-top:22px!important}
.jelimo-ve-columns{gap:48px!important;align-items:center}
/* V3.1.1 — Home Hero uses true 50/50 columns. */
.jelimo-ve-home-hero{gap:40px!important}
.jelimo-ve-home-hero>.wp-block-column{flex:1 1 0!important;flex-basis:0!important;min-width:0;width:50%!important}
.jelimo-ve-home-hero>.wp-block-column:last-child{display:flex;align-items:stretch}
.jelimo-ve-home-hero .jcm-hero-grid{width:100%!important;max-width:none!important;align-self:stretch}
.jelimo-ve-main-image img{width:100%;height:auto;max-height:610px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}
.jelimo-ve-mini-scenes{gap:10px!important;margin-top:10px}
.jelimo-ve-mini-scenes .wp-block-image{margin:0}.jelimo-ve-mini-scenes img{border-radius:18px;aspect-ratio:1.5/1;object-fit:cover}
.jelimo-ve-card-columns{gap:16px!important;align-items:stretch}
.jelimo-ve-card-columns>.wp-block-column{border:1px solid var(--line);border-radius:22px;padding:22px;background:#fff;overflow:hidden}
.jelimo-ve-dark .jelimo-ve-card-columns>.wp-block-column{background:#0e356a;border-color:rgba(255,255,255,.13)}
.jelimo-ve-card-columns .wp-block-image{margin:-22px -22px 18px}.jelimo-ve-card-columns .wp-block-image img{width:calc(100% + 44px);aspect-ratio:1.35/1;object-fit:cover}
.jelimo-ve-card-columns.two{max-width:820px}
.jelimo-ve-stats{gap:12px!important}.jelimo-ve-stats>.wp-block-column{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff}.jelimo-ve-kpi{display:block;color:var(--navy);font-size:28px;line-height:1.1;margin-bottom:8px}
.jelimo-ve-specs{gap:12px!important}.jelimo-ve-specs>.wp-block-column{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff;min-height:118px}
.jelimo-ve-gallery{align-items:stretch}.jelimo-ve-gallery .wp-block-image img{border-radius:18px}
.jelimo-ve-section .wp-block-buttons{gap:12px;margin-top:24px}.jelimo-ve-section .wp-block-button__link{border-radius:999px;padding:15px 24px;background:var(--navy);color:#fff;font-size:14px;font-weight:750;text-decoration:none}.jelimo-ve-section .is-style-outline>.wp-block-button__link{background:#fff!important;color:var(--navy)!important;border:1px solid #cbd5e1}
.jelimo-ve-dark .is-style-outline>.wp-block-button__link,.jelimo-ve-cta .is-style-outline>.wp-block-button__link{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.5)}
.jelimo-ve-section ul{padding-left:22px}.jelimo-ve-section li{margin:8px 0;color:#536274}
.jelimo-ve-dark li{color:#cbd7e6}
.jelimo-ve-section a:not(.wp-block-button__link){color:var(--navy);text-decoration:none}.jelimo-ve-section a:not(.wp-block-button__link):hover{text-decoration:underline}
.jelimo-ve-dark a:not(.wp-block-button__link){color:#fff}
.jelimo-ve-section .jcm-product-grid{margin-top:28px}
.jelimo-ve-section .rfq-form{max-width:none}
@media(max-width:900px){.jelimo-ve-section{padding:70px 24px}.jelimo-ve-columns,.jelimo-ve-card-columns,.jelimo-ve-stats,.jelimo-ve-specs{flex-direction:column!important;gap:18px!important}.jelimo-ve-home-hero>.wp-block-column{flex:1 1 100%!important;flex-basis:100%!important;width:100%!important}.jelimo-ve-mini-scenes{flex-direction:row!important}.jelimo-ve-mini-scenes>.wp-block-column{flex-basis:33.33%!important}}
@media(max-width:600px){.jelimo-ve-section{padding:56px 18px}.jelimo-ve-section h1{font-size:48px}.jelimo-ve-section h2{font-size:38px}.jelimo-ve-mini-scenes{flex-direction:column!important}.jelimo-ve-mini-scenes>.wp-block-column{flex-basis:100%!important}}


/* ===== V3.1 Motion system: subtle scroll + click interactions ===== */
:root{--jelimo-motion-ease:cubic-bezier(.22,1,.36,1);--jelimo-motion-fast:180ms;--jelimo-motion-mid:620ms}

/* Scroll reveal is enabled by JS only after targets are prepared, avoiding hidden content without JS. */
html.jelimo-motion-ready .jelimo-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity var(--jelimo-motion-mid) var(--jelimo-motion-ease),transform var(--jelimo-motion-mid) var(--jelimo-motion-ease);will-change:opacity,transform}
html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-left{transform:translate3d(-28px,0,0)}
html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-right{transform:translate3d(28px,0,0)}
html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-scale{transform:translate3d(0,16px,0) scale(.975)}
html.jelimo-motion-ready .jelimo-reveal.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}

/* Header gains a compact premium shadow after the page starts moving. */
.site-header{transition:box-shadow .28s ease,background-color .28s ease,border-color .28s ease}
body.jelimo-has-scrolled .site-header{background:rgba(255,255,255,.97);box-shadow:0 10px 32px rgba(13,34,66,.08);border-bottom-color:rgba(15,23,42,.04)}

/* Buttons / links: tactile hover and press. */
.btn,.wp-block-button__link,.main-nav a,.mobile-panel a{position:relative;isolation:isolate;-webkit-tap-highlight-color:transparent}
.btn,.wp-block-button__link{overflow:hidden;transition:transform var(--jelimo-motion-fast) ease,box-shadow .28s ease,background-color .22s ease,border-color .22s ease}
@media (hover:hover) and (pointer:fine){
 .btn:hover,.wp-block-button__link:hover{transform:translateY(-2px)}
 .btn-primary:hover,.wp-block-button__link:not(.has-background):hover{box-shadow:0 15px 32px rgba(11,46,94,.22)}
}
.btn.is-pressing,.wp-block-button__link.is-pressing{transform:translateY(0) scale(.975)!important}
.jelimo-ripple{position:absolute;z-index:-1;border-radius:999px;pointer-events:none;background:rgba(255,255,255,.28);transform:translate(-50%,-50%) scale(0);animation:jelimo-ripple .62s ease-out forwards}
.btn-secondary .jelimo-ripple,.is-style-outline .wp-block-button__link .jelimo-ripple{background:rgba(11,46,94,.12)}
@keyframes jelimo-ripple{to{transform:translate(-50%,-50%) scale(1);opacity:0}}

/* Clickable cards: same tactile click feedback for category / image cards. */
.jelimo-clickable-card{position:relative;overflow:hidden;isolation:isolate;-webkit-tap-highlight-color:transparent;cursor:pointer}
.jelimo-clickable-card.is-pressing{transform:translateY(-1px) scale(.985)!important}
.jelimo-clickable-card .jelimo-ripple{z-index:2;background:rgba(255,255,255,.22)}
.jelimo-clickable-card > *{position:relative}

/* Cards and image covers: lift + restrained image zoom. */
.category-card,.simple-card,.jcm-product-card,.wp-block-cover,.jelimo-motion-card{transition:transform .32s var(--jelimo-motion-ease),box-shadow .32s ease,border-color .25s ease}
.category-card img,.jcm-product-card img,.wp-block-cover__image-background,.jelimo-motion-card img{transition:transform .7s var(--jelimo-motion-ease)}
@media (hover:hover) and (pointer:fine){
 .category-card:hover,.simple-card:hover,.jcm-product-card:hover,.wp-block-cover.jelimo-motion-card:hover,.jelimo-motion-card:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(13,34,66,.12)}
 .category-card:hover img,.jcm-product-card:hover img,.wp-block-cover.jelimo-motion-card:hover .wp-block-cover__image-background,.jelimo-motion-card:hover img{transform:scale(1.035)}
}

/* Nav underline gets slightly more fluid. */
.main-nav>a:after,.main-nav>.nav-item>a:after{transition:right .36s var(--jelimo-motion-ease),opacity .2s ease}

/* Optional user classes for Gutenberg: motion-left / motion-right / motion-scale / motion-card. */
.motion-card{transition:transform .32s var(--jelimo-motion-ease),box-shadow .32s ease}
@media (hover:hover) and (pointer:fine){.motion-card:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(13,34,66,.12)}}

/* Accessibility: honor the OS reduced-motion preference. */
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 html.jelimo-motion-ready .jelimo-reveal,html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-left,html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-right,html.jelimo-motion-ready .jelimo-reveal.jelimo-reveal-scale{opacity:1!important;transform:none!important;transition:none!important}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .jelimo-ripple{display:none!important}
}


/* V3.1.4 — Global section-heading alignment.
   Eyebrow, heading and supporting copy share the same left edge on every section. */
.jelimo-ve-section > .jelimo-ve-eyebrow,
.jelimo-ve-section > .wp-block-heading,
.jelimo-ve-section > h1,
.jelimo-ve-section > h2,
.jelimo-ve-section > .jelimo-ve-lede,
.jelimo-ve-section > p.jelimo-ve-lede{
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
  justify-self:start!important;
}
.jelimo-ve-section > .jelimo-ve-eyebrow{width:100%;max-width:none}
.jelimo-ve-section > .wp-block-heading,
.jelimo-ve-section > h1,
.jelimo-ve-section > h2{width:100%;max-width:960px}
.jelimo-ve-section > .jelimo-ve-lede,
.jelimo-ve-section > p.jelimo-ve-lede{width:100%;max-width:760px}

/* Legacy section headers follow the same stacked, left-aligned rule. */
.hub-section-head,
.category-section-head,
.seo-section-head{
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-items:start!important;
}
.hub-section-head .lede,
.category-section-head .lede,
.seo-section-head .lede{
  justify-self:start!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
.hub-section-head h2,
.category-section-head h2,
.seo-section-head h2{margin-left:0!important;margin-right:auto!important;text-align:left!important}

/* Keep manually edited Gutenberg headings from recentering inside full-width JELIMO sections. */
.jelimo-ve-section > [class*="wp-block-"]:not(.wp-block-columns):not(.wp-block-group):not(.wp-block-buttons):not(.wp-block-spacer):not(.wp-block-image):not(.jcm-product-grid){
  margin-inline-start:0;
}

/* JELIMO V3.1.4 — five-column footer on wide screens */
@media(min-width:1200px){.footer-grid{align-items:start}}
