/* Purecise — shared stylesheet */
:root{
  --blue:#325AE6; --blue2:#3E6BF0; --blue-deep:#2544C4;
  --teal:#19C6C6; --mint:#50D2A0;
  --ink:#0E1A3C; --slate:#5A6A8A; --soft:#F4F8FE; --line:#E7EEFA; --white:#fff;
  --shadow:0 18px 50px -22px rgba(20,45,120,.30);
  --grad:linear-gradient(120deg,#2E52E0 0%,#3A6BE8 42%,#19C6C6 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,.display{font-family:'Space Grotesk','Inter',sans-serif;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;padding:13px 26px;border-radius:999px;transition:.2s;cursor:pointer;border:none}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 24px -10px rgba(50,90,230,.6)}
.btn-primary:hover{background:var(--blue-deep);transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.24)}
.btn-light{background:#fff;color:var(--blue);box-shadow:var(--shadow)}
.btn-outline{background:#fff;color:var(--blue);border:1.5px solid var(--line)}
.btn-outline:hover{border-color:var(--blue)}
.eyebrow{font-family:'Space Grotesk';font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
section{position:relative}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;height:72px}
nav .logo{height:30px}
.navlinks{display:flex;gap:30px;align-items:center}
.navlinks a{font-weight:500;font-size:15px;color:var(--slate);transition:.2s}
.navlinks a:hover,.navlinks a.active{color:var(--ink)}
.navlinks a.active{color:var(--blue);font-weight:600}
.navcta{display:flex;align-items:center;gap:18px}
.menu-btn{display:none;background:none;border:none;cursor:pointer}

/* PAGE HERO (sub-pages) */
.page-hero{background:var(--grad);color:#fff;padding:66px 0 60px;text-align:center}
.page-hero h1{font-size:clamp(30px,4vw,48px);font-weight:700;margin-bottom:14px}
.page-hero p{color:rgba(255,255,255,.9);font-size:18px;max-width:640px;margin:0 auto}
.crumb{font-size:13px;color:rgba(255,255,255,.7);margin-bottom:18px}
.crumb a:hover{color:#fff}

/* HERO (home) */
.hero{background:var(--grad);color:#fff;overflow:hidden;padding:76px 0 0}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(34px,4.6vw,58px);line-height:1.06;font-weight:700}
.hero h1 .accent{color:#CFF6E6}
.hero p.lead{font-size:19px;color:rgba(255,255,255,.92);margin:22px 0 32px;max-width:520px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-badges{display:flex;gap:22px;flex-wrap:wrap;margin-top:38px;font-size:13.5px;font-weight:500;color:rgba(255,255,255,.9)}
.hero-badges span{display:flex;align-items:center;gap:7px}
.hero-visual{position:relative;display:flex;justify-content:center;align-items:flex-end}
.hero-visual img{max-height:520px;filter:drop-shadow(0 30px 50px rgba(10,30,90,.35));border-radius:14px}
.wave-sep{display:block;width:100%;margin-top:-2px}

/* TRUST STRIP */
.trust{background:var(--white);padding:24px 0;border-bottom:1px solid var(--line)}
.trust-row{display:flex;justify-content:center;gap:12px 40px;flex-wrap:wrap;align-items:center}
.trust-item{display:flex;align-items:center;gap:9px;font-weight:600;font-size:14px;color:var(--ink)}
.trust-item svg{color:var(--blue)}
.dot{color:var(--mint)}

/* SECTION SHELL */
.sec{padding:92px 0}
.sec-soft{background:var(--soft)}
.sec-head{text-align:center;max-width:680px;margin:0 auto 52px}
.sec-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:700;margin:14px 0 14px;line-height:1.14}
.sec-head p{color:var(--slate);font-size:17px}

/* PRODUCT / CATEGORY CARDS */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 26px;transition:.25s;position:relative;overflow:hidden}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.card .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;margin-bottom:18px}
.card h3{font-size:19px;font-weight:600;margin-bottom:8px}
.card p{color:var(--slate);font-size:15px}
.card .tag{position:absolute;top:20px;right:20px;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--mint);text-transform:uppercase}
.card .skus{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px;color:var(--slate);line-height:1.9}
.card .skus b{color:var(--ink);font-weight:600}

/* MANUFACTURERS */
.mfr-card{display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 34px;margin-bottom:22px}
.mfr-logo{display:grid;place-items:center;min-height:96px;padding:10px}
.mfr-logo img{max-height:70px;max-width:180px;object-fit:contain}
.mfr-logo.dark{background:#152a63;border-radius:14px}
.mfr-body h3{font-size:22px;font-weight:700;margin-bottom:4px}
.mfr-body .loc{font-size:13.5px;color:var(--teal);font-weight:600;margin-bottom:10px}
.mfr-body p{color:var(--slate);font-size:15px;margin-bottom:14px}
.mfr-tags{display:flex;gap:8px;flex-wrap:wrap}
.mfr-tag{font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px;background:var(--soft);color:var(--blue);border:1px solid var(--line)}
.mfr-tag.green{color:#1a7a4a;background:#eafaf2;border-color:#c9edd9}

/* QUALITY dark */
.quality{background:linear-gradient(180deg,#0E1A3C 0%,#152a63 100%);color:#fff;padding:96px 0}
.quality .sec-head h2{color:#fff}.quality .sec-head p{color:rgba(255,255,255,.72)}
.q-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:26px 22px;transition:.25s}
.q-card:hover{background:rgba(255,255,255,.09);transform:translateY(-3px)}
.q-card .qic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(80,210,160,.16);color:var(--mint);margin-bottom:16px}
.q-card h3{font-size:17px;font-weight:600;margin-bottom:8px;color:#fff}
.q-card p{font-size:14px;color:rgba(255,255,255,.7);line-height:1.55}
.q-note{text-align:center;max-width:760px;margin:38px auto 0;font-size:14.5px;color:rgba(255,255,255,.6)}

/* CERT GALLERY */
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cert{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.25s}
.cert:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.cert .thumb{aspect-ratio:1/1.3;overflow:hidden;background:var(--soft);border-bottom:1px solid var(--line)}
.cert .thumb img{width:100%;height:100%;object-fit:cover;object-position:top}
.cert .meta{padding:18px 20px}
.cert .meta h3{font-size:16px;font-weight:600;margin-bottom:4px}
.cert .meta p{font-size:13px;color:var(--slate)}

/* CREDIBILITY BAND */
.cred{background:var(--soft)}
.cred-inner{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.cred h2{font-size:clamp(26px,3.2vw,36px);font-weight:700;margin-bottom:16px;line-height:1.16}
.cred p{color:var(--slate);font-size:16px;margin-bottom:14px}
.cred .mfr-strip{display:flex;gap:26px;flex-wrap:wrap;align-items:center;margin-top:8px}
.cred .mfr-strip img{height:34px;opacity:.85;filter:grayscale(.2)}
.cred .mfr-strip .dfhbox{background:#152a63;padding:6px 12px;border-radius:8px}
.cred .mfr-strip .dfhbox img{height:26px;filter:none}

/* WHY */
.why-item{text-align:center}
.why-item .wic{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin:0 auto 18px;background:var(--soft);color:var(--blue);border:1px solid var(--line)}
.why-item h3{font-size:18px;font-weight:600;margin-bottom:8px}
.why-item p{color:var(--slate);font-size:14.5px}

/* ABOUT / company */
.about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about-card{background:var(--grad);border-radius:24px;padding:46px;color:#fff;min-height:280px;display:flex;flex-direction:column;justify-content:center}
.about-card .big{font-family:'Space Grotesk';font-weight:700;font-size:46px;line-height:1}
.about-card .big span{color:#CFF6E6}
.about-copy h2{font-size:clamp(28px,3.2vw,38px);font-weight:700;margin-bottom:18px;line-height:1.14}
.about-copy p{color:var(--slate);font-size:16px;margin-bottom:16px}
.about-copy .name{color:var(--blue);font-weight:600}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:10px}
.flow-step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 20px;text-align:center;position:relative}
.flow-step .n{font-family:'Space Grotesk';font-weight:700;color:var(--teal);font-size:14px;letter-spacing:.1em}
.flow-step h4{font-size:16px;font-weight:600;margin:8px 0 6px}
.flow-step p{font-size:13.5px;color:var(--slate)}
.license-card{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:24px 28px}
.license-card .lic-ic{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff}
.license-card h4{font-size:17px;font-weight:600;margin-bottom:4px}
.license-card p{font-size:14px;color:var(--slate)}
.license-card b{color:var(--ink);font-family:'Space Grotesk'}

/* CTA */
.cta-box{background:var(--grad);border-radius:28px;padding:60px 48px;text-align:center;color:#fff;box-shadow:var(--shadow)}
.cta-box h2{font-size:clamp(28px,3.4vw,40px);font-weight:700;margin-bottom:14px}
.cta-box p{color:rgba(255,255,255,.9);font-size:17px;max-width:560px;margin:0 auto 30px}

/* FOOTER */
footer{background:#0B1530;color:rgba(255,255,255,.62);padding:60px 0 32px;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.1)}
.foot-brand img{height:30px;margin-bottom:16px}
.foot-brand p{max-width:280px;color:rgba(255,255,255,.5)}
footer h4{color:#fff;font-size:14px;font-weight:600;margin-bottom:16px}
footer ul{list-style:none}
footer ul li{margin-bottom:10px}
footer ul a{color:rgba(255,255,255,.6);transition:.2s}
footer ul a:hover{color:var(--mint)}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;font-size:12.5px;color:rgba(255,255,255,.4)}
.disclaimer{max-width:900px;margin:20px auto 0;font-size:11.5px;color:rgba(255,255,255,.34);line-height:1.6;text-align:center}

@media(max-width:920px){
  .hero-grid,.about,.cred-inner{grid-template-columns:1fr}
  .hero-visual{order:-1;margin-bottom:10px}.hero-visual img{max-height:340px}
  .grid3,.grid4,.cert-grid,.flow{grid-template-columns:1fr 1fr}
  .mfr-card{grid-template-columns:1fr;gap:18px;text-align:center}
  .mfr-logo{margin:0 auto}.mfr-tags{justify-content:center}
  .navlinks{display:none}.menu-btn{display:block}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .grid2,.grid3,.grid4,.cert-grid,.flow{grid-template-columns:1fr}
  .sec{padding:60px 0}.cta-box,.about-card{padding:38px 24px}
  .foot-grid{grid-template-columns:1fr}
}

/* ===== v3 enhancements ===== */
.hero-visual .cred-stack{position:relative;width:100%;max-width:430px;height:470px;margin:0 auto}
.cframe{position:absolute;background:#fff;border-radius:14px;box-shadow:0 30px 60px -20px rgba(8,20,60,.55);overflow:hidden;border:6px solid #fff}
.cframe img{width:100%;height:100%;object-fit:cover;object-position:top}
.cframe.c1{width:236px;height:306px;left:6px;top:14px;transform:rotate(-6deg);z-index:1}
.cframe.c2{width:236px;height:306px;right:6px;top:64px;transform:rotate(5deg);z-index:2}
.cframe.c3{width:220px;height:150px;left:64px;bottom:6px;transform:rotate(-2deg);z-index:3}
.cbadge{position:absolute;bottom:34px;right:-4px;background:#fff;color:var(--blue);font-weight:700;font-size:13px;padding:10px 16px;border-radius:12px;box-shadow:var(--shadow);z-index:4;display:flex;align-items:center;gap:8px}
.cred .mfr-strip img{height:46px;opacity:.95;filter:none}
.cred .mfr-strip .dfhbox{background:#152a63;padding:8px 14px;border-radius:10px}
.cred .mfr-strip .dfhbox img{height:32px}
.supply{background:radial-gradient(1200px 520px at 28% -10%,#173island 0%,#0B1530 62%);color:#fff;padding:96px 0;overflow:hidden}
.supply{background:radial-gradient(1200px 520px at 28% -10%,#16336f 0%,#0B1530 62%)}
.supply .sec-head h2{color:#fff}.supply .sec-head p{color:rgba(255,255,255,.72)}
.map-wrap{position:relative;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:16px}
.map-svg{width:100%;height:auto;display:block}
.legend{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;margin-top:20px;font-size:13.5px;color:rgba(255,255,255,.82)}
.legend span{display:flex;align-items:center;gap:8px}.legend .ld{width:11px;height:11px;border-radius:50%}
.pat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;transition:.25s}
.pat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.pat-card .pn{font-family:'Space Grotesk';font-size:11.5px;font-weight:600;color:var(--teal);letter-spacing:.06em}
.pat-card h3{font-size:18px;margin:8px 0 6px}.pat-card p{font-size:13.5px;color:var(--slate)}
.pat-card .badge{display:inline-block;margin-top:12px;font-size:11px;font-weight:700;color:var(--blue);background:var(--soft);border:1px solid var(--line);padding:4px 10px;border-radius:999px}
.mfr-detail{border:1px solid var(--line);border-radius:24px;margin-bottom:30px;overflow:hidden;background:#fff}
.mfr-detail .mfr-top{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:center;padding:34px 38px}
.mfr-biglogo{display:grid;place-items:center;min-height:120px;padding:16px;border-radius:16px;background:var(--soft)}
.mfr-biglogo.dark{background:#152a63}
.mfr-biglogo img{max-height:92px;max-width:220px;object-fit:contain}
.mfr-detail h3{font-size:26px;font-weight:700;margin-bottom:4px}
.mfr-detail .loc{font-size:14px;color:var(--teal);font-weight:600;margin-bottom:6px}
.mfr-detail .since{display:inline-block;font-size:12px;font-weight:700;color:var(--mint);background:#eafaf2;border:1px solid #c9edd9;padding:3px 11px;border-radius:999px;margin-bottom:12px}
.mfr-detail .mfr-top p{color:var(--slate);font-size:15px;margin-bottom:14px}
.mfr-certs{background:var(--soft);border-top:1px solid var(--line);padding:26px 38px}
.mfr-certs .lbl{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:14px}
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cthumb{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:.2s;display:block}
.cthumb:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.cthumb .ci{aspect-ratio:1/1.25;overflow:hidden;background:#fff;border-bottom:1px solid var(--line)}
.cthumb .ci img{width:100%;height:100%;object-fit:cover;object-position:top}
.cthumb .cl{padding:10px 12px;font-size:12px;font-weight:600;color:var(--ink)}
.verify{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--blue);border:1.5px solid var(--line);padding:8px 14px;border-radius:999px;transition:.2s}
.verify:hover{border-color:var(--blue);background:#fff}
.mfr-verify-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
@media(max-width:920px){.pat-grid,.cgrid{grid-template-columns:1fr 1fr}.mfr-detail .mfr-top{grid-template-columns:1fr;text-align:center}.mfr-biglogo{margin:0 auto;max-width:260px}.mfr-verify-row{justify-content:center}}
@media(max-width:560px){.pat-grid,.cgrid{grid-template-columns:1fr}.hero-visual .cred-stack{height:400px}}

/* interactive manufacturer showcase */
.showcase .sw-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.sw-tab{background:#fff;border:2px solid var(--line);border-radius:16px;height:100px;display:grid;place-items:center;cursor:pointer;transition:.2s;padding:14px}
.sw-tab img{max-height:46px;max-width:160px;object-fit:contain}
.sw-tab .dbx{background:#152a63;padding:9px 14px;border-radius:9px;display:grid;place-items:center}
.sw-tab .dbx img{max-height:32px}
.sw-tab:hover{border-color:#bcd0f5;transform:translateY(-2px)}
.sw-tab.active{border-color:var(--blue);box-shadow:0 14px 32px -14px rgba(50,90,230,.55)}
.sw-panel{display:none;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px 42px}
.sw-panel.active{display:grid;animation:fadein .35s ease}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sw-info h3{font-size:26px;font-weight:700;margin-bottom:4px}
.sw-info .loc{color:var(--teal);font-weight:600;font-size:14px;margin-bottom:12px}
.sw-info p{color:var(--slate);font-size:15px;margin-bottom:16px}
.sw-cert{display:block;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--soft);transition:.2s}
.sw-cert:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.sw-cert img{width:100%;height:310px;object-fit:cover;object-position:top;display:block}
.sw-cert span{display:block;padding:12px 16px;font-size:13px;font-weight:600;color:var(--ink)}
.map-svg{width:100%;height:auto;display:block;border-radius:16px}
@media(max-width:820px){.showcase .sw-tabs{grid-template-columns:1fr 1fr}.sw-panel.active{grid-template-columns:1fr}}

.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pgrid .pc{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:.2s}
.pgrid .pc:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.pgrid .pc img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.pstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.pstrip img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;border:1px solid var(--line)}
@media(max-width:820px){.pgrid,.pstrip{grid-template-columns:1fr 1fr}}

.social-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.social-btn{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--blue);font-weight:600;font-size:16px;padding:15px 26px;border-radius:999px;box-shadow:var(--shadow);transition:.2s}
.social-btn:hover{transform:translateY(-2px)}
@media(max-width:560px){.social-btn{width:100%;justify-content:center}}

.social-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:44px 30px;transition:.25s}
.social-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.sc-icon{width:96px;height:96px;border-radius:24px;display:grid;place-items:center;margin-bottom:22px}
.sc-icon.ig{background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF,#515BD4)}
.sc-icon.fb{background:#1877F2}
.sc-icon.amz{background:#232F3E}
.social-card h3{font-size:23px;font-weight:700;margin-bottom:4px}
.social-card p{color:var(--slate);font-size:15px;margin-bottom:16px}
.sc-cta{font-weight:700;color:var(--blue);font-size:15px}
