/* ========================================
   Blueprint Meridian — Industrial Precision
   Steel #1e3a5f · Teal #0891b2 · Orange #ea580c
   ======================================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI','PingFang SC','Microsoft YaHei','Helvetica Neue',Arial,sans-serif;color:#1e293b;background:#f5f5f4;line-height:1.7;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ---- Layout ---- */
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.sec{padding:80px 0}
.sec-sm{padding:56px 0}
.sec-stone{background:#f5f5f4}
.sec-white{background:#fff}
.sec-steel{background:#1e3a5f;color:#e2e8f0}
.sec-steel2{background:#162d4a;color:#e2e8f0}
.sec-teal{background:#0891b2;color:#fff}

/* ---- Section Heads ---- */
.sec-head{text-align:center;margin-bottom:48px}
.sec-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:100px;margin-bottom:16px}
.sec-badge-teal{background:#ecfeff;color:#0891b2}
.sec-badge-orange{background:#fff7ed;color:#ea580c}
.sec-badge-steel{background:#e0eaf3;color:#1e3a5f}
.sec-badge-white{background:rgba(255,255,255,.15);color:#fff}
.sec-badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.sec-badge-dot.teal{background:#0891b2}
.sec-badge-dot.orange{background:#ea580c}
.sec-badge-dot.steel{background:#1e3a5f}
.sec-badge-dot.white{background:#fff}
.sec-title{font-size:2rem;font-weight:800;line-height:1.25;color:#0f172a}
.sec-title-light{color:#fff}
.sec-sub{font-size:1.05rem;color:#64748b;margin-top:12px;max-width:640px;margin-left:auto;margin-right:auto}
.sec-sub-light{color:#cbd5e1}
.hl{color:#0891b2}
.hl2{color:#ea580c}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;border-radius:10px;transition:all .2s;line-height:1.4;border:2px solid transparent}
.btn-lg{padding:14px 32px;font-size:1.05rem}
.btn-md{padding:11px 24px;font-size:.95rem}
.btn-sm{padding:8px 18px;font-size:.85rem}
.btn-teal{background:#0891b2;color:#fff;border-color:#0891b2}.btn-teal:hover{background:#0e7490;border-color:#0e7490}
.btn-orange{background:#ea580c;color:#fff;border-color:#ea580c}.btn-orange:hover{background:#c2410c;border-color:#c2410c}
.btn-steel{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.btn-steel:hover{background:#162d4a}
.btn-outline{background:transparent;color:#1e3a5f;border-color:#cbd5e1}.btn-outline:hover{border-color:#0891b2;color:#0891b2}
.btn-outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}.btn-outline-w:hover{background:rgba(255,255,255,.1);border-color:#fff}
.btn-white{background:#fff;color:#1e3a5f;border-color:#fff}.btn-white:hover{background:#f1f5f9}
.btn-ghost{background:transparent;color:#0891b2;border-color:transparent}.btn-ghost:hover{background:#ecfeff}

/* ---- Navbar ---- */
.bp-nav{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid #e2e8f0;transition:box-shadow .3s}
.bp-nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto;padding:0 24px;height:64px}
.bp-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.1rem;color:#1e3a5f}
.bp-brand-icon{width:32px;height:32px;flex-shrink:0}
.bp-menu{display:flex;align-items:center;gap:4px;list-style:none}
.bp-link{padding:8px 18px;border-radius:8px;font-size:.9rem;font-weight:600;color:#475569;transition:all .2s}
.bp-link:hover{color:#0891b2;background:#ecfeff}
.bp-link.on{background:#1e3a5f;color:#fff}
.bp-cta{margin-left:12px}
.nav-toggle{display:none;flex-direction:column;gap:5px;width:28px;background:none;border:none;cursor:pointer;padding:4px}
.nav-toggle span{display:block;height:2px;background:#1e3a5f;border-radius:2px;transition:.3s}
.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* ---- Hero ---- */
.hero{background:linear-gradient(145deg,#1e3a5f 0%,#162d4a 40%,#0c1f33 100%);color:#fff;padding:100px 0 80px;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-100px;right:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(8,145,178,.2) 0%,transparent 70%);pointer-events:none}
.hero::after{content:'';position:absolute;bottom:-80px;left:-80px;width:400px;height:400px;background:radial-gradient(circle,rgba(234,88,12,.12) 0%,transparent 70%);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:1}
.hero-text{max-width:560px}
.hero-chip{display:inline-flex;align-items:center;gap:8px;background:rgba(8,145,178,.18);border:1px solid rgba(8,145,178,.3);padding:6px 16px;border-radius:100px;font-size:.8rem;font-weight:600;color:#67e8f9;margin-bottom:20px}
.hero-chip-dot{width:7px;height:7px;border-radius:50%;background:#67e8f9;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.hero-h1{font-size:2.8rem;font-weight:900;line-height:1.15;margin-bottom:18px}
.hero-h1 .hl{color:#67e8f9}
.hero-h1 .hl2{color:#fb923c}
.hero-p{font-size:1.1rem;color:#94a3b8;line-height:1.7;margin-bottom:32px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}
.hero-trust{display:flex;gap:24px;flex-wrap:wrap}
.hero-trust-item{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#94a3b8}
.hero-trust-item svg{width:16px;height:16px;color:#67e8f9}

/* Hero Visual — Blueprint Card */
.hero-vis{position:relative}
.hero-blueprint{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px;position:relative}
.hero-blueprint::before{content:'';position:absolute;inset:0;border-radius:16px;background:repeating-linear-gradient(0deg,transparent,transparent 19px,rgba(255,255,255,.03) 19px,rgba(255,255,255,.03) 20px),repeating-linear-gradient(90deg,transparent,transparent 19px,rgba(255,255,255,.03) 19px,rgba(255,255,255,.03) 20px);pointer-events:none}
.hbp-topbar{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.hbp-dots{display:flex;gap:6px}.hbp-dot{width:10px;height:10px;border-radius:50%}.hbp-dot.r{background:#ef4444}.hbp-dot.y{background:#f59e0b}.hbp-dot.g{background:#22c55e}
.hbp-url{flex:1;background:rgba(255,255,255,.06);border-radius:6px;padding:6px 12px;font-size:.75rem;color:#94a3b8}
.hbp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hbp-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:18px;text-align:center;transition:.3s}
.hbp-card:hover{background:rgba(8,145,178,.12);border-color:rgba(8,145,178,.25)}
.hbp-card-ico{width:36px;height:36px;margin:0 auto 10px;border-radius:8px;display:flex;align-items:center;justify-content:center}
.hbp-card-ico.teal{background:rgba(8,145,178,.2);color:#67e8f9}
.hbp-card-ico.orange{background:rgba(234,88,12,.2);color:#fb923c}
.hbp-card-ico.steel{background:rgba(30,58,95,.3);color:#93c5fd}
.hbp-card-ico.green{background:rgba(22,163,74,.2);color:#4ade80}
.hbp-card-label{font-size:.72rem;color:#94a3b8;margin-bottom:4px}
.hbp-card-val{font-size:1.4rem;font-weight:800;color:#fff}

/* ---- Stats Band ---- */
.stats-band{background:#1e3a5f;border-top:3px solid #0891b2;padding:32px 0}
.stats-row{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px}
.sband-item{text-align:center;min-width:140px}
.sband-num{font-size:1.8rem;font-weight:900;background:linear-gradient(135deg,#67e8f9,#0891b2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sband-num.orange{background:linear-gradient(135deg,#fb923c,#ea580c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sband-lbl{font-size:.82rem;color:#94a3b8;margin-top:4px}

/* ---- Feature Cards ---- */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.feat-card{background:#fff;border-radius:14px;padding:32px 28px;border:1px solid #e2e8f0;position:relative;overflow:hidden;transition:.3s}
.feat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;border-radius:14px 14px 0 0;transition:.3s;transform:scaleX(0);transform-origin:left}
.feat-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(30,58,95,.1)}
.feat-card:hover::before{transform:scaleX(1)}
.feat-card.fc-teal::before{background:#0891b2}
.feat-card.fc-orange::before{background:#ea580c}
.feat-card.fc-steel::before{background:#1e3a5f}
.feat-card.fc-green::before{background:#16a34a}
.feat-card.fc-violet::before{background:#7c3aed}
.feat-card.fc-rose::before{background:#e11d48}
.feat-card.fc-sky::before{background:#0284c7}
.feat-card.fc-amber::before{background:#d97706}
.feat-card.fc-cyan::before{background:#06b6d4}
.feat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.feat-icon svg{width:24px;height:24px}
.feat-icon.fi-teal{background:#ecfeff;color:#0891b2}
.feat-icon.fi-orange{background:#fff7ed;color:#ea580c}
.feat-icon.fi-steel{background:#e0eaf3;color:#1e3a5f}
.feat-icon.fi-green{background:#f0fdf4;color:#16a34a}
.feat-icon.fi-violet{background:#f5f3ff;color:#7c3aed}
.feat-icon.fi-rose{background:#fff1f2;color:#e11d48}
.feat-icon.fi-sky{background:#f0f9ff;color:#0284c7}
.feat-icon.fi-amber{background:#fffbeb;color:#d97706}
.feat-icon.fi-cyan{background:#ecfeff;color:#06b6d4}
.feat-name{font-size:1.1rem;font-weight:700;color:#0f172a;margin-bottom:8px}
.feat-desc{font-size:.9rem;color:#64748b;line-height:1.65}

/* ---- Platform Grid ---- */
.plat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.plat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:28px 24px;text-align:center;transition:.3s}
.plat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(30,58,95,.08)}
.plat-card.featured{border-color:#0891b2;box-shadow:0 0 0 2px rgba(8,145,178,.12)}
.plat-badge{display:inline-block;font-size:.7rem;font-weight:700;background:#0891b2;color:#fff;padding:3px 10px;border-radius:100px;margin-bottom:12px}
.plat-icon{width:48px;height:48px;margin:0 auto 14px}
.plat-icon svg{width:48px;height:48px}
.plat-name{font-size:1.05rem;font-weight:700;color:#0f172a;margin-bottom:4px}
.plat-ver{font-size:.82rem;color:#94a3b8;margin-bottom:6px}
.plat-desc{font-size:.82rem;color:#64748b;margin-bottom:16px;line-height:1.55}
.plat-btn{width:100%}

/* ---- Deep Rows (alternating feature sections) ---- */
.deep-row{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:48px 0}
.deep-row+.deep-row{border-top:1px solid #e2e8f0}
.deep-row.flip .deep-info{order:2}
.deep-row.flip .deep-vis{order:1}
.deep-info{flex:1}
.deep-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:100px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.deep-chip.dc-teal{background:#ecfeff;color:#0891b2}
.deep-chip.dc-orange{background:#fff7ed;color:#ea580c}
.deep-chip.dc-steel{background:#e0eaf3;color:#1e3a5f}
.deep-chip.dc-green{background:#f0fdf4;color:#16a34a}
.deep-h3{font-size:1.5rem;font-weight:800;color:#0f172a;margin-bottom:12px}
.deep-desc{font-size:.95rem;color:#64748b;line-height:1.7;margin-bottom:18px}
.deep-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.deep-list-item{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:#475569}
.deep-list-dot{width:8px;height:8px;border-radius:50%;margin-top:7px;flex-shrink:0}
.deep-list-dot.teal{background:#0891b2}
.deep-list-dot.orange{background:#ea580c}
.deep-list-dot.steel{background:#1e3a5f}
.deep-list-dot.green{background:#16a34a}

/* Deep Visual — Data Panel */
.deep-vis{flex:1}
.dv-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:28px;box-shadow:0 4px 16px rgba(0,0,0,.04)}
.dv-panel.dark{background:#1e3a5f;border-color:#2d4a6f;color:#e2e8f0}
.dv-panel-title{font-size:.85rem;font-weight:700;margin-bottom:18px;color:#0f172a}
.dv-panel.dark .dv-panel-title{color:#fff}
.dv-bar-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.dv-bar-row:last-child{margin-bottom:0}
.dv-bar-label{width:80px;font-size:.78rem;color:#64748b;flex-shrink:0}
.dv-panel.dark .dv-bar-label{color:#94a3b8}
.dv-bar-track{flex:1;height:10px;background:#f1f5f9;border-radius:6px;overflow:hidden}
.dv-panel.dark .dv-bar-track{background:rgba(255,255,255,.1)}
.dv-bar-fill{height:100%;border-radius:6px;transition:width .6s}
.dv-bar-fill.bf-teal{background:linear-gradient(90deg,#0891b2,#22d3ee)}
.dv-bar-fill.bf-orange{background:linear-gradient(90deg,#ea580c,#fb923c)}
.dv-bar-fill.bf-steel{background:linear-gradient(90deg,#1e3a5f,#3b6ea5)}
.dv-bar-fill.bf-green{background:linear-gradient(90deg,#16a34a,#4ade80)}
.dv-bar-val{width:42px;font-size:.78rem;font-weight:700;color:#0f172a;text-align:right}
.dv-panel.dark .dv-bar-val{color:#fff}
.dv-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
.dv-stat{text-align:center;padding:14px 8px;background:#f8fafc;border-radius:10px}
.dv-panel.dark .dv-stat{background:rgba(255,255,255,.06)}
.dv-stat-num{font-size:1.3rem;font-weight:800}
.dv-stat-num.c-teal{color:#0891b2}
.dv-stat-num.c-orange{color:#ea580c}
.dv-stat-num.c-steel{color:#1e3a5f}
.dv-stat-num.c-green{color:#16a34a}
.dv-stat-lbl{font-size:.72rem;color:#94a3b8;margin-top:2px}

/* ---- Reviews ---- */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rev-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:28px;transition:.3s}
.rev-card:hover{box-shadow:0 8px 24px rgba(30,58,95,.08)}
.rev-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.rev-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#fff;flex-shrink:0}
.rev-avatar.av-teal{background:linear-gradient(135deg,#0891b2,#06b6d4)}
.rev-avatar.av-orange{background:linear-gradient(135deg,#ea580c,#f97316)}
.rev-avatar.av-steel{background:linear-gradient(135deg,#1e3a5f,#334155)}
.rev-avatar.av-green{background:linear-gradient(135deg,#16a34a,#22c55e)}
.rev-avatar.av-violet{background:linear-gradient(135deg,#7c3aed,#8b5cf6)}
.rev-avatar.av-rose{background:linear-gradient(135deg,#e11d48,#f43f5e)}
.rev-meta{flex:1}
.rev-name{font-weight:700;font-size:.92rem;color:#0f172a}
.rev-role{font-size:.78rem;color:#94a3b8}
.rev-stars{display:flex;gap:3px;margin-bottom:12px}
.rev-stars svg{width:16px;height:16px;color:#f59e0b}
.rev-text{font-size:.88rem;color:#64748b;line-height:1.65}

/* ---- Comparison Table ---- */
.cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cmp-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:600px}
.cmp-table th,.cmp-table td{padding:14px 16px;text-align:center;border-bottom:1px solid #e2e8f0}
.cmp-table th{background:#f8fafc;font-weight:700;color:#0f172a;position:sticky;top:0}
.cmp-table td:first-child,.cmp-table th:first-child{text-align:left;font-weight:600}
.cmp-hl{background:#ecfeff !important}
.yes{color:#16a34a;font-weight:700}
.no{color:#dc2626;font-weight:700}
.part{color:#d97706;font-weight:700}

/* ---- FAQ ---- */
.faq-list{display:flex;flex-direction:column;gap:12px;max-width:800px;margin:0 auto}
.faq-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:.3s}
.faq-item:hover{border-color:#cbd5e1}
.faq-item.open{border-color:#0891b2;box-shadow:0 4px 16px rgba(8,145,178,.08)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;cursor:pointer;font-weight:700;font-size:.95rem;color:#0f172a;gap:16px;user-select:none}
.faq-chevron{width:20px;height:20px;flex-shrink:0;color:#94a3b8;transition:transform .3s}
.faq-item.open .faq-chevron{transform:rotate(180deg);color:#0891b2}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-item.open .faq-a{max-height:500px}
.faq-a-inner{padding:0 24px 20px;font-size:.9rem;color:#64748b;line-height:1.7}

/* ---- CTA Banner ---- */
.cta-banner{background:linear-gradient(135deg,#1e3a5f 0%,#0891b2 100%);color:#fff;border-radius:20px;padding:56px 48px;text-align:center;margin:0 24px}
.cta-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#67e8f9;margin-bottom:12px}
.cta-h2{font-size:2rem;font-weight:800;margin-bottom:14px}
.cta-p{font-size:1.05rem;color:#cbd5e1;margin-bottom:28px;max-width:540px;margin-left:auto;margin-right:auto}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---- Download Page Hero ---- */
.dl-hero{background:linear-gradient(145deg,#1e3a5f 0%,#162d4a 50%,#0c1f33 100%);color:#fff;padding:80px 0 60px;text-align:center;position:relative}
.dl-hero-tag{display:inline-flex;align-items:center;gap:6px;background:rgba(8,145,178,.18);border:1px solid rgba(8,145,178,.3);padding:6px 16px;border-radius:100px;font-size:.78rem;font-weight:600;color:#67e8f9;margin-bottom:18px}
.dl-hero-tag-dot{width:6px;height:6px;border-radius:50%;background:#67e8f9}
.dl-hero-title{font-size:2.4rem;font-weight:900;margin-bottom:14px}
.dl-hero-sub{font-size:1.05rem;color:#94a3b8;max-width:560px;margin:0 auto}

/* ---- DL Main Card ---- */
.dl-main-wrap{max-width:640px;margin:-40px auto 0;position:relative;z-index:2}
.dl-main-card{background:#fff;border-radius:18px;box-shadow:0 16px 48px rgba(0,0,0,.12);overflow:hidden}
.dl-main-top{background:linear-gradient(135deg,#1e3a5f,#0891b2);padding:24px 28px;display:flex;align-items:center;gap:16px}
.dl-main-icon{width:48px;height:48px;flex-shrink:0}
.dl-main-icon svg{width:48px;height:48px}
.dl-main-info{flex:1}
.dl-main-name{font-size:1.2rem;font-weight:800;color:#fff}
.dl-main-meta{font-size:.82rem;color:#cbd5e1;margin-top:2px}
.dl-main-body{padding:28px}
.dl-specs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.dl-spec{background:#f8fafc;border-radius:8px;padding:12px 14px}
.dl-spec-label{font-size:.72rem;color:#94a3b8;margin-bottom:2px}
.dl-spec-val{font-size:.88rem;font-weight:700;color:#0f172a}
.dl-sec-badge{display:flex;align-items:center;gap:8px;background:#f0fdf4;color:#16a34a;padding:10px 16px;border-radius:8px;font-size:.82rem;font-weight:600;margin-bottom:20px}
.dl-sec-badge svg{width:18px;height:18px;flex-shrink:0}
.dl-main-btns{display:flex;gap:12px}
.dl-main-btns .btn{flex:1}

/* ---- Other Platform Cards ---- */
.op-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.op-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:28px 24px}
.op-icon{width:40px;height:40px;margin-bottom:14px}
.op-icon svg{width:40px;height:40px}
.op-name{font-size:1.05rem;font-weight:700;color:#0f172a;margin-bottom:4px}
.op-ver{font-size:.78rem;color:#94a3b8;margin-bottom:14px}
.op-steps{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.op-step{display:flex;gap:10px;font-size:.85rem;color:#64748b;align-items:flex-start}
.op-step-n{width:22px;height:22px;border-radius:50%;background:#ecfeff;color:#0891b2;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* ---- Guide Grid ---- */
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.guide-col{min-width:0}
.guide-col-title{font-size:1.15rem;font-weight:800;color:#0f172a;margin-bottom:24px;display:flex;align-items:center;gap:10px}
.guide-col-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.guide-col-dot.gd-teal{background:#0891b2}
.guide-col-dot.gd-orange{background:#ea580c}
.guide-steps{display:flex;flex-direction:column;gap:20px}
.gstep{display:flex;gap:16px;align-items:flex-start}
.gstep-num{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.88rem;flex-shrink:0;color:#fff}
.gstep-num.gn-teal{background:#0891b2}
.gstep-num.gn-orange{background:#ea580c}
.gstep-body{flex:1}
.gstep-title{font-weight:700;font-size:.95rem;color:#0f172a;margin-bottom:4px}
.gstep-desc{font-size:.85rem;color:#64748b;line-height:1.6}

/* ---- Req Grid ---- */
.req-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.req-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px 20px;text-align:center}
.req-icon{width:36px;height:36px;margin:0 auto 12px;color:#0891b2}
.req-icon svg{width:36px;height:36px}
.req-title{font-size:.85rem;font-weight:700;color:#0f172a;margin-bottom:6px}
.req-val{font-size:.82rem;color:#64748b;line-height:1.55}

/* ---- Version List ---- */
.ver-list{display:flex;flex-direction:column;gap:0;max-width:700px;margin:0 auto}
.ver-item{display:flex;gap:20px;padding:24px 0}
.ver-item+.ver-item{border-top:1px solid #e2e8f0}
.ver-dot-col{display:flex;flex-direction:column;align-items:center;padding-top:4px}
.ver-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}
.ver-dot.vd-teal{background:#0891b2}
.ver-dot.vd-orange{background:#ea580c}
.ver-dot.vd-steel{background:#1e3a5f}
.ver-dot.vd-green{background:#16a34a}
.ver-dot.vd-violet{background:#7c3aed}
.ver-line{flex:1;width:2px;background:#e2e8f0;margin-top:6px}
.ver-body{flex:1}
.ver-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap}
.ver-num{font-weight:800;font-size:1rem;color:#0f172a}
.ver-tag{font-size:.68rem;font-weight:700;padding:3px 10px;border-radius:100px}
.ver-tag.vt-stable{background:#f0fdf4;color:#16a34a}
.ver-tag.vt-lts{background:#ecfeff;color:#0891b2}
.ver-tag.vt-beta{background:#fef3c7;color:#d97706}
.ver-date{font-size:.78rem;color:#94a3b8;margin-bottom:8px}
.ver-desc{font-size:.88rem;color:#64748b;line-height:1.6}

/* ---- Security Banner ---- */
.sec-banner{display:flex;align-items:center;gap:18px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:24px 28px}
.sec-banner-icon{width:40px;height:40px;flex-shrink:0;color:#16a34a}
.sec-banner-icon svg{width:40px;height:40px}
.sec-banner-text{flex:1}
.sec-banner-title{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:4px}
.sec-banner-desc{font-size:.88rem;color:#64748b;line-height:1.6}

/* ---- Article Page ---- */
.art-hero{background:linear-gradient(145deg,#1e3a5f 0%,#162d4a 100%);color:#fff;padding:80px 0 48px}
.art-hero-inner{max-width:800px}
.art-hero-crumb{font-size:.82rem;color:#94a3b8;margin-bottom:18px;display:flex;gap:8px;flex-wrap:wrap}
.art-hero-crumb a{color:#67e8f9}
.art-hero-crumb a:hover{text-decoration:underline}
.art-hero-title{font-size:2.2rem;font-weight:900;margin-bottom:14px;line-height:1.2}
.art-hero-sub{font-size:1.05rem;color:#94a3b8;line-height:1.7}

.kw-strip{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0;border-bottom:1px solid #e2e8f0}
.kw{display:inline-block;padding:6px 14px;border-radius:100px;font-size:.78rem;font-weight:600;background:#f1f5f9;color:#475569;transition:.2s}
.kw:hover{background:#ecfeff;color:#0891b2}

.art-layout{display:grid;grid-template-columns:1fr 320px;gap:48px;padding:48px 0}
.art-body{min-width:0}
.art-body h2{font-size:1.5rem;font-weight:800;color:#0f172a;margin:40px 0 16px;padding-top:16px}
.art-body h2:first-child{margin-top:0}
.art-body h3{font-size:1.15rem;font-weight:700;color:#1e293b;margin:28px 0 12px}
.art-body p{font-size:.95rem;color:#475569;line-height:1.8;margin-bottom:16px}
.art-body ul,.art-body ol{margin:12px 0 16px 20px;font-size:.93rem;color:#475569;line-height:1.8}
.art-body strong{color:#0f172a}

.inline-cta{border-radius:14px;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px 0}
.inline-cta.ic-teal{background:#ecfeff;border-left:4px solid #0891b2}
.inline-cta.ic-orange{background:#fff7ed;border-left:4px solid #ea580c}
.inline-cta.ic-steel{background:#e0eaf3;border-left:4px solid #1e3a5f}
.inline-cta-body{flex:1}
.inline-cta-title{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:4px}
.inline-cta-desc{font-size:.88rem;color:#64748b}

.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:20px 0}
.tip-card{background:#f8fafc;border-radius:10px;padding:20px}
.tip-num{font-size:.72rem;font-weight:800;color:#0891b2;margin-bottom:6px}
.tip-title{font-weight:700;font-size:.92rem;color:#0f172a;margin-bottom:6px}
.tip-desc{font-size:.85rem;color:#64748b;line-height:1.6}

/* ---- Sidebar ---- */
.sidebar{position:sticky;top:84px;display:flex;flex-direction:column;gap:20px}
.sbox{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px}
.sbox-title{font-weight:700;font-size:.92rem;color:#0f172a;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #f1f5f9}
.sdl-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;font-size:.88rem;font-weight:600;color:#0f172a;transition:.2s;text-align:left;margin-bottom:8px}
.sdl-btn:last-child{margin-bottom:0}
.sdl-btn:hover{border-color:#0891b2;background:#ecfeff}
.sdl-btn.primary{background:#0891b2;color:#fff;border-color:#0891b2}
.sdl-btn.primary:hover{background:#0e7490}
.sdl-btn-icon{width:24px;height:24px;flex-shrink:0}
.sdl-btn-icon svg{width:24px;height:24px}
.sdl-btn-info{flex:1}
.sdl-btn-name{font-weight:700;font-size:.85rem}
.sdl-btn-ver{font-size:.72rem;color:#94a3b8}
.sdl-btn.primary .sdl-btn-ver{color:#bae6fd}
.stoc{list-style:none;display:flex;flex-direction:column;gap:6px}
.stoc a{display:block;padding:6px 0;font-size:.82rem;color:#64748b;transition:.2s;border-left:2px solid transparent;padding-left:12px}
.stoc a:hover{color:#0891b2;border-left-color:#0891b2}
.sstat{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sstat-item{text-align:center;background:#f8fafc;border-radius:8px;padding:14px 8px}
.sstat-num{font-size:1.15rem;font-weight:800;color:#0891b2}
.sstat-lbl{font-size:.72rem;color:#94a3b8;margin-top:2px}
.side-security{display:flex;align-items:flex-start;gap:10px;background:#f0fdf4;border-radius:10px;padding:14px 16px;font-size:.8rem;color:#16a34a;line-height:1.5}
.side-security svg{width:20px;height:20px;flex-shrink:0;margin-top:1px}

/* ---- Footer ---- */
.bp-footer{background:#0f172a;color:#94a3b8;padding:40px 0 32px}
.bp-footer-inner{max-width:1180px;margin:0 auto;padding:0 24px;text-align:center}
.bp-footer-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px;font-weight:700;color:#e2e8f0;font-size:.95rem}
.bp-footer-brand svg{width:24px;height:24px}
.bp-footer-sec{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.85rem;color:#4ade80;margin-bottom:12px}
.bp-footer-sec svg{width:16px;height:16px}
.bp-footer-note{font-size:.78rem;color:#64748b;line-height:1.6;max-width:600px;margin:0 auto}

/* ---- News Center ---- */
.news-hero{background:linear-gradient(135deg,#1e3a5f 0%,#162d4a 60%,#0f1f33 100%);color:#e2e8f0;padding:100px 0 64px}
.news-hero-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(8,145,178,.15);border:1px solid rgba(8,145,178,.3);border-radius:100px;padding:6px 16px;font-size:.78rem;font-weight:600;color:#67e8f9;margin-bottom:20px}
.news-hero-chip-dot{width:6px;height:6px;border-radius:50%;background:#0891b2;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.news-hero-title{font-size:2.4rem;font-weight:800;line-height:1.2;margin-bottom:12px;color:#fff}
.news-hero-sub{font-size:1.05rem;color:#94a3b8;max-width:560px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.news-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:all .3s;border:1px solid #e2e8f0}
.news-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.1);border-color:#0891b2}
.news-card-top{height:6px;width:100%}
.news-card-top.nct-teal{background:linear-gradient(90deg,#0891b2,#06b6d4)}
.news-card-top.nct-orange{background:linear-gradient(90deg,#ea580c,#f97316)}
.news-card-top.nct-steel{background:linear-gradient(90deg,#1e3a5f,#334155)}
.news-card-body{padding:28px 24px}
.news-card-date{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:#94a3b8;margin-bottom:12px}
.news-card-date svg{width:14px;height:14px}
.news-card-tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 10px;border-radius:100px;margin-left:8px}
.news-card-tag.tag-teal{background:#ecfeff;color:#0891b2}
.news-card-tag.tag-orange{background:#fff7ed;color:#ea580c}
.news-card-tag.tag-steel{background:#e0eaf3;color:#1e3a5f}
.news-card-title{font-size:1.15rem;font-weight:700;color:#0f172a;line-height:1.4;margin-bottom:10px}
.news-card-title a{color:inherit;transition:color .2s}
.news-card-title a:hover{color:#0891b2}
.news-card-excerpt{font-size:.88rem;color:#64748b;line-height:1.7;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-card-link{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:#0891b2;transition:gap .2s}
.news-card-link:hover{gap:10px}
.news-card-link svg{width:16px;height:16px;transition:transform .2s}
.news-card-link:hover svg{transform:translateX(2px)}
.news-full{max-width:800px;margin:0 auto}
.news-article{background:#fff;border-radius:14px;padding:40px;box-shadow:0 2px 12px rgba(0,0,0,.06);border:1px solid #e2e8f0;margin-bottom:40px}
.news-article-header{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}
.news-article-meta{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.news-article h2{font-size:1.6rem;font-weight:800;color:#0f172a;line-height:1.3}
.news-article-content{font-size:.95rem;color:#334155;line-height:1.9}
.news-article-content p{margin-bottom:16px}
.news-article-content h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin:24px 0 12px}
.news-article-content ul{padding-left:20px;margin-bottom:16px}
.news-article-content ul li{margin-bottom:8px;color:#475569}
.news-article-content ul li::marker{color:#0891b2}
.news-back{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:#0891b2;margin-bottom:28px;transition:gap .2s}
.news-back:hover{gap:10px}
.news-home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.news-home-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.05);border:1px solid #e2e8f0;transition:all .3s}
.news-home-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.08);border-color:#0891b2}
.news-home-card-date{font-size:.73rem;color:#94a3b8;margin-bottom:8px}
.news-home-card-title{font-size:1rem;font-weight:700;color:#0f172a;line-height:1.4;margin-bottom:8px}
.news-home-card-title a{color:inherit;transition:color .2s}
.news-home-card-title a:hover{color:#0891b2}
.news-home-card-excerpt{font-size:.83rem;color:#64748b;line-height:1.6;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-home-card-link{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:700;color:#0891b2}
.news-home-card-link:hover{gap:8px}
.news-home-card-link svg{width:14px;height:14px}

/* ---- Article Page Related ---- */
.nap-related{margin-top:48px;padding-top:32px;border-top:1px solid #e2e8f0}
.nap-related h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin-bottom:16px}
.nap-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.nap-related-card{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;transition:all .2s}
.nap-related-card:hover{border-color:#0891b2;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.nap-related-title{font-size:.9rem;font-weight:600;color:#0f172a;line-height:1.5}
.news-article-date{font-size:.82rem;color:#94a3b8}

/* ---- Article comparison table ---- */
.art-cmp-wrap{overflow-x:auto;margin:20px 0;-webkit-overflow-scrolling:touch}
.art-cmp-table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:500px}
.art-cmp-table th,.art-cmp-table td{padding:12px 14px;border-bottom:1px solid #e2e8f0;text-align:center}
.art-cmp-table th{background:#f8fafc;font-weight:700;color:#0f172a}
.art-cmp-table td:first-child,.art-cmp-table th:first-child{text-align:left}
.art-cmp-hl{background:#ecfeff !important}

/* ---- Responsive ---- */
@media(max-width:1024px){
  .hero-inner{grid-template-columns:1fr;gap:40px}
  .hero-vis{max-width:480px}
  .feat-grid{grid-template-columns:repeat(2,1fr)}
  .plat-grid{grid-template-columns:repeat(2,1fr)}
  .deep-row{grid-template-columns:1fr;gap:32px}
  .deep-row.flip .deep-info{order:1}
  .deep-row.flip .deep-vis{order:2}
  .rev-grid{grid-template-columns:repeat(2,1fr)}
  .art-layout{grid-template-columns:1fr;gap:32px}
  .sidebar{position:static}
  .guide-grid{grid-template-columns:1fr}
  .req-grid{grid-template-columns:repeat(2,1fr)}
  .op-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:repeat(2,1fr)}
  .news-home-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .bp-menu{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;background:#fff;border-bottom:1px solid #e2e8f0;padding:16px;box-shadow:0 8px 24px rgba(0,0,0,.08);gap:4px}
  .bp-menu.show{display:flex}
  .nav-toggle{display:flex}
  .bp-cta{margin-left:0}
  .hero{padding:70px 0 56px}
  .hero-h1{font-size:2rem}
  .sec{padding:56px 0}
  .sec-title{font-size:1.6rem}
  .feat-grid{grid-template-columns:1fr}
  .plat-grid{grid-template-columns:1fr}
  .rev-grid{grid-template-columns:1fr}
  .cta-banner{padding:40px 24px;margin:0 16px}
  .cta-h2{font-size:1.5rem}
  .dl-hero-title{font-size:1.8rem}
  .stats-row{gap:12px}
  .sband-num{font-size:1.4rem}
  .dv-stat-grid{grid-template-columns:repeat(2,1fr)}
  .tips-grid{grid-template-columns:1fr}
  .art-hero-title{font-size:1.7rem}
  .inline-cta{flex-direction:column;align-items:flex-start}
  .dl-specs{grid-template-columns:1fr}
  .dl-main-btns{flex-direction:column}
  .nav-menu.show{display:flex}
  .req-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:1fr}
  .news-home-grid{grid-template-columns:1fr}
  .news-hero-title{font-size:1.7rem}
  .news-article{padding:24px}
}
