/* NCFE CACHE Level 3 — page styles (EN + RU). Round 2: hero, themes, how it works, assessment, outcomes/who. */

/* Hero */
.l3-hero__title { font-size: clamp(2.1rem, 3.8vw, 3.25rem); line-height: 1.08; text-wrap: balance; }
.lang-ru .l3-hero__title { font-size: clamp(2rem, 3.5vw, 3rem); }
.l3-hero .hero__lead { margin-bottom: 1rem; }
.l3-hero__text { color: var(--bb-ink-2); max-width: 560px; margin-bottom: 2rem; text-wrap: pretty; }
.l3-hero .hero__actions { margin-bottom: 0; gap: 1rem 1.75rem; }
.l3-hero .hero__grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr); }
.l3-hero__photo { aspect-ratio: 4 / 5; max-width: 480px; margin-left: auto; }
.hero--page .l3-hero__photo { aspect-ratio: 4 / 5; }
@media (max-width: 991.98px) {
  .l3-hero .hero__grid { grid-template-columns: minmax(0, 1fr); }
  .hero--page .l3-hero__photo { aspect-ratio: 4 / 3; max-width: none; }
  .l3-hero__photo img { object-position: 50% 35%; }
}

/* Four core themes */
.l3-theme {
  height: 100%; background: var(--bb-white); border: 1px solid var(--bb-sand); border-radius: var(--radius-xl);
  padding: 1.5rem 1.5rem 1.75rem; display: flex; flex-direction: column; gap: .75rem;
  transition: transform .35s var(--ease-out), box-shadow .35s var(--ease-out);
}
.l3-theme:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.l3-theme__num {
  align-self: flex-start; font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--bb-coral-dark); background: var(--bb-coral-soft); border-radius: var(--radius-pill); padding: .3rem .8rem;
}
.l3-theme__title { font-family: var(--font-body); font-weight: 800; font-size: 1.2rem; line-height: 1.3; color: var(--bb-teal-deep); margin: 0; text-wrap: balance; }
.l3-theme__text { color: var(--bb-ink-2); font-size: .98rem; margin: 0; }

/* How it works */
.l3-how__item { align-items: center; }
.l3-how__text { margin: 0; color: var(--bb-ink-2); font-size: 1.05rem; }
.l3-how__text strong { color: var(--bb-teal-deep); }

/* Assessment */
.l3-assess__item {
  height: 100%; background: var(--bb-white); border-radius: var(--radius-lg); padding: 1.5rem;
  display: flex; flex-direction: column; gap: 1rem; border: 1px solid transparent;
}
.l3-assess__text { margin: 0; font-weight: 600; color: var(--bb-teal-deep); line-height: 1.45; }

/* Outcomes + who can apply */
.l3-box { padding: clamp(1.75rem, 3vw, 2.75rem); }
.l3-box__title { font-size: clamp(1.6rem, 2.4vw, 2.1rem); line-height: 1.15; margin-bottom: 1.5rem; text-wrap: balance; }
.card-bb--teal .l3-box__title { color: #fff; }
.l3-box .check-list { margin-bottom: 0; gap: .9rem; }
.l3-box .check-list--light li { color: rgba(255,255,255,.92); }
.l3-cta { margin-top: clamp(2rem, 4vw, 3rem); gap: 1rem 1.75rem; }

@media (prefers-reduced-motion: reduce) {
  .l3-theme:hover { transform: none; }
}
