/* ============================================================
   ANAVSAN /home/v2 — richer UI + motion
   Isolated from /home (v1). Does not alter the live index.
   ============================================================ */

.hv2 {
  --sf: #29b5e8;
  --bq: #669df6;
  --run: #22c55e;
  --opt: #a78bfa;
  --redir: #38bdf8;
  --rev: #f59e0b;
  overflow-x: clip;
}

.hv2-reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.7s var(--ease-out), transform 0.7s var(--ease-out);
  transition-delay: var(--d, 0ms);
}
.hv2-reveal.is-in {
  opacity: 1;
  transform: none;
}

/* ========================
   HERO
   ======================== */
.hv2-hero {
  position: relative;
  padding: 108px 28px 56px;
  overflow: hidden;
}
.hv2-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 55% 48% at 18% 0%, rgba(111, 81, 206, 0.32), transparent 62%),
    radial-gradient(ellipse 40% 40% at 92% 18%, rgba(41, 181, 232, 0.12), transparent 58%),
    radial-gradient(ellipse 30% 34% at 70% 90%, rgba(34, 197, 94, 0.08), transparent 55%);
}
.hv2-hero-grid {
  position: relative;
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}
.hv2-hero h1 {
  font-size: clamp(2.05rem, 4.4vw, 3.4rem);
  letter-spacing: -0.04em;
  line-height: 1.06;
  margin: 10px 0 14px;
}
.hv2-lede {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--text-2);
  max-width: 34rem;
  margin-bottom: 20px;
}
.hv2-who {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 0 0 20px;
  font-size: 0.9rem;
  color: var(--text-2);
}
.hv2-who strong { color: var(--text-0); font-weight: 700; }
.hv2-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 16px;
}
.hv2-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  font-size: 0.8125rem;
  color: var(--text-3);
}
.hv2-trust span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.hv2-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--green-light);
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.18);
}

