/* Shared final typography and credential treatment for static pages. */
:root {
  --type-body: 16px;
  --type-lead: 18px;
  --type-small: 14px;
  --type-h1: 44px;
  --type-h2: 32px;
  --type-h3: 20px;
  --type-control: 15px;
  --trustpilot: #00B67A;
}
html, body { font-size: var(--type-body); }
body p, body li, .prose, .faq-body, .faq-answer { font-size: var(--type-body) !important; }
body h1 { font-size: var(--type-h1) !important; line-height: 1.15; }
body h2 { font-size: var(--type-h2) !important; line-height: 1.2; }
body h3 { font-size: var(--type-h3) !important; line-height: 1.3; }
h1, h2, h3, h4 { letter-spacing: 0 !important; }
body .lead, body .hero-sub, .section-head > p { font-size: var(--type-lead) !important; line-height: 1.6; }
body .btn, body .nav-link, body .nav-back, body button, body summary { font-size: var(--type-control) !important; }
body .btn { max-width: 100%; white-space: normal; line-height: 1.3; text-align: center; }
body small, body .eyebrow, body .lp-eyebrow, body .hero-eyebrow,
body .hero-meta, body .lp-meta, body .stat-label, body .strip-head,
body .foot-tag, body .foot-bottom, body .foot-col h4,
body .demo-cap, body .demo-url, body .package-note,
body .package-name, body .package-list li, body .work-card li,
body .product .feat-list li, body .product .desc, body .product .small-tag,
body .post p, body .post .meta, body .post-tag, body .art-meta,
body .crumbs, body .art-cat, body .prose small, body .review blockquote,
body .review-who .name, body .review-who .role, body .mentor-role,
body .mentor-companies, body .form-note, body .form-status,
body .form-privacy, body .privacy-note, body .flex-note,
body .included-pill, body .field label, body .chip, body .dropdown-text small {
  font-size: var(--type-small) !important;
}
body .mentor-name { font-size: var(--type-control) !important; }
body .inst h2 { font-size: var(--type-small) !important; }
body .helper-note { font-size: var(--type-small) !important; }
body .career-heading { font-size: var(--type-h3) !important; }
body .platform-price, body .package-card h3 { font-size: 28px !important; }
body .product p[style*="font-size:28px"], body .cohort-card p[style*="font-size:28px"] { font-size: 28px !important; }
body .stat-num { font-size: 32px; }
body .hero .stat-num { font-size: 19px; }
section.block { padding-top: 64px; padding-bottom: 64px; }
body .section-head { margin-bottom: 36px; }
body .hero { padding-top: 64px; padding-bottom: 56px; }
body .hero-grid { margin-bottom: 36px; }
body .page-hero, body .lp-hero { padding-top: 64px; padding-bottom: 48px; }
body .final { padding-top: 72px; padding-bottom: 72px; }
/* Separate green boxes, with a white star in each box. */
body .tp-stars, body .tp-stars-big {
  display: inline-flex; align-items: center; flex: 0 0 auto; gap: 2px;
  padding: 0; background: none; border-radius: 0; letter-spacing: 0;
}
body .tp-stars svg, body .tp-stars-big svg {
  width: 18px; height: 18px; padding: 2px;
  background: var(--trustpilot); fill: var(--white); color: var(--white);
}
body .trustpilot-badge {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 9px;
  padding: 8px 10px; border: 1px solid var(--border); border-radius: 6px;
  background: var(--white); color: var(--ink); font-size: 13px !important;
  line-height: 1.5; text-decoration: none;
}
body .trustpilot-badge:hover { border-color: var(--trustpilot); }
body .hero-trustpilot { margin: 4px 0 16px; }
body .top-bar, body .top-bar-inner, body .top-bar a { font-size: 13px !important; }
/* Equal-height brand slots retain native brand colours and cap wordmarks. */
body .marquee-track { align-items: center; gap: 48px; padding-right: 48px; }
body .marquee-track img {
  height: 36px; width: 110px; max-width: 110px; object-fit: contain;
  flex: 0 0 110px; filter: none; opacity: 1;
}
body .marquee-track img.new-company-logo { filter: none; opacity: 1; }
body .marquee-track img.brand-openai { height: 24px; }
body .marquee-track img.brand-anthropic { height: 18px; }
body .marquee-track img.brand-elevenlabs { height: 18px; }
body .marquee-track img.brand-mistral { height: 24px; }
body .marquee-track img.brand-nvidia { height: 24px; }
body .marquee-track img.brand-granola,
body .marquee-track img.brand-lovable { height: 28px; }
@media (max-width: 720px) {
  :root { --type-h1: 32px; --type-h2: 26px; }
  section.block { padding-top: 48px; padding-bottom: 48px; }
  body .hero, body .page-hero, body .lp-hero { padding-top: 44px; padding-bottom: 40px; }
  body .section-head { margin-bottom: 28px; }
  body .marquee-track { gap: 32px; padding-right: 32px; }
  body .marquee-track img { width: 96px; max-width: 96px; flex-basis: 96px; }
  body .stat-num { font-size: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  html, body { scroll-behavior: auto; }
  .marquee-track, .reviews-track { animation: none !important; }
}
