
:root{--nav:#0d3346;--nav2:#092634;--accent:#0e8f9e;--accent2:#0b6f7c;--ink:#17222c;--ink2:#41505e;
--muted:#74838f;--line:#e2e8ed;--soft:#f5f8fa;--warn:#b45309;}
*{box-sizing:border-box}
body{margin:0;font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","PingFang SC",sans-serif;
 color:var(--ink);background:#fff;font-size:15px;line-height:1.7}
a{color:var(--accent2);text-decoration:none}a:hover{text-decoration:underline}
img,svg{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.demo-banner{background:var(--nav2);color:#ffd479;font-size:12.5px;padding:8px 24px;text-align:center}
.geo-bar{background:#0e8f9e;color:#fff;font-size:13.5px;padding:10px 24px;display:flex;align-items:center;gap:14px;justify-content:center}
.geo-bar .gb-btn{background:#fff;color:var(--nav)!important;border-radius:5px;padding:3px 12px;font-weight:700;font-size:13px}
.geo-bar .gb-x{background:none;border:none;color:#fff;font-size:19px;cursor:pointer;line-height:1}
.sr{position:absolute;left:-9999px}
.topbar{background:#07202c;color:#c4d4de;font-size:12.5px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:38px;flex-wrap:wrap}
.topbar a{color:#c4d4de}
.tb-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.langsel select{background:#0d3346;color:#fff;border:1px solid #2b4d5e;border-radius:5px;padding:4px 8px;font-size:12.5px}
header.site{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:18px}
.logo{display:flex;align-items:center;gap:13px;font-weight:700;color:var(--nav);font-size:15px;max-width:64%}
.logo img.mark{height:50px;width:auto;display:block;flex:0 0 auto}
.f-logo{height:46px;width:auto;display:block;margin-bottom:8px}
.f-word{font-size:14px;font-weight:800;letter-spacing:.13em;color:#cfe6ee;margin-bottom:4px}
.lname{display:flex;flex-direction:column;gap:4px;line-height:1.15}
.lword{font-size:15px;font-weight:800;letter-spacing:.13em;color:var(--nav);white-space:nowrap}
.lsub{font-size:9.5px;font-weight:500;color:var(--muted);letter-spacing:.02em;white-space:nowrap;max-width:330px;overflow:hidden;text-overflow:ellipsis}
nav.main{display:flex;align-items:center;gap:24px}
nav.main a{color:var(--ink2);font-size:14.5px;font-weight:500;white-space:nowrap}
nav.main a.active,nav.main a:hover{color:var(--accent2);text-decoration:none}
.btn{display:inline-block;background:var(--accent);color:#fff!important;padding:11px 22px;border-radius:6px;
 font-weight:600;font-size:14px;border:none;cursor:pointer}
.btn:hover{background:var(--accent2);text-decoration:none}
.btn.dark{background:var(--nav)}.btn.dark:hover{background:var(--nav2)}
.btn.light{background:#fff;color:var(--nav)!important}
.btn.line{background:#fff;color:var(--nav)!important;border:1px solid var(--line)}
.btn.ghost{background:transparent;border:1.5px solid #fff;color:#fff!important}
.btn.wide{width:100%}
nav .btn{padding:8px 16px;font-size:13.5px}
.menu-toggle{display:none;background:none;border:none;font-size:24px;color:var(--nav);cursor:pointer}

/* hero carousel */
.hero{position:relative;height:470px;overflow:hidden;background:var(--nav2)}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;display:flex;align-items:center;
 background-size:cover;background-position:center}
.slide.active{opacity:1}
.slide h1{color:#fff;font-size:38px;line-height:1.25;margin:0 0 14px;max-width:760px}
.slide p{color:#d5e3ea;font-size:16px;margin:0 0 24px;max-width:640px}
.slide-in{animation:up .9s ease both}
@keyframes up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero-ctrl{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:14px;z-index:5}
.hero-ctrl button{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);color:#fff;
 width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;line-height:1}
.dots{display:flex;gap:8px}
.dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.35);display:block;cursor:pointer}
.dots i.on{background:#fff}
@media(prefers-reduced-motion:reduce){.slide{transition:none}.slide-in{animation:none}}

.stats{background:var(--soft);border-bottom:1px solid var(--line)}
.stats .wrap{display:flex;flex-wrap:wrap}
.stats>div>div,.stats .wrap>div{flex:1;min-width:170px;padding:22px 12px;text-align:center;border-right:1px solid var(--line)}
.stats .wrap>div:last-child{border-right:none}
.stats b{display:block;font-size:19px;color:var(--nav);line-height:1.35}
.stats span{font-size:12.5px;color:var(--muted)}

section{padding:56px 0}
section.soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
section.dark{background:var(--nav);color:#dbe7ee}
section.dark h2{color:#fff}
section.dark .sec-head p{color:#9fb6c4}
.sec-head{margin-bottom:26px}
.sec-head h2{font-size:24px;margin:0 0 6px;color:var(--nav)}
.sec-head p{margin:0;color:var(--muted);font-size:14px}
.eyebrow{color:var(--accent2);font-size:12.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:8px}
.eyebrow.light{color:#7fd3de}
h2.big{font-size:26px;color:var(--nav);margin:0 0 12px}
h1.big{font-size:30px;color:var(--nav);margin:0 0 14px}
.lead{color:var(--ink2);font-size:15.5px}
.note{background:#fff8ee;border-left:4px solid var(--warn);padding:12px 16px;border-radius:0 8px 8px 0;font-size:13.5px;margin:16px 0}
.warn-line{color:var(--warn);font-weight:600;font-size:14.5px}
.grid{display:grid;gap:20px}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;transition:.18s;color:inherit;display:block}
a.card:hover{border-color:var(--accent);box-shadow:0 6px 20px rgba(13,51,70,.09);text-decoration:none;transform:translateY(-2px)}
.card h3{margin:0 0 8px;font-size:16.5px;color:var(--nav)}
.card p{margin:0;color:var(--ink2);font-size:14px}
.card.flat{display:block;padding:18px 16px;font-size:14px}
.card.flat b{font-weight:600}
.more{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:600}
.molbox{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:14px;min-height:130px;display:flex;align-items:center;justify-content:center}
.molbox-flat{font-family:Consolas,monospace;font-size:17px;color:var(--nav)}
svg.mol{width:100%;height:auto;max-height:175px}
.mol{width:100%;height:auto}

.prod-feature{display:grid;grid-template-columns:1.02fr .98fr;gap:36px;align-items:start}
.spec-table{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
.spec-table th,.spec-table td{border:1px solid var(--line);padding:9px 12px;text-align:left}
.spec-table th{background:var(--soft);width:40%;color:var(--ink2);font-weight:600}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cert{border:1px solid var(--line);border-radius:8px;padding:13px 15px;background:#fff}
.cert b{display:block;font-size:14px;font-weight:600}
.cert span{font-size:12px;color:var(--muted)}
.cert.ok{border-left:4px solid #0f9d58}
.cert.proc{border-left:4px solid var(--warn)}
.pill{display:inline-block;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:600}
.pill.ok{background:#e8f6ec;color:#0f7a45}
.pill.proc{background:#fff3e2;color:var(--warn)}
.badge{display:inline-block;background:#e6f5f7;color:var(--accent2);border:1px solid #bfe2e7;border-radius:4px;
 padding:2px 9px;font-size:12px;margin:0 6px 6px 0;font-weight:600}
.badge.proc{background:#fff3e2;color:var(--warn);border-color:#f3d5ab}

.tr-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.tr{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:14px 16px}
.tr b{display:block;font-size:14.5px;color:#fff}
.tr span{font-size:12.5px;color:#9fb6c4}
.anvisa{margin-top:22px;background:rgba(255,255,255,.06);border-left:4px solid #7fd3de;border-radius:0 8px 8px 0;padding:18px 20px}
.anvisa h3{margin:0 0 6px;color:#fff;font-size:18px}
.anvisa p{margin:0;color:#d3e0e8;font-size:14.5px}
.anv-facts{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px 22px}
.anv-facts li{border-top:1px solid rgba(255,255,255,.16);padding:8px 0}
.anv-facts span{display:block;color:#8fb2c0;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.anv-facts b{color:#fff;font-size:14.5px;font-weight:600}
.anv-src{margin-top:12px !important;color:#8fb2c0 !important;font-size:12px !important;line-height:1.6}
.anv-corp{margin-top:6px !important;color:#cfe2ea !important;font-size:12.5px !important;line-height:1.6;border-top:1px solid rgba(255,255,255,.14);padding-top:8px}
.tb-link{color:inherit;text-decoration:none}
.fcontact a{color:inherit}
.fcontact{line-height:1.7}

.two{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:start}
.audit-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:24px}
.steps{margin:14px 0 0;padding-left:20px}
.steps li{margin:8px 0}
.big-steps li{margin:12px 0;font-size:15px}

.photorow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.photo{background:#e9eef2;border:1px dashed #c3ced7;border-radius:8px;height:120px;display:flex;
 align-items:center;justify-content:center;color:var(--muted);font-size:13px}
.mk-row{display:flex;flex-wrap:wrap;gap:10px}
.mk{background:var(--soft);border:1px solid var(--line);border-radius:20px;padding:7px 18px;font-size:14px}

.news-item{display:flex;gap:16px;padding:16px 0;border-bottom:1px dashed var(--line)}
.news-date{background:#fff;border:1px solid var(--line);border-radius:8px;min-width:76px;height:44px;
 display:flex;align-items:center;justify-content:center;color:var(--nav);font-weight:700;font-size:13px}
.muted{color:var(--muted);font-size:13.5px}
.small{font-size:12.5px;color:var(--muted)}

.exh-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:26px 0 14px;
 padding-top:20px;border-top:1px solid var(--line)}
.exh-head b{font-size:17px;color:var(--nav)}
.exh-head span{font-size:13px;color:var(--muted)}
.exh-list{display:grid;gap:10px}
.exh-row{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);
 border-radius:10px;padding:13px 16px}
.exh-date{min-width:126px;text-align:center;font-weight:700;font-size:13px;color:var(--nav);
 background:var(--soft);border-radius:6px;padding:7px 10px}
.exh-body b{display:block;font-size:15px;color:var(--ink)}
.exh-body span{font-size:13px;color:var(--muted)}
@media(max-width:640px){.exh-row{flex-direction:column;align-items:flex-start;gap:8px}
 .exh-date{min-width:0;padding:5px 10px}}

.hero-mini{background:linear-gradient(120deg,#0d3346,#0e6f7e);color:#fff;padding:60px 0 54px}
.hero-mini h1{font-size:30px;margin:0 0 12px;max-width:800px}
.hero-mini .lead{color:#d5e3ea;margin:0 0 22px;max-width:720px}

.p-head{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:start;padding:14px 0 34px;border-bottom:1px solid var(--line)}
.p-head h1{font-size:28px;margin:10px 0 8px;color:var(--nav)}
.p-meta{font-size:14px;color:var(--ink2)}
.badges{margin:12px 0}
.breadcrumb{font-size:12.5px;color:var(--muted);padding:16px 0}
.breadcrumb a{color:var(--muted)}
.rfq-box{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:22px;position:sticky;top:88px}
.rfq-box h3{margin:0 0 4px;font-size:17px;color:var(--nav)}
.rfq-box>p{margin:0 0 14px;font-size:13px;color:var(--muted)}
.rfq-box input,.rfq-box textarea,.rfq-box select{width:100%;padding:9px 11px;border:1px solid var(--line);
 border-radius:6px;font-size:14px;margin-bottom:10px;font-family:inherit;background:#fff}
.rfq-box label{font-size:12.5px;color:var(--ink2);font-weight:600;display:block;margin-bottom:4px}
.rfq-alt{margin-top:12px;font-size:12.5px}
.sec-h{margin:34px 0 12px;font-size:19px;color:var(--nav)}
table.full{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0}
table.full th,table.full td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
table.full th{background:var(--soft);color:var(--ink2)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px}
ul.tick{margin:6px 0;padding-left:20px}ul.tick li{margin:7px 0;font-size:14.5px}
.dlrow{margin:4px 0}

.cta-band{background:linear-gradient(120deg,var(--accent2),var(--accent));color:#fff;padding:44px 0}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{margin:0 0 6px;font-size:23px;color:#fff}
.cta-band p{margin:0;opacity:.94;font-size:14.5px}
.cta-btns{display:flex;gap:10px;flex-wrap:wrap}

footer.site{background:var(--nav2);color:#a9bcc9;padding:46px 0 26px;font-size:13.5px}
footer.site h4{color:#fff;font-size:14px;margin:0 0 12px}
footer.site a{color:#a9bcc9;display:block;padding:3px 0}
footer.site a:hover{color:#fff}
.fdesc{line-height:1.7;margin:0}
.fcontact{margin-top:12px}
.fnote{margin-top:12px;color:#7c93a3;font-size:12px}
.f-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:28px}
.f-bottom{border-top:1px solid #24404f;margin-top:30px;padding-top:16px;display:flex;
 justify-content:space-between;gap:14px;flex-wrap:wrap;color:#7c93a3;font-size:12.5px}

@media(max-width:960px){
 .g3,.g4,.prod-feature,.two,.p-head,.two-col,.f-grid{grid-template-columns:1fr}
 .cert-grid{grid-template-columns:repeat(2,1fr)}
 .tr-grid{grid-template-columns:1fr}
 .photorow{grid-template-columns:repeat(2,1fr)}
 .hero{height:420px}.slide h1{font-size:27px}
 nav.main{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;
  align-items:flex-start;padding:14px 24px;border-bottom:1px solid var(--line);gap:14px;box-shadow:0 8px 20px rgba(0,0,0,.08)}
 nav.main.open{display:flex}
 .menu-toggle{display:block}
 .rfq-box{position:static}
 .stats .wrap>div{border-right:none;border-bottom:1px solid var(--line)}
 .logo img.mark{height:38px}
 .logo .lword{font-size:13px}
}
@media(max-width:560px){
 .logo .lname{display:none}
}

/* ---- Round 3: trust cards, RFQ buttons, product hub ---- */
.ms-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
@media(max-width:960px){.ms-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ms-grid{grid-template-columns:1fr}}
.ms-grid>div{border:1px solid #e2e8ec;border-radius:10px;padding:15px 15px 13px;background:#fff;
  box-shadow:0 1px 2px rgba(16,40,54,.04)}
.ms-t{display:block;font-size:14.5px;font-weight:700;color:#0d3346;line-height:1.45;margin-bottom:7px}
.ms-d{display:block;font-size:12.8px;color:#5b6f7a;line-height:1.65}
.rfq-box input.ro{width:100%;padding:9px 11px;border:1px solid #d6e0e5;border-radius:8px;
  background:#f3f8fa;font-size:13px;color:#0d3346;margin:2px 0 0}
.rfq-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
@media(max-width:520px){.rfq-btns{grid-template-columns:1fr}}
.rfq-btns .btn{display:block;text-align:center;padding:11px 10px;border-radius:9px;
  text-decoration:none;font-weight:600;font-size:13.5px;line-height:1.3}
.btn.mail{background:#0d3346;color:#fff}
.btn.wa{background:#128c57;color:#fff}
.rfq-alt{margin-top:14px !important;font-size:12.5px !important;line-height:1.85 !important}
.rfq-alt a{color:#0e6f7e}
/* ---- Round 5: real photos, cert thumbnails, market links ---- */
.gal-head{margin:26px 0 12px}.gal-head b{display:block;font-size:17px;color:#0d3346}
.gal-head span{font-size:13px;color:#5b6f7a}
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gal-grid figure{margin:0;border:1px solid #e2e8ec;border-radius:10px;overflow:hidden;background:#fff}
.gal-grid img{width:100%;height:150px;object-fit:cover}
.gal-grid figcaption{font-size:11.5px;color:#5b6f7a;padding:7px 10px;line-height:1.45}
@media(max-width:960px){.gal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.gal-grid{grid-template-columns:1fr}}
.ci-head{margin:22px 0 10px}.ci-head b{display:block;font-size:15.5px;color:#0d3346}
.ci-head span{font-size:12.5px;color:#74838f}
.ci-grid{display:grid;grid-template-columns:repeat(2,minmax(0,280px));gap:14px;margin-bottom:18px}
.ci-card{border:1px solid #e2e8ec;border-radius:10px;overflow:hidden;background:#fff}
.ci-card img{width:100%;height:190px;object-fit:cover;object-position:top}
.ci-card span{display:block;font-size:12px;color:#41505e;padding:8px 12px;line-height:1.5}
a.mk{text-decoration:none;color:var(--ink)}
a.mk:hover{border-color:#0e8f9e;color:#0b6f7c}
/* ---- Round 6: generic backbone figure ---- */
.mol-generic{margin-top:14px;text-align:center}
.mol-generic .molbox{margin:0 auto;max-width:340px}
.mol-note{margin:10px auto 0 !important;max-width:420px;font-size:12px !important;color:#74838f !important;line-height:1.7 !important;text-align:center}

/* ---- Round 15: factory stats, markets cards ---- */
.fac-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:26px}
.fac-stats>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
  border-radius:10px;padding:14px 16px}
.fac-stats b{display:block;color:#fff;font-size:19px;line-height:1.35}
.fac-stats span{display:block;color:#9fc4d2;font-size:12px;margin-top:5px}
@media(max-width:960px){.fac-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fac-stats{grid-template-columns:1fr}}
.fac-note{margin:14px 0 0 !important;font-size:11.5px !important;line-height:1.6 !important;
  color:#8fb3c1 !important;max-width:820px}
.mkc{position:relative;padding:20px 20px 52px}
.mkc-tag{display:block;font-size:11px;font-weight:700;letter-spacing:1.2px;
  text-transform:uppercase;color:#0e8f9e;margin-bottom:8px}
.mkc-go{position:absolute;left:20px;bottom:17px;font-size:13px;font-weight:700;color:#0b6f7c}
.mkc.nolink{background:var(--soft)}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:960px){.g3{grid-template-columns:1fr}}
.reg-note{margin-top:24px}


/* ---- Round 16: FAQ page, buying guide, RFQ form, applications ---- */
.faq-list{max-width:820px}
.faq-item{border:1px solid #e2e8ec;border-radius:10px;padding:16px 20px;margin-bottom:12px;background:#fff}
.faq-q{margin:0 0 8px;font-size:15.5px;color:var(--nav)}
.faq-a{margin:0;font-size:14px;color:var(--ink2);line-height:1.75}
.gbody{font-size:14.5px;color:var(--ink2);line-height:1.8;max-width:820px}
.cta-inline{margin-top:30px;padding:22px 24px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
.cta-inline h3{margin:0 0 14px;font-size:17px;color:var(--nav)}
.rfq-box textarea{resize:vertical;min-height:64px}
.rfq-box .btn.mail{border:none;cursor:pointer}

/* ---- Round 24: trusted customers wall ---- */
.client-wall{background:#fff;border:1px solid #e2e8ec;border-radius:12px;
  padding:20px 22px;margin-top:22px}
.cl-badges{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 4px}
.cl-badge{display:inline-flex;align-items:center;border:1px solid #d6e0e5;
  background:#f6fafb;border-radius:999px;padding:8px 16px;font-size:13px;
  font-weight:600;color:#0d3346;letter-spacing:.01em}
.cl-badge::before{content:"";width:7px;height:7px;border-radius:50%;
  background:#0e8f9e;margin-right:9px;flex:0 0 auto}
.cl-note{margin-top:12px;font-size:12px !important;color:#74838f !important;
  line-height:1.7 !important}