.hv2-map {
  padding: 22px 20px 18px;
  border-radius: 22px;
  border: 1px solid var(--border-1);
  background: var(--bg-card);
}
.hv2-map-k {
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--brand-light);
  margin-bottom: 14px;
}
.hv2-map-steps {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: grid;
  gap: 8px;
}
.hv2-map-steps li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text-1);
}
.hv2-map-steps span {
  width: 22px; height: 22px; border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.75rem; font-weight: 800;
  background: rgba(111,81,206,.14); color: var(--brand-light);
  flex-shrink: 0;
}
.hv2-map-acts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.hv2-map-acts article {
  padding: 12px 12px 10px;
  border-radius: 12px;
  border: 1px solid var(--border-1);
  background: var(--bg-1);
}
.hv2-map-acts strong {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.8125rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: var(--text-0);
  margin-bottom: 2px;
}
.hv2-map-acts p { font-size: 0.75rem; color: var(--text-3); }
.hv2-map-acts article:nth-child(1) strong { color: #86efac; }
.hv2-map-acts article:nth-child(2) strong { color: #c4b5fd; }
.hv2-map-acts article:nth-child(3) strong { color: #7dd3fc; }
.hv2-map-acts article:nth-child(4) strong { color: #fcd34d; }
[data-theme="light"] .hv2-map-acts article:nth-child(1) strong { color: #166534; }
[data-theme="light"] .hv2-map-acts article:nth-child(2) strong { color: #5b21b6; }
[data-theme="light"] .hv2-map-acts article:nth-child(3) strong { color: #075985; }
[data-theme="light"] .hv2-map-acts article:nth-child(4) strong { color: #92400e; }

/* ========================
   SECTIONS
   ======================== */
.hv2-sec { padding: 72px 0; position: relative; }
.hv2-sec--alt { background: var(--bg-1); }
.hv2-kicker {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--brand-light); margin-bottom: 8px;
}
.hv2-kicker::before {
  content: ""; width: 16px; height: 2px; border-radius: 2px; background: var(--grad-brand);
}
.hv2-center { text-align: center; }
.hv2-center .hv2-kicker { justify-content: center; }
.hv2-center .hv2-kicker::before { display: none; }
.hv2-center .hv2-lede { margin-left: auto; margin-right: auto; }
.hv2-sec h2 { margin-bottom: 10px; }
.hv2-prose { font-size: 1rem; line-height: 1.6; color: var(--text-2); max-width: 36rem; }

/* Growth */
.hv2-growth {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin: 28px 0 20px;
}
.hv2-gcard {
  position: relative;
  padding: 20px 18px 18px;
  border-radius: 18px;
  border: 1px solid var(--border-1);
  background: var(--bg-card);
  overflow: hidden;
  transition: transform 0.3s var(--ease-out), border-color 0.3s ease, box-shadow 0.3s ease;
}
.hv2-gcard:hover {
  transform: translateY(-4px);
  border-color: var(--border-brand-sub);
  box-shadow: var(--shadow-card-hover);
}
.hv2-gicon {
  width: 34px; height: 34px; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 12px;
  background: rgba(111, 81, 206, 0.12);
  color: var(--brand-light);
}
.hv2-gcard strong {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.95rem;
  color: var(--text-0);
  margin-bottom: 6px;
}
.hv2-gcard p { font-size: 0.8125rem; color: var(--text-3); }

.hv2-compare {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.hv2-console {
  border-radius: 18px;
  border: 1px solid var(--border-1);
  background: var(--bg-card);
  overflow: hidden;
}
.hv2-console--next {
  border-color: var(--border-brand);
  background: linear-gradient(180deg, rgba(111,81,206,0.12), rgba(111,81,206,0.03));
}
.hv2-console-h {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 14px;
  border-bottom: 1px solid var(--border-1);
  font-size: 0.75rem; font-weight: 700; color: var(--text-3);
}
.hv2-console-b { padding: 18px 16px 20px; }
.hv2-console-b h3 { font-size: 1.05rem; margin-bottom: 8px; }
.hv2-next-row {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px;
}
.hv2-next-row b {
  padding: 5px 9px; border-radius: 999px;
  font-size: 0.6875rem; font-weight: 700;
  background: rgba(111,81,206,0.14); color: var(--brand-light);
}

/* ========================
   MACHINE
   ======================== */
.hv2-machine {
  max-width: 880px;
  margin: 40px auto 0;
  border-radius: 26px;
  border: 1px solid var(--border-brand);
  background:
    radial-gradient(ellipse 70% 40% at 50% 0%, rgba(111,81,206,0.18), transparent 55%),
    var(--bg-2);
  box-shadow: 0 24px 64px rgba(0,0,0,0.28);
  overflow: hidden;
}
[data-theme="light"] .hv2-machine { background: #fff; box-shadow: var(--shadow-lg); }
.hv2-machine-top {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border-1);
  flex-wrap: wrap;
}
.hv2-tabs { display: flex; flex-wrap: wrap; gap: 6px; }
.hv2-tab {
  appearance: none; border: 1px solid var(--border-1);
  background: transparent; color: var(--text-3);
  padding: 6px 10px; border-radius: 999px;
  font-size: 0.6875rem; font-weight: 700;
  cursor: pointer;
  transition: 0.2s ease;
}
.hv2-tab.is-on, .hv2-tab:hover {
  color: var(--text-0);
  border-color: var(--border-brand);
  background: rgba(111,81,206,0.12);
}

.hv2-machine-body { padding: 22px 22px 24px; }
.hv2-stage { display: flex; flex-direction: column; align-items: center; }
.hv2-lbl {
  font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--text-3); margin-bottom: 8px;
}
.hv2-mini-mark {
  width: 34px; height: 34px; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.625rem; font-weight: 800; letter-spacing: 0.04em;
  background: rgba(111, 81, 206, 0.16); color: var(--brand-light);
  flex-shrink: 0;
}
.hv2-mini-name {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.8125rem; font-weight: 700; color: var(--text-0);
}
.hv2-mini-meta { display: block; font-size: 0.6875rem; color: var(--text-3); }
.hv2-wl {
  width: min(100%, 460px);
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px; border-radius: 14px;
  border: 1px solid var(--border-0); background: var(--bg-card);
}
.hv2-machine.is-ready .hv2-sig,
.hv2-machine.is-ready .hv2-path { opacity: 1; transform: none; }

.hv2-line {
  width: 2px; height: 20px; margin: 8px 0;
  background: var(--border-1);
}

.hv2-engine {
  width: min(100%, 680px);
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(111,81,206,.4);
  background: linear-gradient(180deg, rgba(111,81,206,.16), rgba(111,81,206,.04));
  position: relative;
}
.hv2-engine-h {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  margin-bottom: 14px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.8125rem; font-weight: 800; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--text-0);
}
.hv2-orb {
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--brand-light);
  box-shadow: 0 0 0 6px rgba(111,81,206,.16);
}
.hv2-sigs {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px;
}
.hv2-sig {
  padding: 10px; border-radius: 12px;
  border: 1px solid var(--border-1);
  background: rgba(0,0,0,.16);
}
[data-theme="light"] .hv2-sig { background: rgba(255,255,255,.7); }
.hv2-sig.is-on {
  border-color: rgba(111,81,206,.4);
  background: rgba(111,81,206,.14);
}
.hv2-sig-k {
  display: block; font-size: 0.625rem; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase; color: var(--text-3); margin-bottom: 3px;
}
.hv2-sig-v { display: block; font-size: 0.8125rem; font-weight: 600; color: var(--text-1); }

.hv2-decs {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 8px; width: min(100%, 680px);
}
.hv2-dec {
  padding: 12px 8px; border-radius: 12px;
  border: 1px solid var(--border-1); background: var(--bg-card);
  text-align: center;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.75rem; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: var(--text-3);
  transition: 0.35s var(--ease-out);
}
.hv2-dec.is-on { transform: translateY(-3px); color: var(--text-0); }
.hv2-dec[data-key="run"].is-on { border-color: rgba(34,197,94,.5); background: rgba(34,197,94,.14); color: #86efac; }
.hv2-dec[data-key="optimize"].is-on { border-color: rgba(167,139,250,.55); background: rgba(167,139,250,.16); color: #ddd6fe; }
.hv2-dec[data-key="redirect"].is-on { border-color: rgba(56,189,248,.5); background: rgba(56,189,248,.14); color: #7dd3fc; }
.hv2-dec[data-key="review"].is-on { border-color: rgba(245,158,11,.5); background: rgba(245,158,11,.14); color: #fcd34d; }
[data-theme="light"] .hv2-dec[data-key="run"].is-on { color: #166534; }
[data-theme="light"] .hv2-dec[data-key="optimize"].is-on { color: #5b21b6; }
[data-theme="light"] .hv2-dec[data-key="redirect"].is-on { color: #075985; }
[data-theme="light"] .hv2-dec[data-key="review"].is-on { color: #92400e; }

.hv2-path {
  width: min(100%, 680px);
  min-height: 70px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(34,197,94,.4);
  background: rgba(34,197,94,.08);
  text-align: center;
}
.hv2-path-k {
  font-size: 0.6875rem; font-weight: 800; letter-spacing: .12em;
  text-transform: uppercase; color: #86efac; margin-bottom: 6px;
}
[data-theme="light"] .hv2-path-k { color: #166534; }
.hv2-path-v { font-size: 0.9375rem; font-weight: 600; color: var(--text-0); }
.hv2-cap { text-align: center; margin-top: 14px; font-size: 0.8125rem; color: var(--text-3); }

/* ========================
   STEPPER / CARDS
   ======================== */
.hv2-split {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 48px;
  align-items: center;
}
.hv2-steps { display: grid; gap: 0; }
.hv2-step {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 14px;
  padding: 0 0 22px;
}
.hv2-step:last-child { padding-bottom: 0; }
.hv2-step-rail {
  display: flex; flex-direction: column; align-items: center;
}
.hv2-step-n {
  width: 28px; height: 28px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.6875rem; font-weight: 800;
  background: rgba(111,81,206,.14); color: var(--brand-light);
  flex-shrink: 0;
}
.hv2-step-rail::after {
  content: "";
  width: 2px; flex: 1; min-height: 18px; margin-top: 6px;
  background: var(--border-1);
}
.hv2-step:last-child .hv2-step-rail::after { display: none; }
.hv2-step h3 { font-size: 1rem; margin-bottom: 4px; }
.hv2-step p { font-size: 0.9rem; }

.hv2-apex-flow {
  list-style: none;
  margin: 28px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.hv2-af {
  position: relative;
  min-width: 0;
  padding: 20px 18px 18px;
  border-radius: 18px;
  border: 1px solid var(--border-0);
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)),
    var(--bg-card);
}
[data-theme="light"] .hv2-af {
  background: var(--bg-card);
  border-color: var(--border-1);
}
.hv2-af:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 38px;
  right: -10px;
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--brand-light);
  border-right: 2px solid var(--brand-light);
  transform: rotate(45deg);
  z-index: 2;
  pointer-events: none;
}
.hv2-af-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.hv2-af-icon {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(111, 81, 206, 0.22);
  color: #d4c6ff;
}
[data-theme="light"] .hv2-af-icon {
  background: rgba(111, 81, 206, 0.12);
  color: var(--brand);
}
.hv2-af-k {
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: var(--text-4);
}
.hv2-af h3 {
  font-size: 1.15rem;
  letter-spacing: -0.03em;
  margin-bottom: 8px;
}
.hv2-af p {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--text-2);
}
.hv2-apex-out {
  margin: 18px auto 0;
  max-width: 36rem;
  text-align: center;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--text-1);
}

/* Platforms */
.hv2-plats {
  display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 28px;
}
.hv2-plat {
  border-radius: 20px; border: 1px solid var(--border-1);
  background: var(--bg-card); overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hv2-plat:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.hv2-plat--sf { border-color: rgba(41,181,232,.28); }
.hv2-plat--bq { border-color: rgba(66,133,244,.28); }
.hv2-plat-h {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 18px; border-bottom: 1px solid var(--border-1);
}
.hv2-ptag {
  font-size: 0.6875rem; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; padding: 4px 10px; border-radius: 999px;
}
.hv2-plat--sf .hv2-ptag { color: var(--sf); background: rgba(41,181,232,.1); }
.hv2-plat--bq .hv2-ptag { color: var(--bq); background: rgba(66,133,244,.1); }
.hv2-plat-b { padding: 20px 18px 18px; }
.hv2-plat-b h3 { margin-bottom: 8px; }
.hv2-rows { margin-top: 16px; display: grid; gap: 6px; }
.hv2-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 10px; border-radius: 10px;
  background: rgba(255,255,255,.03);
  font-size: 0.8125rem; color: var(--text-2);
}
.hv2-row em { font-style: normal; font-weight: 700; color: var(--text-1); font-size: 0.75rem; }
.hv2-row.is-scan em { color: var(--brand-light); }

/* For DataOps / CIO */
#for, #dataops, #exec { scroll-margin-top: 88px; }
.hv2-for {
  margin-top: 28px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: stretch;
}
.hv2-for-lane {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 20px 18px 16px;
  border-radius: 20px;
  border: 1px solid var(--border-1);
  background: var(--bg-card);
}
.hv2-for-lane--exec {
  background:
    linear-gradient(180deg, rgba(111,81,206,.10), transparent 42%),
    var(--bg-card);
}
.hv2-for-head { margin-bottom: 12px; }
.hv2-for-role {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--brand-light);
  margin-bottom: 10px;
}
.hv2-for-head h3 {
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  letter-spacing: -0.03em;
  margin: 0 0 8px;
}
.hv2-for-lede {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--text-2);
}

.hv2-workflow {
  flex: 1;
  border-radius: 18px;
  border: 1px solid var(--border-1);
  background: var(--bg-1);
  overflow: hidden;
}
.hv2-wf-stages {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  padding: 10px;
  border-bottom: 1px solid var(--border-1);
}
.hv2-wf-stages span {
  text-align: center;
  padding: 6px 4px;
  border-radius: 8px;
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-4);
  background: transparent;
  transition: color 0.25s ease, background 0.25s ease;
}
.hv2-wf-stages span.is-on {
  color: var(--brand-light);
  background: rgba(111,81,206,.14);
}
.hv2-wf-list {
  list-style: none;
  margin: 0;
  padding: 8px;
  position: relative;
}
.hv2-wf-item {
  position: relative;
  border-radius: 12px;
  border: 1px solid transparent;
  margin-bottom: 4px;
  transition: border-color 0.25s ease, background 0.25s ease;
}
.hv2-wf-item:last-child { margin-bottom: 0; }
.hv2-wf-item.is-on {
  border-color: var(--border-brand);
  background: rgba(111,81,206,.08);
}
.hv2-wf-q {
  width: 100%;
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--text-1);
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: center;
  padding: 11px 12px;
  text-align: left;
  cursor: pointer;
  font: inherit;
}
.hv2-qn {
  width: 22px; height: 22px; border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.75rem; font-weight: 800;
  background: rgba(111,81,206,.14); color: var(--brand-light);
}
.hv2-wf-qtext { font-size: 0.9rem; font-weight: 600; line-height: 1.35; }
.hv2-wf-a-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease;
}
.hv2-wf-item.is-on .hv2-wf-a-wrap { grid-template-rows: 1fr; }
.hv2-wf-a-wrap > .hv2-wf-a {
  overflow: hidden;
  min-height: 0;
  margin: 0 12px 0 50px;
  padding: 0 0 0;
  font-size: 0.8125rem;
  color: var(--text-3);
  line-height: 1.5;
  opacity: 0;
  transition: opacity 0.25s ease, padding 0.25s ease, margin 0.25s ease;
}
.hv2-wf-item.is-on .hv2-wf-a {
  opacity: 1;
  padding-bottom: 12px;
}

.hv2-board {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 18px;
  border-radius: 16px;
  border: 1px solid var(--border-brand);
  background: linear-gradient(160deg, rgba(111,81,206,.16), rgba(111,81,206,.03));
}
.hv2-board-q {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.35;
  color: var(--text-0);
  margin-bottom: 12px;
}
.hv2-board-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.hv2-board-card {
  padding: 16px;
  border-radius: 14px;
  background: rgba(255,255,255,.04);
  border: 1px solid var(--border-1);
}
.hv2-board-card span {
  display: block;
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.hv2-board-card--keep span { color: #86efac; }
.hv2-board-card--fix span { color: var(--brand-light); }
[data-theme="light"] .hv2-board-card--keep span { color: #166534; }
.hv2-board-card strong {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.95rem;
  color: var(--text-0);
  margin-bottom: 6px;
}
.hv2-board-card p { font-size: 0.8125rem; color: var(--text-2); }

/* Security */
.hv2-secure { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 24px; }
.hv2-secure article {
  padding: 18px; border-radius: 16px;
  border: 1px solid var(--border-1); background: var(--bg-card);
}
.hv2-lock {
  width: 36px; height: 36px; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(16,185,129,.12); color: #34d399; margin-bottom: 12px;
}
.hv2-secure h3 { margin-bottom: 8px; }
.hv2-secure p { font-size: 0.9rem; }

.hv2-cta .cta-banner-content { max-width: 720px; }

@media (max-width: 980px) {
  .hv2-hero-grid, .hv2-split, .hv2-compare, .hv2-plats, .hv2-for, .hv2-board-grid, .hv2-secure { grid-template-columns: 1fr; }
  .hv2-apex-flow { grid-template-columns: 1fr 1fr; }
  .hv2-af:nth-child(2)::after { display: none; }
  .hv2-growth { grid-template-columns: 1fr 1fr; }
  .hv2-sec { padding: 56px 0; }
  .hv2-hero { padding: 100px 20px 48px; }
}
@media (max-width: 640px) {
  .hv2-growth { grid-template-columns: 1fr; }
  .hv2-sigs { grid-template-columns: 1fr 1fr; }
  .hv2-decs, .hv2-mini-dec { grid-template-columns: 1fr 1fr; }
  .hv2-apex-flow { grid-template-columns: 1fr; }
  .hv2-af::after { display: none; }
  .hv2-lanes { grid-template-columns: 1fr; }
  .hv2-machine-body { padding: 16px 12px 18px; }
  .hv2-for-lane { padding: 22px 16px 16px; }
  .hv2-wf-qtext { font-size: 0.85rem; }
}
@media (prefers-reduced-motion: reduce) {
  .hv2-reveal, .hv2-gcard {
    animation: none !important; transition: none !important;
    opacity: 1 !important; transform: none !important;
  }
}
