/* ===== Homepage - Dark AI Era Design ===== */

/* Reset overrides for homepage */
.home-page { background: #050510; color: white; }
.home-page * { box-sizing: border-box; }

/* ===== Shared utilities ===== */
.gradient-glow-text {
  background: linear-gradient(135deg, #667eea 0%, #f093fb 50%, #f5576c 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 30px rgba(102,126,234,0.5));
  animation: textGlowAnim 3s ease-in-out infinite;
}
@keyframes textGlowAnim {
  0%,100% { filter: drop-shadow(0 0 20px rgba(102,126,234,0.5)); }
  50%      { filter: drop-shadow(0 0 40px rgba(240,147,251,0.7)); }
}
.pulse-dot {
  width: 8px; height: 8px;
  background: #667eea; border-radius: 50%;
  animation: pulseDotAnim 2s ease-in-out infinite;
  box-shadow: 0 0 8px #667eea;
}
@keyframes pulseDotAnim {
  0%,100% { transform: scale(1); opacity: 1; }
  50%      { transform: scale(1.4); opacity: 0.6; }
}

/* section-header共用 */
.home-page .section-header { text-align: center; margin-bottom: 60px; }
.home-page .section-header h2 {
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  margin-bottom: 12px;
}
.home-page .section-header p {
  font-size: 1.05rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.55);
}

/* btn扩展 */
.btn-gradient {
  background: linear-gradient(135deg, #667eea, #764ba2) !important;
  color: white !important;
  border: none !important;
}
.btn-gradient:hover { opacity: 0.88; transform: translateY(-2px); box-shadow: 0 12px 32px rgba(102,126,234,0.4); }
.btn-ghost {
  background: rgba(255,255,255,0.07) !important;
  color: rgba(255,255,255,0.85) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  backdrop-filter: blur(10px);
}
.btn-ghost:hover { background: rgba(255,255,255,0.12) !important; }

/* ===== 极简浮动顶栏 ===== */
.home-topbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  height: 64px;
  background: rgba(5,5,16,0.75);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
  transition: background 0.3s;
}
.home-topbar.scrolled { background: rgba(5,5,16,0.95); }
.home-topbar .container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.topbar-right {
  display: flex; align-items: center; gap: 20px;
}
.topbar-link {
  color: rgba(255,255,255,0.65);
  font-size: 0.875rem;
  text-decoration: none;
  transition: color 0.2s;
}
.topbar-link:hover { color: white; }
.home-topbar .btn-outline {
  padding: 8px 18px !important;
  font-size: 0.875rem !important;
  border-color: rgba(255,255,255,0.25) !important;
  color: rgba(255,255,255,0.8) !important;
  background: transparent !important;
}
.home-topbar .btn-primary {
  padding: 8px 18px !important;
  font-size: 0.875rem !important;
}

/* ===== ① Hero ===== */
.h-hero {
  position: relative;
  min-height: 100vh;
  background: #050510;
  display: flex;
  align-items: center;
  padding-top: 64px;
  overflow: hidden;
}
#neuralCanvas {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  opacity: 0.5;
}
.hh-glow {
  position: absolute; border-radius: 50%;
  filter: blur(100px); pointer-events: none;
}
.hh-g1 { width:700px;height:700px; background:radial-gradient(circle,rgba(102,126,234,.3),transparent 70%); top:-200px;left:-200px; animation:ghPulse 6s ease-in-out infinite; }
.hh-g2 { width:500px;height:500px; background:radial-gradient(circle,rgba(118,75,162,.25),transparent 70%); bottom:-150px;right:-100px; animation:ghPulse 8s ease-in-out infinite reverse; }
.hh-g3 { width:300px;height:300px; background:radial-gradient(circle,rgba(240,147,251,.15),transparent 70%); top:40%;left:55%; animation:ghPulse 5s ease-in-out infinite 2s; }
@keyframes ghPulse { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.15);opacity:.7} }

