.ms-hero {
    padding: clamp(40px, 7vw, 88px) 0 24px;
    text-align: center;
}

.ms-eyebrow {
    display: inline-block;
    padding: 6px 10px;
    border: 1px solid var(--border);
    border-radius: 999px;
    font-size: .9rem;
    color: var(--muted);
    background: var(--surface);
}

.ms-hero h1 {
    font-size: clamp(28px, 5.2vw, 48px);
    line-height: 1.12;
    margin: 12px 0 8px;
    letter-spacing: .2px;
}

.ms-hero p {
    font-size: clamp(16px, 2.1vw, 18px);
    color: var(--muted);
}

.ms-hero .ms-cta-row {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 18px;
}

/* ===== Trust strip ===== */
.ms-trust {
    padding: 10px 0 18px;
}

.ms-trust ul {
    display: flex;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
    color: var(--muted);
    list-style: none;
}

.ms-star {
    width: 16px;
    height: 16px;
    vertical-align: -2px;
}

/* ===== Cards & grids ===== */
.ms-price {
    font-weight: 700;
    color: var(--text);
}

.ms-list {
    color: var(--muted);
}

.ms-hero__meta{
  display:flex; gap:10px; flex-wrap:wrap; justify-content:center;
  margin: clamp(10px,2vw,14px) 0 8px;
}
.ms-pill{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.5rem .8rem; border-radius:999px;
  border:1px solid var(--border); background: var(--panel);
  font-size: clamp(14px,1.6vw,16px); line-height:1; color:var(--text);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}
.ms-pill b{ font-weight:700; color: var(--text); }

.ms-hero__sub{
  margin: 4px 0 18px;
  color: var(--muted); text-align:center;
  font-size: clamp(13.5px,1.5vw,15px); line-height:1.5;
  opacity:.9;
}
.ms-hero__sub .dot{ opacity:.6; padding:0 .4rem; }

.ms-hero { opacity: 0; transform: translateY(16px); transition: opacity .6s, transform .6s; }
.ms-hero.animate { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .hero, .hero.animate {
    transition: none;
    transform: none;
    opacity: 1;
  }
}