/* Political Intelligence Platform · Home page (index.html) investor sections, prefix hm-.
   Loaded last. Reading floor: body 16–17px, labels ≥14px, every headline number ≥40px.
   #pitch is warm (the numbers carry it), #grow is violet (today is the one lit milestone). */

.hm-pitchsec, .hm-growsec { padding-block: clamp(84px, 8.6vw, 136px); }
#teaser-how.tight-top { padding-top: 0; }

/* ============================================================ the case in four cards (warm) */
.hm-pitch { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 22px); }
.hm-pitch a {
  height: 100%; display: flex; flex-direction: column; gap: 10px; padding: 10px 10px clamp(22px, 2vw, 28px);
  border-radius: var(--radius-lg); background: var(--ec-card); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .09);
  color: #fff; text-decoration: none; transition: box-shadow .3s var(--ease), background-color .3s var(--ease);
}
.hm-pitch a:hover { box-shadow: inset 0 0 0 1px rgba(254, 136, 27, .5); }
.hm-pitch a:focus-visible { outline: 2px solid var(--sky); outline-offset: 3px; }
.hm-art { display: block; position: relative; aspect-ratio: 400 / 240; margin-bottom: 8px; border-radius: 22px; overflow: hidden; background: radial-gradient(80% 70% at 50% 112%, rgba(129, 48, 255, .24), transparent 72%), #08080a; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .05); }
.hm-art .iv-art { position: absolute; inset: 0; width: 100%; height: 100%; }
.hm-n, .hm-big, .hm-t, .hm-go { margin-inline: clamp(10px, 1.2vw, 16px); }
.hm-n { color: #ffb36b; font-size: 15px; font-weight: 600; letter-spacing: .01em; }
.hm-big { font-size: clamp(40px, 3.4vw, 52px); font-weight: 500; letter-spacing: -.035em; line-height: 1.02; font-variant-numeric: tabular-nums; }
.hm-t { color: rgba(255, 255, 255, .8); font-size: 16.5px; line-height: 1.5; }
.hm-go { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 8px; color: #ffb36b; font-size: 16px; font-weight: 600; }
.hm-go svg { width: 18px; height: 18px; transition: transform .35s var(--ease); }
.hm-pitch a:hover .hm-go svg { transform: translateX(4px); }
@media (max-width: 1100px) { .hm-pitch { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .hm-pitch { grid-template-columns: minmax(0, 1fr); } }

/* ============================================================ how it grows (violet) */
.hm-grow { padding: 10px 10px clamp(26px, 3vw, 40px); border-radius: var(--radius-lg); background: var(--ec-card); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .09); }
.hm-grow-art { position: relative; aspect-ratio: 1200 / 400; border-radius: 22px; overflow: hidden; background: radial-gradient(70% 70% at 70% 112%, rgba(129, 48, 255, .28), transparent 72%), #08080a; }
.hm-grow-art .iv-art { position: absolute; inset: 0; width: 100%; height: 100%; }
.hm-ms { list-style: none; margin: clamp(20px, 2.4vw, 30px) 0 0; padding: 0 clamp(6px, 1vw, 14px); display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 22px); text-align: center; }
.hm-ms li { display: grid; justify-items: center; align-content: start; gap: 8px; }
.hm-when { display: inline-flex; align-items: center; height: 32px; padding: 0 12px; border-radius: 999px; font-size: 14.5px; font-weight: 600; color: rgba(255, 255, 255, .78); background: rgba(255, 255, 255, .06); }
.hm-ms .is-now .hm-when { background: #8130ff; color: #fff; }
.hm-ms b { font-size: clamp(18px, 1.5vw, 21px); font-weight: 600; line-height: 1.25; }
.hm-ms li > span:last-child { color: var(--muted-foreground); font-size: 15.5px; line-height: 1.45; max-width: 24ch; }
@media (max-width: 1000px) { .hm-ms { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 30px; } }
@media (max-width: 560px) { .hm-ms { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
