/* Comfortable reading scale: clear hierarchy without oversized headlines. */
:root {
  --header: 80px;
  --type-hero: clamp(46px, 4.7vw, 68px);
  --type-scene: clamp(32px, 3.1vw, 46px);
  --type-section: clamp(32px, 3vw, 44px);
  --type-stat: clamp(36px, 3.4vw, 50px);
}
body { font-size: 16px; }
.hero h1 {
  font-size: var(--type-hero);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -2px;
}
.scene-copy h2 {
  font-size: var(--type-scene);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -1.2px;
}
.insights h2, .about h2 {
  font-size: var(--type-section);
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -1.2px;
}
.hero-signature, .section-label, .insights .section-label { font-size: 16px; }
.hero-signature { margin-bottom: 26px; }
.hero-description, .product-description {
  font-size: 16px;
  line-height: 1.85;
  letter-spacing: 0;
}
.hero-description { margin-top: 26px; }
.hero-actions { margin-top: 30px; }
.navigation, .header-cta { font-size: 15px; }
.button, .plain-link, .scene-copy .plain-link, .data-bottom .plain-link { font-size: 16px; }
.button { min-height: 50px; padding: 14px 22px; gap: 28px; }
.product-name { font-size: 22px; margin-bottom: 22px; }
.product-name > img { width: 30px; height: 30px; }
.product-symbol { font-size: 30px; }
.journey-top { font-size: 16px; }
.journey-nav button { font-size: 18px; }
.journey-nav button > span { font-size: 14px; }
.metrics { gap: 72px; margin: 45px 0 50px; }
.metrics strong { font-size: var(--type-stat); letter-spacing: -1px; }
.metrics strong > span { font-size: 20px; }
.metrics p { font-size: 16px; margin-top: 12px; }
.insights { padding-top: 92px; padding-bottom: 40px; }
.dashboard-screen { cursor: default; }
.data-bottom p { font-size: 14px; }
.about { padding-block: 96px; }

@media (max-width: 1000px) {
  .hero h1 { font-size: 48px; }
  .scene-copy h2 { font-size: 34px; }
}

@media (max-width: 760px) {
  :root {
    --header: 72px;
    --type-section: 30px;
    --type-stat: 32px;
  }
  .hero h1 { font-size: 36px; line-height: 1.32; letter-spacing: -1.2px; }
  .hero-copy { padding-top: 44px; }
  .hero-signature { font-size: 14px; margin-bottom: 22px; }
  .hero-description, .product-description { font-size: 16px; }
  .hero-description { margin-top: 22px; }
  .hero-actions .button { font-size: 15px; min-height: 48px; padding: 13px 18px; gap: 24px; }
  .hero-actions .plain-link { font-size: 15px; }
  .navigation { font-size: 16px; }
  .header-cta { font-size: 14px; }
  .scene-copy h2 { font-size: 30px; letter-spacing: -.8px; }
  .product-name { font-size: 22px; margin-bottom: 18px; }
  .scene-copy .plain-link, .data-bottom .plain-link { font-size: 15px; }
  .journey-top { font-size: 20px; padding-top: 48px; }
  .metrics { gap: 0; margin: 30px 0 34px; }
  .metrics strong > span { font-size: 16px; }
  .metrics p { font-size: 14px; }
  .insights { padding-top: 60px; padding-bottom: 32px; }
  .about { padding-block: 64px; }
  .about .button { font-size: 15px; min-height: 48px; }
}