.hh-inner {
  position: relative; z-index: 2;
  max-width: 900px;
  padding: 80px 0 60px;
}
.hh-eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  background: rgba(102,126,234,.1);
  border: 1px solid rgba(102,126,234,.3);
  border-radius: 100px; padding: 8px 20px;
  font-size: .875rem; color: rgba(255,255,255,.75);
  letter-spacing: .06em; margin-bottom: 28px;
  backdrop-filter: blur(10px);
}
.hh-title {
  font-size: clamp(2.4rem, 5.5vw, 4.8rem);
  font-weight: 900; line-height: 1.1;
  letter-spacing: -0.03em;
  margin-bottom: 24px;
}
.hh-t1,.hh-t3 { display: block; color: white; }
.hh-t2 { display: block; }
.hh-desc {
  font-size: 1.15rem; line-height: 1.8;
  color: rgba(255,255,255,.6);
  margin-bottom: 40px;
  max-width: 600px;
}
.hh-actions { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 56px; }

/* 检测动效卡片 */
.hh-demo-wrap { max-width: 600px; }
.hh-demo {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px; overflow: hidden;
  box-shadow: 0 24px 64px rgba(0,0,0,.5);
}
.demo-topbar {
  background: rgba(255,255,255,.04);
  padding: 12px 16px;
  display: flex; align-items: center; gap: 12px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.demo-dots { display:flex;gap:6px; }
.demo-dots span { width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.2); }
.demo-dots span:nth-child(1) { background:#ff5f56; }
.demo-dots span:nth-child(2) { background:#ffbd2e; }
.demo-dots span:nth-child(3) { background:#27c93f; }
.demo-url { flex:1; font-size:.8rem;color:rgba(255,255,255,.4);text-align:center; }
.demo-guard-badge {
  display:flex;align-items:center;gap:6px;
  font-size:.75rem;color:#43e97b;
  background:rgba(67,233,123,.1);
  border:1px solid rgba(67,233,123,.25);
  border-radius:100px;padding:4px 10px;
}
.demo-guard-dot { width:6px;height:6px;border-radius:50%;background:#43e97b;animation:pulseDotAnim 2s ease-in-out infinite; }
.demo-body { padding: 20px; }
.demo-prompt-label { font-size:.75rem;color:rgba(255,255,255,.4);margin-bottom:8px; }
.demo-prompt {
  font-family: 'SF Mono','Fira Code',monospace;
  font-size:.875rem; line-height:1.6;
  color:rgba(255,255,255,.8); min-height:48px;
  padding:12px; background:rgba(255,255,255,.03);
  border-radius:8px; border:1px solid rgba(255,255,255,.06);
  margin-bottom:12px;
}
.demo-cursor { animation:blink 1s step-end infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0} }
.demo-alert {
  display:none; align-items:center; gap:12px;
  background:rgba(245,101,44,.1);
  border:1px solid rgba(245,101,44,.3);
  border-radius:10px;padding:14px;
  animation:alertSlide .4s ease-out;
}
.demo-alert.visible { display:flex; }
@keyframes alertSlide { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }
.da-icon { font-size:1.5rem;flex-shrink:0; }
.da-content { flex:1; }
.da-title { font-size:.875rem;font-weight:700;color:#f97316;margin-bottom:6px; }
.da-tags { display:flex;gap:8px;flex-wrap:wrap; }
.da-tag { font-size:.75rem;background:rgba(102,126,234,.2);color:#a5b4fc;padding:3px 10px;border-radius:100px; }
.da-tag-red { background:rgba(239,68,68,.2);color:#fca5a5; }
.da-status { font-size:.8rem;font-weight:800;color:#ef4444;flex-shrink:0; }

/* ===== ② AI泄露场景 ===== */
.h-leak {
  padding: 100px 0;
  background: #f0f2ff;
  position: relative;
}
.h-leak::before {
  content:''; position:absolute;
  top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,#667eea,#f093fb,#f5576c);
}
.h-leak .section-header h2 { color: #0f0f23; }
.h-leak .section-header p { color: #64748b; }
.hl-badge {
  display:inline-block;
  background:linear-gradient(135deg,#667eea,#764ba2);
  color:white;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  padding:6px 18px;border-radius:100px;margin-bottom:20px;
}
.hl-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  margin-bottom:40px;
}
.hl-card {
  background:white;border-radius:20px;
  padding:32px 28px;
  box-shadow:0 8px 32px rgba(0,0,0,.06);
  border:1px solid rgba(0,0,0,.04);
  transition:all .3s;
}
.hl-card:hover { transform:translateY(-6px);box-shadow:0 20px 48px rgba(0,0,0,.1); }
.hl-ai-name {
  font-size:1.1rem;font-weight:800;color:#0f0f23;
  margin-bottom:20px;
  padding-bottom:12px;border-bottom:2px solid #f0f0ff;
}
.hl-scenarios { display:flex;flex-direction:column;gap:10px;margin-bottom:20px; }
.hl-s {
  font-size:.875rem;color:#4a5568;
  padding:8px 12px;background:#f8f9ff;border-radius:8px;
  line-height:1.5;
}
.hl-risk { display:flex;align-items:center;gap:12px; }
.hl-risk-bar {
  height:4px;border-radius:2px;flex:1;
  background:linear-gradient(90deg,#667eea,#764ba2);
}
.hl-rb-orange { background:linear-gradient(90deg,#f97316,#fb923c); }
.hl-rb-pink { background:linear-gradient(90deg,#f093fb,#f5576c); }
.hl-risk span { font-size:.75rem;font-weight:700;color:#667eea;flex-shrink:0; }
.hl-insight {
  text-align:center;
  background:linear-gradient(135deg,#1a1a3e,#2d1b69);
  border-radius:20px;padding:40px;
  border:1px solid rgba(102,126,234,.2);
  display:flex;align-items:center;justify-content:center;gap:20px;
  flex-wrap:wrap;
}
.hl-insight-num {
  font-size:3.5rem;font-weight:900;
  background:linear-gradient(135deg,#667eea,#f093fb);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;flex-shrink:0;
}
.hl-insight span:last-child {
  font-size:1.1rem;color:rgba(255,255,255,.7);
  max-width:500px;line-height:1.7;
}

/* ===== ③ 工作原理 ===== */
.h-how {
  position:relative;padding:100px 0;
  background:#08080f;overflow:hidden;
}
.how-bg {
  position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 40% at 50% 50%,rgba(102,126,234,.06),transparent 70%);
}
.how-badge {
  display:inline-block;
  background:rgba(102,126,234,.1);border:1px solid rgba(102,126,234,.3);
  color:#a5b4fc;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  padding:6px 18px;border-radius:100px;margin-bottom:20px;
}
.h-how .section-header h2 { color:white; }
.how-steps {
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr;
  align-items:start;gap:0;max-width:900px;margin:0 auto;
  position:relative;z-index:1;
}
.how-step {
  text-align:center;padding:0 20px;
}
.how-num {
  font-size:4rem;font-weight:900;line-height:1;
  background:linear-gradient(135deg,rgba(102,126,234,.3),rgba(118,75,162,.3));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;margin-bottom:16px;
}
.how-icon-wrap {
  width:80px;height:80px;border-radius:20px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;
}
.how-step h3 { font-size:1.15rem;font-weight:700;color:white;margin-bottom:10px; }
.how-step p { font-size:.9rem;line-height:1.7;color:rgba(255,255,255,.5); }
.how-connector {
  display:flex;align-items:center;justify-content:center;
  padding:0 16px;margin-top:80px;
}
.how-connector::before {
  content:'→';font-size:1.5rem;
  background:linear-gradient(135deg,#667eea,#f093fb);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}

/* ===== ④ 功能特性 ===== */
.h-features {
  padding:100px 0;
  background:linear-gradient(180deg,#f0f2ff 0%,#e8eaff 100%);
}
.feat-badge {
  display:inline-block;
  background:linear-gradient(135deg,#667eea,#764ba2);
  color:white;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  padding:6px 18px;border-radius:100px;margin-bottom:20px;
}
.h-features .section-header h2 { color:#0f0f23; }
.h-features .section-header p { color:#64748b; }
.feat-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:auto auto;
  gap:20px;
}
.feat-card {
  background:rgba(255,255,255,.75);
  backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.9);
  border-radius:20px;padding:32px 28px;
  position:relative;overflow:hidden;
  transition:all .35s ease;
}
.feat-card:hover {
  transform:translateY(-8px);
  box-shadow:0 24px 56px rgba(0,0,0,.1);
  background:rgba(255,255,255,.92);
}
.fc-wide {
  grid-column:span 1;
}
.fc-glow {
  position:absolute;width:180px;height:180px;border-radius:50%;
  top:-70px;right:-70px;filter:blur(60px);opacity:.35;
  transition:opacity .4s;
}
.feat-card:hover .fc-glow { opacity:.6; }
.fc-glow-purple { background:radial-gradient(circle,rgba(102,126,234,.8),transparent); }
.fc-glow-pink    { background:radial-gradient(circle,rgba(240,147,251,.8),transparent); }
.fc-glow-cyan    { background:radial-gradient(circle,rgba(79,172,254,.8),transparent); }
.fc-glow-green   { background:radial-gradient(circle,rgba(67,233,123,.8),transparent); }
.fc-glow-orange  { background:radial-gradient(circle,rgba(250,112,154,.8),transparent); }
.fc-icon {
  width:52px;height:52px;background:white;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:20px;box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.feat-card h3 { font-size:1.1rem;font-weight:800;color:#0f0f23;margin-bottom:10px; }
.feat-card p  { font-size:.875rem;line-height:1.7;color:#64748b; }
.fc-list {
  list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:8px;
}
.fc-list li {
  font-size:.85rem;color:#64748b;
  padding-left:18px;position:relative;
}
.fc-list li::before {
  content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:8px;height:8px;border-radius:50%;
  background:linear-gradient(135deg,#667eea,#764ba2);
}

/* ===== ⑤ 统计 ===== */
.h-stats {
  background:#050510;
  padding:80px 0;
  border-top:1px solid rgba(102,126,234,.1);
  border-bottom:1px solid rgba(102,126,234,.1);
}
.hs-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:2px; }
.hs-item {
  text-align:center;padding:48px 24px;
  border-right:1px solid rgba(255,255,255,.05);
  display:flex;flex-direction:column;align-items:center;
  position:relative;
}
.hs-item:last-child { border-right:none; }
.hs-item::before {
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(102,126,234,.05),transparent 70%);
  pointer-events:none;
}
.hs-num {
  font-size:3.8rem;font-weight:900;line-height:1;letter-spacing:-.03em;
  background:linear-gradient(135deg,#667eea,#a78bfa);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.hs-pink  { background:linear-gradient(135deg,#f093fb,#f5576c);  -webkit-background-clip:text;background-clip:text; }
.hs-cyan  { background:linear-gradient(135deg,#4facfe,#00f2fe);  -webkit-background-clip:text;background-clip:text; }
.hs-green { background:linear-gradient(135deg,#43e97b,#38f9d7);  -webkit-background-clip:text;background-clip:text; }
.hs-unit  { font-size:1.8rem;font-weight:900;color:rgba(255,255,255,.3);line-height:1;align-self:flex-start;margin-top:8px; }
.hs-label { font-size:.875rem;color:rgba(255,255,255,.4);margin-top:12px; }
.hs-bar   { width:48px;height:3px;border-radius:2px;margin-top:20px;background:linear-gradient(90deg,#667eea,#764ba2);position:relative;overflow:hidden; }
.hs-bar::after { content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:rgba(255,255,255,.6);animation:barShineAnim 3s ease-in-out infinite; }
.hs-bar-pink  { background:linear-gradient(90deg,#f093fb,#f5576c); }
.hs-bar-cyan  { background:linear-gradient(90deg,#4facfe,#00f2fe); }
.hs-bar-green { background:linear-gradient(90deg,#43e97b,#38f9d7); }
@keyframes barShineAnim { 0%{left:-100%} 50%,100%{left:100%} }

/* ===== ⑥ 价格 ===== */
.h-pricing { padding:100px 0;background:#0c0c20; }
.price-badge {
  display:inline-block;background:rgba(102,126,234,.1);
  border:1px solid rgba(102,126,234,.3);
  color:#a5b4fc;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  padding:6px 18px;border-radius:100px;margin-bottom:20px;
}
.h-pricing .section-header h2 { color:white; }
.price-toggle {
  display:flex;align-items:center;justify-content:center;
  gap:4px;margin-bottom:48px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:100px;padding:4px;
  width:fit-content;margin:0 auto 48px;
}
.pt-btn {
  padding:8px 24px;border-radius:100px;border:none;cursor:pointer;
  font-size:.9rem;font-weight:600;
  background:transparent;color:rgba(255,255,255,.5);
  transition:all .2s;display:flex;align-items:center;gap:8px;
}
.pt-btn.pt-active { background:linear-gradient(135deg,#667eea,#764ba2);color:white; }
.pt-save {
  font-size:.7rem;font-weight:700;background:#10b981;
  color:white;padding:2px 8px;border-radius:100px;
}
.price-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
.price-card {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;padding:36px 32px;
  transition:all .35s;position:relative;
}
.price-card:hover { background:rgba(255,255,255,.07);border-color:rgba(102,126,234,.3);transform:translateY(-8px);box-shadow:0 24px 60px rgba(0,0,0,.4); }
.pc-featured {
  background:rgba(102,126,234,.1) !important;
  border-color:rgba(102,126,234,.4) !important;
  box-shadow:0 0 0 1px rgba(102,126,234,.3),0 20px 60px rgba(102,126,234,.15);
}
.pc-popular {
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:linear-gradient(135deg,#667eea,#764ba2);
  color:white;font-size:.75rem;font-weight:700;
  padding:5px 20px;border-radius:100px;white-space:nowrap;
}
.pc-name { font-size:1rem;font-weight:700;color:rgba(255,255,255,.7);margin-bottom:16px; }
.pc-price { display:flex;align-items:baseline;gap:2px;margin-bottom:8px; }
.pc-currency { font-size:1.5rem;font-weight:700;color:white; }
.pc-amount { font-size:3rem;font-weight:900;line-height:1;color:white; }
.pc-per { font-size:.875rem;color:rgba(255,255,255,.4); }
.pc-desc { font-size:.875rem;color:rgba(255,255,255,.4);margin-bottom:24px; }
.pc-features { list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:28px; }
.pc-features li { display:flex;align-items:center;gap:10px;font-size:.9rem;color:rgba(255,255,255,.7); }
.pc-yes::before { content:'✓';color:#10b981;font-weight:900;flex-shrink:0; }
.pc-no  { opacity:.4; }
.pc-no::before  { content:'–';color:rgba(255,255,255,.3);font-weight:900;flex-shrink:0; }
.btn-block { width:100%;text-align:center;justify-content:center; }
.pc-featured .btn-gradient { box-shadow:0 8px 24px rgba(102,126,234,.4); }
.price-card .btn-outline {
  border-color:rgba(255,255,255,.2) !important;
  color:rgba(255,255,255,.7) !important;
}

/* ===== ⑦ 安全保障 ===== */
.h-security { position:relative;padding:100px 0;background:#08080f;overflow:hidden; }
.sec-bg {
  position:absolute;inset:0;
  background:radial-gradient(ellipse 50% 60% at 50% 50%,rgba(102,126,234,.05),transparent 70%);
}
.sec-badge {
  display:inline-block;
  background:linear-gradient(135deg,#667eea,#764ba2);
  color:white;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  padding:6px 18px;border-radius:100px;margin-bottom:20px;
}
.h-security .section-header h2 { color:white; }
.sec-grid {
  display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
  position:relative;z-index:1;
}
.sec-card {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  border-radius:20px;padding:32px 24px;
  transition:all .35s;
}
.sec-card:hover { background:rgba(255,255,255,.07);border-color:rgba(102,126,234,.3);transform:translateY(-6px); }
.sec-icon-wrap {
  width:52px;height:52px;border-radius:14px;
  background:linear-gradient(135deg,rgba(var(--c1),0.15),rgba(var(--c2),0.15));
  border:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:18px;
  background: rgba(102,126,234,.12);
}
.sec-card h4 { font-size:1rem;font-weight:700;color:white;margin-bottom:8px; }
.sec-card p  { font-size:.875rem;line-height:1.65;color:rgba(255,255,255,.5); }

/* ===== Responsive ===== */
@media (max-width: 1024px) {
  .feat-grid      { grid-template-columns:repeat(2,1fr); }
  .how-steps      { grid-template-columns:1fr;gap:32px; }
  .how-connector  { display:none; }
  .price-grid     { grid-template-columns:1fr; max-width:420px;margin:0 auto; }
  .sec-grid       { grid-template-columns:repeat(2,1fr); }
  .hs-grid        { grid-template-columns:repeat(2,1fr); }
  .hs-item        { border-right:none;border-bottom:1px solid rgba(255,255,255,.05); }
}

@media (max-width: 768px) {
  .topbar-link    { display:none; }
  .hh-title       { font-size:2.4rem; }
  .hh-actions     { flex-direction:column; }
  .hl-grid        { grid-template-columns:1fr; }
  .feat-grid      { grid-template-columns:1fr; }
  .price-grid     { grid-template-columns:1fr; }
  .sec-grid       { grid-template-columns:1fr; }
  .hs-grid        { grid-template-columns:repeat(2,1fr); }
  .hl-insight     { flex-direction:column;text-align:center; }
}
