/* Ruian Pharmaceutical — site styles */
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 400;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 400;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 500;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 500;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 600;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 600;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 700;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 700;font-stretch: 100%;font-display: swap;src: url(fonts/ibmplexsans_v23_zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'Source Serif 4';font-style: normal;font-weight: 600;font-display: swap;src: url(fonts/sourceserif4_v15_vEFI2_tTDB4M7-auWDN0ahZJW1gV8tenXg.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'Source Serif 4';font-style: normal;font-weight: 600;font-display: swap;src: url(fonts/sourceserif4_v15_vEFI2_tTDB4M7-auWDN0ahZJW1gb8tc.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'Source Serif 4';font-style: normal;font-weight: 700;font-display: swap;src: url(fonts/sourceserif4_v15_vEFI2_tTDB4M7-auWDN0ahZJW1gV8tenXg.woff2) format('woff2');unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family: 'Source Serif 4';font-style: normal;font-weight: 700;font-display: swap;src: url(fonts/sourceserif4_v15_vEFI2_tTDB4M7-auWDN0ahZJW1gb8tc.woff2) format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--navy:#081912;--navy2:#0d241b;--gold:#297247;--gold2:#659a76;--cream:#f4f6f8;--ink:#17261f;--muted:#5c6862;--line:#e2e7e4;--ws:#25d366;--ws2:#1ebe5b}
*{-webkit-box-sizing:border-box;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,.serif{font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:700;line-height:1.1;letter-spacing:-.01em;margin:0}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:600;margin-bottom:14px}
.eyebrow.dark{color:var(--gold2)}
section{padding:72px 0}
.sec-title{font-size:38px;text-align:center;margin-bottom:12px}
.sec-sub{text-align:center;color:var(--muted);max-width:640px;margin:0 auto 44px;font-size:17px}
/* announcement */
.announce{background:var(--navy);color:var(--gold2);text-align:center;font-size:13px;letter-spacing:.04em;padding:9px 16px;font-weight:500}
/* nav */
.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(244,246,248,.94);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.nav .wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;height:64px}
.logo{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;font-family:Inter,Arial,sans-serif;font-size:21px;font-weight:800;letter-spacing:.06em;color:var(--navy)}
.logo span{color:var(--gold)}
.logo img{height:32px;width:auto;margin-right:9px;-ms-flex-negative:0;flex-shrink:0}
/* WhatsApp buttons */
.btn{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;background:var(--ws);color:#fff;font-weight:700;border-radius:12px;padding:14px 22px;border:0;cursor:pointer;-webkit-transition:background .2s,-webkit-transform .15s;transition:background .2s,transform .15s;text-align:center;font-size:16px;line-height:1.2;-webkit-box-shadow:0 8px 24px rgba(37,211,102,.28);box-shadow:0 8px 24px rgba(37,211,102,.28)}
.btn:hover{background:var(--ws2);-webkit-transform:translateY(-1px);transform:translateY(-1px)}
.btn .ico{width:22px;height:22px;margin-right:10px;-ms-flex-negative:0;flex-shrink:0}
.btn.small{padding:10px 16px;font-size:14px;border-radius:10px}
.btn.small .ico{width:18px;height:18px;margin-right:8px}
.btn.two{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:14px 26px;width:100%;max-width:440px}
.btn.two .main{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;font-size:17px}
.btn.two .sub{display:block;font-size:12.5px;font-weight:500;opacity:.92;margin-top:5px;letter-spacing:.01em}
.btn.two.big{padding:18px 30px}
.btn.two.big .main{font-size:19px}
/* hero */
.hero{background:var(--navy);color:#fff;padding:60px 0 70px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(41,114,71,.16),rgba(41,114,71,0) 65%);top:-250px;right:-200px}
.hero .wrap{display:grid;display:-ms-grid;grid-template-columns:1.1fr .9fr;grid-gap:56px;-webkit-box-align:center;align-items:center;position:relative}
.hero h1{font-size:50px;color:#fff;margin-bottom:18px}
.hero h1 em{font-style:normal;color:var(--gold2)}
.hero p.lead{font-size:18px;color:#c4ccc8;max-width:540px;margin:0 0 28px}
.online{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;margin-top:18px;font-size:14px;color:#c4ccc8}
.dot{width:10px;height:10px;border-radius:50%;background:var(--ws);margin-right:9px;-webkit-box-shadow:0 0 0 0 rgba(37,211,102,.7);box-shadow:0 0 0 0 rgba(37,211,102,.7);-webkit-animation:pulse 1.8s infinite;animation:pulse 1.8s infinite}
@-webkit-keyframes pulse{0%{-webkit-box-shadow:0 0 0 0 rgba(37,211,102,.6);box-shadow:0 0 0 0 rgba(37,211,102,.6)}70%{-webkit-box-shadow:0 0 0 10px rgba(37,211,102,0);box-shadow:0 0 0 10px rgba(37,211,102,0)}100%{-webkit-box-shadow:0 0 0 0 rgba(37,211,102,0);box-shadow:0 0 0 0 rgba(37,211,102,0)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)}70%{box-shadow:0 0 0 10px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.trustline{font-size:13px;color:#8e9a94;margin-top:10px}
.hero-media{position:relative}
.hero-frame{position:relative;padding-top:125%;border-radius:18px;overflow:hidden;background:#132a21;-webkit-box-shadow:0 30px 60px rgba(0,0,0,.45);box-shadow:0 30px 60px rgba(0,0,0,.45);border:1px solid rgba(41,114,71,.25)}
.hero-frame img,.hero-frame video{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.badge-float{position:absolute;left:-14px;bottom:28px;background:#fff;color:var(--navy);border-radius:12px;padding:12px 16px;font-size:13px;font-weight:600;-webkit-box-shadow:0 12px 30px rgba(0,0,0,.35);box-shadow:0 12px 30px rgba(0,0,0,.35);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}
.badge-float .ck{width:28px;height:28px;border-radius:50%;background:var(--ws);color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;margin-right:10px;font-size:14px;-ms-flex-negative:0;flex-shrink:0}
.badge-live{position:absolute;top:16px;right:16px;background:rgba(8,25,18,.85);color:#fff;font-size:12px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.15);letter-spacing:.06em}
.badge-live i{display:inline-block;width:7px;height:7px;background:#ff4d4d;border-radius:50%;margin-right:7px;vertical-align:1px}
/* trust bar */
.trustbar{background:#fff;border-bottom:1px solid var(--line);padding:22px 0}
.trustbar .wrap{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px}
.tb{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;font-size:14px;font-weight:600;color:var(--navy)}
.tb svg{width:34px;height:34px;margin-right:12px;-ms-flex-negative:0;flex-shrink:0;color:var(--gold)}
.tb small{display:block;font-weight:400;color:var(--muted);font-size:12.5px;margin-top:2px}
/* products */
.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:26px}
.card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);-webkit-transition:-webkit-transform .2s,-webkit-box-shadow .2s;transition:transform .2s,box-shadow .2s;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
.card:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px);-webkit-box-shadow:0 20px 40px rgba(8,25,18,.12);box-shadow:0 20px 40px rgba(8,25,18,.12)}
.card.focus{border-color:var(--gold);-webkit-box-shadow:0 0 0 3px rgba(41,114,71,.45);box-shadow:0 0 0 3px rgba(41,114,71,.45)}
.sq{position:relative;padding-top:100%;background:#eaeeec;overflow:hidden}
.sq img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.save{position:absolute;top:14px;left:14px;background:var(--navy);color:var(--gold2);font-size:12px;font-weight:700;padding:6px 10px;border-radius:8px;letter-spacing:.04em}
.cbody{padding:20px 20px 22px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1}
.cbody h3{font-size:21px;margin-bottom:6px}
.tag{color:var(--muted);font-size:14px;margin-bottom:14px;-webkit-box-flex:1;-ms-flex:1;flex:1}
.price{font-size:24px;font-weight:700;color:var(--navy)}
.price s{color:#9fa8a4;font-weight:400;font-size:16px;margin-left:8px}
.ship{color:#1a9c4a;font-size:12.5px;font-weight:600;margin:8px 0 14px}
.price small{font-size:13px;font-weight:500;color:var(--muted)}
.price.quote{font-size:17px;color:var(--gold);font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif}
a.price.chat{display:block;font-size:15.5px;font-weight:700;color:var(--navy);background:#ebf2ed;border:1px dashed var(--gold);border-radius:10px;padding:11px 12px;text-align:center;line-height:1.35;-webkit-transition:background .2s;transition:background .2s}
a.price.chat:hover{background:#dce8df}
.specs{list-style:none;margin:0 0 12px;padding:0;font-size:12.5px;border-top:1px solid var(--line)}
.specs li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--line)}
.specs li span{color:var(--muted)}.specs li b{font-weight:600;text-align:right;margin-left:10px}
.catalog{display:inline-block;margin-top:12px;color:var(--gold2);font-weight:600;font-size:14px;border-bottom:1px solid rgba(101,154,118,.5);padding-bottom:1px}
.step p .hl,.cc p .hl,details p .hl{color:inherit;font-weight:700}
.step p .hl{color:var(--gold2)}
.card .btn.two{max-width:none;padding:12px 16px;border-radius:11px}
.card .btn.two .main{font-size:15.5px}.card .btn.two .sub{font-size:11.5px}
.more{margin-top:44px;text-align:center;background:#fff;border:1px dashed #c9d1cb;border-radius:16px;padding:32px 24px}
.more h3{font-size:24px;margin-bottom:8px}
.more p{color:var(--muted);margin:0 auto 20px;max-width:560px}
/* steps */
.steps{background:var(--navy);color:#fff}
.steps .sec-title{color:#fff}.steps .sec-sub{color:#aab5af}
.steps .wrap>.g{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:26px}
.step{background:var(--navy2);border:1px solid rgba(41,114,71,.25);border-radius:16px;padding:30px 26px;position:relative}
.step .n{font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-size:52px;color:var(--gold);line-height:1;margin-bottom:14px;font-weight:700;opacity:.9}
.step h3{font-size:21px;color:#fff;margin-bottom:10px}
.step p{color:#aab5af;margin:0;font-size:15px}
.step .hl{color:var(--gold2);font-weight:600}
/* confidence */
.conf .g{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:18px}
.cc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 20px}
.cc.first{background:var(--navy);color:#fff;border-color:var(--navy);grid-column:span 1}
.cc svg{width:36px;height:36px;color:var(--gold);margin-bottom:14px}
.cc h3{font-size:17px;margin-bottom:8px;font-family:Inter,sans-serif;font-weight:700}
.cc p{font-size:14px;color:var(--muted);margin:0}
.cc.first p{color:#c4ccc8}
/* reviews */
.reviews{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rv-wrap{position:relative}
.rv-track{display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:6px 4px 12px}
.rv-track::-webkit-scrollbar{display:none}
.rv{-ms-flex:0 0 340px;flex:0 0 340px;scroll-snap-align:start;background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:24px;margin-right:18px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
.stars{color:var(--gold);font-size:15px;letter-spacing:2px;margin-bottom:10px}
.rv p{font-size:15px;margin:0 0 16px;-webkit-box-flex:1;-ms-flex:1;flex:1}
.rv .who{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}
.rv .who img{width:76px;height:76px;-o-object-fit:cover;object-fit:cover;border-radius:10px;margin-right:14px;cursor:zoom-in;border:1px solid var(--line)}
.rv .who b{display:block;font-size:14px}.rv .who span{font-size:13px;color:var(--muted)}
.rv-nav{position:absolute;top:50%;margin-top:-22px;width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;border:0;cursor:pointer;font-size:18px;z-index:2;-webkit-box-shadow:0 6px 16px rgba(0,0,0,.2);box-shadow:0 6px 16px rgba(0,0,0,.2)}
.rv-nav.prev{left:-22px}.rv-nav.next{right:-22px}
.dots{text-align:center;margin-top:10px}
.dots i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#d0d7d2;margin:0 4px;cursor:pointer}
.dots i.on{background:var(--gold);width:22px;border-radius:4px}
/* lightbox 画廊（产品多图 / 工厂实拍 / 买家秀） */
.lb{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(5,12,8,.96);z-index:200;display:none;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;padding:58px 20px 104px}
.lb.on{display:-webkit-box;display:-ms-flexbox;display:flex}
.lb-stage{position:relative;text-align:center;max-width:100%}
.lb-stage img{max-height:76vh;max-width:92vw;width:auto;border-radius:10px;margin:0 auto}
.lb-title{position:absolute;top:18px;left:0;right:0;text-align:center;color:#fff;font-size:15px;font-weight:600;z-index:2;padding:0 62px}
.lb-x{position:absolute;top:10px;right:16px;background:none;border:0;color:#fff;font-size:36px;line-height:1;cursor:pointer;z-index:4;opacity:.85;padding:0 6px;font-family:inherit}
.lb-nav{position:absolute;top:50%;margin-top:-26px;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.94);color:#081912;border:0;font-size:26px;line-height:1;cursor:pointer;z-index:4;-webkit-box-shadow:0 6px 20px rgba(0,0,0,.4);box-shadow:0 6px 20px rgba(0,0,0,.4)}
.lb-nav.prev{left:14px}.lb-nav.next{right:14px}
.lb-bar{position:absolute;left:0;right:0;bottom:16px;text-align:center;z-index:3}
.lb-count{color:#cfd6d2;font-size:12.5px;margin-bottom:9px;font-weight:600;letter-spacing:.06em}
.lb-thumbs{white-space:nowrap;overflow-x:auto;padding:0 16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.lb-thumbs::-webkit-scrollbar{display:none}
.lb-thumbs img{display:inline-block;width:54px;height:54px;-o-object-fit:cover;object-fit:cover;border-radius:8px;margin:0 5px;opacity:.45;cursor:pointer;border:2px solid transparent;vertical-align:middle}
.lb-thumbs img.on{opacity:1;border-color:var(--gold)}
.shots{position:absolute;right:12px;bottom:12px;background:rgba(8,25,18,.82);color:#fff;font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:999px;letter-spacing:.02em;pointer-events:none}
.sq.zoom{cursor:zoom-in}
/* faq */
.faq .list{max-width:780px;margin:0 auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 22px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:600;font-size:17px;padding:18px 0;list-style:none;position:relative;padding-right:34px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:0;top:14px;font-size:24px;color:var(--gold);font-weight:400}
.faq details[open] summary:after{content:"–"}
.faq details p{margin:0 0 20px;color:var(--muted);font-size:15px}
.faq .cta{text-align:center;margin-top:30px}
/* final */
.final .box{background:var(--navy);color:#fff;border-radius:24px;padding:60px 40px;text-align:center;position:relative;overflow:hidden}
.final .box:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(41,114,71,.2),rgba(41,114,71,0) 65%);top:-200px;left:-150px}
.final h2{font-size:40px;color:#fff;margin-bottom:14px;position:relative}
.final p{color:#c4ccc8;max-width:560px;margin:0 auto 28px;font-size:17px;position:relative}
.badges{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;max-width:820px;margin:34px auto 0;position:relative}
.bd{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px 10px;font-size:13px;font-weight:600;color:#e8ecea}
.bd svg{width:22px;height:22px;color:var(--gold2);display:block;margin:0 auto 8px}
footer{padding:36px 0 120px;text-align:center;color:var(--muted);font-size:13.5px}
footer .logo{font-size:19px;margin-bottom:10px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}
footer .logo img{height:30px}
footer .g{margin-top:12px;color:#69746e}
/* float + sticky */
.float{position:fixed;right:22px;bottom:22px;z-index:60;width:62px;height:62px;border-radius:50%;background:var(--ws);color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-shadow:0 10px 28px rgba(37,211,102,.45);box-shadow:0 10px 28px rgba(37,211,102,.45);-webkit-animation:breathe 2.2s infinite;animation:breathe 2.2s infinite}
.float svg{width:32px;height:32px}
@-webkit-keyframes breathe{0%,100%{-webkit-box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.5);box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.5)}50%{-webkit-box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 16px rgba(37,211,102,0);box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 16px rgba(37,211,102,0)}}
@keyframes breathe{0%,100%{box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.5)}50%{box-shadow:0 10px 28px rgba(37,211,102,.45),0 0 0 16px rgba(37,211,102,0)}}
.sticky{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom));-webkit-box-shadow:0 -8px 24px rgba(0,0,0,.08);box-shadow:0 -8px 24px rgba(0,0,0,.08)}
.sticky .btn.two{max-width:none;padding:11px 16px}
.sticky .btn.two .main{font-size:16px}.sticky .btn.two .sub{font-size:11.5px}
/* factory gallery (1000×1300 竖版) */
.gal{background:var(--navy);color:#fff}
.gal .sec-title{color:#fff}
.gal .sec-sub{color:#aab5af}
.gal-wrap{position:relative}
.gal-track{display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 12px}
.gal-track::-webkit-scrollbar{display:none}
.gal-item{-webkit-box-flex:0;-ms-flex:0 0 250px;flex:0 0 250px;scroll-snap-align:start;margin:0 18px 0 0;cursor:zoom-in}
.gal-frame{position:relative;padding-top:130%;border-radius:14px;overflow:hidden;background:#132a21;border:1px solid rgba(41,114,71,.22);-webkit-box-shadow:0 16px 34px rgba(0,0,0,.35);box-shadow:0 16px 34px rgba(0,0,0,.35)}
.gal-frame img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.gal-cap{margin-top:12px}
.gal-cap b{display:block;font-size:14.5px;font-weight:600;color:#fff}
.gal-cap span{display:block;font-size:12.5px;color:#8e9a94;margin-top:3px;line-height:1.5}
.gal-nav{position:absolute;top:34%;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--navy);border:0;cursor:pointer;font-size:20px;z-index:2;-webkit-box-shadow:0 8px 20px rgba(0,0,0,.35);box-shadow:0 8px 20px rgba(0,0,0,.35)}
.gal-nav.prev{left:-22px}.gal-nav.next{right:-22px}
.gal .dots i{background:#394942}
.gal .dots i.on{background:var(--gold)}
@media(min-width:901px){.gal-track.few{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}
/* lead form modal */
.mbox.lead{max-width:580px;text-align:left;padding:30px 28px 26px;max-height:92vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
.mbox.lead h3{font-size:25px;margin-bottom:8px}
.mbox.lead>p.sub{margin:0 0 4px;font-size:15px}
.lf-label{display:block;font-weight:700;font-size:14px;margin:18px 0 8px;color:var(--navy)}
.lf-label i{font-style:normal;color:#d33}
.lf-label em{font-style:normal;font-weight:400;color:var(--muted);font-size:12.5px}
.lf-styles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;max-height:320px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px}
.lf-style{position:relative;display:block;cursor:pointer;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}
.lf-style input{position:absolute;opacity:0;width:1px;height:1px}
.lf-style .im{position:relative;display:block;padding-top:100%;background:#eaeeec}
.lf-style .im img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.lf-style .im .oi{position:absolute;top:0;left:0;right:0;bottom:0;line-height:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;font-size:30px;color:var(--gold)}
.lf-style b{display:block;padding:8px 9px 9px;font-size:12px;font-weight:600;line-height:1.35}
.lf-style .tick{position:absolute;top:7px;right:7px;width:22px;height:22px;border-radius:50%;background:var(--ws);color:#fff;font-size:13px;line-height:22px;text-align:center;display:none;font-weight:700}
.lf-style.on{border-color:var(--ws);-webkit-box-shadow:0 0 0 2px rgba(37,211,102,.35);box-shadow:0 0 0 2px rgba(37,211,102,.35)}
.lf-style.on .tick{display:block}
.lf-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 14px}
.mbox.lead textarea,.mbox.lead input[type=tel],.mbox.lead input[type=email],.mbox.lead input[type=text]{width:100%;padding:11px 12px;border:1px solid #d5dbd8;border-radius:9px;font-size:16px;font-family:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;background:#fff;color:var(--ink)}
.mbox.lead textarea{min-height:76px;resize:vertical}
.lf-drop{display:block;border:1px dashed #bfc9c4;border-radius:11px;padding:16px 14px;text-align:center;cursor:pointer;color:var(--muted);font-size:13.5px;background:#f6f8fa}
.lf-drop input{display:none}
.lf-thumbs{margin-top:10px}
.lf-thumbs img{display:inline-block;width:58px;height:58px;-o-object-fit:cover;object-fit:cover;border-radius:8px;margin:0 8px 8px 0;border:1px solid var(--line)}
.lf-cat{display:block;margin-top:14px;border:1px solid var(--gold);background:#f0f6f3;border-radius:11px;padding:13px 14px;cursor:pointer;position:relative}
.lf-cat input{position:absolute;left:14px;top:15px;margin:0;width:17px;height:17px}
.lf-cat span{display:block;padding-left:29px}
.lf-cat b{display:block;font-size:13.5px;font-weight:700;color:var(--navy);line-height:1.4}
.lf-cat em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.5}
.lf-cat.on{background:#e1ece4;-webkit-box-shadow:0 0 0 2px rgba(41,114,71,.35);box-shadow:0 0 0 2px rgba(41,114,71,.35)}
.lf-err{color:#d33;font-size:12.5px;margin-top:6px;display:none}
.lf-err.on{display:block}
.lf-note{color:var(--muted);font-size:12px;margin-top:12px;text-align:center;line-height:1.5}
.mbox.lead .btn.two{margin-top:20px;max-width:none;width:100%}
.mbox.lead .btn.two[disabled]{opacity:.65;cursor:default}
.lf-skip{display:block;margin:14px auto 0;background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline;cursor:pointer;font-family:inherit;padding:0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
body.noscroll{position:fixed;left:0;right:0;width:100%;overflow:hidden}
/* exit modal */
.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(8,25,18,.75);z-index:150;display:none;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;padding:20px}
.modal.on{display:-webkit-box;display:-ms-flexbox;display:flex}
#leadModal{z-index:160}
.mbox{background:#fff;border-radius:20px;max-width:480px;width:100%;padding:36px 32px;text-align:center;position:relative;-webkit-box-shadow:0 30px 80px rgba(0,0,0,.4);box-shadow:0 30px 80px rgba(0,0,0,.4)}
.mbox .x{position:absolute;top:4px;right:6px;border:0;background:none;font-size:26px;color:#999;cursor:pointer;width:44px;height:44px;line-height:44px;text-align:center;padding:0;font-family:inherit}
.mbox h3{font-size:26px;margin-bottom:10px}
.mbox p{color:var(--muted);margin:0 0 22px;font-size:15px}
.mbox .btn.two{max-width:none}
.nowa{background:#fff3cd;color:#7a5b00;text-align:center;padding:10px;font-size:14px}
/* v3.9 product card COA link */
.pdoc{display:block;font-size:12.5px;color:var(--gold);font-weight:600;margin:-6px 0 12px;line-height:1.4}
.pdoc:hover{text-decoration:underline}
/* v3.9 profit calculator */
.calc{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cg{display:grid;display:-ms-grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:32px;-webkit-box-align:start;align-items:start}
.cpanel{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:10px 20px}
.cf{display:grid;grid-template-columns:minmax(0,1fr) 128px;grid-gap:12px;-webkit-box-align:center;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--navy)}
.cf.wide{grid-template-columns:1fr;grid-gap:6px}
.cf input,.cf select{width:100%;padding:10px 11px;border:1px solid #d6ddda;border-radius:9px;font-size:16px;font-family:inherit;background:#fff;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}
.cf select{text-align:left;font-size:15px}
.cdisc{font-size:12.5px;color:var(--gold);padding:6px 0 4px;border-bottom:1px solid var(--line);font-weight:600}
.cpanel .cf:last-child{border-bottom:0}
.kpi3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.kpi3 div{background:#fff;padding:16px 16px 14px}
.kpi3 small{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.kpi3 b{display:block;font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-size:32px;line-height:1.1;margin-top:6px;color:var(--navy);font-variant-numeric:tabular-nums}
.kpi3 b.pos{color:#15803d}.kpi3 b.neg{color:#c0322b}
.kpi3 em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);margin-top:4px}
.kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 24px;margin-top:14px}
.kv div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.kv span{color:var(--muted)}.kv b{font-variant-numeric:tabular-nums;font-weight:600;margin-left:10px}
.ctitle{font-weight:700;font-size:14px;color:var(--navy);margin:22px 0 10px}
.ctitle span{font-weight:400;color:var(--muted);font-size:12.5px;margin-left:6px}
.stack{display:-webkit-box;display:-ms-flexbox;display:flex;height:30px;border-radius:6px;overflow:hidden;background:var(--line)}
.stack i{display:block;height:100%;border-right:2px solid #fff;min-width:2px}
.stack i:last-child{border-right:0}
.legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px 20px;margin-top:10px;font-size:13px}
.legend div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}
.legend i{width:10px;height:10px;border-radius:2px;margin-right:8px;-ms-flex-negative:0;flex-shrink:0}
.legend b{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums;padding-left:8px;white-space:nowrap}
.qwrap{position:relative}
#c_chart{width:100%;height:auto;display:block}
#c_chart text{font:11px Inter,Arial,sans-serif;fill:var(--muted)}
#c_chart .gl{stroke:var(--line);stroke-width:1}
#c_chart .bar{fill:var(--gold);opacity:.45}
#c_chart .bar.cur{opacity:1}
#c_chart .bar.neg{fill:#c0322b}
#c_chart .hit{fill:transparent;cursor:pointer}
.qtip{position:absolute;pointer-events:none;background:var(--navy);color:#fff;font-size:12px;line-height:1.45;padding:7px 10px;border-radius:6px;white-space:nowrap;-webkit-transform:translate(-50%,-115%);transform:translate(-50%,-115%);opacity:0;-webkit-transition:opacity .12s;transition:opacity .12s}
.ccta{margin-top:20px}.ccta .btn.two{max-width:none}
.cnote{font-size:12.5px;color:var(--muted);margin:12px 0 0}
/* v3.9 partner cases */
.cases{background:var(--cream)}
.cs-wrap{position:relative;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.cs-track{display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}
.cs-track::-webkit-scrollbar{display:none}
.cs-slide{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;scroll-snap-align:start;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.cs-img{position:relative;padding-top:66.6%;background:#eaeeec;cursor:zoom-in;overflow:hidden}
.cs-img img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.cs-txt{padding:34px 36px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;justify-content:center}
.cs-where{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}
.cs-txt h3{font-size:26px;margin-bottom:10px;color:var(--navy)}
.cs-txt p{color:var(--muted);margin:0 0 14px;font-size:15px}
.cs-txt dl{display:grid;grid-template-columns:auto 1fr;grid-gap:6px 16px;margin:0;font-size:14px}
.cs-txt dt{color:var(--muted)}.cs-txt dd{margin:0;font-weight:600}
.cs-nav{position:absolute;top:50%;margin-top:-22px;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--navy);border:1px solid var(--line);cursor:pointer;font-size:20px;z-index:2;-webkit-box-shadow:0 6px 16px rgba(0,0,0,.15);box-shadow:0 6px 16px rgba(0,0,0,.15)}
.cs-nav.prev{left:12px}.cs-nav.next{right:12px}
/* v3.9 documents */
.docs{background:#fff;border-top:1px solid var(--line)}
.dlist{max-width:860px;margin:0 auto;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.drow{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff}
.drow:last-child{border-bottom:0}
.dext{-ms-flex-negative:0;flex-shrink:0;width:44px;height:52px;border-radius:6px;background:#f0f6f3;color:var(--gold);font-size:11px;font-weight:800;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:end;align-items:flex-end;-webkit-box-pack:center;justify-content:center;padding-bottom:8px;margin-right:14px;border:1px solid #dce8df;letter-spacing:.04em}
.dmeta{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}
.dmeta b{display:block;font-size:15px;color:var(--navy);line-height:1.35}
.dmeta span{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.dstate{font-size:12px;color:var(--muted);margin:0 14px;white-space:nowrap}
.dbtn{-ms-flex-negative:0;flex-shrink:0;background:var(--navy);color:#fff;font-weight:700;font-size:14px;padding:10px 16px;border-radius:9px}
.dbtn:hover{background:#143025}
/* v3.9 download code modal */
#docModal{z-index:165}
.mbox.dgate{max-width:460px}
.dg-ic{font-size:30px;margin-bottom:6px}
.dg-doc{font-weight:700;color:var(--navy)!important;margin:-4px 0 10px!important;font-size:14px!important}
.dg-step{text-align:left;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:18px 0 8px}
#docForm{display:-webkit-box;display:-ms-flexbox;display:flex}
#docCode{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0;padding:13px 14px;border:1px solid #d2d9d4;border-radius:10px;font-size:20px;letter-spacing:.3em;text-align:center;font-family:inherit;font-variant-numeric:tabular-nums}
.dg-go{margin-left:8px;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:0 16px;font-weight:700;font-size:14.5px;cursor:pointer;font-family:inherit}
.dg-go[disabled]{opacity:.6;cursor:default}
#docErr{text-align:left}
.drow.dx{display:none}
#docCode::-webkit-input-placeholder{letter-spacing:normal;font-size:15px}
#docCode::placeholder{letter-spacing:normal;font-size:15px}
#docErr.okmsg{color:#15803d}
/* v3.9.1 nav links */
.navlinks{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:auto;margin-right:22px}
.navlinks a{font-size:14px;font-weight:500;color:var(--muted);margin-left:22px}
.navlinks a:hover{color:var(--navy)}
/* v3.9.1 hero formats + batch card */
.hformats{list-style:none;padding:0;margin:22px 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}
.hformats li{font:500 12.5px/1 "IBM Plex Mono",Menlo,Consolas,monospace;color:#c4ccc8;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 11px;margin:0 8px 8px 0}
.batchwrap{-ms-flex-item-align:center;align-self:center}
.batch{background:#fff;color:var(--ink);border-radius:16px;overflow:hidden;-webkit-box-shadow:0 30px 60px rgba(0,0,0,.45);box-shadow:0 30px 60px rgba(0,0,0,.45)}
.batch .bh{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;justify-content:space-between;padding:16px 20px;border-bottom:1px dashed var(--line);font:500 11.5px/1.4 "IBM Plex Mono",Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.batch .bh b{color:var(--navy);font-weight:600}
.batch table{width:100%;border-collapse:collapse;font:14px/1.3 "IBM Plex Mono",Menlo,monospace}
.batch td{padding:12px 20px;border-bottom:1px solid var(--line)}
.batch td:last-child{text-align:right;font-weight:600;color:var(--navy)}
.batch td a{color:var(--navy)}.batch td a:hover{color:var(--gold)}
.batch td span{color:var(--muted);font-size:12.5px;margin-left:4px}
.batch .bf{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:13px 20px;background:#eff3f1;font-size:12.5px;color:var(--muted)}
.batch .bf a{color:var(--gold);font-weight:600}
.batchwrap .badge-float{position:relative;left:auto;bottom:auto;margin:-18px 0 0 18px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}
/* v3.9.1 product filter + 4-column catalogue */
.pfilter{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;align-items:center;margin:-8px 0 10px}
.chips{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}
.chip{font:600 13.5px/1 Inter,Arial,sans-serif;padding:10px 15px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;margin:0 8px 8px 0}
.chip:hover{border-color:var(--gold);color:var(--navy)}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.psearch{-webkit-box-flex:0;-ms-flex:0 1 260px;flex:0 1 260px;min-width:0;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;font:15px Inter,Arial,sans-serif;color:var(--ink);margin-bottom:8px}
.pcount{font-size:13px;color:var(--muted);margin:0 0 16px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px}
.pc{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-transition:-webkit-transform .2s,-webkit-box-shadow .2s;transition:transform .2s,box-shadow .2s}
.pc:hover{-webkit-transform:translateY(-3px);transform:translateY(-3px);-webkit-box-shadow:0 16px 32px rgba(8,25,18,.1);box-shadow:0 16px 32px rgba(8,25,18,.1)}
.pc.focus{border-color:var(--gold);-webkit-box-shadow:0 0 0 3px rgba(41,114,71,.4);box-shadow:0 0 0 3px rgba(41,114,71,.4)}
.pcat{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.92);color:var(--navy);font:600 10.5px/1 Inter,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:6px 8px;border-radius:6px}
.pc .shots{right:10px;bottom:10px;font-size:11px;padding:4px 8px}
.pcb{padding:14px 16px 16px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1}
.pcb h3{font-size:18px;line-height:1.2;margin-bottom:6px;color:var(--navy)}
.pmeta{font:12.5px/1.55 "IBM Plex Mono",Menlo,Consolas,monospace;color:var(--muted);-webkit-box-flex:1;-ms-flex:1;flex:1}
.prow{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;margin:12px 0 12px}
.ptag{font:600 11.5px/1 "IBM Plex Mono",Menlo,monospace;padding:6px 8px;border-radius:6px;background:#ebf2ed;color:#00502a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}
a.ptag:hover{background:#dce8df}
.ptag.plain{background:#eef1f4;color:var(--muted);font-weight:500}
.ptag .lk{font-size:10px}
.pdet{background:none;border:0;padding:4px 0 4px 8px;font:600 13.5px Inter,Arial,sans-serif;color:var(--gold);cursor:pointer;white-space:nowrap}
.pdet:hover{text-decoration:underline}
.btn.pq{width:100%;padding:11px 12px;font-size:14.5px;border-radius:10px;-webkit-box-shadow:0 6px 16px rgba(37,211,102,.22);box-shadow:0 6px 16px rgba(37,211,102,.22)}
.btn.pq .ico{width:18px;height:18px;margin-right:8px}
.pnone{text-align:center;color:var(--muted);padding:30px 0}
.pmore{text-align:center;margin-top:26px}
.pmorebtn{background:#fff;border:1px solid var(--navy);color:var(--navy);font:700 15px Inter,Arial,sans-serif;padding:13px 26px;border-radius:12px;cursor:pointer}
.pmorebtn:hover{background:var(--navy);color:#fff}
/* v3.9.1 product details modal */
#pdModal{z-index:158}
.mbox.pdbox{max-width:860px;text-align:left;padding:28px;max-height:92vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
.pd-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:28px}
.pd-img{position:relative;border-radius:12px;overflow:hidden;background:#f4f6f8;cursor:zoom-in;-ms-grid-row-align:start;align-self:start}   /* align-self:start：不跟右栏一起被拉高，图片保持原比例 */
.pd-img img{display:block;width:100%;height:auto;max-height:calc(92vh - 56px);margin:0 auto;-o-object-fit:contain;object-fit:contain}   /* 按图片原比例显示，不裁不拉伸 */
@media (min-width:901px){   /* 电脑上：弹窗高度固定，左图不动，右栏内容自己上下滑 */
  .mbox.pdbox{overflow:hidden;padding:28px 12px 28px 28px}
  .pd-main{max-height:calc(92vh - 56px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-right:16px}
  .pd-main::-webkit-scrollbar{width:6px}
  .pd-main::-webkit-scrollbar-thumb{background:#d1d7d4;border-radius:3px}
}
.pd-cat{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.pd-main h3{font-size:26px;margin-bottom:6px;color:var(--navy)}
.pd-main .tag{margin-bottom:12px}
.pd-main .pdoc{margin:0 0 8px}
.pd-main .btn.two{max-width:none;margin-top:10px}
/* v3.9.1 calculator presets + copy */
.cpre{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:12px 0 4px}
.cpre .chip{padding:8px 13px;font-size:13px}
.ccopy{display:block;width:100%;margin-top:10px;background:#fff;border:1px solid var(--line);color:var(--navy);font:600 14.5px Inter,Arial,sans-serif;padding:12px;border-radius:12px;cursor:pointer}
.ccopy:hover{border-color:var(--navy)}
/* v3.9.3 card click / sales / detail stats / catalog page */
.pc{cursor:pointer}
.psales{font-size:12.5px;font-weight:600;color:#15803d;margin-top:6px}
.pd-stats{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);grid-gap:10px;margin:4px 0 14px}
.pd-stat{background:#f3f8f5;border:1px solid #dce8df;border-radius:10px;padding:10px 12px}
.pd-stat small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.pd-stat b{font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-size:22px;color:var(--navy);white-space:nowrap}
.pd-stat.wide:first-child{grid-column:1/-1}
.mbox.pdbox .x{z-index:3;background:rgba(255,255,255,.95);border-radius:50%;width:40px;height:40px;line-height:40px;top:10px;right:10px;-webkit-box-shadow:0 2px 10px rgba(0,0,0,.15);box-shadow:0 2px 10px rgba(0,0,0,.15);color:#333}
.pd-regs{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}
.pd-regs i{font-style:normal;font-size:12.5px;font-weight:600;background:#fff;border:1px solid #dce8df;color:var(--navy);border-radius:999px;padding:4px 10px;margin:0 6px 6px 0}
.navback{margin-left:auto;margin-right:16px;font-weight:600;font-size:14px;color:var(--navy);border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 14px}
.navback:hover{border-color:var(--navy)}
.catpage{padding-top:44px}
a.pmorebtn{display:inline-block}
/* v3.9.6 multi-select picker + inquiry list */
.lf-find{width:100%;padding:10px 12px;border:1px solid #d5dbd8;border-radius:9px;font-size:15px;font-family:inherit;margin:0 0 8px}
.lf-sel{display:none;font-size:12.5px;margin:0 0 8px;line-height:1.9}
.lf-sel.on{display:block}
.lf-sel b{color:var(--navy);margin-right:6px}
.lf-sel span{display:inline-block;background:#ebf2ed;color:#00502a;border-radius:999px;padding:1px 4px 1px 10px;margin:0 6px 4px 0;font-weight:600}
.lf-sel span i{font-style:normal;cursor:pointer;padding:0 6px;opacity:.7}
.lf-sel span i:hover{opacity:1}
.lf-style b small{font-weight:500;color:var(--muted);font-size:10.5px}
.padd{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.95);color:var(--navy);font:700 20px/1 Inter,Arial,sans-serif;cursor:pointer;-webkit-box-shadow:0 4px 12px rgba(0,0,0,.12);box-shadow:0 4px 12px rgba(0,0,0,.12);z-index:2}
.padd:hover{border-color:var(--gold);color:var(--gold)}
.padd.on{background:var(--ws);border-color:var(--ws);color:#fff;font-size:16px}
.pd-add{display:block;width:100%;margin-top:10px;background:#fff;border:1px solid var(--line);color:var(--navy);font:600 14.5px Inter,Arial,sans-serif;padding:12px;border-radius:12px;cursor:pointer}
.pd-add:hover{border-color:var(--navy)}
.pd-add.on{background:#eafaf0;border-color:var(--ws);color:#15803d}
.cartbar{position:fixed;left:50%;bottom:22px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:61;background:var(--navy);color:#fff;border-radius:999px;padding:8px 8px 8px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-shadow:0 14px 34px rgba(8,25,18,.35);box-shadow:0 14px 34px rgba(8,25,18,.35);max-width:calc(100vw - 24px);white-space:nowrap}
.cartbar[hidden]{display:none}
.cb-n{font-weight:600;font-size:14.5px;overflow:hidden;text-overflow:ellipsis}
.cb-x{background:none;border:0;color:#a2b3ab;font:500 13px Inter,Arial,sans-serif;margin:0 10px;cursor:pointer;text-decoration:underline}
.cb-go{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;align-items:center;background:var(--ws);color:#fff;font-weight:700;font-size:14.5px;border-radius:999px;padding:11px 18px}
.cb-go .ico{width:18px;height:18px;margin-right:8px}
.cb-go:hover{background:var(--ws2)}
/* v3.9.7 locked calculator + detail price */
.cunlock{display:block;box-sizing:border-box;text-align:center;text-decoration:none;background:#081912;color:#fff;border:0;border-radius:9px;padding:10px 12px;font:700 13.5px Inter,Arial,sans-serif;cursor:pointer;width:100%}
.cunlock:hover{background:#143025}
.cout.locked .cchart,.cout.locked .stack,.cout.locked .legend,.cout.locked .qwrap{display:none}
.kpi3 b.mask{color:#9ca8a2;letter-spacing:.06em;-webkit-filter:blur(.4px);filter:blur(.4px)}
.clock{margin-top:18px;border:2px dashed #bdd0c7;background:#f5f9f7;border-radius:16px;padding:22px;text-align:center}
.clock-ic{font-size:28px}
.clock h4{font:700 22px/1.2 "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:6px 0 8px}
.clock p{color:var(--muted);font-size:14.5px;margin:0 auto 16px;max-width:460px}
.clock .btn.two{max-width:none}
.cok{background:#eafaf0;border:1px solid #bfe8cf;color:#15803d;font-weight:600;font-size:13.5px;border-radius:10px;padding:10px 12px;margin-bottom:12px}
.pd-price{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;align-items:stretch;margin:0 0 14px}
.pd-price>div{background:#fff8ec;border:1px solid #f1dcae;border-radius:10px;padding:10px 12px;margin:0 10px 8px 0}
.pd-price small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pd-price b{font:700 22px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy)}
.pd-price b.ws{color:#15803d}
.pd-ben{background:#f6fbf8;border:1px solid #cfe9dc;border-radius:12px;padding:12px 14px 10px;margin:0 0 14px}
.pd-ben h4{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#15803d}
.pd-ben ul{margin:0;padding:0;list-style:none}
.pd-ben li{position:relative;padding:3px 0 3px 20px;font-size:14px;line-height:1.5;color:var(--navy)}
.pd-ben li:before{content:"";position:absolute;left:3px;top:10px;width:8px;height:8px;border-radius:50%;background:#1baf7a}
#pdBody .pd-ben p.pd-bnote,.pd-ben p.pd-bnote{margin:6px 0 2px;padding:0;font-size:11.5px;line-height:1.45;color:var(--muted);max-width:none}
.pd-unlock{display:inline-block;box-sizing:border-box;text-align:center;text-decoration:none;background:#081912;color:#fff;border:0;border-radius:10px;padding:12px 14px;font:700 14px Inter,Arial,sans-serif;cursor:pointer;margin:0 0 8px;-webkit-box-flex:1;-ms-flex:1 1 220px;flex:1 1 220px}
.pd-unlock:hover{background:#143025}
/* v3.9.7 market demand + reseller support */
.market{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.mk-list{max-width:980px;margin:0 auto;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.mk-row{display:grid;grid-template-columns:40px minmax(0,1.5fr) minmax(0,1fr) minmax(0,1.2fr) auto;grid-gap:16px;-webkit-box-align:center;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);cursor:pointer;background:#fff}
.mk-row:last-child{border-bottom:0}
.mk-row:hover{background:#f7faf8}
.mk-rank{width:32px;height:32px;border-radius:50%;background:#eff3f1;color:var(--navy);font:800 15px/32px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;text-align:center}
.mk-row:nth-child(-n+3) .mk-rank{background:var(--navy);color:#fff}
.mk-name{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:0}
.mk-th{-ms-flex-negative:0;flex-shrink:0;width:56px;height:56px;border-radius:10px;overflow:hidden;background:#f4f6f8;border:1px solid var(--line);margin-right:12px}
.mk-th img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}
.mk-nt{min-width:0}
.mk-name b{display:block;font-size:15.5px;color:var(--navy)}
.mk-nt span{display:block;font:12px "IBM Plex Mono",Menlo,monospace;color:var(--muted);margin-top:2px}
.mk-vol small,.mk-mkts small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.mk-vol b{display:block;font-size:15px;color:#15803d;font-variant-numeric:tabular-nums}
.mk-vol i{display:block;height:5px;border-radius:3px;background:#1baf7a;opacity:.55;margin-top:5px}
.mk-mkts span{font-size:13px;color:var(--ink)}
.mk-go{background:var(--ws);color:#fff;font-weight:700;font-size:13.5px;border-radius:10px;padding:9px 14px;white-space:nowrap}
.mk-go:hover{background:var(--ws2)}
.mk-countries{max-width:980px;margin:22px auto 0;text-align:center}
.mk-countries b{display:block;color:var(--navy);font-size:15px;margin-bottom:10px}
.mk-countries span{display:inline-block;font-size:12.5px;font-weight:600;background:#eff3f1;color:var(--navy);border-radius:999px;padding:5px 11px;margin:0 6px 6px 0}
.support{background:var(--navy);color:#fff}
.support .sec-title{color:#fff}.support .sec-sub{color:#aab5af}
/* ---- v4.0 独立产品页 / 站内页面 ---- */
.crumb{font-size:12.5px;color:var(--muted);margin:0 0 16px}
.crumb a{color:var(--muted);text-decoration:none}.crumb a:hover{color:var(--gold)}
.crumb span{margin:0 6px;opacity:.6}.crumb b{color:var(--ink)}
.pdp{padding:28px 0 64px}
.pdp-top{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-gap:36px;margin-bottom:38px}
.pdp-img{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f4f6f8;cursor:zoom-in}
.pdp-img img{display:block;width:100%;height:auto}
.pdp-thumbs{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:10px}
.pdp-th{width:62px;height:62px;padding:0;margin:0 8px 8px 0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;cursor:pointer}
.pdp-th.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.pdp-th img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}
.pdp-main h1{font:800 34px/1.15 "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:4px 0 6px}
.pdp-tag{color:var(--muted);font-size:16px;margin:0 0 14px}
.pdp-badges{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 0 16px}
.pdp-b{font-size:12.5px;font-weight:600;color:var(--navy);background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:5px 11px;margin:0 8px 8px 0}
.pdp-b.ok{color:#15803d;background:#effaf4;border-color:#cfe9dc}
.pdp-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:0 0 16px}
.pdp-facts>div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;justify-content:space-between;padding:5px 0;font-size:14px}
.pdp-facts span{color:var(--muted)}.pdp-facts b{color:var(--navy);text-align:right}
.pdp-main .btn.two{max-width:none;margin:0 0 10px}
.pdp-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;margin-bottom:40px}
.pdp-col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
.pdp-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-bottom:20px}
.pdp-card h2{font:700 17px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:0 0 12px}
.pdp-card .specs{margin:0}
.pdp-ben{margin:0;padding:0;list-style:none}
.pdp-ben li{position:relative;padding:4px 0 4px 20px;font-size:14.5px;line-height:1.55}
.pdp-ben li:before{content:"";position:absolute;left:3px;top:11px;width:8px;height:8px;border-radius:50%;background:#1baf7a}
.pdp-tb{width:100%;border-collapse:collapse;font-size:14px}
.pdp-tb th{text-align:left;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:0 0 8px}
.pdp-tb td{padding:7px 0;border-top:1px solid var(--line)}
.pdp-tb td.off{text-align:right;color:#15803d;font-weight:700}
.pdp-card.calccta{background:var(--navy);color:#fff;border-color:var(--navy)}
.pdp-card.calccta h2{color:#fff}.pdp-card.calccta p{color:var(--gold2);font-size:14px;margin:0 0 14px}
.pdp-relh{font:700 20px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:0 0 16px}
.pdp-rel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px}
.rel{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;text-decoration:none}
.rel:hover{border-color:var(--gold)}
.rel-img{display:block;height:120px;border-radius:9px;overflow:hidden;background:#f4f6f8;margin-bottom:10px}
.rel-img img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}
.rel b{display:block;color:var(--navy);font-size:14.5px}
.rel-t{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.pdp-backl{margin:26px 0 0}.pdp-backl a{color:var(--gold);text-decoration:none;font-weight:600}
.pd-full{display:block;margin-top:10px;text-align:center;font-size:13.5px;font-weight:600;color:var(--gold);text-decoration:none}
h3 a.pt{color:inherit;text-decoration:none}
h3 a.pt:hover{color:var(--gold)}
.pgv{padding:28px 0 64px}
.pgv h1{font:800 34px/1.2 "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:4px 0 10px}
.pgv-sub{font-size:17px;color:var(--muted);max-width:720px;margin:0 0 28px}
.pgv-body{max-width:760px;font-size:15.5px;line-height:1.7}
.pg-h{font:700 19px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:30px 0 10px}
.pgv-body p{margin:0 0 12px}
.pg-ul{margin:0 0 14px;padding:0;list-style:none}
.pg-ul li{position:relative;padding:4px 0 4px 20px}
.pg-ul li:before{content:"";position:absolute;left:3px;top:13px;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.pg-ol{margin:0 0 14px;padding:0;list-style:none;counter-reset:pgs}
.pg-ol li{counter-increment:pgs;position:relative;padding:6px 0 6px 38px}
.pg-ol li:before{content:counter(pgs);position:absolute;left:0;top:6px;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font:700 13px/26px "Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;text-align:center}
.pg-note{background:var(--cream);border-left:3px solid var(--gold);border-radius:0 10px 10px 0;padding:12px 14px;font-size:14px;color:var(--ink)}
.pg-tw{overflow-x:auto;margin:0 0 16px}
.pg-tb{width:100%;border-collapse:collapse;font-size:14.5px;min-width:420px}
.pg-tb th{text-align:left;background:var(--cream);color:var(--navy);font-weight:700;padding:9px 12px;border-bottom:1px solid var(--line)}
.pg-tb td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.pgv-co{margin:26px 0 0;background:var(--cream);border-radius:14px;padding:18px 20px;font-size:14.5px;max-width:760px}
.pgv-co b{display:block;margin-bottom:6px;color:var(--navy)}
.pgv-co div{display:grid;grid-template-columns:120px minmax(0,1fr);grid-gap:10px;padding:3px 0}
.pgv-co span{color:var(--muted)}
.pgv-cta{margin:28px 0 0;max-width:420px}
.ftnav{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.ftnav a{color:var(--navy);text-decoration:none;font-size:13.5px;font-weight:600;margin:0 12px 8px}
.ftnav a:hover{color:var(--gold)}
@media (max-width:900px){
  .pdp-top{grid-template-columns:1fr;grid-gap:22px}
  .pdp-cols{grid-template-columns:1fr;grid-gap:0}
  .pdp-rel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pdp-main h1,.pgv h1{font-size:26px}
}
.terms{background:var(--cream)}
.terms .tm{background:#fff}
.terms .tm-ic{background:#fff;border:1px solid var(--line)}
.terms .tm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;max-width:1080px;margin:0 auto}
@media (min-width:1020px){.terms .tm-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tm{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.tm-ic{margin:0 0 10px}}
@media (max-width:620px){.terms .tm-grid{grid-template-columns:1fr}}
.tm{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.tm-ic{-ms-flex-negative:0;flex-shrink:0;width:38px;height:38px;border-radius:10px;background:var(--cream);color:var(--gold);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;margin-right:13px}
.tm-ic svg{width:20px;height:20px}
.tm h3{font-size:15.5px;margin:1px 0 4px;color:var(--navy)}
.tm p{font-size:13.5px;line-height:1.55;color:var(--muted);margin:0}
.tm-note{max-width:760px;margin:16px auto 0;text-align:center;font-size:13px;color:var(--muted)}
.coinfo{margin-top:6px;font-size:13px;line-height:1.7;text-align:left;display:inline-block}
.coinfo .co-h{display:block;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin-bottom:3px}
.coinfo b{display:block;font-weight:700;margin-bottom:2px}
.coinfo>div{display:grid;grid-template-columns:100px minmax(0,1fr);grid-gap:10px;text-align:left}
.coinfo>div span{opacity:.65}
.sp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px}
.sp{background:var(--navy2);border:1px solid rgba(41,114,71,.25);border-radius:16px;padding:24px}
.sp svg{width:34px;height:34px;color:var(--gold2);margin-bottom:12px}
.sp h3{font-size:19px;color:#fff;margin-bottom:8px}
.sp p{color:#aab5af;font-size:14.5px;margin:0}
@media (max-width:900px){
  .sp-grid{grid-template-columns:1fr 1fr}
  .mk-row{grid-template-columns:32px minmax(0,1fr) auto;grid-gap:6px 12px}
  .mk-vol{grid-column:2/3}.mk-mkts{grid-column:2/4}
  .mk-go{grid-row:1;grid-column:3}
  .navlinks{display:none}
  .grid4{grid-template-columns:repeat(3,minmax(0,1fr))}
  .batchwrap{max-width:460px;margin:0 auto;width:100%;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}   /* 批次卡是数据不是图，手机上放在标题后面 */
  .pd-grid{grid-template-columns:1fr;grid-gap:18px}
  .pd-img img{max-height:46vh;width:auto;max-width:100%}
  .cg{grid-template-columns:1fr}
  .cs-slide{grid-template-columns:1fr}
  .cs-txt{padding:22px 22px 26px}
  .cs-nav{top:32%}
  .hero .wrap{grid-template-columns:1fr;grid-gap:24px}
  /* 广告流量刚看过一张产品图，落地页第一眼也应该是图，别是一屏纯文字 */
  .hero-media{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}
  .hero h1{font-size:40px}
  .hero-media{max-width:460px;margin:0 auto;width:100%}
  .trustbar .wrap{grid-template-columns:repeat(2,1fr)!important}
  .grid{grid-template-columns:repeat(2,1fr);grid-gap:18px}
  .steps .wrap>.g{grid-template-columns:1fr!important}
  .conf .g{grid-template-columns:repeat(2,1fr)!important}
  .cc.first{grid-column:span 2}
  .badges{grid-template-columns:repeat(2,1fr)!important}
  .sec-title{font-size:32px}
  .rv-nav{display:none}
  .rv{-ms-flex-preferred-size:300px;flex-basis:300px}
  .gal-nav{display:none}
  .gal-item{-ms-flex-preferred-size:220px;flex-basis:220px}
}
@media (max-width:600px){
  .sp-grid{grid-template-columns:1fr}
  .mk-row{padding:12px}
  .mk-th{width:44px;height:44px;margin-right:10px}
  body.hascart .sticky{display:none}
  .cartbar{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));-webkit-transform:none;transform:none;border-radius:16px;padding:8px 8px 8px 14px}
  .cb-n{font-size:12.5px;line-height:1.25;white-space:normal;-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}
  .cb-x{margin:0 8px}
  .cb-go{padding:10px 14px;font-size:13.5px}
  .padd{width:30px;height:30px;font-size:18px;right:7px;top:7px}
  .pd-stats{grid-template-columns:1fr}
  .navback{padding:8px 10px;font-size:13px;margin-right:8px}
  .nav .navback~.btn.small{display:none}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px}
  .pcb{padding:11px 12px 12px}
  .pcb h3{font-size:15.5px}
  .pmeta{font-size:11px}
  .prow{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;align-items:flex-start;margin:10px 0}
  .ptag{max-width:100%}
  .pdet{padding:8px 0 0}
  .btn.pq{font-size:13px;padding:10px 8px}
  .btn.pq .ico{width:16px;height:16px;margin-right:6px}
  .pcat{font-size:9.5px;padding:5px 6px;left:7px;top:7px}
  .psearch{-ms-flex-preferred-size:100%;flex-basis:100%}
  .chip{padding:9px 12px;font-size:12.5px;margin:0 6px 6px 0}
  .mbox.pdbox{padding:22px 16px}
  .pd-main h3{font-size:22px}
  .hformats li{font-size:11.5px}
  .batch td{padding:10px 14px}
  .batch .bh,.batch .bf{padding:12px 14px}
  .logo{font-size:16px;letter-spacing:.02em;white-space:nowrap}
  .nav .btn.small{padding:9px 12px;font-size:13px}
  .kpi3{grid-template-columns:1fr}
  .kv,.legend{grid-template-columns:1fr}
  .cf{grid-template-columns:minmax(0,1fr) 108px}
  .cpanel{padding:6px 14px}
  .drow{-ms-flex-wrap:wrap;flex-wrap:wrap;padding:14px}
  .dstate{display:none}
  .dmeta{-ms-flex-preferred-size:calc(100% - 60px);flex-basis:calc(100% - 60px)}
  .dbtn{margin:10px 0 0 58px}
  .cs-txt h3{font-size:22px}
  section{padding:54px 0}
  .hero{padding:26px 0 44px}
  .hero-frame{padding-top:86%}          /* 竖版 125% 在手机上太高，首屏塞不下按钮 */
  .hero-media{max-width:330px}
  .hero h1{font-size:30px}
  .hero p.lead{font-size:16px}
  .grid{grid-template-columns:1fr}
  .trustbar .wrap{grid-template-columns:1fr 1fr!important;grid-gap:12px}
  .tb{font-size:13px}.tb svg{width:28px;height:28px;margin-right:9px}
  .conf .g{grid-template-columns:1fr!important}
  .cc.first{grid-column:span 1}
  .final .box{padding:44px 22px;border-radius:18px}
  .final h2{font-size:30px}
  /* v5.1.7：手机底部绿色粘性栏已取消，改为和桌面一样的右下角圆形悬浮键（样式见文件末尾） */
  .badge-float{left:8px;bottom:14px;font-size:12px;padding:10px 12px}
  .rv{-ms-flex-preferred-size:86%;flex-basis:86%}
  .sec-title{font-size:28px}
  .gal-item{-ms-flex-preferred-size:66%;flex-basis:66%;margin-right:14px}
  .lb{padding:50px 10px 96px}
  .lb-stage img{max-height:62vh;max-width:96vw}
  .lb-nav{width:42px;height:42px;margin-top:-21px;font-size:21px}
  .lb-nav.prev{left:6px}.lb-nav.next{right:6px}
  .lb-thumbs img{width:46px;height:46px}
  .lb-title{font-size:13.5px;padding:0 54px;top:14px}
  .mbox.lead{padding:24px 18px 22px;border-radius:16px;max-height:94vh}
  .mbox.lead h3{font-size:21px}
  .lf-styles{grid-template-columns:repeat(2,1fr);max-height:none;overflow:visible}
  .lf-style .im{padding-top:80%}
  .lf-row{grid-template-columns:1fr}
  .modal{padding:10px}
}
/* =====================================================================
   v5.0 设计系统 —— 干净、浅色、卡片化（参考客户给的 B2B 产品页样式）
   规则：白卡 + 1px 淡边 + 12px 圆角 + 克制的阴影；紫靛强调、绿色成交按钮、
   琥珀色询价卡、淡蓝合规卡。写在原样式最后，靠层叠覆盖旧视觉。
   ===================================================================== */
:root{
  --ind:#005633;--ind2:#005133;--ind-s:#e3f0e8;--ind-l:#edf5f0;
  --blue:#085e36;--blue-s:#f0f7f4;--blue-l:#c8dfce;
  --amber:#b45309;--amber-s:#fffbeb;--amber-l:#fde68a;
  --green:#16a34a;
  --navy:#051d14;--navy2:#182e25;
  --ink:#0a1c15;--ink2:#38443e;--muted:#6b7570;--muted2:#9ca5a1;
  --line:#e5e7eb;--line2:#f1f3f6;--bg:#ffffff;--bg2:#f8fafc;
  --gold:#005633;--gold2:#c1dccb;--cream:#f8fafc;
  --r:12px;--r-lg:16px;
  --sh:0 1px 2px rgba(9,29,21,.04);
  --sh2:0 4px 16px -6px rgba(9,29,21,.12);
}
body{background:var(--bg);color:var(--ink);font-size:15px;line-height:1.6}
h1,h2,h3,.serif,.sec-title{font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:600;letter-spacing:-.018em;color:var(--ink)}
section{padding:56px 0}
.sec-title{font-size:30px;line-height:1.2}
.sec-sub{font-size:15.5px;color:var(--muted);margin-bottom:34px}
.eyebrow{color:var(--ind);font-size:11.5px;letter-spacing:.14em;font-weight:700}
.eyebrow.dark{color:#c1dccb}
.wrap{max-width:1180px}
/* ---- 顶部信任条 ---- */
.announce{background:linear-gradient(90deg,#005633 0%,#085e36 52%,#005d3b 100%);color:#fff;font-size:12.5px;font-weight:500;letter-spacing:0;padding:0}
.tbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 18px;min-height:36px;padding:5px 0}
.tbar-l{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
.tbar-l i{font-style:normal;display:inline-flex;align-items:center;gap:6px;opacity:.95}
.tbar-l i:before{content:"";width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.7)}
.tbar-r{display:flex;align-items:center;gap:14px}
.tbar-r a{color:#fff;font-weight:600}
.tbar-wa{background:#25d366;border-radius:6px;padding:3px 10px;font-size:11.5px;display:inline-flex;align-items:center;gap:5px}
.tbar-wa svg{width:13px;height:13px}
/* ---- 导航 ---- */
.nav{background:#fff;border-bottom:1px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.nav .wrap{height:62px}
.logo{font-family:Inter,Arial,sans-serif;font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--ind);white-space:nowrap}
.navlinks{display:flex;align-items:center;gap:2px}
.navlinks a{white-space:nowrap;font-size:14px;font-weight:500;color:var(--ink2);padding:8px 11px;border-radius:8px;transition:color .15s,background .15s}
.navlinks a:hover{color:var(--ind);background:var(--ind-l)}
.navlinks a.on{color:var(--ind);font-weight:600}
/* 分类下拉 */
.ndrop{position:relative}
.ndrop>span{display:inline-flex;align-items:center;gap:4px;cursor:default;font-size:14px;font-weight:500;color:var(--ink2);padding:8px 11px;border-radius:8px}
.ndrop>span:after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.ndrop-m{position:absolute;right:0;top:100%;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 12px 32px -12px rgba(9,29,21,.28);padding:6px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:60}
.ndrop:hover .ndrop-m,.ndrop:focus-within .ndrop-m{opacity:1;visibility:visible;transform:none}
.ndrop-m a{display:block;padding:9px 12px;border-radius:8px;font-size:13.5px;color:var(--ink2)}
.ndrop-m a:hover{background:var(--ind-l);color:var(--ind)}
.nav .btn.small{background:#25d366;border-radius:8px;box-shadow:none;font-size:13.5px;padding:9px 15px}
.nav .btn.small:hover{background:#1ebe5b;transform:none}
/* ---- 通用按钮 ---- */
.btn{border-radius:10px;box-shadow:none;font-size:15px;transition:background .16s,box-shadow .16s,transform .14s}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px -8px rgba(22,163,74,.6)}
.btn.two{border-radius:10px}
.btn.ghost{background:#fff;color:var(--ink2);border:1px solid var(--line);box-shadow:none;font-weight:600}
.btn.ghost:hover{background:var(--bg2);color:var(--ink)}
/* ---- 卡片语言 ---- */
.card,.pc,.pdp-card,.tm,.rel,.sp,.case,.docitem,.faqi,.cpanel,.cout,.mk-list,.pgv-co{border-radius:var(--r);border:1px solid var(--line);background:#fff;box-shadow:var(--sh)}
.pc{overflow:hidden;transition:box-shadow .18s,border-color .18s}
.pc:hover{box-shadow:var(--sh2);border-color:#d7dcda;transform:none}
.pc .sq{border-radius:0;background:var(--bg2)}
.pcat{background:var(--ind-s);color:var(--ind2);font-weight:600;letter-spacing:0;text-transform:none;border-radius:6px;font-size:11px;padding:4px 8px}
.pcb h3{font-size:16px}
.pmeta{color:var(--muted);font-size:12.5px}
.chip{border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink2);font-weight:500}
.chip.on{background:var(--ind);border-color:var(--ind);color:#fff}
.psearch{border-radius:8px;border:1px solid var(--line)}
.ptag{border-radius:6px;background:var(--blue-s);color:var(--blue);border:1px solid #dfece3;font-weight:600}
.pdet{border-radius:8px;border:1px solid var(--line);color:var(--ink2);background:#fff;font-weight:600}
.pdet:hover{background:var(--bg2)}
.psales{color:var(--green);font-weight:600}
/* ---- 板块底色 ---- */
.terms,.support,.steps,.gal,.market{background:var(--bg2)}
.support{color:var(--ink)}
.support .sec-title,.steps .sec-title,.gal .sec-title{color:var(--ink)}
.support .sec-sub,.steps .sec-sub{color:var(--muted)}
.support .sp{background:#fff;border:1px solid var(--line);color:var(--ink)}
.support .sp h3{color:var(--ink)}.support .sp p{color:var(--muted)}
.support .eyebrow.dark{color:var(--ind)}
.steps .step{background:#fff;border:1px solid var(--line);border-radius:var(--r);color:var(--ink)}
/* ---- 首屏 ---- */
.hero{background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%);color:var(--ink);padding:56px 0 60px;border-bottom:1px solid var(--line)}
.hero:before,.hero:after{display:none}
.hero h1{font-size:44px;line-height:1.14;color:var(--ink);letter-spacing:-.03em}
.hero h1 em{font-style:normal;color:var(--ind)}
.hero p.lead{color:var(--muted);font-size:17px}
.hero .eyebrow{display:inline-block;background:var(--ind-s);color:var(--ind2);border-radius:999px;padding:6px 13px;margin-bottom:18px;letter-spacing:.08em}
.hero .online,.hero .trustline{color:var(--muted)}
.hero-frame{border-radius:var(--r-lg);border:1px solid var(--line);box-shadow:0 20px 44px -28px rgba(9,29,21,.45);background:var(--bg2)}
.badge-float{border-radius:10px;box-shadow:var(--sh2);border:1px solid var(--line)}
.badge-live{background:rgba(5,29,20,.72);border:0}
.batchwrap,.batchcard{border-radius:var(--r);border:1px solid var(--line);background:#fff;color:var(--ink)}
/* ---- 页脚 ---- */
footer{background:var(--navy);color:#96a69e;padding:48px 0 0;text-align:left;font-size:13.5px}
footer .wrap{padding-bottom:26px}
.ftgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:30px}
.ftco h4,.ftcol h4{color:#fff;font-size:13.5px;font-weight:700;margin:0 0 14px;letter-spacing:.01em}
.ftco .fbrand{color:#4a966c;font-size:16px;font-weight:700;margin-bottom:10px;display:block;line-height:1.35}
.ftco p{margin:0 0 12px;color:#96a69e;line-height:1.6}
.ftco .frow{display:grid;grid-template-columns:16px 1fr;gap:8px;margin-bottom:8px;color:#96a69e}
.ftco .frow span{opacity:.7}
.ftcol a{display:block;color:#96a69e;margin-bottom:9px;line-height:1.45}
.ftcol a:hover{color:#fff}
.ftcol a.wa{color:#4ade80}
.ftbadges{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.tbadge{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:7px 12px;color:#ced6d0;font-size:11.5px;margin-right:8px}
.tbadge b{color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.04em}
.ftdisc{border-top:1px solid rgba(255,255,255,.08);padding:16px 0 26px;color:#66786f;font-size:11.5px;line-height:1.65}
.ftdisc b{color:#96a69e}
.ftnav{display:none}
@media(max-width:980px){.ftgrid{grid-template-columns:1fr 1fr;gap:26px}}
@media(max-width:620px){.ftgrid{grid-template-columns:1fr}.hero h1{font-size:32px}.sec-title{font-size:24px}}
/* 手机导航：logo + WhatsApp 一行，下面一条可横向滑动的链接带 */
@media(max-width:900px){
  .nav .wrap{height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:0}
  .nav .logo{font-size:17px}
  .navlinks{display:flex!important;order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;padding:6px 0 8px;margin:6px -20px 0;padding-left:20px;padding-right:20px;scrollbar-width:none}
  .navlinks::-webkit-scrollbar{display:none}
  .navlinks a{padding:7px 10px;font-size:13.5px}
  .ndrop{display:none}
  .tbar{font-size:11.5px;gap:4px 12px}
  .tbar-l i{gap:5px}
}

.hformats li{color:var(--ink2);border:1px solid var(--line);background:#fff}
.hero .batchcard,.hero .batchwrap{color:var(--ink)}
.hero .dot{box-shadow:none}
/* ---- v5.0 产品详情页 ---- */
.pdp{padding:26px 0 60px}
.crumb{font-size:13px;color:var(--muted);margin:0 0 20px}
.crumb a{color:var(--muted)}.crumb a:hover{color:var(--ind)}
.crumb span{margin:0 7px;opacity:.5}.crumb b{color:var(--ink2);font-weight:600}
.pdp-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-gap:42px;align-items:start}
.pdp-gal{position:sticky;top:78px}
.pdp-catpill{display:inline-block;background:var(--ind-s);color:var(--ind2);font-size:11.5px;font-weight:600;border-radius:999px;padding:5px 11px;margin-bottom:12px}
.pdp-img{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--bg2);cursor:zoom-in}
.pdp-img img{display:block;width:100%;height:auto}
.pdp-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.pdp-th{width:64px;height:64px;padding:2px;margin:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;cursor:pointer}
.pdp-th.on{border-color:var(--ind);box-shadow:0 0 0 1px var(--ind)}
.pdp-th img{width:100%;height:100%;object-fit:contain;-o-object-fit:contain}
.pdp-main h1{font-size:33px;line-height:1.15;margin:0 0 8px;letter-spacing:-.03em}
.pdp-tag{color:var(--muted);font-size:15px;margin:0 0 20px}
.pdp-lead{font-size:14.5px;color:var(--ink2);line-height:1.7;margin:0 0 20px}
/* 信息盒：验证 / 询价 */
.pbox{border-radius:var(--r);padding:15px 17px;margin:0 0 16px;border:1px solid var(--line)}
.pbox.verify{background:#f3f8f5;border-color:#d9eadf}
.pbox.bulk{background:var(--amber-s);border-color:var(--amber-l)}
.pbox-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:7px}
.pbox-h b{font-size:14px;font-weight:700;color:var(--ink)}
.pbox-ic{width:24px;height:24px;border-radius:7px;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.pbox .lot{font:600 11.5px/1 "IBM Plex Mono",monospace;background:#fff;border:1px solid #d9eadf;color:var(--ind2);border-radius:5px;padding:4px 7px}
.pbox .lotd{font-size:11.5px;color:var(--muted)}
.pbox p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
.pbox-link{display:inline-block;margin-top:9px;color:var(--ind);font-size:13px;font-weight:600}
.pbox-note{margin:9px 0 0;font-size:11.5px;color:var(--muted2);line-height:1.5}
.btn.pdp-cta{width:100%;margin:12px 0 8px;font-size:15px;padding:12px 18px}
.pbox.bulk [data-cart]{display:block;width:100%;padding:10px 18px;font-size:14px;font-weight:600;background:#fff;color:var(--ink2);border:1px solid var(--line);border-radius:10px;cursor:pointer;text-align:center;margin:0}
.pbox.bulk [data-cart]:hover{background:var(--bg2);color:var(--ink)}
.pbox.bulk [data-cart].on{background:var(--ind-l);border-color:#c1dccb;color:var(--ind2)}
/* 白卡分区 */
.pcard{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:17px 19px;margin:0 0 16px;box-shadow:var(--sh)}
.pcard h2{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;margin:0 0 12px;color:var(--ink)}
.pcard h2 .ic{width:22px;height:22px;border-radius:6px;background:var(--ind-l);color:var(--ind);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.pcard .specs{margin:0}
.pcard .specs li{padding:7px 0;border-bottom:1px solid var(--line2);font-size:13.5px}
.pcard .specs li:last-child{border-bottom:0}
.kb{margin:0;padding:0;list-style:none}
.kb li{position:relative;padding:5px 0 5px 24px;font-size:13.5px;line-height:1.55;color:var(--ink2)}
.kb li:before{content:"✓";position:absolute;left:2px;top:5px;color:var(--green);font-weight:700;font-size:13px}
.dosechips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:13px}
.dose{border:1px solid var(--line);border-radius:8px;padding:7px 13px;font-size:13px;font-weight:600;color:var(--ink2);background:#fff}
.dose:hover{border-color:var(--ind);color:var(--ind)}
.dose.on{background:var(--ind);border-color:var(--ind);color:#fff}
.dosenow{display:flex;align-items:center;gap:13px;background:var(--bg2);border:1px solid var(--line2);border-radius:10px;padding:11px 13px}
.dosenow-img{width:52px;height:52px;border-radius:8px;overflow:hidden;background:#fff;border:1px solid var(--line);flex-shrink:0}
.dosenow-img img{width:100%;height:100%;object-fit:contain;-o-object-fit:contain}
.dosenow b{display:block;font-size:14px;color:var(--ink)}
.dosenow span{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.pdp-tb{width:100%;border-collapse:collapse;font-size:13.5px}
.pdp-tb th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:0 0 8px}
.pdp-tb td{padding:7px 0;border-top:1px solid var(--line2)}
.pdp-tb td.off{text-align:right;color:var(--green);font-weight:700}
.mrow{display:flex;justify-content:space-between;gap:14px;padding:6px 0;font-size:13.5px;border-bottom:1px solid var(--line2)}
.mrow:last-child{border-bottom:0}
.mrow.top{align-items:flex-start}
.mrow>span:first-child{color:var(--muted)}
.mrow b{color:var(--ink)}
.pcard.calccta{background:var(--navy);border-color:var(--navy)}
.pcard.calccta h2{color:#fff}
.pcard.calccta h2 .ic{background:rgba(255,255,255,.14);color:#c1dccb}
.pcard.calccta p{color:#ced6d0;font-size:13px;margin:0 0 13px}
.pcard.calccta .btn.ghost{background:transparent;border-color:rgba(255,255,255,.28);color:#fff;width:auto;padding:9px 16px;font-size:13.5px}
.pcard.calccta .btn.ghost:hover{background:rgba(255,255,255,.1);color:#fff}
.pnotice{background:var(--blue-s);border:1px solid var(--blue-l);border-radius:var(--r);padding:14px 16px;text-align:center}
.pnotice b{display:block;color:var(--blue);font-size:13.5px;font-weight:700;margin-bottom:4px}
.pnotice p{margin:0;font-size:12.5px;color:#495851;line-height:1.6}
/* 下半部分 */
.pdp-sec{margin-top:44px;padding-top:30px;border-top:1px solid var(--line)}
.pdp-h{display:flex;align-items:center;gap:9px;font-size:20px;font-weight:600;margin:0 0 18px}
.pdp-h .ic{width:26px;height:26px;border-radius:7px;background:var(--ind-l);color:var(--ind);display:inline-flex;align-items:center;justify-content:center;font-size:13px}
/* FAQ 只有这一套：首页和产品页共用，避免多处规则互相覆盖 */
.pdp-faqs,.faq .list{border-top:1px solid var(--line);max-width:none}
.faq .list{max-width:820px;margin:0 auto}
.pdp-faq,.faq .list>details{display:block;background:#fff;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0;padding:0;box-shadow:none}
.pdp-faq>summary,.faq .list>details>summary{display:block;cursor:pointer;margin:0;padding:16px 38px 16px 0;font-weight:500;color:var(--ink2);font-size:15px;line-height:1.5;list-style:none;position:relative;transition:color .15s}
.pdp-faq>summary::-webkit-details-marker,.faq .list>details>summary::-webkit-details-marker{display:none}
.pdp-faq>summary::marker,.faq .list>details>summary::marker{content:""}
.pdp-faq>summary:hover,.faq .list>details>summary:hover{color:var(--ind)}
.pdp-faq>summary:after,.faq .list>details>summary:after{content:"";position:absolute;right:8px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:1.7px solid var(--muted2);border-bottom:1.7px solid var(--muted2);-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:transform .18s;transition:transform .18s;font-size:0;color:transparent}
.pdp-faq[open]>summary,.faq .list>details[open]>summary{color:var(--ink);font-weight:600}
.pdp-faq[open]>summary:after,.faq .list>details[open]>summary:after{-webkit-transform:rotate(-135deg) translateY(-3px);transform:rotate(-135deg) translateY(-3px)}
.pdp-faq>div,.faq .list>details>div,.faq .list>details>p{margin:0;padding:0 38px 18px 0;font-size:14.5px;color:var(--muted);line-height:1.7}
.topgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.topcard{position:relative;border:1px solid var(--line);border-radius:var(--r);background:var(--bg2);padding:15px 38px 15px 16px;display:block}
.topcard:hover{border-color:var(--ind);background:#fff}
.topcard b{display:block;font-size:14.5px;color:var(--ink)}
.topcard span{display:block;font-size:12.5px;color:var(--muted);margin-top:3px}
.topcard i{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--ind)}
.pdp-rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rel{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:0 0 14px;overflow:hidden}
.rel:hover{border-color:#d7dcda;box-shadow:var(--sh2)}
.rel-img{display:block;height:150px;background:var(--bg2);border-bottom:1px solid var(--line2);margin:0 0 12px}
.rel-img img{width:100%;height:100%;object-fit:contain;-o-object-fit:contain}
.rel-cat{display:inline-block;margin:0 14px 7px;background:var(--ind-s);color:var(--ind2);font-size:10.5px;font-weight:600;border-radius:5px;padding:3px 7px}
.rel b{display:block;padding:0 14px;font-size:14.5px;color:var(--ink)}
.rel-t{display:block;padding:2px 14px 0;color:var(--muted);font-size:12.5px}
.pdp-backl{margin:30px 0 0}.pdp-backl a{color:var(--ind);font-weight:600;font-size:14px}
@media(max-width:900px){
  .pdp-top{grid-template-columns:1fr;grid-gap:26px}
  .pdp-gal{position:static}
  .pdp-main h1{font-size:26px}
  .pdp-rel{grid-template-columns:1fr}
  .pdp-h{font-size:18px}
}
/* ---- v5.0 站内页面 ---- */
.pgv h1{font-size:34px;letter-spacing:-.03em}
.pgv-sub{font-size:16px;color:var(--muted)}
.pg-h{font-size:18px;color:var(--ink);font-weight:600;margin:28px 0 10px}
.pg-note{background:var(--blue-s);border-left:3px solid var(--blue);border-radius:0 10px 10px 0;color:#495851}
.pg-ol li:before{background:var(--ind)}
.pg-ul li:before{background:var(--ind)}
.pg-tb th{background:var(--bg2)}
.pgv-co{background:var(--bg2);border:1px solid var(--line)}

/* =====================================================================
   v5.0.1 UI 修补：把上一版「深色板块改浅色」漏掉的浅色文字、导航溢出、
   以及几处对比度不足的小字一次性修掉（全部经自动体检脚本验证）。
   ===================================================================== */
/* 1. 导航：链接区允许压缩 + 横向滚动，按钮不再顶出 .wrap */
.nav .wrap{gap:14px}
.navlinks{min-width:0;flex:1 1 auto;justify-content:flex-end;overflow-x:auto;scrollbar-width:none}
.navlinks::-webkit-scrollbar{display:none}
.nav .btn.small{flex-shrink:0}
.nav .logo{flex-shrink:0}
@media(max-width:1200px){
  .navlinks a{padding:8px 8px;font-size:13.5px}
  .ndrop>span{padding:8px 8px;font-size:13.5px}
}
/* 2. 「流程」板块：底色已改浅，文字跟着改深 */
.steps .step{background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.steps .step h3{color:var(--ink);font-size:18px}
.steps .step p{color:var(--muted)}
.steps .step .n{color:var(--ind);font-size:40px;font-weight:700;opacity:1}
.steps .step .hl,.steps .step p .hl{color:var(--ind2);font-weight:700}
.steps .sec-sub{color:var(--muted)}
.eyebrow.dark{color:var(--ind)}
/* 3. 正文里的 **高亮** 在浅底上要看得见（深色区块单独覆盖） */
b.hl,.hl{color:var(--ind2);font-weight:700}
.final .hl,.final b.hl,.hero .hl{color:#c1dccb}
/* 4. 底部 CTA 仍然是深色卡：标题按钮要保持白字 */
.final .box h1,.final .box h2,.final .box h3{color:#fff}
.final .box p,.final .box .sub{color:#cbd4cd}
/* 5. 工厂实拍板块：浅底 + 深字 */
.gal{background:var(--bg2)}
.gal .sec-title{color:var(--ink)}
.gal .sec-sub,.gal .gal-cap{color:var(--muted)}
.gal-nav{background:#fff;border:1px solid var(--line);color:var(--ink2)}
/* 6. 小字对比度 */
.psales{color:#15803d}
.ptag.plain{color:#4c5752;background:#f3f4f6;border-color:#e5e7eb}
.batchcard .bc-foot,.batchcard small,.batchwrap small{color:#5c6661}
.mask{color:#7d8a83}
.ftdisc{color:#92a39b}
.ftdisc b{color:#c1dccb}
.ftbadges>div:last-child{color:#92a39b!important}
.trustline{color:var(--muted)}
.online{color:var(--muted)}
/* 7. 产品卡：分类标签与规格的可读性 */
.pmeta{color:#5c6661}
.pc .sq .pcat{background:#fff;color:var(--ind2);border:1px solid #e5e7eb}

/* v5.0.1-b 继续修：导航断点 / 深色卡片文字 / 剩余对比度 */
/* 导航：>1180 单行放得下；≤1180 改成第二行可横向滑动（flex-end + 滚动会把前几个链接顶出去且点不到，所以滚动模式一律 flex-start） */
.navlinks{overflow:visible;flex:0 1 auto}
@media(max-width:1180px){
  .nav .wrap{height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:0}
  .navlinks{display:flex!important;order:3;width:100%;flex:1 1 100%;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;padding:6px 20px 8px;margin:6px -20px 0}
  .navlinks a{padding:7px 10px;font-size:13.5px}
  .ndrop{display:none}
}
/* 深色卡片里的文字（「为什么选我们」第一张） */
.conf .cc.first h3,.conf .cc.first h2{color:#fff}
.conf .cc.first p,.conf .cc.first .hl{color:#cbd4cd}
.conf .cc.first .hl{font-weight:700;color:#c1dccb}
/* 绿色按钮里的副标题必须是纯白（别被深色区块的段落色继承） */
.final .box p{color:#cbd4cd}
.final .box .btn .sub,.btn .sub{color:#fff;opacity:.95}
/* 剩余小字对比度 */
.pbox-note{color:#6b7570}
.pdp-tb td.off{color:#15803d}
.mask{color:#6b7570}
.batchcard .bfoot,.batchcard .small,.bc-note{color:#4c5752}

/* v5.0.1-c 收尾：导航真正放得下、绿色按钮文字达标、剩余小字提亮 */
/* 8 个链接在 1440 下原本还差 60px，收紧内距与字号后放得下；1240 以下直接进第二行滚动带 */
.nav .wrap{max-width:1280px}   /* 导航条比正文栏宽一点，8 个链接才放得下 */
.navlinks a,.ndrop>span{padding:8px 9px;font-size:13.5px}
@media(max-width:1240px){
  .nav .wrap{height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:0}
  .navlinks{display:flex!important;order:3;width:100%;flex:1 1 100%;justify-content:flex-start;overflow-x:auto;white-space:nowrap;padding:6px 20px 8px;margin:6px -20px 0}
  .ndrop{display:none}
}
/* WhatsApp 按钮：原来的亮绿配白字对比度只有 2.0，压深到 4.6 以上（仍是绿色系） */
:root{--ws:#10874a;--ws2:#0c7040}
.tbar-wa{background:#10874a}
.btn .sub{color:#fff;opacity:1}
/* 剩余小字 */
.bf span,.bf small{color:#4c5752}
.kpi3 b.mask,b.mask,.mask{color:#6b7570}

/* =====================================================================
   v5.0.2 字体与细节：标题 / 正文换成 Plus Jakarta Sans（截图里那套），
   分类标签改成压在主图左上角的实心胶囊。
   ===================================================================== */
body,.logo,h1,h2,h3,.serif,.sec-title,input,select,textarea,button{
  font-family:"Plus Jakarta Sans",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
h1,h2,h3,.sec-title{font-weight:800;letter-spacing:-.03em}
.pdp-main h1{font-weight:800;letter-spacing:-.035em;font-size:36px}
.pdp-tag,.pdp-lead{font-weight:400}
.hero h1{font-weight:800;letter-spacing:-.035em}
.pcard h2,.pdp-h,.pbox-h b{font-weight:700;letter-spacing:-.02em}
.btn,.dose,.chip,.pdet{font-weight:600}
/* 分类标签：压在主图左上角（.pdp-img 自己做定位参照，别动 .pdp-gal 的 sticky） */
.pdp-img{position:relative}
.pdp-catpill{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;
  background:var(--ind);color:#fff;font-size:12.5px;font-weight:600;border-radius:999px;padding:7px 13px;margin:0;
  box-shadow:0 4px 12px -4px rgba(0,86,51,.6)}
.pdp-catpill svg{width:13px;height:13px;flex-shrink:0}
/* 产品卡：整张卡可点，鼠标指针跟着变 */
.pc{cursor:pointer}
.pdet{display:inline-block;padding:6px 12px;line-height:1.4}

/* v5.0.3 同名产品合并卡：规格标签 + 右上角「N 种规格」 */
.pspecs{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 8px}
.pspecs a{border:1px solid var(--line);border-radius:7px;padding:4px 9px;font-size:12px;font-weight:600;color:var(--ink2);background:#fff;white-space:nowrap}
.pspecs a:hover{border-color:var(--ind);color:var(--ind);background:var(--ind-l)}
.pvn{position:absolute;right:10px;top:10px;background:#fff;border:1px solid var(--line);color:var(--ind2);font-size:11px;font-weight:700;border-radius:999px;padding:5px 10px;box-shadow:var(--sh)}
.pc .sq{position:relative}


/* ===== v5.1.7 手机端改版：信任条单行横滑 / 顶栏瘦身 + 右侧滑出菜单 / 右下角圆形 WhatsApp ===== */
.navbtn,.navmask,.navdrawer{display:none}
@media(max-width:900px){
  /* 顶部信任条：整条一行，左右滑动看完（不再一条一行把屏幕占满） */
  .announce .wrap{padding:0}
  .tbar{flex-wrap:nowrap;justify-content:flex-start;gap:0 20px;min-height:0;padding:8px 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;scrollbar-width:none}
  .tbar::-webkit-scrollbar{display:none}
  .tbar-l,.tbar-r{flex:0 0 auto;flex-wrap:nowrap;gap:0 20px}
  .tbar-l i,.tbar-r>*{flex:0 0 auto;white-space:nowrap}
  /* 顶栏：只留 logo + 菜单键，导航链接进侧边栏 */
  .nav .wrap{height:54px;flex-wrap:nowrap;padding-top:0;padding-bottom:0}
  .navlinks{display:none!important}
  .nav .btn.small{display:none!important}
  .nav .logo{min-width:0}
  .navbtn{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0;width:44px;height:44px;margin-right:-10px;padding:0;border:0;background:transparent;border-radius:10px;cursor:pointer}
  .navbtn i{display:block;width:22px;height:2px;margin:2.5px 0;border-radius:2px;background:var(--ink,#1c2d25)}
  /* 遮罩 + 侧边栏（放在 body 层，z-index 高于悬浮键 / 询价条，低于弹窗） */
  .navmask{display:block;position:fixed;left:0;right:0;top:0;bottom:0;z-index:70;background:rgba(5,29,20,.5);opacity:0;visibility:hidden;-webkit-transition:opacity .22s,visibility 0s .22s;transition:opacity .22s,visibility 0s .22s}
  .navdrawer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:71;width:84vw;max-width:320px;background:#fff;-webkit-box-shadow:-12px 0 32px rgba(5,29,20,.22);box-shadow:-12px 0 32px rgba(5,29,20,.22);-webkit-transform:translateX(104%);transform:translateX(104%);visibility:hidden;-webkit-transition:-webkit-transform .26s ease,visibility 0s .26s;transition:transform .26s ease,visibility 0s .26s;padding-bottom:env(safe-area-inset-bottom)}
  body.navopen .navmask{opacity:1;visibility:visible;-webkit-transition:opacity .22s;transition:opacity .22s}
  body.navopen .navdrawer{-webkit-transform:none;transform:none;visibility:visible;-webkit-transition:-webkit-transform .26s ease;transition:transform .26s ease}
  body.navopen{overflow:hidden}
  .navd-head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:12px 14px 12px 20px;border-bottom:1px solid var(--line)}
  .navd-t{font-weight:700;font-size:16px;color:var(--ind,#005633);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .navd-x{width:40px;height:40px;border:0;background:#f3f4f6;border-radius:10px;font-size:26px;line-height:1;color:var(--ink2,#38443e);cursor:pointer;-ms-flex-negative:0;flex-shrink:0}
  .navd-links{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 12px}
  .navd-links>a{display:block;padding:14px 12px;font-size:16px;font-weight:600;color:var(--ink,#0a1c15);border-radius:10px}
  .navd-links>a:hover,.navd-links>a:active{background:var(--ind-l,#edf5f0);color:var(--ind,#005633)}
  .navd-links .ndrop{display:block!important;margin-top:8px;padding-top:10px;border-top:1px solid var(--line)}
  .navd-links .ndrop>span:first-child{display:block;padding:6px 12px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b7570);cursor:default}
  .navd-links .ndrop>span:first-child:after{display:none}
  .navd-links .ndrop-m{display:block;position:static;min-width:0;padding:0;border:0;background:transparent;-webkit-box-shadow:none;box-shadow:none;opacity:1;visibility:visible;-webkit-transform:none;transform:none}
  .navd-links .ndrop-m a{display:block;padding:11px 12px 11px 20px;font-size:15px;font-weight:500;color:var(--ink2,#38443e);border-radius:10px}
  .navd-links .ndrop-m a:hover,.navd-links .ndrop-m a:active{background:var(--ind-l,#edf5f0);color:var(--ind,#005633)}
  .navd-wa{-ms-flex-negative:0;flex-shrink:0;margin:10px 16px 16px;padding:14px 18px;font-size:16px;border-radius:12px}
  .navd-wa .ico{width:20px;height:20px;margin-right:8px}
  /* 右下角圆形 WhatsApp 悬浮键（和桌面一致，只是小一点；询价清单条出现时抬高，不互相盖住） */
  .float{width:56px;height:56px;right:14px;bottom:calc(16px + env(safe-area-inset-bottom))}
  .float svg{width:29px;height:29px}
  body.hascart .float{bottom:calc(88px + env(safe-area-inset-bottom))}
}

/* ===== v5.1.11 手机端排版整理 + 视频轮播 ===== */
/* 1. 信任条（Factory direct / Batch COA …）：手机和平板上图标放到文字正上方，四格居中对齐 */
@media(max-width:900px){
  .trustbar{padding:20px 0}
  .trustbar .wrap{grid-template-columns:1fr 1fr!important;grid-gap:20px 14px}
  .tb{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;font-size:14px;line-height:1.3}
  .tb svg{width:30px;height:30px;margin:0 0 9px}
  .tb small{margin-top:4px;line-height:1.45}
}
/* 2. 产品卡：所有控件统一高度 / 圆角 / 左右齐边 */
.ptag,.pdet{height:30px;line-height:28px;padding-top:0;padding-bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:8px}
.ptag{display:inline-block;vertical-align:middle}
@media(max-width:600px){
  .pcb{padding:12px 12px 12px}
  .pcb h3{font-size:15px;line-height:1.25;margin-bottom:8px}
  /* 规格标签：一行一个、通栏等宽，和下面的按钮左右齐边（两列时 "20 mg / vial" 会被拆成两行） */
  .pspecs{display:block;margin:0 0 9px}
  .pspecs a{display:block;height:32px;line-height:30px;margin:0 0 6px;padding:0 6px;font-size:12px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:8px;-webkit-box-sizing:border-box;box-sizing:border-box}
  .pspecs a:last-child{margin-bottom:0}
  .pmeta{font-size:11px;line-height:1.5}
  .psales{font-size:12px;line-height:1.35;margin-top:7px}
  /* 纯度 / COA 标签通栏显示。Details 按钮在手机上收起：整张卡、图片、产品名本来就都点进详情页，
     两列并排时「COA · 99.9% 🔒」会被截成「COA · 9…」 */
  .prow{display:block;margin:10px 0}
  .ptag{display:block;height:32px;line-height:30px;max-width:none;padding:0 6px;font-size:12px;text-align:center;font-family:"Plus Jakarta Sans",Inter,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .prow .pdet{display:none}
  .btn.pq{height:40px;padding:0 8px;font-size:13.5px;border-radius:9px}
  /* v5.1.13「N 种规格」角标挪到图片左下角：右上角和左上角的分类标签在窄卡片上会撞（葡语时必撞） */
  .pc .sq .pvn{top:auto;right:auto;left:7px;bottom:7px;font-size:10.5px;padding:4px 8px}
  .pc .sq .pcat{max-width:calc(100% - 60px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
}
/* 3. 视频轮播（浅底白卡，和工厂实拍同一套导航 / 圆点语言） */
.vid{background:#fff}
.vid-wrap{position:relative}
.vid-track{display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 12px}
.vid-track::-webkit-scrollbar{display:none}
.vid-item{-webkit-box-flex:0;-ms-flex:0 0 360px;flex:0 0 360px;scroll-snap-align:start;margin:0 18px 0 0}
.vid-item:last-child{margin-right:0}
.vid.portrait .vid-item{-ms-flex-preferred-size:260px;flex-basis:260px}
.vid-frame{display:block;position:relative;width:100%;padding:56.25% 0 0;margin:0;border:1px solid var(--line);border-radius:var(--r,12px);overflow:hidden;background:#051d14;cursor:pointer;font:inherit;color:inherit}
.vid.portrait .vid-frame{padding-top:177.78%}
.vid-frame img,.vid-frame video,.vid-frame iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;-o-object-fit:cover;object-fit:cover}
.vid-frame.on{cursor:auto}
.vid-frame.on video{-o-object-fit:contain;object-fit:contain;background:#000}
.vid-play{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px 0 0 -31px;border-radius:50%;background:rgba(255,255,255,.94);-webkit-box-shadow:0 10px 26px rgba(5,29,20,.35);box-shadow:0 10px 26px rgba(5,29,20,.35);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:-webkit-transform .15s;transition:transform .15s}
.vid-play svg{width:26px;height:26px;margin-left:3px;fill:var(--ind,#005633)}
.vid-frame:hover .vid-play,.vid-frame:focus-visible .vid-play{-webkit-transform:scale(1.07);transform:scale(1.07)}
.vid-frame:focus-visible{outline:3px solid var(--ind,#005633);outline-offset:2px}
.vid-cap{margin-top:12px}
.vid-cap b{display:block;font-size:14.5px;font-weight:700;color:var(--ink)}
.vid-cap span{display:block;font-size:13px;color:var(--muted);margin-top:3px;line-height:1.5}
.vid-nav{position:absolute;top:calc(50% - 40px);width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--ink2);cursor:pointer;font-size:22px;line-height:1;z-index:2;-webkit-box-shadow:var(--sh2);box-shadow:var(--sh2)}
.vid-nav.prev{left:-22px}.vid-nav.next{right:-22px}
@media(min-width:901px){.vid-track.few{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}
@media(max-width:900px){.vid-nav{display:none}.vid-item{-ms-flex-preferred-size:300px;flex-basis:300px}}
@media(max-width:600px){
  .vid-item{-ms-flex-preferred-size:86%;flex-basis:86%;margin-right:12px}
  .vid.portrait .vid-item{-ms-flex-preferred-size:62%;flex-basis:62%}
  .vid-play{width:54px;height:54px;margin:-27px 0 0 -27px}
  .vid-play svg{width:22px;height:22px}
}
@media(max-width:600px){.clock{padding:20px 14px}.clock h4{font-size:20px}}
/* v5.1.13 葡语导航比英文宽约 40px：1241–1320px 之间单行会压到 Logo，所以葡语站在这个区间提前换成第二行横滑带
   （只限 901px 以上 —— 900 以下是右侧抽屉菜单，不能把 .navlinks 再显示出来）。英文站不受影响。 */
@media(min-width:901px) and (max-width:1320px){
  html[lang^="pt"] .nav .wrap{height:auto;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-top:10px;padding-bottom:0}
  html[lang^="pt"] .navlinks{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3;width:100%;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;padding:6px 20px 8px;margin:6px -20px 0}
  html[lang^="pt"] .navlinks a{padding:7px 10px;font-size:13.5px}
  html[lang^="pt"] .ndrop{display:none}
}
/* v5.1.18 WhatsApp 头像按钮：圆形头像在左、两行短文案在右，整组居中 */
.btn.two.av{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:left;padding:11px 20px 11px 12px}
.btn.two.av .wav{position:relative;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:#fff;margin-right:12px;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5);box-shadow:0 0 0 2px rgba(255,255,255,.5)}
.btn.two.av .wav img{display:block;width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}
.btn.two.av .wav svg{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px}
.btn.two.av .wav-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;background:#4ade80;border:2px solid #fff}
.btn.two.av .wtx{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0}
.btn.two.av .main{display:block;line-height:1.2}
.btn.two.av .sub{margin-top:3px;line-height:1.3}
.btn.two.av.big{padding:12px 24px 12px 13px}
.btn.two.av.big .wav{width:50px;height:50px}
.btn.two.av.big .wav svg{width:34px;height:34px;margin:-17px 0 0 -17px}
@media(max-width:350px){.btn.two.av .main,.btn.two.av.big .main{font-size:16px}.btn.two.av .sub{font-size:11.5px}.btn.two.av.big{padding-right:16px}}
/* v5.1.18 表单产品折叠 + 必填红星 */
.lf-styles:not(.all):not(.q) .lf-style[data-more]{display:none}
.lf-more{display:block;width:100%;margin:10px 0 0;padding:10px 12px;border:1px dashed var(--line);border-radius:10px;background:#fff;color:var(--ind,#005633);font:600 14px/1.3 inherit;cursor:pointer}
.lf-more:hover{border-color:var(--ind,#005633);background:var(--ind-l,#edf5f0)}
.lf-label i{font-style:normal;font-weight:800;color:#e11d48;font-size:1.1em;margin-left:2px}
.lf-note.lf-req{color:#e11d48}
.lf-err .ph-sug{display:inline-block;margin-top:4px;font-weight:700;color:var(--ind,#005633);text-decoration:underline}
/* v5.1.19 提速：屏幕外的产品卡、FAQ、页脚先不排版 / 绘制，滚到附近才渲染（手机上首屏明显更快、滚动更顺）。
   auto 关键字会记住真实高度，第二次经过不会跳。 */
.pc{content-visibility:auto;contain-intrinsic-size:auto 400px}
.faq,footer{content-visibility:auto;contain-intrinsic-size:auto 900px}
/* v5.1.19 产品详情页图片轮播 */
.pdp-track{display:-webkit-box;display:-ms-flexbox;display:flex;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain}
.pdp-track::-webkit-scrollbar{display:none}
.pdp-slide{position:relative;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always;padding-top:100%}
.pdp-img .pdp-slide img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}
.pdp-count{display:none;position:absolute;right:12px;bottom:12px;z-index:2;padding:3px 10px;border-radius:999px;background:rgba(10,28,21,.62);color:#fff;font:600 12px/1.6 inherit;letter-spacing:.02em;pointer-events:none}
.pdp-dots{display:none;position:absolute;left:0;right:0;bottom:14px;z-index:2;text-align:center;pointer-events:none;line-height:0}
.pdp-dots i{display:inline-block;width:7px;height:7px;margin:0 3px;border-radius:999px;background:rgba(10,28,21,.22);-webkit-transition:width .2s,background .2s;transition:width .2s,background .2s}
.pdp-dots i.on{width:20px;background:var(--ind,#005633)}
@media(max-width:900px){
  .pdp-thumbs{display:none}              /* 手机 / 平板：缩略图条换成可滑动的大图 + 圆点 */
  .pdp-count,.pdp-dots{display:block}
  .pdp-img{cursor:default}
}
@media(prefers-reduced-motion:reduce){.pdp-dots i{-webkit-transition:none;transition:none}}
/* v5.1.22 单行 WhatsApp 按钮里的小圆头像（替代原来的小图标）+ 右下角悬浮按钮头像 */
.wav-i{position:relative;display:inline-block;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:24px;height:24px;margin-right:8px;border-radius:50%;background:#fff;vertical-align:middle;-webkit-box-shadow:0 0 0 1.5px rgba(255,255,255,.55);box-shadow:0 0 0 1.5px rgba(255,255,255,.55)}
.wav-i img{display:block;width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}
.wav-i svg{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px}
.wav-i .wav-dot{position:absolute;right:-2px;bottom:-2px;width:8px;height:8px;border-radius:50%;background:#4ade80;border:1.5px solid #fff}
.btn.small .wav-i,.tbar-wa .wav-i{width:20px;height:20px;margin-right:6px}
.btn.small .wav-i svg,.tbar-wa .wav-i svg{width:15px;height:15px;margin:-7.5px 0 0 -7.5px}
.float.has-av{background:#fff;padding:0;overflow:visible;-webkit-box-shadow:0 0 0 3px var(--ws),0 10px 26px rgba(0,0,0,.22);box-shadow:0 0 0 3px var(--ws),0 10px 26px rgba(0,0,0,.22)}
.float.has-av .float-av{display:block;width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}
.float.has-av .wav-dot{position:absolute;right:2px;bottom:2px;width:15px;height:15px;border-radius:50%;background:#4ade80;border:2.5px solid #fff}
@media(prefers-reduced-motion:reduce){.vid-play{-webkit-transition:none;transition:none}}

/* ===== Ruian static build: WhatsApp sales-line picker ===== */
#waModal{z-index:210}
.mbox.wa-box{max-width:440px;padding:30px 24px 22px;text-align:left;max-height:94vh;overflow:auto}
.wa-box h3{font-size:22px;margin:0 0 6px;padding-right:30px}
.wa-box .wa-sub{font-size:14px;line-height:1.5;margin:0 0 16px;color:var(--muted)}
.wa-list{display:grid;grid-gap:8px}
.wa-opt{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);transition:border-color .15s,background .15s}
.wa-opt:hover{border-color:var(--ws);background:#f3fbf6}
.wa-ic{position:relative;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--ws)}
.wa-ic svg{position:absolute;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px}
.wa-ic .wav-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:#4ade80;border:2px solid #fff}
.wa-n{flex:1 1 auto;min-width:0;line-height:1.3}
.wa-n b{display:block;font-size:14.5px;color:var(--ink)}
.wa-n span{display:block;font:500 13px/1.4 "IBM Plex Mono",Menlo,Consolas,monospace;color:var(--muted)}
.wa-go{flex:0 0 auto;background:var(--ws);color:#fff;font-weight:700;font-size:13px;border-radius:8px;padding:7px 12px}
.wa-msg{margin-top:14px;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:var(--ink2);white-space:pre-line;max-height:140px;overflow:auto}
.wa-msg b{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
@media(max-width:600px){.mbox.wa-box{padding:26px 16px 18px}.wa-go{padding:6px 10px}}
/* contact page: WhatsApp numbers */
.pgv-co .pgv-wa{display:flex;flex-wrap:wrap;gap:4px 18px;color:var(--ink)}
.pgv-co .pgv-wa a{color:var(--ind);font-weight:600;white-space:nowrap}
.pgv-co .pgv-wa a:hover{text-decoration:underline}

/* ===== Ruian Pharmaceutical theme: white base, ink green, dark gold =====
   Loaded after the base styles above and overrides them. */
:root{
  --brand:#0f5132;--brand-d:#0a3a24;--brand-2:#1d6b43;--brand-l:#eaf2ed;--brand-m:#cfe1d6;
  --accent:#b08d3c;--accent-d:#8a6a24;--accent-l:#f8f2e4;--accent-m:#e4d2a4;
  --ink:#1c2421;--ink2:#34423c;--muted:#5d6b65;--muted2:#94a19b;--line:#e1e7e3;--line2:#edf1ee;
  --bg:#fff;--bg2:#f4f7f5;--cream:#f4f7f5;
  --ind:var(--brand);--ind2:var(--brand-d);--ind-s:var(--brand-l);--ind-l:var(--brand-l);
  --blue:var(--brand);--blue-s:#f2f7f4;--blue-l:var(--brand-m);
  --navy:#132a20;--navy2:#1c3a2c;--gold:var(--brand);--gold2:var(--brand-m);--green:#1d7a46;
  --r:6px;--r-lg:8px;
  --sh:0 1px 2px rgba(19,42,32,.05);--sh2:0 14px 34px -18px rgba(19,42,32,.32);
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:"IBM Plex Sans","Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}

/* ---- type & base ---- */
body{background:#fff;color:var(--ink)}
body,input,select,textarea,button,h3,.logo,.chip,.psearch,.pdet,.pmorebtn,.padd,.cunlock,.pd-unlock,.pd-add,.cb-x,.lf-more,.dg-go,#c_chart text{font-family:var(--sans)}
h1,h2,.sec-title,.serif{font-family:var(--serif);font-weight:700;letter-spacing:-.01em;color:var(--brand-d)}
section{padding:84px 0}
.eyebrow{color:var(--accent-d)}
.btn,.btn.two,.btn.ghost{border-radius:4px}
.btn:hover{box-shadow:0 8px 20px -10px rgba(16,135,74,.6)}
.crumb a:hover{color:var(--accent-d)}
.crumb b{color:var(--brand-d)}
.dots i.on,.gal .dots i.on{background:var(--accent)}
.lb-thumbs img.on{border-color:var(--accent)}

/* ---- section heads: title left, intro right ---- */
.sec-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:12px 56px;align-items:end;margin:0 0 42px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.sec-head .eyebrow,.hero .eyebrow,.pdp-head .eyebrow,.pgv-card .eyebrow,.gal-cta .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0;background:none;border-radius:0;color:var(--accent-d);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.sec-head .eyebrow:before,.hero .eyebrow:before,.pdp-head .eyebrow:before{content:"";width:28px;height:2px;background:var(--accent);flex-shrink:0}
.sec-head .sec-title{text-align:left;font-size:38px;line-height:1.15;margin:0}
.sec-head .sec-sub{text-align:left;margin:0;max-width:none;font-size:16px;line-height:1.65;color:var(--muted)}

/* ---- top bar + nav ---- */
.announce{background:var(--bg2);color:var(--muted);border-bottom:1px solid var(--line)}
.tbar{min-height:34px}
.tbar-l i{font-size:12px;opacity:1}
.tbar-l i:before{content:"✓";width:auto;height:auto;border-radius:0;background:none;color:var(--accent);font-weight:700;font-size:11px}
.nav{background:#fff;border-bottom:1px solid var(--line)}
.nav .wrap{height:78px}
.logo{display:flex;align-items:center;gap:11px;color:var(--brand);letter-spacing:0}
.logo-mk{display:block;width:40px;height:40px;flex-shrink:0}
.logo-mk svg{display:block;width:100%;height:100%}
.logo-tx{display:flex;flex-direction:column;line-height:1}
.logo-tx b{font-family:var(--serif);font-size:23px;font-weight:700;letter-spacing:.16em;color:var(--brand)}
.logo-tx small{margin-top:5px;font:600 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-d)}
.navlinks a,.ndrop>span:first-child{color:var(--ink2);font-weight:500;border-radius:0}
.navlinks a{position:relative}
.navlinks a:hover,.ndrop:hover>span:first-child{color:var(--brand);background:none}
.navlinks a:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .2s}
.navlinks a:hover:after{transform:scaleX(1)}
.nav .btn.small{background:var(--brand);border-radius:4px}
.nav .btn.small:hover{background:var(--brand-d)}
.ndrop-m{border-radius:4px}
.navd-t{color:var(--brand)}

/* ---- hero: copy left, lab photo + batch card right ---- */
.hero{background:#fff;padding:64px 0 132px;border-bottom:0;overflow:hidden}
.hero:after{display:block;content:"";position:absolute;top:0;right:0;bottom:0;width:36%;background:var(--bg2)}
.hero .wrap{z-index:1;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-gap:72px}
.hero h1{font-size:52px;line-height:1.08;color:var(--brand-d);letter-spacing:-.015em}
.hero p.lead{font-size:17.5px;line-height:1.7;color:var(--ink2)}
.hero .online,.hero .trustline{color:var(--muted)}
.hformats li{font:600 12.5px/1 var(--sans);background:var(--brand-l);border:0;border-radius:3px;color:var(--brand);padding:8px 12px}
.hero-media.batchwrap{position:relative;background:none;border:0;border-radius:0;max-width:none;align-self:center}
.hero-photo{position:relative;height:560px;overflow:hidden;border-radius:2px;box-shadow:0 30px 60px -32px rgba(19,42,32,.5)}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.hero-photo:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(180deg,rgba(10,58,36,0) 55%,rgba(10,58,36,.35))}
.hero .batch{position:absolute;left:-56px;bottom:-44px;width:330px;border-radius:4px;border-top:3px solid var(--accent);box-shadow:0 26px 50px -20px rgba(19,42,32,.5)}
.hero .batch td{padding:9px 16px;font-size:13px}
.hero .batch .bh,.hero .batch .bf{padding:11px 16px}
.batch .bf{background:var(--bg2)}
.batch td a:hover{color:var(--accent-d)}
.hero .badge-float{position:absolute;top:20px;right:20px;left:auto;bottom:auto;margin:0;border-radius:4px}

/* ---- trust bar: one card overlapping the hero ---- */
.trustbar{position:relative;z-index:3;background:transparent;border:0;padding:0 20px;margin:-60px 0 0}
.trustbar .wrap{max-width:1140px;padding:0;gap:0!important;background:#fff;border:1px solid var(--line);border-top:3px solid var(--brand);box-shadow:0 20px 44px -24px rgba(19,42,32,.38)}
.trustbar .tb{padding:22px 24px;border-left:1px solid var(--line);color:var(--brand-d);font-size:14.5px}
.trustbar .tb:first-child{border-left:0}
.tb svg{color:var(--accent);width:32px;height:32px}

/* ---- why us: photo feature + 2×2 ---- */
.conf{background:#fff}
.conf .g{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;grid-gap:18px}
.conf .cc{border:1px solid var(--line);border-radius:4px;box-shadow:none;padding:26px 24px;transition:border-color .2s}
.conf .cc:hover{border-color:var(--brand-m)}
.conf .cc svg{color:var(--accent);width:34px;height:34px}
.conf .cc h3{font-size:17px;color:var(--brand-d)}
.conf .cc.first{grid-row:span 2;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;min-height:440px;padding:32px 30px;border:0;
  background:var(--brand-d) url(../uploads/gal_20261020_1c5661748d68__760.jpg) center 20%/cover}
.conf .cc.first:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(180deg,rgba(10,58,36,.1) 0%,rgba(10,58,36,.94) 64%)}
.conf .cc.first>*{position:relative}
.conf .cc.first h3{font-family:var(--serif);font-size:27px;line-height:1.2;color:#fff}
.conf .cc.first p,.conf .cc.first .hl{color:#d6e4dc}
.conf .cc.first svg{color:var(--accent-m)}

/* ---- product catalogue ---- */
#collection{background:var(--bg2)}
.grid4{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:22px}
.pc{border:1px solid var(--line);border-radius:4px;box-shadow:none}
.pc:hover{border-color:var(--brand-m);box-shadow:0 20px 40px -26px rgba(19,42,32,.45)}
.pc .sq{background:#fff;border-bottom:1px solid var(--line2)}
.pc .sq .pcat{left:0;top:auto;bottom:0;border:0;border-radius:0 4px 0 0;background:var(--brand);color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:7px 11px}
.pc .shots{background:rgba(10,58,36,.78)}
.pc .sq .pvn{background:var(--accent-l);border-color:var(--accent-m);color:var(--accent-d);border-radius:3px}
.padd{border-radius:4px;color:var(--brand)}
.padd:hover{border-color:var(--brand);color:var(--brand)}
.pcb{padding:18px 20px 20px}
.pcb h3{font-size:18px;color:var(--brand-d)}
.pspecs a{border-radius:3px}
.pspecs a:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-l)}
.psales{color:var(--brand-2)}
.ptag{background:var(--accent-l);color:var(--accent-d);border-color:var(--accent-m);border-radius:3px}
.ptag.plain{background:var(--bg2);color:var(--muted);border-color:var(--line)}
.pdet{border:0;background:none;color:var(--brand);padding:0 0 0 8px}
.pdet:hover{background:none;color:var(--accent-d);text-decoration:none}
.pdet:after{content:" →"}
.btn.pq{background:#fff;color:var(--brand);border:1.5px solid var(--brand);border-radius:4px;box-shadow:none}
.btn.pq:hover{background:var(--brand);color:#fff;box-shadow:none}
.pfilter{align-items:flex-end;margin:0 0 18px;border-bottom:1px solid var(--line)}
.pfilter .chip{margin:0;padding:12px 14px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--muted)}
.pfilter .chip:hover{color:var(--brand)}
.pfilter .chip.on{background:none;color:var(--brand);border-bottom-color:var(--accent)}
.psearch{border-radius:3px}
.pmorebtn{border-radius:3px;border-color:var(--brand);color:var(--brand)}
.pmorebtn:hover{background:var(--brand);color:#fff}
.more{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 40px;margin-top:36px;padding:28px 32px;text-align:left;background:#fff;border:0;border-left:4px solid var(--accent);border-radius:0;box-shadow:var(--sh)}
.more h3{grid-column:1;margin:0;font-family:var(--serif);font-size:25px;color:var(--brand-d)}
.more p{grid-column:1;margin:0;max-width:none}
.more>.btn{grid-column:2;grid-row:1/span 2;width:auto;min-width:320px}

/* ---- factory gallery: bento grid on desktop, carousel on small screens ---- */
.gal{background:#fff}
.gal-frame{border-radius:4px;border:0}
.gal-cap b{color:var(--brand-d)}
.gal-nav,.vid-nav{border-radius:3px}
.gal-cta{display:flex;position:relative;overflow:hidden;border-radius:4px;background:var(--brand-d);color:#fff;cursor:pointer}
.gal-cta:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:radial-gradient(circle at 85% 12%,rgba(201,168,90,.38),rgba(201,168,90,0) 58%)}
.gal-cta-in{position:relative;display:flex;flex-direction:column;justify-content:center;gap:10px;width:100%;padding:28px 30px}
.gal-cta .eyebrow{margin:0;color:var(--accent-m);font-size:11.5px}
.gal-cta b{font-family:var(--serif);font-size:27px;line-height:1.2;color:#fff}
.gal-cta-in>span:nth-child(3){color:#cfe0d6;font-size:14.5px;line-height:1.6}
.gal-cta-go{align-self:flex-start;margin-top:6px;padding:10px 16px;border-radius:3px;background:var(--accent);color:#fff;font-size:14px;font-weight:600}
.gal-cta:hover .gal-cta-go{background:var(--accent-d)}

/* ---- how it works: timeline on an ink-green band ---- */
.steps{background:var(--brand-d) radial-gradient(circle at 8% 0%,rgba(201,168,90,.14),rgba(201,168,90,0) 42%);color:#fff}
.steps .sec-head{border-bottom-color:rgba(255,255,255,.14)}
.steps .sec-title{color:#fff}
.steps .sec-sub{color:#b8ccc0}
.steps .sec-head .eyebrow{color:var(--accent-m)}
.steps .wrap>.g{grid-gap:0 36px;margin-top:56px}
.steps .step{background:none;border:0;border-top:1px solid rgba(255,255,255,.24);border-radius:0;box-shadow:none;padding:38px 0 0;color:#fff}
.steps .step .n{position:absolute;top:-23px;left:0;width:46px;height:46px;margin:0;border-radius:50%;background:var(--brand-d);border:1.5px solid var(--accent);color:var(--accent-m);font:700 20px/43px var(--serif);text-align:center}
.steps .step h3{margin:10px 0 10px;font-size:19px;color:#fff}
.steps .step p{color:#b8ccc0}
.steps .step .hl,.steps .step p .hl{color:var(--accent-m)}

/* ---- best sellers: ranked cards ---- */
.market{background:#fff;border:0}
.mk-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;max-width:none;border:0;border-radius:0;overflow:visible;background:none;box-shadow:none}
.mk-row,.mk-row:last-child{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:22px 20px 20px;border:1px solid var(--line);border-radius:4px;background:#fff}
.mk-row:hover{background:#fff;border-color:var(--brand-m);box-shadow:var(--sh2)}
.mk-rank,.mk-row:nth-child(-n+3) .mk-rank{position:absolute;top:0;right:16px;width:auto;height:auto;padding:7px 9px;border-radius:0 0 3px 3px;background:var(--bg2);color:var(--muted);font:700 12.5px/1 var(--sans)}
.mk-row:nth-child(-n+3) .mk-rank{background:var(--accent);color:#fff}
.mk-rank:before{content:"#"}
.mk-th{width:64px;height:64px;border-radius:4px;background:#fff}
.mk-name b{color:var(--brand-d)}
.mk-vol{padding-top:12px;border-top:1px solid var(--line2)}
.mk-vol b{color:var(--brand-2)}
.mk-vol i{background:var(--accent);opacity:.75}
.mk-mkts span{font-size:12.5px;color:var(--muted)}
.mk-go{margin-top:auto;text-align:center;background:#fff;color:var(--brand);border:1.5px solid var(--brand);border-radius:3px}
.mk-go:hover{background:var(--brand);color:#fff}
.mk-countries{max-width:none;margin-top:30px}
.mk-countries b{color:var(--brand-d)}
.mk-countries span{background:var(--bg2);color:var(--ink2);border-radius:3px}

/* ---- ordering terms ---- */
.terms{background:var(--bg2)}
.tm{border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:4px;box-shadow:none;padding:22px 20px}
.terms .tm-ic{background:var(--brand-l);border:0;border-radius:50%;color:var(--brand)}
.tm h3{color:var(--brand-d);font-size:16px}

/* ---- profit calculator ---- */
.calc{background:#fff;border:0}
.cpanel{background:var(--bg2);border:1px solid var(--line);border-radius:4px;box-shadow:none}
.cf{color:var(--brand-d)}
.cf input,.cf select{border-color:var(--line);border-radius:3px}
.cpre .chip{margin:0 6px 6px 0;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink2)}
.cpre .chip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.cunlock{background:var(--accent);border-radius:3px}
.cunlock:hover{background:var(--accent-d)}
.cdisc{color:var(--accent-d)}
.cout,.kpi3{border-radius:4px;box-shadow:none}
.kpi3 b{font-family:var(--serif);color:var(--brand-d)}
.clock{border:1.5px dashed var(--accent-m);background:var(--accent-l);border-radius:4px}
.clock h4{font-family:var(--serif);color:var(--brand-d)}
#c_chart .bar{fill:var(--brand)}

/* ---- reseller support: icon list ---- */
.support{background:var(--bg2)}
.sp-grid{grid-gap:34px 44px}
.support .sp{background:none;border:0;border-left:2px solid var(--accent-m);border-radius:0;box-shadow:none;padding:4px 0 4px 22px}
.support .sp svg{color:var(--brand);width:30px;height:30px}
.support .sp h3{font-size:17.5px;color:var(--brand-d)}

/* ---- video ---- */
.vid{background:#fff}
.vid-frame{border-radius:4px;background:var(--brand-d)}
.vid-play svg{fill:var(--brand)}

/* ---- FAQ: heading column + answers column ---- */
.faq{background:var(--bg2)}
.faq .list{border-top:2px solid var(--brand)}
.faq .list>details{background:transparent}
.faq .list>details>summary{font-size:16px;color:var(--brand-d);font-weight:600}
.faq .list>details>summary:after{border-right-color:var(--accent);border-bottom-color:var(--accent)}

/* ---- closing call to action ---- */
.final{padding:76px 0;background:var(--brand-d) radial-gradient(circle at 92% 0%,rgba(201,168,90,.18),rgba(201,168,90,0) 45%)}
.final .box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 56px;align-items:center;padding:0;text-align:left;background:none;border-radius:0;overflow:visible}
.final .box:before{display:none}
.final h2,.final .box h2{grid-column:1;margin:0;font-size:42px;color:#fff}
.final .box p{grid-column:1;margin:0;max-width:640px;color:#c4d6cb}
.final .box>.btn{grid-column:2;grid-row:1/span 2;width:auto;min-width:360px}
.final .badges{grid-column:1/-1;max-width:none;margin:36px 0 0;padding-top:26px;grid-gap:0;border-top:1px solid rgba(255,255,255,.14)}
.final .bd{display:flex;align-items:center;gap:10px;padding:4px 18px;text-align:left;background:none;border:0;border-left:1px solid rgba(255,255,255,.14);border-radius:0;color:#e3ece6}
.final .bd:first-child{padding-left:0;border-left:0}
.final .bd svg{margin:0;color:var(--accent-m);flex-shrink:0}

/* ---- footer (light) ---- */
footer{background:#eef2ef;color:var(--muted);border-top:3px solid var(--accent)}
.ftco h4,.ftcol h4{color:var(--brand-d);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.ftco .fbrand{display:flex;align-items:center;gap:12px;color:var(--brand-d);font-size:15.5px;line-height:1.3}
.fbrand .logo-mk{width:42px;height:42px}
.fbrand small{display:block;margin-top:3px;font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--accent-d)}
.ftco p{color:var(--muted)}
.ftcol a{color:var(--ink2)}
.ftcol a:hover{color:var(--brand)}
.ftcol a.wa{color:var(--brand-2);font-weight:600}
.ftwa{margin-top:16px}
.ftwa>b{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-d)}
.ftwa-l{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 14px;margin:0;padding:0;list-style:none}
.ftwa-l a{display:flex;flex-direction:column;font:600 13px/1.35 "IBM Plex Mono",Menlo,Consolas,monospace;color:var(--brand)}
.ftwa-l a:hover{color:var(--accent-d)}
.ftwa-l a span{font:600 10px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted2)}
.ftbadges,.ftdisc{border-top-color:var(--line)}
.tbadge{background:#fff;border-color:var(--line);color:var(--muted);border-radius:3px}
.tbadge b{color:var(--brand)}
.ftbadges>div:last-child{color:var(--muted)!important}
.ftdisc{color:var(--muted)}
.ftdisc b,.ftdisc .hl{color:var(--brand-d)}

/* ---- floating parts & modals ---- */
.cartbar{background:var(--brand-d);border-radius:4px}
.cb-go{border-radius:3px}
.mbox{border-radius:6px}
.mbox.lead,.mbox.wa-box{border-top:4px solid var(--brand)}
.mbox .eyebrow{color:var(--accent-d)}
.lf-label{color:var(--brand-d)}
.lf-style,.lf-find,.lf-more{border-radius:4px}
.lf-cat{background:var(--accent-l);border-color:var(--accent-m);border-radius:4px}
.lf-cat.on{background:#f2e7c9;box-shadow:0 0 0 2px rgba(176,141,60,.35)}
.lf-cat b{color:var(--brand-d)}
.lf-sel span{background:var(--brand-l);color:var(--brand)}
.lf-sel b{color:var(--brand-d)}
.wa-opt{border-radius:4px}
.wa-opt:hover{background:var(--brand-l)}

/* ---- product page ---- */
.pdp{padding:0 0 72px}
.pdp-head{margin:0 0 36px;padding:22px 0 32px;background:var(--bg2);box-shadow:0 0 0 100vmax var(--bg2);clip-path:inset(0 -100vmax)}
.pdp-head .crumb{margin:0 0 20px}
.pdp-head-in{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 40px}
.pdp-head .eyebrow{margin-bottom:8px}
.pdp-head h1{margin:0 0 6px;font-size:46px;line-height:1.08;color:var(--brand-d)}
.pdp-head .pdp-tag{margin:0;font-size:16px;color:var(--ink2)}
.pdp-keys{display:flex;margin:0;background:#fff;border:1px solid var(--line);border-radius:4px}
.pdp-keys div{padding:12px 20px;border-left:1px solid var(--line)}
.pdp-keys div:first-child{border-left:0}
.pdp-keys dt{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pdp-keys dd{margin:4px 0 0;font:600 14.5px/1.3 "IBM Plex Mono",Menlo,Consolas,monospace;color:var(--brand-d);white-space:nowrap}
.pdp-gal{top:100px}
.pdp-catpill{display:none}
.pdp-img{border-radius:4px;background:#fff}
.pdp-th{border-radius:3px}
.pdp-th.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}
.pdp-dots i.on{background:var(--brand)}
.pbox{border-radius:4px}
.pbox.verify{background:var(--brand-l);border-color:var(--brand-m);border-left:3px solid var(--brand)}
.pbox.bulk{background:var(--accent-l);border-color:var(--accent-m);border-left:3px solid var(--accent)}
.pbox .lot{border-color:var(--brand-m);color:var(--brand)}
.pbox.bulk [data-cart]{border-radius:4px}
.pbox.bulk [data-cart].on{background:var(--brand-l);border-color:var(--brand-m);color:var(--brand)}
.pd-unlock{background:#fff;color:var(--accent-d);border:1.5px solid var(--accent);border-radius:3px}
.pd-unlock:hover{background:var(--accent);color:#fff}
.pcard{margin:0 0 24px;padding:16px 0 4px;background:none;border:0;border-top:2px solid var(--brand);border-radius:0;box-shadow:none}
.pcard h2{font-family:var(--sans);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.pcard h2 .ic{background:var(--brand-l);color:var(--brand);border-radius:3px}
.pcard .specs li{padding:8px 10px}
.pcard .specs li:nth-child(odd){background:var(--bg2)}
.kb li:before{color:var(--accent)}
.dose{border-radius:3px}
.dose:hover{border-color:var(--brand);color:var(--brand)}
.dose.on{background:var(--brand);border-color:var(--brand)}
.dosenow{border-radius:4px}
.pcard.calccta{padding:18px 20px;background:var(--accent-l);border-top-color:var(--accent)}
.pcard.calccta h2{color:var(--accent-d)}
.pcard.calccta h2 .ic{background:#fff;color:var(--accent-d)}
.pcard.calccta p{color:var(--ink2)}
.pcard.calccta .btn.ghost{background:#fff;border-color:var(--accent);color:var(--accent-d)}
.pcard.calccta .btn.ghost:hover{background:var(--accent);color:#fff}
.pnotice{text-align:left;background:var(--bg2);border-color:var(--line);border-radius:4px}
.pnotice b{color:var(--brand-d)}
.pdp-h{font-family:var(--serif);font-size:27px;color:var(--brand-d)}
.pdp-h .ic{display:none}
.pdp-faqs{border-top:2px solid var(--brand)}
.topcard{border-radius:4px;background:#fff}
.topcard:hover{border-color:var(--brand)}
.topcard i{color:var(--accent)}
.rel{border-radius:4px}
.rel-cat{background:var(--brand-l);color:var(--brand);border-radius:2px}
.pdp-backl a{color:var(--brand)}

/* ---- info pages: header band + sales sidebar ---- */
.pgv{padding:0 0 76px}
.pgv-head{margin-bottom:46px;padding:26px 0 42px;background:var(--bg2);border-bottom:1px solid var(--line)}
.pgv-head .crumb{margin-bottom:22px}
.pgv-head h1{margin:0 0 10px;font-size:46px;color:var(--brand-d)}
.pgv-head .pgv-sub{margin:0;max-width:760px;font-size:17px;color:var(--ink2)}
.pgv-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:60px;align-items:start}
.pgv-main .pgv-body{max-width:none}
.pg-h{margin:34px 0 12px;font-family:var(--serif);font-size:24px;color:var(--brand-d)}
.pgv-body>.pg-h:first-child{margin-top:0}
.pg-ul li:before{background:var(--accent);border-radius:0;width:6px;height:6px}
.pg-ol li:before{background:var(--brand)}
.pg-note{background:var(--accent-l);border-left-color:var(--accent);color:var(--ink2)}
.pg-tb th{background:var(--brand-l);color:var(--brand-d)}
.pgv-co{border-radius:4px;background:var(--bg2)}
.pgv-co b{color:var(--brand-d)}
.pgv-side{position:sticky;top:100px}
.pgv-card{padding:24px 22px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:4px;box-shadow:var(--sh2)}
.pgv-card .eyebrow{margin-bottom:8px;font-size:11.5px}
.pgv-card h3{margin:0 0 10px;font-family:var(--serif);font-size:22px;line-height:1.25;color:var(--brand-d)}
.pgv-card p{margin:0 0 16px;font-size:14px;color:var(--muted)}
.pgv-card .btn.two{width:100%;max-width:none}
.pgv-lines-h{margin:22px 0 6px;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pgv-lines{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.pgv-lines a{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;border-bottom:1px solid var(--line);font:600 14px/1.3 "IBM Plex Mono",Menlo,Consolas,monospace;color:var(--brand)}
.pgv-lines a span{font:600 10.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted2)}
.pgv-lines a:hover{color:var(--accent-d)}

/* ---- large screens only ---- */
@media(min-width:901px){
  .gal-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:330px;grid-gap:16px;overflow:visible;padding:0}
  .gal-item{position:relative;flex:none;margin:0;overflow:hidden;border-radius:4px}
  .gal-item:first-child{grid-column:span 2;grid-row:span 2}
  .gal-item.gal-cta{grid-column:span 2}
  .gal-frame{position:absolute;left:0;right:0;top:0;bottom:0;padding:0;border-radius:0;box-shadow:none}
  .gal-frame img{transition:transform .5s}
  .gal-item:hover .gal-frame img{transform:scale(1.04)}
  .gal-cap{position:absolute;left:0;right:0;bottom:0;margin:0;padding:56px 18px 16px;background:linear-gradient(180deg,rgba(10,58,36,0),rgba(10,58,36,.92) 58%)}
  .gal .gal-cap b{color:#fff}
  .gal .gal-cap span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#d4e2da}
  .gal-item:first-child .gal-cap span{-webkit-line-clamp:3}
  .gal-nav,.gal .dots{display:none}
  .faq .wrap{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);grid-template-rows:auto 1fr;grid-column-gap:64px}
  .faq .sec-head{grid-column:1;grid-row:1;display:block;margin:0;padding:0;border:0}
  .faq .sec-head .sec-title{font-size:36px}
  .faq .cta{grid-column:1;grid-row:2;align-self:start;margin-top:28px;text-align:left}
  .faq .list{grid-column:2;grid-row:1/span 2;max-width:none;margin:0}
}
@media(max-width:1100px){
  .mk-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero .batch{left:-30px}
}

/* ---- tablet ---- */
@media(max-width:900px){
  section{padding:64px 0}
  .sec-head{grid-template-columns:1fr;gap:10px;margin-bottom:30px;padding-bottom:18px}
  .sec-head .sec-title{font-size:30px}
  .nav .wrap{height:66px}
  .hero{padding:36px 0 96px}
  .hero:after{display:none}
  .hero .wrap{grid-template-columns:1fr;grid-gap:30px}
  .hero h1{font-size:38px}
  .hero .hero-media,.hero .hero-media.batchwrap{order:2;max-width:560px;width:100%;margin:0 auto}
  .hero-photo{height:300px}
  .hero .batch{position:relative;left:auto;bottom:auto;width:auto;margin:-84px 16px 0}
  .hero .badge-float{top:14px;right:14px}
  .trustbar .tb:nth-child(3){border-left:0}
  .trustbar .tb:nth-child(n+3){border-top:1px solid var(--line)}
  .conf .cc.first{grid-row:auto;grid-column:span 2;min-height:340px}
  .more{grid-template-columns:1fr;padding:24px 22px}
  .more>.btn{grid-column:1;grid-row:auto;min-width:0;width:100%;margin-top:14px}
  .gal-cta .gal-cta-in{min-height:286px;padding:22px}
  .gal-cta b{font-size:22px}
  .steps .wrap>.g{margin-top:44px}
  .steps .step{padding:38px 0 34px}
  .final .box{grid-template-columns:1fr}
  .final h2,.final .box h2{font-size:32px}
  .final .box>.btn{grid-column:1;grid-row:auto;min-width:0;width:100%;margin-top:18px}
  .final .bd,.final .bd:first-child{padding:8px 0;border-left:0}
  .pdp-head h1{font-size:32px}
  .pdp-keys{width:100%}
  .pdp-keys div{flex:1 1 0;padding:10px 12px}
  .pdp-keys dd{font-size:13px;white-space:normal}
  .pgv-grid{grid-template-columns:1fr;grid-gap:36px}
  .pgv-side{position:static}
  .pgv-head h1{font-size:34px}
}

/* ---- phone ---- */
@media(max-width:600px){
  section{padding:54px 0}
  .sec-head .sec-title{font-size:26px}
  .sec-head .sec-sub{font-size:15px}
  .tbar-l i{font-size:11.5px}
  .logo-mk{width:36px;height:36px}
  .logo-tx b{font-size:20px;letter-spacing:.12em}
  .logo-tx small{font-size:9px;letter-spacing:.12em}
  .hero h1{font-size:31px}
  .hero-photo{height:240px}
  .hero .hero-media,.hero .hero-media.batchwrap{max-width:none}
  .hero .badge-float{top:12px;right:12px;left:auto;bottom:auto;font-size:12px}
  .trustbar{padding:0 14px}
  .trustbar .tb{padding:14px 12px;font-size:13px}
  .conf .cc.first{grid-column:span 1;min-height:320px}
  .pfilter .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .pfilter .chips::-webkit-scrollbar{display:none}
  .pfilter .chip{flex-shrink:0;padding:11px 12px}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px}
  .pc .sq .pcat{font-size:9px;letter-spacing:.08em;padding:5px 8px}
  .pc .sq .pvn{top:7px;right:7px;bottom:auto;left:auto}
  .pcb{padding:12px 12px 14px}
  .pdet{padding:8px 0 0}
  .gal-cta .gal-cta-in{min-height:300px}
  .mk-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
  .mk-list::-webkit-scrollbar{display:none}
  .mk-row,.mk-row:last-child{flex:0 0 80%;scroll-snap-align:start}
  .final{padding:56px 0}
  .final h2,.final .box h2{font-size:28px}
  .ftwa-l{grid-template-columns:1fr 1fr}
  .pdp-head h1{font-size:28px}
  .pdp-keys{flex-wrap:wrap}
  .pdp-keys div{flex:1 1 50%;border-left:0;border-top:1px solid var(--line)}
  .pdp-keys div:first-child{flex-basis:100%;border-top:0}
  .pgv-head{padding:20px 0 30px;margin-bottom:34px}
  .pgv-head h1{font-size:30px}
}
