/* ANVA Balance — design-system components.
   Tokens come from tokens.css (--anva-*). Keep this lean; prefer core-block
   styling (theme.json palette) and only add classes for what core can't express. */

/* ── Section rhythm ─────────────────────────────────────────── */
.anva-section            { padding-block: clamp(3rem, 6vw, 5.5rem); }
.anva-section--tint      { background: var(--anva-grey-light); }
.anva-section--brand     { background: var(--anva-blue); color: #fff; }
.anva-section--brand h2,
.anva-section--brand h3  { color: #fff; }

/* ── Eyebrow (small clinical label above a heading) ─────────── */
.anva-eyebrow {
  display: inline-block;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--anva-purple);
  margin-bottom: .5rem;
}
.anva-section--brand .anva-eyebrow { color: var(--anva-lime); }

/* ── Card ───────────────────────────────────────────────────── */
.anva-card {
  background: #fff;
  border-radius: var(--anva-radius);
  padding: clamp(1.25rem, 2.5vw, 2rem);
  box-shadow: 0 2px 8px rgba(45, 55, 72, .06), 0 1px 2px rgba(45, 55, 72, .08);
  height: 100%;
}

/* ── Numbered step badge ────────────────────────────────────── */
.anva-step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: var(--anva-blue);
  color: #fff;
  font-weight: 600;
  margin-bottom: .75rem;
}

/* ── Media placeholder (stands in until real renders/screens land) ── */
.anva-media-ph {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  border-radius: var(--anva-radius);
  background: linear-gradient(135deg, var(--anva-lavender), var(--anva-grey-light));
  color: var(--anva-grey-dark);
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-align: center;
  border: 1px dashed rgba(45, 55, 72, .25);
}
.anva-media-ph--portrait { aspect-ratio: 9 / 16; }

/* ── Price card emphasis ────────────────────────────────────── */
.anva-card--featured { outline: 2px solid var(--anva-purple); outline-offset: -2px; }
.anva-plan-tag {
  display: inline-block;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #fff;
  background: var(--anva-purple);
  border-radius: 999px;
  padding: .2rem .7rem;
}
