/* mobile-first: base=mobile, min-width enhancements; generated by css_mobile_first.py + css_fix_revert.py */
.prod-wrap{ max-width:1280px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:0; padding-right:24px; padding-bottom:0; padding-left:24px; }
.prod-hero{ position:relative; background:linear-gradient(180deg,#fff,#f8f8f8); border-bottom:1px solid #eee; color:#1a1a1a; padding-top:114px; padding-right:0; padding-bottom:52px; padding-left:0; text-align:center; overflow:hidden; }
.prod-hero::before{ content:''; position:absolute; top:0; right:0; bottom:auto; left:0; height:3px; background:linear-gradient(90deg,var(--brand-red,#c8102e),#df0024); }
.prod-eyebrow{ text-transform:uppercase; letter-spacing:.13em; font-size:12.5px; font-weight:700; color:var(--brand-red,#c8102e); margin-top:0; margin-right:0; margin-bottom:16px; margin-left:0; }
.prod-h1{ font-size:clamp(34px,5vw,56px); line-height:1.04; font-weight:700; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; max-width:18ch; color:#1a1a1a; letter-spacing:-.01em; }
.prod-lead{ margin-top:20px; margin-right:auto; margin-bottom:26px; margin-left:auto; max-width:60ch; font-size:18px; line-height:1.55; color:#666; }
.prod-cta{ display:inline-block; background:var(--brand-red,#c8102e); color:#fff; text-decoration:none; padding-top:14px; padding-right:30px; padding-bottom:14px; padding-left:30px; border-radius:11px; font-weight:600; }
.prod-cta:hover{ background:var(--brand-red-dark,#8c0a1f); }
.prod-hero-dark{ background:linear-gradient(135deg,#16181d 0%,#0b0c0f 55%,#1b1d24 100%); color:#fff; padding-top:122px; padding-right:0; padding-bottom:58px; padding-left:0; border-bottom:0; }
.prod-hero-dark .prod-hero-bg{ position:absolute; top:0; right:0; bottom:0; left:0; opacity:.5; pointer-events:none; background:radial-gradient(900px 380px at 78% 8%, rgba(200,16,46,.30), transparent 60%),
             radial-gradient(700px 320px at 12% 100%, rgba(80,90,120,.22), transparent 60%); }
.prod-hero-dark .prod-wrap{ position:relative; z-index:1; }
.prod-hero-dark .prod-eyebrow{ color:#ff5566; }
.prod-hero-dark .prod-h1{ color:#fff; }
.prod-hero-dark .prod-lead{ color:rgba(255,255,255,.72); }
.prod-tabs{ display:flex; gap:8px; flex-wrap:wrap; padding-top:34px; padding-right:0; padding-bottom:0; padding-left:0; }
.prod-tab{ display:inline-flex; align-items:center; gap:8px; padding-top:10px; padding-right:18px; padding-bottom:10px; padding-left:18px; border-radius:100px; border:1px solid rgba(0,0,0,.12); background:#fff; font-size:14px; font-weight:600; color:var(--ink-2,#444); cursor:pointer; transition:border-color .15s, background .15s, color .15s; font-family:inherit; }
.prod-tab i{ font-size:17px; }
.prod-tab:hover{ border-color:var(--brand-red,#c8102e); color:var(--brand-red,#c8102e); }
.prod-tab.on{ background:var(--brand-red,#c8102e); border-color:var(--brand-red,#c8102e); color:#fff; }
.prod-tab-n{ font-size:12px; font-weight:700; padding-top:1px; padding-right:8px; padding-bottom:1px; padding-left:8px; border-radius:100px; background:rgba(0,0,0,.06); color:var(--ink-3,#86868b); }
.prod-tab.on .prod-tab-n{ background:rgba(255,255,255,.24); color:#fff; }
.prod-cattabs{ margin-top:26px; margin-right:0; margin-bottom:2px; margin-left:0; border-bottom:1px solid rgba(0,0,0,.08); }
.prod-cattabs .prod-tabs{ display:flex; flex-wrap:wrap; gap:8px; padding-top:0; padding-right:0; padding-bottom:14px; padding-left:0; overflow-x:visible; scrollbar-width:none; }
.prod-cattabs .prod-tabs::-webkit-scrollbar{ display:none; }
.prod-cattabs .prod-tab{ flex:0 0 auto; }
.prod-cattabs .prod-tab i{ font-size:17px; }
.prod-makes{ display:flex; align-items:flex-start; gap:16px; flex-wrap:wrap; margin-top:20px; padding-top:16px; padding-right:18px; padding-bottom:16px; padding-left:18px; background:#f7f7f9; border:1px solid rgba(0,0,0,.06); border-radius:14px; }
.prod-makes-label{ display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:700; color:var(--ink,#1d1d1f); white-space:nowrap; padding-top:6px; }
.prod-makes-label i{ font-size:17px; color:var(--brand-red,#c8102e); }
.prod-makes-chips{ display:flex; gap:8px; flex-wrap:wrap; }
.prod-make{ display:inline-flex; align-items:center; gap:6px; padding-top:7px; padding-right:14px; padding-bottom:7px; padding-left:14px; border-radius:100px; border:1px solid rgba(0,0,0,.12); background:#fff; font-size:13px; font-weight:600; color:var(--ink-2,#444); cursor:pointer; transition:border-color .15s, background .15s, color .15s; font-family:inherit; }
.prod-make:hover{ border-color:var(--brand-red,#c8102e); color:var(--brand-red,#c8102e); }
.prod-make.on{ background:#1d1d1f; border-color:#1d1d1f; color:#fff; }
.prod-make-n{ font-size:11px; font-weight:700; padding-top:1px; padding-right:7px; padding-bottom:1px; padding-left:7px; border-radius:100px; background:rgba(0,0,0,.06); color:var(--ink-3,#86868b); }
.prod-make.on .prod-make-n{ background:rgba(255,255,255,.22); color:#fff; }
.prod-layout{ display:grid; grid-template-columns:minmax(0,1fr); gap:22px; align-items:start; padding-top:24px; padding-bottom:60px; }
.prod-sidebar{ position:static; top:84px; display:flex; flex-direction:column; gap:16px; }
.prod-main{ min-width:0; min-height:62vh; }
.prod-filter-h{ display:flex; align-items:center; gap:7px; font-size:12px; text-transform:uppercase; letter-spacing:.07em; color:#86868b; font-weight:700; margin-top:0; margin-right:0; margin-bottom:12px; margin-left:0; }
.prod-filter-h i{ font-size:15px; color:var(--brand-red,#c8102e); }
.prod-sidebar .prod-tabs{ display:flex; flex-direction:column; gap:3px; padding-top:0; padding-right:0; padding-bottom:0; padding-left:0; flex-wrap:nowrap; }
.prod-sidebar .prod-makes{ display:flex; flex-direction:column; gap:3px; padding-top:0; padding-right:0; padding-bottom:0; padding-left:0; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; background:none; border:none; }
.prod-sidebar .prod-tab, .prod-sidebar .prod-make{ width:auto; justify-content:flex-start; gap:10px; padding-top:9px; padding-right:12px; padding-bottom:9px; padding-left:12px; border-radius:100px; border:1px solid rgba(0,0,0,.12); background:#fff; font-size:14px; }
.prod-sidebar .prod-tab i{ font-size:18px; color:#86868b; flex-shrink:0; }
.prod-sidebar .prod-tab .prod-tab-l, .prod-sidebar .prod-make .prod-tab-l{ flex:1; text-align:left; }
.prod-sidebar .prod-tab:hover, .prod-sidebar .prod-make:hover{ background:#f5f5f7; border-color:transparent; color:var(--ink,#1d1d1f); }
.prod-sidebar .prod-tab:hover i{ color:var(--ink,#1d1d1f); }
.prod-sidebar .prod-tab.on, .prod-sidebar .prod-make.on{ background:#fef2f2; border-color:var(--brand-red,#c8102e); color:var(--brand-red,#c8102e); }
.prod-sidebar .prod-tab.on i{ color:var(--brand-red,#c8102e); }
.prod-sidebar .prod-tab.on .prod-tab-n{ background:var(--brand-red,#c8102e); color:#fff; }
.prod-sidebar .prod-make.on .prod-make-n{ background:var(--brand-red,#c8102e); color:#fff; }
.prod-filter-h-dot{ display:flex; align-items:center; gap:8px; }
.prod-filter-h-dot::before{ content:''; width:7px; height:7px; border-radius:50%; background:var(--brand-red,#c8102e); flex:0 0 auto; }
.prod-makes-check .prod-make{ display:flex; align-items:center; gap:10px; cursor:pointer; user-select:none; }
.prod-cb{ flex:0 0 auto; width:16px; height:16px; border:1.5px solid rgba(0,0,0,.28); border-radius:4px; position:relative; transition:border-color .15s, background .15s; }
.prod-makes-check .prod-make.on .prod-cb{ background:var(--brand-red,#c8102e); border-color:var(--brand-red,#c8102e); }
.prod-makes-check .prod-make.on .prod-cb::after{ content:''; position:absolute; left:4px; top:1px; width:4px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.prod-makes-check .prod-make .prod-tab-l{ flex:1; }
.prod-makes-check .prod-make[data-brand="all"] .prod-cb{ display:none; }
.prod-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:0; margin-right:0; margin-bottom:24px; margin-left:0; padding-bottom:18px; border-bottom:1px solid rgba(0,0,0,.08); }
.prod-count{ font-size:14px; color:var(--ink-3,#86868b); margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-weight:550; }
.prod-controls{ display:flex; gap:10px; flex-wrap:wrap; }
.prod-search{ display:flex; align-items:center; gap:8px; background:#f5f5f7; border:1px solid transparent; border-radius:11px; padding-top:0; padding-right:14px; padding-bottom:0; padding-left:14px; transition:border-color .15s, background .15s; }
.prod-search:focus-within{ background:#fff; border-color:var(--brand-red,#c8102e); }
.prod-search i{ color:#86868b; font-size:17px; }
.prod-search input{ border:none; background:none; outline:none; padding-top:11px; padding-right:2px; padding-bottom:11px; padding-left:2px; font-size:14.5px; width:140px; font-family:inherit; }
.prod-select{ border:1px solid rgba(0,0,0,.14); border-radius:11px; padding-top:11px; padding-right:14px; padding-bottom:11px; padding-left:14px; font-size:14px; background:#fff; color:var(--ink,#1d1d1f); font-family:inherit; cursor:pointer; max-width:230px; }
.prod-select:focus{ outline:none; border-color:var(--brand-red,#c8102e); }
.prod-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(258px,1fr)); gap:20px; padding-bottom:64px; }
.prod-card{ background:#fff; border:1px solid rgba(0,0,0,.1); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition:transform .25s, box-shadow .25s, border-color .2s; position:relative; }
.prod-card:hover{ transform:translateY(-4px); box-shadow:0 22px 46px -26px rgba(0,0,0,.3); border-color:var(--brand-red,#c8102e); }
.prod-card-media{ display:block; aspect-ratio:4/3; background:#f7f7f9; padding-top:18px; padding-right:18px; padding-bottom:18px; padding-left:18px; overflow:hidden; border-bottom:1px solid rgba(0,0,0,.05); }
.prod-card-media img{ width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; transition:transform .5s ease; }
.prod-card:hover .prod-card-media img{ transform:scale(1.06); }
.prod-card-body{ padding-top:16px; padding-right:18px; padding-bottom:18px; padding-left:18px; display:flex; flex-direction:column; gap:6px; flex:1; }
.prod-card-cat{ font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:var(--brand-red,#c8102e); }
.prod-card-name{ font-size:16px; font-weight:650; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; line-height:1.3; }
.prod-card-name a{ color:var(--ink,#1d1d1f); text-decoration:none; }
.prod-card-sub{ font-size:13px; line-height:1.45; color:var(--ink-3,#86868b); margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.prod-card-foot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:10px; }
.prod-card-price{ font-size:16px; font-weight:700; color:var(--ink,#1d1d1f); }
.prod-card-price-rfq{ font-size:13px; font-weight:600; color:var(--ink-3,#86868b); }
.prod-card-quote{ font-size:13px; font-weight:600; color:var(--brand-red,#c8102e); text-decoration:none; }
.prod-card-quote:hover{ text-decoration:underline; }
.prod-card-go{ font-size:13px; font-weight:600; color:var(--brand-red,#c8102e); display:inline-flex; align-items:center; gap:4px; }
.prod-card-go i{ transition:transform .15s; }
.prod-card:hover .prod-card-go i{ transform:translateX(3px); }
.prod-empty{ text-align:center; padding-top:70px; padding-right:20px; padding-bottom:90px; padding-left:20px; color:var(--ink-3,#86868b); }
.prod-empty i{ font-size:54px; color:#c7c7cc; }
.prod-empty p{ font-size:17px; margin-top:14px; margin-right:0; margin-bottom:18px; margin-left:0; }
.prod-reset{ background:var(--brand-red,#c8102e); color:#fff; border:none; border-radius:11px; padding-top:12px; padding-right:26px; padding-bottom:12px; padding-left:26px; font-size:15px; font-weight:600; cursor:pointer; font-family:inherit; }
.prod-reset:hover{ background:var(--brand-red-dark,#8c0a1f); }
.pd{ --ink:#1a1a1a;--ink-2: #39434E; --ink-soft:#333; --ink-muted:#666; --line:#dedede; --line-soft:#eee; --surface-soft:#f8f8f8; }
.pd-wrap{ max-width:1320px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:0; padding-right:24px; padding-bottom:0; padding-left:24px; }
.pd-crumb{ display:flex; align-items:center; gap:5px; flex-wrap:wrap; font-size:13px; color:var(--ink-muted); padding-top:16px; padding-right:0; padding-bottom:0; padding-left:0; }
.pd-crumb a{ color:var(--ink-muted); text-decoration:none; }
.pd-crumb a:hover{ color:var(--brand-red,#c8102e); }
.pd-crumb i{ font-size:14px; color:#c7c7cc; }
.pd-crumb span{ color:var(--ink); font-weight:550; }
.pd-hero{ padding-top:26px; padding-right:0; padding-bottom:16px; padding-left:0; }
.pd-hero-grid{ display:grid; grid-template-columns:1fr; gap:30px; align-items:start; }
.pd-main{ aspect-ratio:1/1; background:var(--surface-soft); border:1px solid var(--line-soft); border-radius:18px; display:flex; align-items:center; justify-content:center; padding-top:34px; padding-right:34px; padding-bottom:34px; padding-left:34px; }
.pd-main img{ max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply; }
.pd-thumbs{ display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.pd-thumb{ width:68px; height:68px; border:1px solid var(--line); border-radius:12px; background:#fff; padding-top:6px; padding-right:6px; padding-bottom:6px; padding-left:6px; cursor:pointer; transition:border-color .15s; }
.pd-thumb:hover{ border-color:var(--ink-muted); }
.pd-thumb.on{ border-color:var(--brand-red,#c8102e); border-width:2px; }
.pd-thumb img{ width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.pd-cat{ font-size:12.5px; font-weight:700; color:var(--brand-red,#c8102e); text-transform:uppercase; letter-spacing:.06em; margin-top:0; margin-right:0; margin-bottom:10px; margin-left:0; }
.pd-title{ font-size:clamp(28px,3.6vw,42px); font-weight:700; line-height:1.08; margin-top:0; margin-right:0; margin-bottom:14px; margin-left:0; color:var(--ink); }
.pd-sub{ font-size:16.5px; line-height:1.6; color:var(--ink-muted); margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; }
.pd-quickspecs{ display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:1px; background:var(--line-soft); border:1px solid var(--line-soft); border-radius:12px; overflow:hidden; margin-top:0; margin-right:0; margin-bottom:24px; margin-left:0; }
.pd-qs{ background:#fff; padding-top:13px; padding-right:16px; padding-bottom:13px; padding-left:16px; display:flex; flex-direction:column; gap:3px; }
.pd-qs-k{ font-size:11.5px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-muted); }
.pd-qs-v{ font-size:14.5px; font-weight:600; color:var(--ink); }
.pd-buy{ border:1px solid var(--line); border-radius:16px; padding-top:22px; padding-right:24px; padding-bottom:22px; padding-left:24px; margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; background:#fff; }
.pd-price-row{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
.pd-price{ font-size:30px; font-weight:700; color:var(--ink); }
.pd-price-note{ font-size:13px; color:var(--ink-muted); }
.pd-avail{ display:flex; align-items:center; gap:8px; font-size:14px; color:var(--ink-soft); margin-top:0; margin-right:0; margin-bottom:18px; margin-left:0; }
.pd-avail i{ color:var(--brand-red,#c8102e); font-size:18px; }
.pd-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.pd-btn-red{ display:inline-flex; align-items:center; gap:8px; background:var(--brand-red,#c8102e); color:#fff; padding-top:13px; padding-right:24px; padding-bottom:13px; padding-left:24px; border-radius:11px; text-decoration:none; font-weight:600; font-size:15px; transition:background .15s; }
.pd-btn-red:hover{ background:var(--brand-red-dark,#8c0a1f); }
.pd-btn-line{ display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line); color:var(--ink); padding-top:13px; padding-right:24px; padding-bottom:13px; padding-left:24px; border-radius:11px; text-decoration:none; font-weight:600; font-size:15px; transition:border-color .15s; }
.pd-btn-line:hover{ border-color:var(--ink); }
.pd-trust{ display:flex; gap:8px 22px; flex-wrap:wrap; font-size:13.5px; color:var(--ink-soft); }
.pd-trust span{ display:inline-flex; align-items:center; gap:7px; }
.pd-trust i{ color:#1aa06d; font-size:18px; }
.pd-subnav{ position:sticky; top:60px; z-index:30; background:rgba(255,255,255,.92); backdrop-filter:saturate(180%) blur(12px); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); }
.pd-subnav-inner{ display:flex; gap:6px; overflow-x:auto; }
.pd-subnav a{ white-space:nowrap; padding-top:15px; padding-right:16px; padding-bottom:15px; padding-left:16px; font-size:14px; font-weight:550; color:var(--ink-muted); text-decoration:none; border-bottom:2px solid transparent; transition:color .15s, border-color .15s; }
.pd-subnav a:hover{ color:var(--ink); }
.pd-subnav a.on{ color:var(--brand-red,#c8102e); border-bottom-color:var(--brand-red,#c8102e); }
.pd-section{ padding-top:54px; padding-right:0; padding-bottom:54px; padding-left:0; scroll-margin-top:120px; }
.pd-section-grey{ background:var(--surface-soft); }
.pd-h2{ font-size:clamp(22px,2.6vw,30px); font-weight:680; margin-top:0; margin-right:0; margin-bottom:26px; margin-left:0; color:var(--ink); }
.pd-legacy{ width:100%; border:0; display:block; min-height:300px; overflow:hidden; }
.pd-specs{ width:100%; border-collapse:collapse; max-width:760px; }
.pd-specs th{ text-align:left; font-weight:600; color:var(--ink-muted); font-size:14.5px; padding-top:14px; padding-right:20px; padding-bottom:14px; padding-left:0; width:40% !important; border-bottom:1px solid var(--line); vertical-align:top; }
.pd-specs td{ font-size:14.5px; color:var(--ink); padding-top:14px; padding-right:0; padding-bottom:14px; padding-left:0; border-bottom:1px solid var(--line); }
.pd-box-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:18px; }
.pd-box-item{ background:#fff; border:1px solid var(--line-soft); border-radius:14px; padding-top:18px; padding-right:18px; padding-bottom:18px; padding-left:18px; text-align:center; }
.pd-box-item img{ width:100%; aspect-ratio:1/1; object-fit:contain; mix-blend-mode:multiply; margin-bottom:10px; }
.pd-box-ph{ display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; font-size:38px; color:#c7c7cc; margin-bottom:10px; }
.pd-box-item p{ font-size:13.5px; font-weight:600; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; color:var(--ink-soft); }
.pd-dl-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:12px; }
.pd-dl{ display:flex; align-items:center; gap:14px; padding-top:15px; padding-right:18px; padding-bottom:15px; padding-left:18px; background:#fff; border:1px solid var(--line); border-radius:12px; text-decoration:none; transition:border-color .15s, transform .15s; }
.pd-dl:hover{ border-color:var(--brand-red,#c8102e); transform:translateX(2px); }
.pd-dl-icon{ width:38px; height:38px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:var(--surface-soft); border-radius:9px; color:var(--brand-red,#c8102e); font-size:20px; }
.pd-dl-name{ flex:1; font-size:14.5px; font-weight:550; color:var(--ink); }
.pd-dl-meta{ font-size:12px; color:var(--ink-muted); }
.pd-dl-go{ color:#c7c7cc; font-size:18px; }
.pd-dl:hover .pd-dl-go{ color:var(--brand-red,#c8102e); }
.pd-dl-more{ font-size:14px; color:var(--ink-muted); margin-top:20px; margin-right:0; margin-bottom:0; margin-left:0; }
.pd-dl-more a{ color:var(--brand-red,#c8102e); }
.pd-rel-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:18px; }
.pd-rel-card{ background:#fff; border:1px solid var(--line); border-radius:14px; padding-top:16px; padding-right:16px; padding-bottom:16px; padding-left:16px; text-decoration:none; color:inherit; transition:transform .2s, box-shadow .2s, border-color .2s; }
.pd-rel-card:hover{ transform:translateY(-4px); box-shadow:0 18px 40px -26px rgba(0,0,0,.3); border-color:var(--brand-red,#c8102e); }
.pd-rel-img{ aspect-ratio:4/3; background:var(--surface-soft); border-radius:10px; padding-top:14px; padding-right:14px; padding-bottom:14px; padding-left:14px; margin-bottom:12px; overflow:hidden; }
.pd-rel-img img{ width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; transition:transform .4s; }
.pd-rel-card:hover .pd-rel-img img{ transform:scale(1.05); }
.pd-rel-card h3{ font-size:15px; font-weight:650; margin-top:0; margin-right:0; margin-bottom:5px; margin-left:0; color:var(--ink); }
.pd-rel-price{ font-size:14px; color:var(--ink); font-weight:700; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; }
.pd-rel-rfq{ color:var(--ink-muted); font-weight:600; font-size:13px; }
.search-box{ display:flex; align-items:center; gap:8px; max-width:600px; margin-top:24px; margin-right:auto; margin-bottom:0; margin-left:auto; background:#fff; border:1px solid #dedede; border-radius:100px; padding-top:6px; padding-right:6px; padding-bottom:6px; padding-left:20px; box-shadow:0 10px 30px -18px rgba(0,0,0,.25); }
.search-box:focus-within{ border-color:var(--brand-red,#c8102e); }
.search-box i{ color:#878787; font-size:19px; }
.search-box input{ flex:1; border:none; outline:none; font-size:16px; padding-top:12px; padding-right:4px; padding-bottom:12px; padding-left:4px; background:none; font-family:inherit; }
.search-box button{ background:var(--brand-red,#c8102e); color:#fff; border:none; border-radius:100px; padding-top:12px; padding-right:26px; padding-bottom:12px; padding-left:26px; font-size:15px; font-weight:600; cursor:pointer; font-family:inherit; transition:background .15s; }
.search-box button:hover{ background:var(--brand-red-dark,#8c0a1f); }
.search-count{ font-size:14px; color:var(--ink-3,#86868b); margin-top:30px; margin-right:0; margin-bottom:4px; margin-left:0; }
.search-count strong{ color:var(--ink,#1d1d1f); }
.search-hint{ display:flex; align-items:center; gap:9px; justify-content:center; color:#666; font-size:15px; padding-top:50px; padding-right:0; padding-bottom:70px; padding-left:0; }
.search-hint i{ color:var(--brand-red,#c8102e); font-size:19px; }
.search-sec{ padding-top:40px; padding-right:0; padding-bottom:0; padding-left:0; }
.search-sec:last-child{ padding-bottom:70px; }
.search-sec-head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; }
.search-sec-head h2{ font-size:24px; font-weight:680; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; color:#1a1a1a; display:flex; align-items:center; gap:10px; }
.search-sec-head h2 span{ font-size:13px; font-weight:700; color:#fff; background:var(--brand-red,#c8102e); border-radius:100px; padding-top:2px; padding-right:11px; padding-bottom:2px; padding-left:11px; }
.search-sec-head a{ font-size:14px; font-weight:600; color:var(--brand-red,#c8102e); text-decoration:none; white-space:nowrap; }
.search-articles{ display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
.search-article{ display:flex; align-items:center; gap:14px; padding-top:15px; padding-right:18px; padding-bottom:15px; padding-left:18px; border:1px solid #dedede; border-radius:12px; background:#fff; text-decoration:none; transition:border-color .15s, transform .15s; }
.search-article:hover{ border-color:var(--brand-red,#c8102e); transform:translateX(2px); }
.search-article-ico{ width:40px; height:40px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:#f8f8f8; border-radius:10px; color:var(--brand-red,#c8102e); font-size:19px; }
.search-article-body{ flex:1; display:flex; flex-direction:column; gap:3px; min-width:0; }
.search-article-title{ font-size:15px; font-weight:600; color:#1a1a1a; }
.search-article-desc{ font-size:13px; color:#878787; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.search-article-go{ color:#c7c7cc; font-size:18px; flex-shrink:0; }
.search-article:hover .search-article-go{ color:var(--brand-red,#c8102e); }
.pd-stars{ display:inline-flex; gap:1px; color:#f5a623; font-size:16px; line-height:1;letter-spacing:1px;}
.pd-stars .ti-star{ color:#dcdce0; }
.pd-rating{ display:inline-flex; align-items:center; gap:8px; text-decoration:none; margin-top:0; margin-right:0; margin-bottom:14px; margin-left:0; }
.pd-rating-val{ font-weight:700; color:#1a1a1a; font-size:14px; }
.pd-rating-n{ font-size:13px; color:#878787; }
.pd-coverage{ display:inline-flex; align-items:center; gap:8px; margin-top:12px; font-size:14px; font-weight:600; color:var(--brand-red,#c8102e); text-decoration:none; }
.pd-coverage:hover{ text-decoration:underline; }
.pd-coverage .ti-external-link{ font-size:14px; opacity:.7; }
.pd-rev-summary{ display:flex; align-items:center; gap:22px; margin-bottom:26px; }
.pd-rev-avg{ font-size:46px; font-weight:800; color:#1a1a1a; line-height:1; }
.pd-rev-avg span{ font-size:20px; color:#878787; font-weight:600; }
.pd-stars-lg{ font-size:22px; }
.pd-rev-count{ margin-top:6px; margin-right:0; margin-bottom:0; margin-left:0; font-size:14px; color:#666; }
.pd-rev-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:16px; }
.pd-rev{ background:#fff; border:1px solid var(--line,#dedede); border-radius:14px; padding-top:18px; padding-right:20px; padding-bottom:18px; padding-left:20px; }
.pd-rev-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.pd-rev-date{ font-size:12.5px; color:#a0a0a6; }
.pd-rev-body{ font-size:14.5px; line-height:1.6; color:#333; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; }
.pd-rev-reply{ margin-top:12px; padding-top:12px; padding-right:14px; padding-bottom:12px; padding-left:14px; background:#f8f8f8; border-radius:10px; font-size:13.5px; line-height:1.55; color:#444; }
.pd-rev-reply strong{ color:var(--brand-red,#c8102e); display:inline-flex; align-items:center; gap:5px; margin-right:6px; }
.pd-quote{ display:grid; grid-template-columns:1fr; gap:28px; align-items:start; }
.pd-quote-intro .pd-h2{ margin-bottom:14px; }
.pd-quote-intro p{ font-size:15.5px; line-height:1.6; color:#555; margin-top:0; margin-right:0; margin-bottom:20px; margin-left:0; }
.pd-quote-trust{ list-style:none; padding-top:0; padding-right:0; padding-bottom:0; padding-left:0; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; display:grid; gap:12px; }
.pd-quote-trust li{ display:flex; align-items:center; gap:10px; font-size:14.5px; color:#333; }
.pd-quote-trust i{ color:#1aa06d; font-size:19px; }
.pd-quote-form{ background:#fff; border:1px solid var(--line,#dedede); border-radius:16px; padding-top:24px; padding-right:24px; padding-bottom:24px; padding-left:24px; }
.pd-mcta{ display:flex; padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px)); }
.prod-compare{ position:absolute; top:10px; left:10px; z-index:3; display:inline-flex; align-items:center; gap:5px; background:rgba(255,255,255,.94); border:1px solid #e2e2e6; border-radius:20px; padding-top:4px; padding-right:10px; padding-bottom:4px; padding-left:8px; font-size:11.5px; font-weight:600; color:#57575c; cursor:pointer; box-shadow:0 2px 8px -3px rgba(0,0,0,.25); opacity:0; transition:opacity .15s; }
.prod-card:hover .prod-compare,.prod-card.is-comparing .prod-compare{ opacity:1; }
.prod-compare input{ width:14px; height:14px; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; accent-color:var(--brand-red,#c8102e); }
.prod-compare i{ font-size:14px; }
.prod-card.is-comparing{ outline:2px solid var(--brand-red,#c8102e); outline-offset:-2px; border-radius:14px; }
.prod-card.is-comparing .prod-compare{ background:var(--brand-red,#c8102e); color:#fff; border-color:var(--brand-red,#c8102e); }
.cmp-tray{ position:fixed; left:0; right:0; bottom:0; z-index:60; background:#101014; color:#fff; box-shadow:0 -10px 30px -12px rgba(0,0,0,.5); }
.cmp-tray-inner{ max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; display:flex; align-items:center; gap:16px; padding-top:12px; padding-right:24px; padding-bottom:12px; padding-left:24px; flex-wrap:wrap; }
.cmp-tray-items{ display:flex; gap:8px; flex:1; flex-wrap:wrap; min-width:0; }
.cmp-chip{ display:inline-flex; align-items:center; gap:7px; background:#22232a; border-radius:20px; padding-top:4px; padding-right:6px; padding-bottom:4px; padding-left:4px; font-size:12.5px; }
.cmp-chip img{ width:26px; height:26px; object-fit:contain; background:#fff; border-radius:50%; }
.cmp-chip button{ background:none; border:0; color:#b8b8be; font-size:16px; line-height:1; cursor:pointer; padding-top:0; padding-right:4px; padding-bottom:0; padding-left:4px; }
.cmp-chip button:hover{ color:#fff; }
.cmp-tray-actions{ display:flex; gap:10px; align-items:center; }
.cmp-clear{ background:none; border:1px solid #3a3b44; color:#cfcfd6; border-radius:9px; padding-top:9px; padding-right:14px; padding-bottom:9px; padding-left:14px; font-size:13px; cursor:pointer; }
.cmp-clear:hover{ border-color:#5a5b66; }
.cmp-open{ background:var(--brand-red,#c8102e); border:0; color:#fff; border-radius:9px; padding-top:9px; padding-right:20px; padding-bottom:9px; padding-left:20px; font-size:13.5px; font-weight:700; cursor:pointer; }
.cmp-open:disabled{ opacity:.5; cursor:not-allowed; }
.cmp-tray.cmp-limit{ animation:cmpShake .4s; }
.cmp-tray.cmp-limit .cmp-tray-inner::after{ content:"Compare up to 4 tools at a time"; color:#ff9db0; font-size:12.5px; }
.cmp-modal{ position:fixed; top:0; right:0; bottom:0; left:0; z-index:80; display:flex; align-items:center; justify-content:center; padding-top:24px; padding-right:24px; padding-bottom:24px; padding-left:24px; }
.cmp-scrim{ position:absolute; top:0; right:0; bottom:0; left:0; background:rgba(10,10,12,.6); backdrop-filter:blur(2px); }
.cmp-panel{ position:relative; background:#fff; border-radius:18px; width:min(980px,100%); max-height:88vh; display:flex; flex-direction:column; box-shadow:0 40px 90px -30px rgba(0,0,0,.5); }
.cmp-panel-head{ display:flex; align-items:center; justify-content:space-between; padding-top:18px; padding-right:24px; padding-bottom:18px; padding-left:24px; border-bottom:1px solid #ececef; }
.cmp-panel-head h2{ margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-size:19px; }
.cmp-close{ background:#f2f2f4; border:0; width:34px; height:34px; border-radius:50%; cursor:pointer; font-size:18px; color:#57575c; display:inline-flex; align-items:center; justify-content:center; }
.cmp-close:hover{ background:#e6e6ea; }
.cmp-table-wrap{ overflow:auto; padding-top:6px; padding-right:24px; padding-bottom:24px; padding-left:24px; }
.cmp-grid{ display:grid; gap:0; min-width:520px; }
.cmp-rowlabel{ font-size:12px; font-weight:700; color:#86868b; text-transform:uppercase; letter-spacing:.03em; padding-top:14px; padding-right:12px; padding-bottom:14px; padding-left:12px; border-bottom:1px solid #f0f0f2; display:flex; align-items:center; }
.cmp-cell{ padding-top:14px; padding-right:12px; padding-bottom:14px; padding-left:12px; border-bottom:1px solid #f0f0f2; border-left:1px solid #f0f0f2; font-size:13.5px; color:#3a3a40; line-height:1.5; }
.cmp-c-media{ display:block; }
.cmp-c-media img{ width:100%; height:120px; object-fit:contain; }
.cmp-c-name{ font-weight:700; font-size:15px; color:#1d1d1f; }
.cmp-c-btn{ display:inline-block; background:#1d1d1f; color:#fff; border-radius:9px; padding-top:8px; padding-right:14px; padding-bottom:8px; padding-left:14px; font-size:12.5px; font-weight:600; margin-top:2px; margin-right:6px; margin-bottom:2px; margin-left:0; }
.cmp-c-quote{ display:inline-block; color:var(--brand-red,#c8102e); font-weight:700; font-size:12.5px; padding-top:8px; padding-right:0; padding-bottom:8px; padding-left:0; }
.cat2{ --edge:#e7e7ec; background:#fff; }
.cat2-wrap{ max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:0; padding-right:24px; padding-bottom:0; padding-left:24px; }
.cat2-hero{ position:relative; background:#0c0c10; color:#fff; overflow:hidden; padding-top:54px; padding-right:0; padding-bottom:60px; padding-left:0; }
.cat2-hero-bg{ position:absolute; top:0; right:0; bottom:0; left:0; background:radial-gradient(1100px 380px at 88% -10%, rgba(200,16,46,.4), transparent 60%),
   linear-gradient(180deg,#151519,#0a0a0d); }
.cat2-hero-bg::after{ content:""; position:absolute; top:0; right:0; bottom:0; left:0; opacity:.28; background-image:linear-gradient(#ffffff14 1px,transparent 1px),linear-gradient(90deg,#ffffff14 1px,transparent 1px); background-size:44px 44px; -webkit-mask-image:linear-gradient(180deg,#000,transparent 78%); }
.cat2-hero .cat2-wrap{ position:relative; }
.cat2-eyebrow{ font:600 12px/1 ui-monospace,Consolas,monospace; letter-spacing:.18em; text-transform:uppercase; color:#67676b; display:flex; align-items:center; gap:9px; margin-top:0; margin-right:0; margin-bottom:18px; margin-left:0; }
.cat2-dot{ width:8px; height:8px; border-radius:50%; background:#2ec26b; box-shadow:0 0 0 4px rgba(46,194,107,.18); }
.cat2-h1{ font-size:clamp(34px,5.2vw,58px); line-height:1.03; letter-spacing:-.02em; margin-top:0; margin-right:0; margin-bottom:16px; margin-left:0; font-weight:800; }
.cat2-lead{ max-width:600px; color:#c3c3cb; font-size:16px; line-height:1.6; margin-top:0; margin-right:0; margin-bottom:26px; margin-left:0; }
.cat2-stats{ display:flex; flex-wrap:wrap; gap:12px 26px; align-items:center; }
.cat2-stats span{ font-size:13px; color:#67676b; }
.cat2-stats b{ color:#fff; font-size:19px; font-weight:800; margin-right:5px; }
.cat2-hero-cta{ display:inline-flex; align-items:center; gap:7px; background:#c8102e; color:#fff; font-weight:700; font-size:13.5px; padding-top:10px; padding-right:18px; padding-bottom:10px; padding-left:18px; border-radius:24px; }
.cat2-hero-cta:hover{ background:#a50d26; }
.cat2-rail{ position:sticky; top:0; z-index:30; background:rgba(255,255,255,.9); backdrop-filter:saturate(1.6) blur(12px); border-bottom:1px solid var(--edge); }
.cat2-rail-inner{ display:flex; align-items:center; gap:16px; padding-top:10px; padding-bottom:10px; }
.cat2-pills{ display:flex; gap:7px; overflow-x:auto; flex:1; scrollbar-width:none; padding-bottom:2px; }
.cat2-pills::-webkit-scrollbar{ display:none; }
.cat2-pill{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; border:1px solid var(--edge); background:#fff; color:#3a3a40; font-size:13px; font-weight:600; padding-top:8px; padding-right:13px; padding-bottom:8px; padding-left:13px; border-radius:22px; cursor:pointer; }
.cat2-pill i{ font-size:15px; color:#67676b; }
.cat2-pill em{ font-style:normal; font-size:11px; color:#67676b; background:#f2f2f5; padding-top:1px; padding-right:6px; padding-bottom:1px; padding-left:6px; border-radius:10px; }
.cat2-pill:hover{ border-color:#c8102e; color:#c8102e; }
.cat2-pill.on{ background:#151519; border-color:#151519; color:#fff; }
.cat2-pill.on i,.cat2-pill.on em{ color:#fff; background:rgba(255,255,255,.16); }
.cat2-tools{ display:flex; align-items:center; gap:9px; flex:none; }
.cat2-search{ position:relative; }
.cat2-search i{ position:absolute; left:11px; top:50%; transform:translateY(-50%); color:#67676b; font-size:15px; }
.cat2-search input{ width:190px; padding-top:9px; padding-right:12px; padding-bottom:9px; padding-left:32px; border:1px solid var(--edge); border-radius:22px; font-size:13.5px; }
.cat2-search input:focus{ outline:none; border-color:#c8102e; box-shadow:0 0 0 3px rgba(200,16,46,.1); }
.cat2-filter-btn{ display:inline-flex; align-items:center; gap:6px; border:1px solid var(--edge); background:#fff; color:#3a3a40; font-size:13px; font-weight:600; padding-top:9px; padding-right:14px; padding-bottom:9px; padding-left:14px; border-radius:22px; cursor:pointer; }
.cat2-filter-btn.on,.cat2-filter-btn:hover{ border-color:#c8102e; color:#c8102e; }
.cat2-brands{ border-top:1px solid var(--edge); }
.cat2-brands-inner{ display:flex; flex-wrap:wrap; gap:7px; padding-top:11px; padding-bottom:11px; }
.cat2-brand{ border:1px solid var(--edge); background:#fff; color:#3a3a40; font-size:12.5px; font-weight:600; padding-top:6px; padding-right:12px; padding-bottom:6px; padding-left:12px; border-radius:20px; cursor:pointer; }
.cat2-brand em{ font-style:normal; color:#67676b; font-size:11px; margin-left:3px; }
.cat2-brand:hover{ border-color:#c8102e; color:#c8102e; }
.cat2-brand.on{ background:#c8102e; border-color:#c8102e; color:#fff; }
.cat2-brand.on em{ color:rgba(255,255,255,.75); }
.cat2-body{ padding-top:34px; padding-bottom:70px; }
.cat2-sec{ margin-top:0; margin-right:0; margin-bottom:46px; margin-left:0; scroll-margin-top:150px; }
.cat2-sec-head{ display:flex; align-items:flex-end; gap:10px; margin-top:0; margin-right:0; margin-bottom:18px; margin-left:0; }
.cat2-idx{ font:800 40px/0.8 ui-monospace,Consolas,monospace; color:#ececef; letter-spacing:-.03em; flex:none; }
.cat2-sec-title{ flex:1; min-width:0; }
.cat2-sec-title h2{ margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-size:23px; letter-spacing:-.01em; display:flex; align-items:center; gap:10px; }
.cat2-sec-title h2 i{ color:#c8102e; font-size:22px; }
.cat2-blurb{ margin-top:5px; margin-right:0; margin-bottom:0; margin-left:0; font-size:13.5px; color:#67676b; line-height:1.5; max-width:640px; }
.cat2-sec-n{ font-size:12.5px; color:#67676b; white-space:nowrap; padding-bottom:3px; }
.cat2-arrows{ display:flex; gap:7px; flex:none; padding-bottom:2px; }
.cat2-arrow{ width:34px; height:34px; border:1px solid var(--edge); background:#fff; border-radius:50%; cursor:pointer; color:#57575c; display:inline-flex; align-items:center; justify-content:center; }
.cat2-arrow:hover{ border-color:#151519; color:#151519; }
.cat2-arrow i{ font-size:18px; }
.cat2-shelf{ display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x proximity; padding-top:4px; padding-right:2px; padding-bottom:14px; padding-left:2px; scrollbar-width:thin; }
.cat2-shelf::-webkit-scrollbar{ height:8px; }
.cat2-shelf::-webkit-scrollbar-thumb{ background:#dedee3; border-radius:8px; }
.cat2-shelf .prod-card{ flex:0 0 258px; width:258px; scroll-snap-align:start; background:#fff; border:1px solid var(--edge); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition:box-shadow .15s,border-color .15s,transform .15s; }
.cat2-shelf .prod-card:hover{ border-color:#d7d7dd; box-shadow:0 18px 40px -24px rgba(0,0,0,.4); transform:translateY(-2px); }
.cat2-body.is-filtering .cat2-shelf{ flex-wrap:wrap; overflow:visible; }
.cat2-body.is-filtering .cat2-arrows{ display:none; }
.cat2-empty{ text-align:center; color:#67676b; padding-top:60px; padding-right:20px; padding-bottom:60px; padding-left:20px; }
.cat2-empty i{ font-size:36px; color:#c8c8ce; }
.cat2-empty p{ margin-top:10px; margin-right:0; margin-bottom:14px; margin-left:0; }
.cat2-reset{ border:1px solid var(--edge); background:#fff; padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px; border-radius:22px; font-weight:600; cursor:pointer; }
.cat2-reset:hover{ border-color:#c8102e; color:#c8102e; }
.cmp-modal[hidden]{ display:none; }
.cmp-tray[hidden]{ display:none; }
.pcat{ background:#f7f7f9; }
.pcat-hero{ position:relative; background:#0c0c10; color:#fff; overflow:hidden; padding-top:48px; padding-right:0; padding-bottom:40px; padding-left:0; }
.pcat-hero-bg{ position:absolute; top:0; right:0; bottom:0; left:0; background:radial-gradient(1000px 340px at 86% -20%, rgba(200,16,46,.42), transparent 60%),
   linear-gradient(180deg,#16161b,#0a0a0d); }
.pcat-hero-bg::after{ content:""; position:absolute; top:0; right:0; bottom:0; left:0; opacity:.25; background-image:linear-gradient(#ffffff12 1px,transparent 1px),linear-gradient(90deg,#ffffff12 1px,transparent 1px); background-size:42px 42px; -webkit-mask-image:linear-gradient(180deg,#000,transparent 82%); }
.pcat-hero-inner{ position:relative; max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:0; padding-right:24px; padding-bottom:0; padding-left:24px; }
.pcat-eyebrow{ font:600 12px/1 ui-monospace,Consolas,monospace; letter-spacing:.16em; text-transform:uppercase; color:#67676b; display:flex; align-items:center; gap:9px; margin-top:0; margin-right:0; margin-bottom:14px; margin-left:0; }
.pcat-dot{ width:8px; height:8px; border-radius:50%; background:#2ec26b; box-shadow:0 0 0 4px rgba(46,194,107,.18); }
.pcat-h1{ font-size:clamp(30px,4.4vw,46px); line-height:1.05; letter-spacing:-.02em; margin-top:0; margin-right:0; margin-bottom:12px; margin-left:0; font-weight:800; }
.pcat-lead{ max-width:620px; color:#c3c3cb; font-size:15.5px; line-height:1.6; margin-top:0; margin-right:0; margin-bottom:26px; margin-left:0; }
.pcat-scenarios{ display:flex; gap:12px; flex-wrap:wrap; }
.pcat-scn{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; min-width:132px; text-align:left; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.12); border-radius:13px; padding-top:13px; padding-right:15px; padding-bottom:13px; padding-left:15px; color:#fff; cursor:pointer; transition:border-color .15s,background .15s; }
.pcat-scn:hover{ border-color:#c8102e; background:rgba(200,16,46,.12); }
.pcat-scn i{ font-size:20px; color:#ff6076; margin-bottom:5px; }
.pcat-scn b{ font-size:14px; font-weight:700; }
.pcat-scn span{ font-size:11.5px; color:#67676b; }
.pcat-scn-cta{ background:#c8102e; border-color:#c8102e; }
.pcat-scn-cta:hover{ background:#a50d26; }
.pcat-scn-cta i{ color:#fff; }
.pcat-scn-cta span{ color:rgba(255,255,255,.8); }
.pcat-shell{ max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:26px; padding-right:24px; padding-bottom:70px; padding-left:24px; display:grid; grid-template-columns:1fr; gap:30px; align-items:start; }
.pcat-side{ position:fixed; top:0; background:#fff; border:1px solid #e7e7ec; border-radius:0; padding-top:6px; padding-right:16px; padding-bottom:14px; padding-left:16px; max-height:none; overflow:auto; }
.pcat-side-head{ display:flex; align-items:center; justify-content:space-between; padding-top:12px; padding-right:0; padding-bottom:8px; padding-left:0; border-bottom:1px solid #f0f0f2; position:sticky; top:0; background:#fff; }
.pcat-side-head span{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#86868b; }
.pcat-clear{ font-size:12px; color:#c8102e; background:none; border:0; cursor:pointer; font-weight:600; }
.pcat-fgroup{ padding-top:12px; padding-right:0; padding-bottom:12px; padding-left:0; border-bottom:1px solid #f4f4f6; }
.pcat-fgroup:last-child{ border-bottom:none; }
.pcat-fgroup h3{ margin-top:0; margin-right:0; margin-bottom:8px; margin-left:0; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#67676b; }
.pcat-facet{ display:flex; align-items:center; gap:9px; padding-top:5px; padding-right:0; padding-bottom:5px; padding-left:0; font-size:13px; color:#3a3a40; cursor:pointer; }
.pcat-facet input{ width:15px; height:15px; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; accent-color:#c8102e; flex:none; }
.pcat-facet span{ flex:1; min-width:0; line-height:1.3; }
.pcat-facet em{ font-style:normal; font-size:11.5px; color:#a7a7ad; }
.pcat-facet:hover span{ color:#c8102e; }
.pcat-main{ min-width:0; }
.pcat-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; flex-wrap:wrap; }
.pcat-count{ font-size:14px; color:#57575c; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; }
.pcat-count b{ color:#1d1d1f; font-size:16px; }
.pcat-toolbar-r{ display:flex; gap:10px; align-items:center; }
.pcat-search{ position:relative; }
.pcat-search i{ position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#67676b; font-size:15px; }
.pcat-search input{ width:240px; max-width:52vw; padding-top:10px; padding-right:14px; padding-bottom:10px; padding-left:34px; border:1px solid #e0e0e5; border-radius:22px; font-size:13.5px; background:#fff; }
.pcat-search input:focus{ outline:none; border-color:#c8102e; box-shadow:0 0 0 3px rgba(200,16,46,.1); }
.pcat-side-toggle{ display:inline-flex; align-items:center; gap:6px; border:1px solid #e0e0e5; background:#fff; border-radius:22px; padding-top:10px; padding-right:15px; padding-bottom:10px; padding-left:15px; font-size:13.5px; font-weight:600; cursor:pointer; }
.pcat-tier{ margin-top:0; margin-right:0; margin-bottom:40px; margin-left:0; }
.pcat-tier-head{ margin-top:0; margin-right:0; margin-bottom:16px; margin-left:0; padding-bottom:12px; border-bottom:2px solid #ececef; }
.pcat-tier-eyebrow{ margin-top:0; margin-right:0; margin-bottom:4px; margin-left:0; font:600 11.5px/1 ui-monospace,Consolas,monospace; letter-spacing:.12em; text-transform:uppercase; color:#c8102e; }
.pcat-tier-eyebrow span{ color:#67676b; }
.pcat-tier-head h2{ margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-size:22px; letter-spacing:-.01em; display:flex; align-items:center; gap:10px; }
.pcat-tier-head h2 i{ color:#c8102e; font-size:21px; }
.pcat-tier-n{ font-size:12px; font-weight:600; color:#67676b; background:#f1f1f4; padding-top:3px; padding-right:10px; padding-bottom:3px; padding-left:10px; border-radius:20px; letter-spacing:0; }
.pcat-tier-blurb{ margin-top:8px; margin-right:0; margin-bottom:0; margin-left:0; font-size:13.5px; color:#67676b; line-height:1.5; max-width:760px; }
.pcat-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pcat-grid .prod-card{ position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid #e7e7ec; border-radius:15px; overflow:hidden; transition:box-shadow .15s,border-color .15s,transform .15s; }
.pcat-grid .prod-card:hover{ border-color:#d7d7dd; box-shadow:0 18px 40px -26px rgba(0,0,0,.4); transform:translateY(-2px); }
.pcat-grid .prod-card-media{ display:block; aspect-ratio:auto; background:linear-gradient(180deg,#fafafb,#f2f2f5); padding-top:12px; padding-right:12px; padding-bottom:12px; padding-left:12px; }
.pcat-grid .prod-card-media img{ width:100%; height:104px; object-fit:contain; }
.pcat-grid .prod-card-body{ padding-top:13px; padding-right:15px; padding-bottom:15px; padding-left:15px; display:flex; flex-direction:column; flex:1; }
.pcat-grid .prod-card-name{ font-size:15.5px; margin-top:0; margin-right:0; margin-bottom:6px; margin-left:0; line-height:1.25; font-weight:700; }
.pcat-grid .prod-card-sub{ margin-top:0; margin-right:0; margin-bottom:12px; margin-left:0; font-size:12.5px; color:#67676b; line-height:1.5; }
.pcat-grid .prod-card-foot{ gap:8px; margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding-top:10px; border-top:1px solid #f2f2f5; }
.pc-tag{ align-self:flex-start; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#8a5a10; background:#fdf3e2; padding-top:3px; padding-right:8px; padding-bottom:3px; padding-left:8px; border-radius:6px; margin-bottom:8px; }
.pcat-grid .prod-card-name a{ color:#1d1d1f; }
.pcat-grid .prod-card-name a:hover{ color:#c8102e; }
.pcat-grid .prod-card-quote{ font-size:12.5px; font-weight:600; color:#c8102e; }
.pcat-grid .prod-card-go{ font-size:12.5px; font-weight:600; color:#1d1d1f; display:inline-flex; align-items:center; gap:4px; }
.pcat-grid .prod-card-go:hover{ color:#c8102e; }
.pcat-empty{ text-align:center; color:#67676b; padding-top:60px; padding-right:20px; padding-bottom:60px; padding-left:20px; }
.pcat-empty i{ font-size:36px; color:#c8c8ce; }
.pcat-empty p{ margin-top:10px; margin-right:0; margin-bottom:14px; margin-left:0; }
.pcat-reset{ border:1px solid #e0e0e5; background:#fff; padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px; border-radius:22px; font-weight:600; cursor:pointer; }
.pex{ background:#f7f7f9; }
.pex-hero{ position:relative; background:#0c0c10; color:#fff; overflow:hidden; padding-top:40px; padding-right:0; padding-bottom:34px; padding-left:0; }
.pex-hero-bg{ position:absolute; top:0; right:0; bottom:0; left:0; background:radial-gradient(900px 300px at 88% -30%, rgba(200,16,46,.4), transparent 60%),
   linear-gradient(180deg,#16161b,#0a0a0d); }
.pex-hero-bg::after{ content:""; position:absolute; top:0; right:0; bottom:0; left:0; opacity:.22; background-image:linear-gradient(#ffffff12 1px,transparent 1px),linear-gradient(90deg,#ffffff12 1px,transparent 1px); background-size:42px 42px; -webkit-mask-image:linear-gradient(180deg,#000,transparent 82%); }
.pex-hero-inner{ position:relative; max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:0; padding-right:24px; padding-bottom:0; padding-left:24px; }
.pex-eyebrow{ font:600 12px/1 ui-monospace,Consolas,monospace; letter-spacing:.16em; text-transform:uppercase; color:#67676b; display:flex; align-items:center; gap:9px; margin-top:0; margin-right:0; margin-bottom:12px; margin-left:0; }
.pex-dot{ width:8px; height:8px; border-radius:50%; background:#2ec26b; box-shadow:0 0 0 4px rgba(46,194,107,.18); }
.pex-h1{ font-size:clamp(28px,4vw,42px); line-height:1.05; letter-spacing:-.02em; margin-top:0; margin-right:0; margin-bottom:10px; margin-left:0; font-weight:800; }
.pex-lead{ max-width:640px; color:#c3c3cb; font-size:15px; line-height:1.6; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; }
.pex-shell{ max-width:1240px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:24px; padding-right:24px; padding-bottom:70px; padding-left:24px; display:grid; grid-template-columns:1fr; gap:30px; align-items:start; }
.pex-side{ position:fixed; top:0; background:#fff; border:1px solid #e7e7ec; border-radius:0; padding-top:12px; padding-right:12px; padding-bottom:12px; padding-left:12px; max-height:none; overflow:auto; }
.pex-side-h{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:#67676b; margin-top:6px; margin-right:8px; margin-bottom:10px; margin-left:8px; }
.pex-cat{ width:100%; display:flex; align-items:center; gap:9px; text-align:left; background:none; border:0; border-radius:10px; padding-top:10px; padding-right:11px; padding-bottom:10px; padding-left:11px; font-size:13.5px; font-weight:600; color:#3a3a40; cursor:pointer; line-height:1.3; }
.pex-cat-i{ font-size:17px; color:#a7a7ad; flex:none; }
.pex-cat span{ flex:1; min-width:0; }
.pex-cat em{ font-style:normal; font-size:11.5px; color:#a7a7ad; background:#f2f2f5; padding-top:1px; padding-right:7px; padding-bottom:1px; padding-left:7px; border-radius:10px; }
.pex-cat-x{ font-size:15px; color:#c8c8ce; flex:none; opacity:0; }
.pex-cat:hover{ background:#f6f6f8; color:#c8102e; }
.pex-cat:hover .pex-cat-x{ opacity:1; }
.pex-cat.on{ background:#151519; color:#fff; }
.pex-cat.on .pex-cat-i,.pex-cat.on .pex-cat-x{ color:#fff; opacity:1; }
.pex-cat.on em{ color:#fff; background:rgba(255,255,255,.16); }
.pex-main{ min-width:0; }
.pex-toolbar{ display:flex; align-items:center; gap:14px; margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; flex-wrap:wrap; }
.pex-count{ font-size:14px; color:#57575c; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; }
.pex-count b{ color:#1d1d1f; font-size:16px; }
.pex-search{ position:relative; margin-left:0; }
.pex-search i{ position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#67676b; font-size:15px; }
.pex-search input{ width:250px; max-width:52vw; padding-top:10px; padding-right:14px; padding-bottom:10px; padding-left:34px; border:1px solid #e0e0e5; border-radius:22px; font-size:13.5px; background:#fff; }
.pex-search input:focus{ outline:none; border-color:#c8102e; box-shadow:0 0 0 3px rgba(200,16,46,.1); }
.pex-side-toggle{ display:inline-flex; align-items:center; gap:6px; border:1px solid #e0e0e5; background:#fff; border-radius:22px; padding-top:10px; padding-right:15px; padding-bottom:10px; padding-left:15px; font-size:13.5px; font-weight:600; cursor:pointer; }
.pex-panel{ margin-top:0; margin-right:0; margin-bottom:38px; margin-left:0; }
.pex-phead{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-top:0; margin-right:0; margin-bottom:16px; margin-left:0; padding-bottom:12px; border-bottom:2px solid #ececef; }
.pex-phead h2{ margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-size:21px; letter-spacing:-.01em; display:flex; align-items:center; gap:10px; }
.pex-phead h2 i{ color:#c8102e; font-size:20px; }
.pex-pblurb{ margin-top:7px; margin-right:0; margin-bottom:0; margin-left:0; font-size:13px; color:#67676b; line-height:1.5; max-width:720px; }
.pex-pn{ font-size:12px; font-weight:600; color:#67676b; background:#f1f1f4; padding-top:4px; padding-right:11px; padding-bottom:4px; padding-left:11px; border-radius:20px; white-space:nowrap; flex:none; margin-top:3px; }
.pex-brands{ display:flex; flex-wrap:wrap; gap:7px; margin-top:0; margin-right:0; margin-bottom:18px; margin-left:0; }
.pex-brand{ border:1px solid #e0e0e5; background:#fff; color:#3a3a40; font-size:12.5px; font-weight:600; padding-top:6px; padding-right:12px; padding-bottom:6px; padding-left:12px; border-radius:20px; cursor:pointer; }
.pex-brand em{ font-style:normal; color:#a7a7ad; font-size:11px; margin-left:3px; }
.pex-brand:hover{ border-color:#c8102e; color:#c8102e; }
.pex-brand.on{ background:#c8102e; border-color:#c8102e; color:#fff; }
.pex-brand.on em{ color:rgba(255,255,255,.75); }
.pex-empty{ text-align:center; color:#67676b; padding-top:60px; padding-right:20px; padding-bottom:60px; padding-left:20px; }
.pex-empty i{ font-size:36px; color:#c8c8ce; }
.pex-empty p{ margin-top:10px; margin-right:0; margin-bottom:14px; margin-left:0; }
.pex-reset{ border:1px solid #e0e0e5; background:#fff; padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px; border-radius:22px; font-weight:600; cursor:pointer; }
.cmp-na{ color:#c0c0c6; }
.cmp-yes{ display:inline-flex; align-items:center; gap:4px; color:#1f9d55; font-weight:600; }
.cmp-no{ display:inline-flex; align-items:center; gap:4px; color:#a7a7ad; }
.cmp-yes i,.cmp-no i{ font-size:15px; }
.cmp-fns{ display:flex; flex-wrap:wrap; gap:5px; }
.cmp-fn{ font-size:11.5px; background:#f1f1f4; color:#3a3a40; padding-top:2px; padding-right:8px; padding-bottom:2px; padding-left:8px; border-radius:6px; line-height:1.5; }
.cmp-group{ font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#c8102e; background:linear-gradient(90deg,#fdf0f2,#fff); padding-top:11px; padding-right:12px; padding-bottom:11px; padding-left:12px; border-top:1px solid #f0d5da; border-bottom:1px solid #f3e2e5; margin-top:2px; }
.cmp-cell.cmp-diff{ background:#fff8f2; }
.cmp-rowlabel.cmp-diff{ background:#fff8f2; color:#b3122e; }
.cmp-diff-dot{ display:inline-block; width:6px; height:6px; border-radius:50%; background:#E8651A; margin-left:6px; vertical-align:middle; }
.pex-guide-btn{ display:inline-flex; align-items:center; gap:8px; margin-top:16px; background:#fff; color:#c8102e; border:1.5px solid rgba(255,255,255,.85); border-radius:999px; padding-top:11px; padding-right:20px; padding-bottom:11px; padding-left:20px; font-size:14px; font-weight:700; text-decoration:none; box-shadow:0 6px 18px rgba(0,0,0,.12); transition:.15s; }
.pex-guide-btn:hover{ background:#c8102e; color:#fff; border-color:#c8102e; transform:translateY(-1px); }
.pex-guide-btn .ti-wand{ font-size:17px; }
@keyframes cmpShake{ 0%,100%{transform:none} 25%{transform:translateX(-4px)} 75%{transform:translateX(4px)} }
@media (max-width: 600px) {
  .prod-compare span{ display:none; }
  .pcat-grid .prod-card-sub{ display:none; }
  .pcat-grid .prod-card-foot{ flex-wrap:wrap; }
}
@media (max-width: 768px) {
  .pd-mcta{ gap:10px; position:fixed; left:0; right:0; bottom:0; z-index:8000; background:rgba(255,255,255,.92); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-top:1px solid rgba(0,0,0,.08); box-shadow:0 -8px 24px -16px rgba(0,0,0,.4); transform:translateY(120%); transition:transform .28s ease; pointer-events:none; }
  .pd-mcta.show{ transform:translateY(0); pointer-events:auto; }
  .pd-mcta a{ flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:50px; border-radius:12px; font-size:15px; font-weight:650; text-decoration:none; }
  .pd-mcta-quote{ background:linear-gradient(150deg,var(--brand-red,#c8102e),var(--brand-red-dark,#8c0a1f)); color:#fff; }
  .pd-mcta-dealer{ background:#fff; color:var(--ink,#1d1d1f); border:1px solid rgba(0,0,0,.16); }
  .pd-mcta i{ font-size:18px; }
  .pd #quote{ scroll-margin-bottom:80px; }
  #overview.pd-ov-collapsed{ position:relative; }
  #overview.pd-ov-collapsed .pd-legacy{ max-height:540px !important; }
  #overview.pd-ov-collapsed::after{ content:''; position:absolute; left:0; right:0; bottom:56px; height:120px; background:linear-gradient(rgba(255,255,255,0), #fff); pointer-events:none; }
  .pd-ov-more{ display:inline-flex; align-items:center; gap:6px; margin-top:14px; margin-right:auto; margin-bottom:0; margin-left:auto; padding-top:11px; padding-right:22px; padding-bottom:11px; padding-left:22px; background:#fff; color:var(--brand-red,#c8102e); border:1px solid var(--brand-red,#c8102e); border-radius:100px; font-size:14px; font-weight:650; font-family:inherit; cursor:pointer; position:relative; z-index:1; left:50%; transform:translateX(-50%); }
}
@media (max-width: 820px) {
  .cat2-sec-head{ flex-wrap:wrap; }
  .cat2-idx{ display:none; }
  .cat2-sec-n{ order:3; }
  .cat2-tools .cat2-search input{ width:130px; }
}
@media (max-width: 900px) {
  .prod-sidebar .prod-tab, .prod-sidebar .prod-make{ flex:0 0 auto; }
  .prod-sidebar .prod-tabs, .prod-sidebar .prod-makes{ flex-direction:row; flex-wrap:wrap; overflow-x:visible; gap:8px; padding-bottom:4px; }
  .prod-sidebar .prod-tabs::-webkit-scrollbar, .prod-sidebar .prod-makes::-webkit-scrollbar{ display:none; }
  .pcat-side{ z-index:70; left:0; bottom:0; width:280px; transform:translateX(-100%); transition:transform .2s; box-shadow:0 0 40px rgba(0,0,0,.3); }
  .pcat-side.open{ transform:none; }
  .pex-side{ z-index:70; left:0; bottom:0; width:300px; transform:translateX(-100%); transition:transform .2s; box-shadow:0 0 40px rgba(0,0,0,.3); }
  .pex-side.open{ transform:none; }
}
@media (min-width: 561px) {
  .prod-toolbar{ gap:18px; }
  .prod-search input{ width:200px; }
  .pd-specs th{ width:200px !important; }
}
@media (min-width: 601px) {
  .pcat-grid{ grid-template-columns:repeat(auto-fill,minmax(224px,1fr)); gap:18px; }
  .pcat-grid .prod-card-media{ padding-top:16px; padding-right:16px; padding-bottom:16px; padding-left:16px; }
  .pcat-grid .prod-card-media img{ height:150px; }
}
@media (min-width: 769px) {
  .pd-mcta{ display:none; }
}
@media (min-width: 821px) {
  .cat2-sec-head{ gap:18px; }
}
@media (min-width: 834px) {
  .prod-cattabs .prod-tabs{ flex-wrap:nowrap; overflow-x:auto; }
}
@media (min-width: 861px) {
  .pd-quote{ grid-template-columns:1fr 1.1fr; gap:48px; }
}
@media (min-width: 881px) {
  .pd-hero-grid{ grid-template-columns:1.05fr 1fr; gap:54px; }
}
@media (min-width: 901px) {
  .prod-layout{ grid-template-columns:248px minmax(0,1fr); gap:38px; padding-top:34px; }
  .prod-sidebar{ position:sticky; gap:26px; }
  .prod-sidebar .prod-tab, .prod-sidebar .prod-make{ width:100%; border-radius:10px; border:1px solid transparent; background:transparent; }
  .prod-sidebar .prod-tab.on, .prod-sidebar .prod-make.on{ border-color:transparent; }
  .pcat-shell{ grid-template-columns:212px 1fr; }
  .pcat-side{ position:sticky; top:80px; border-radius:14px; max-height:calc(100vh - 100px); }
  .pcat-side-toggle{ display:none; }
  .pex-shell{ grid-template-columns:288px 1fr; }
  .pex-side{ position:sticky; top:80px; border-radius:14px; max-height:calc(100vh - 100px); }
  .pex-search{ margin-left:auto; }
  .pex-side-toggle{ display:none; }
}

/* ===== 新版产品详情(detail.html 主布局)- 移动端优先 ===== */
/* 画廊:深色舞台 + 白底 1:1 大图卡(兼容任意比例产品图) */
.pd-stage{position:relative;background:#0d1b2a;border-radius:20px;padding:20px;display:flex;align-items:center;justify-content:center}
.pd-stage-badge{position:absolute;top:14px;left:14px;z-index:2;background:rgba(10,10,12,.82);color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-mono,monospace);padding:7px 12px;border-radius:9px;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pd-stage-card{width:100%;aspect-ratio:1/1;background:#fff;border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line,#dedede)}
.pd-stage-card img{width:100%;height:100%;aspect-ratio: 1;object-fit:contain;display:block}
/* 缩略图:白底 1:1 小卡,可横向滑动 */
.pd-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin;padding-bottom:4px}
.pd-thumb{flex:0 0 64px;width:64px;aspect-ratio:1/1;height:auto;border:1px solid var(--line,#dedede);border-radius:12px;background:#fff;padding:6px;cursor:pointer;transition:border-color .15s}
.pd-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.pd-thumb.on{border-color:var(--brand-red,#c8102e)}
/* 缩略图图片铺满整卡(去内边距 + cover + 裁到圆角) */
.pd-thumbs-wrap .pd-thumb{padding:0;overflow:hidden}
.pd-thumbs-wrap .pd-thumb img{object-fit:contain;mix-blend-mode:normal}
/* 三个 HTML 字段容器的基础排版兜底 */
.pd-product-html{margin-top:6px}
.pd-product-html img,.pd-extend-html img,.pd-custom img{max-width:100%;height:auto}
.pd-extend-html{margin-top:16px}
.pd-custom{overflow-x:clip}
.pd-custom>*{max-width:100%}
/* sticky bar:产品徽标+名称 + CTA(滚过 hero 后出现;移动只留 CTA) */
.pd-mcta{align-items:center;gap:10px}
.pd-mcta-prod{display:none;align-items:center;gap:10px;min-width:0;flex:1 1 auto}
.pd-mcta-badge{flex:0 0 40px;width:40px;height:40px;border-radius:11px;background:#0d1b2a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.pd-mcta-tx{display:flex;flex-direction:column;min-width:0}
.pd-mcta-tx b{font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-mcta-tx i{font-style:normal;font-size:12px;color:var(--ink-muted,#86868b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (min-width: 768px){
  .pd-thumb{flex-basis:76px;width:76px}
  .pd-mcta-prod{display:flex}
  .pd-mcta-quote{flex:0 0 auto}
}
@media (min-width: 1280px){
  .pd-stage{padding:26px}
  .pd-thumb{flex-basis:84px;width:84px}
}
.pd-info{min-width:0}
.pd-x{overflow-x:clip}
/* 询价 CTA:渐变按钮,复刻 .hero2 .btn-quote,颜色跟随 --brand-red / --brand-red-dark */
.pd-cta-solo{margin-top:8px}
.pd-btn-quote{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:linear-gradient(150deg,var(--brand-red,#c8102e),var(--brand-red-dark,#8c0a1f));color:#fff;padding:10px 16px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none;box-shadow:var(--brand-shadow,0 10px 24px rgba(200,16,46,.22));transition:filter .2s,box-shadow .2s}
.pd-btn-quote:hover{filter:brightness(1.08);box-shadow:var(--brand-shadow,0 12px 26px rgba(0,0,0,.25))}
.pd-btn-quote svg{flex:0 0 auto}
/* 设计稿自带 subnav:吸附在 60px 站点主导航正下方(压过设计里的 top:0,故用三级选择器) */
.pd-custom.pd-x .subnav{top:60px}
/* 设计 subnav 移位插槽:display:contents 让 sticky 以页面为界;白色玻璃底与站点吸顶条一致 */
.pd-subnav-slot{display:contents}
.pd-x.pd-subnav-slot .subnav{position:sticky;top:60px;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid #eee;box-shadow:none}
/* 画廊:大图左右切换按钮 + 缩略图单行滚动(溢出隐藏,两侧按钮) */
.pd-stage-card{position:relative}
.pd-gnav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:rgba(13,27,42,.5);color:#fff;font-size:20px;z-index:2;transition:background .15s}
.pd-gnav:hover{background:rgba(13,27,42,.85)}
.pd-gprev{left:10px}
.pd-gnext{right:10px}
.pd-thumbs-wrap{display:flex;align-items:center;gap:8px;margin-top:14px}
/* 大图与信息左右分列后,缩略图条移到下方整宽显示 */
.pd-thumbs-full{margin-top:14px}
.pd-thumbs-full .pd-thumbs{justify-content:flex-start}
.pd-thumbs-wrap .pd-thumbs{margin-top:0;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.pd-thumbs-wrap .pd-thumbs::-webkit-scrollbar{display:none}
.pd-tnav{flex:0 0 30px;width:30px;height:30px;border-radius:50%;border:1px solid var(--line,#dedede);background:#fff;color:#444;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:15px;padding:0;transition:border-color .15s,opacity .15s}
.pd-tnav:hover{border-color:#999}
.pd-tnav[disabled]{opacity:.35;cursor:default}
/* 产品信息模板(product_html 为空时的兜底):介绍段落 + 卖点勾选标签 */
.pd-intro{margin:14px 0 4px;color:var(--ink-2,#555);font-size:14.5px;line-height:1.75;min-height: 120px;}
.pd-checks{display:grid;grid-template-columns:1fr;gap:9px 20px;margin:12px 0}
.pd-check{display:flex;gap:9px;align-items:flex-start;font-size:14px;font-weight:600;color:var(--ink,#1c1c1c);line-height:1.45}
.pd-check i{color:#fff;background:#e8a33d;border-radius:50%;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex:0 0 auto;margin-top:2px}
@media (min-width: 768px){
  .pd-checks{grid-template-columns:1fr 1fr}
}
/* 产品信息模板样式细化(对齐设计稿信息区观感) */
.pd-sub{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,'JetBrains Mono',monospace;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-red,#c8102e);line-height:1.6;margin:16px 0}
.pd-rating{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:14px}
.pd-rating-val{font-weight:800;color:var(--ink,#141414);font-size:14.5px}
.pd-rating-n{font-size:13.5px;color:var(--ink-soft,#7a7a7a);text-decoration:none}
.pd-check{font-weight:600;font-size:14px;align-items:center;gap:10px}
.pd-check i{color:var(--brand-red,#c8102e);background:#fdecec;border-radius:6px;width:20px;height:20px;font-size:12px;margin-top:0}
/* 产品底部 sticky(移动+桌面全宽启用,观感对齐设计稿 stickybar):
   主图缩略 + 名称/mono 副标题 + 单个红 CTA;设计稿产品自带 #stickybar 时 JS 移除本条 */
.pd-mcta{display:flex;align-items:center;gap:12px;position:fixed;left:0;right:0;bottom:0;z-index:8000;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line,#e6e6e6);box-shadow:0 -6px 30px rgba(17,32,44,.1);transform:translateY(120%);transition:transform .28s ease;pointer-events:none;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))}
.pd-mcta.show{transform:translateY(0);pointer-events:auto}
.pd-mcta-prod{display:flex;align-items:center;gap:11px;min-width:0;flex:1 1 auto}
.pd-mcta-badge{flex:0 0 46px;width:46px;height:46px;border-radius:10px;background:#fff;border:1px solid var(--line,#e6e6e6);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pd-mcta-badge img{width:100%;height:100%;object-fit:contain}
.pd-mcta-tx{display:flex;flex-direction:column;min-width:0;gap:1px}
.pd-mcta-tx b{font-size:14.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-mcta-tx i{font-style:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--ink-muted,#86868b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-mcta a.pd-mcta-quote{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;background:linear-gradient(150deg,var(--brand-red,#c8102e),var(--brand-red-dark,#8c0a1f));color:#fff;padding:0 22px;border-radius:11px;font-weight:700;font-size:14px;text-decoration:none;box-shadow:var(--brand-shadow,0 10px 24px rgba(200,16,46,.22));transition:filter .2s,box-shadow .2s}
.pd-mcta a.pd-mcta-quote:hover{filter:brightness(1.08)}
@media (max-width: 480px){
  .pd-mcta a.pd-mcta-quote{font-size:12.5px;padding:0 14px}
  .pd-mcta-tx i{display:none}
}
@media (min-width: 1280px){
  .pd-mcta{padding-left:max(16px,calc((100% - 1180px)/2));padding-right:max(16px,calc((100% - 1180px)/2))}
}
@media (max-width: 480px){
  .pd-mcta-tx{display:none}
  .pd-mcta-prod{flex:0 0 auto}
  .pd-mcta a.pd-mcta-quote{flex:1 1 auto}
  .pd-mcta{padding-right:72px} /* 让出右下角客服浮标 */
}
/* 信息列排版:收紧间距;右列自然流式排列(取消拉伸对齐画廊与沉底) */
@media (min-width: 1024px){
  .pd-title{font-size:34px;margin-bottom:4px}
  .pd-sub{font-size:12px;margin-bottom:6px}
  .pd-rating{margin-bottom:12px;font-size:13.5px}
  .pd-stars{font-size:14px}
  .pd-intro{font-size:14px;line-height:1.5;margin:6px 0 0}
  .pd-checks{gap:4px 16px;margin:16px 0}
  .pd-check{font-size:13px;line-height:1.35}
  .pd-trust{gap:8px 20px}
}

/* ===== 询价区 GET A QUOTE(深色版式,配色适配页脚:品牌红 + #1d1d1f 深底) ===== */
.pdq{background:#1d1d1f;color:rgba(255,255,255,.75);padding:60px 0}
.pdq-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
@media(min-width:900px){.pdq-grid{grid-template-columns:1.05fr .95fr;gap:64px}}
.pdq-eyebrow{font-family:ui-monospace,Consolas,monospace;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--brand-red,#c8102e);font-weight:700;margin:0 0 16px}
.pdq-title{font-size:clamp(28px,3.4vw,40px);line-height:1.1;font-weight:800;color:#fff;margin:0 0 16px}
.pdq-title span{color:var(--brand-red,#c8102e)}
.pdq-lead{font-size:15px;line-height:1.7;color:rgba(255,255,255,.62);margin:0 0 26px;max-width:560px}
.pdq-checks{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:16px}
.pdq-checks li{display:flex;gap:12px;align-items:flex-start}
.pdq-checks li>i{flex:0 0 auto;color:var(--brand-red,#c8102e);font-size:18px;margin-top:1px}
.pdq-checks b{display:block;color:#fff;font-size:15px;font-weight:700}
.pdq-checks span{display:block;color:rgba(255,255,255,.55);font-size:13.5px;margin-top:2px}
.pdq-tags{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.pdq-tags span{font-family:ui-monospace,Consolas,monospace;font-size:12px;letter-spacing:.06em;color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:8px 14px}
.pdq-dealer{font-size:14px;color:rgba(255,255,255,.6);margin:0}
.pdq-dealer a{color:var(--brand-red,#c8102e);font-weight:700;text-decoration:none}
.pdq-dealer a:hover{color:var(--brand-red-dark,#8c0a1f)}
.pdq-form{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.10);border-radius:18px;padding:28px}
.pdq-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:520px){.pdq-row{grid-template-columns:1fr}}
.pdq-form label{display:block;font-size:13px;color:rgba(255,255,255,.82);font-weight:600}
.pdq-form label em{color:var(--brand-red,#c8102e);font-style:normal}
.pdq-form input,.pdq-form textarea{width:100%;margin-top:7px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:12px 14px;color:#fff;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s}
.pdq-form textarea{resize:vertical;min-height:96px}
.pdq-form input::placeholder,.pdq-form textarea::placeholder{color:rgba(255,255,255,.35)}
.pdq-form input:focus,.pdq-form textarea:focus{border-color:var(--brand-red,#c8102e)}
.pdq-full{margin-bottom:18px}
.pdq-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand-red,#c8102e);color:#fff;border:none;border-radius:12px;padding:15px;font-size:15px;font-weight:700;cursor:pointer;transition:background .18s}
.pdq-btn:hover{background:var(--brand-red-dark,#8c0a1f)}
.pdq-fine{font-size:12px;color:rgba(255,255,255,.4);margin:16px 0 0;text-align:center}

/* 板块素材驱动的标签切换(pd-feat-tabs.js + feat-board-tpl 片段):外层宿主样式 */
/* fb-host 的 hidden/display 由 feat_board.html 内 <style> 处理;此处仅补媒体尺寸 */
.fb-stage .v4-media{display:block;width:100%;height:100%;object-fit:contain;border-radius:16px}
.video-ytb {aspect-ratio: 16/9;margin: 16px 0;}
.video-ytb iframe{width: 100%;height: 100%;}