/* ==========================================================================
   Site chrome typography (header + footer) — all public pages
   Matches homepage scale bump from home-typography.css
   ========================================================================== */

:root {
  --tlkv-chrome-font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  --tlkv-chrome-bump: 3px;
  --tlkv-chrome-bump-sm: 2px;
  --tlkv-chrome-bump-xs: 1px;
}

@media (max-width: 991.98px) {
  :root {
    --tlkv-chrome-bump: var(--tlkv-chrome-bump-sm);
  }
}

@media (max-width: 575.98px) {
  :root {
    --tlkv-chrome-bump: var(--tlkv-chrome-bump-xs);
  }
}

/* -------------------------- Header + Nav -------------------------- */
.header-topbar {
  font-family: var(--tlkv-chrome-font-sans);
  font-size: calc(0.75rem + var(--tlkv-chrome-bump));
}

.header .nav-link {
  font-family: var(--tlkv-chrome-font-sans);
  font-size: calc(0.8125rem + var(--tlkv-chrome-bump));
}

/* Desktop brand lockup — size/color only; tracking from header.css */
@media (min-width: 769px) {
  .header-pc .header-brand__line:first-child,
  .header-pc .header-brand__line--accent {
    font-weight: 700 !important;
    color: rgb(240, 229, 87) !important;
  }

  .header-pc .header-brand__line:first-child {
    font-size: var(--tlkv-brand-line-1, 28px) !important;
  }

  .header-pc .header-brand__line--accent {
    font-size: var(--tlkv-brand-line-2, 40px) !important;
  }
}

/* Desktop navbar text only — logo/brand sizes unchanged */
@media (min-width: 1024px) {
  .header-topbar__item {
    font-size: clamp(13px, 0.85vw, 18px) !important;
    line-height: 1.3 !important;
  }

  .header-pc .nav-link {
    font-size: clamp(15px, 1vw, 24px) !important;
    line-height: 1.3 !important;
  }

  .header-pc .header-cta__label,
  .header-pc .header-cta__phone {
    font-size: clamp(14px, 0.95vw, 22px) !important;
    line-height: 1.3 !important;
  }
}

/* Mobile brand lockup — size/color only */
@media (max-width: 768px) {
  .header-brand--mb .header-brand__line,
  .header-brand--mb .header-brand__line:first-child,
  .header-brand--mb .header-brand__line--accent {
    font-size: var(--tlkv-mb-brand-size, clamp(1.1625rem, 2.4vw + 0.81rem, 1.475rem)) !important;
    font-weight: 700 !important;
    color: rgb(240, 229, 87) !important;
  }
}

/* -------------------------- Footer -------------------------- */
.tlkv-global-footer {
  font-family: var(--tlkv-chrome-font-sans);
}

.tlkv-global-footer__brand-line {
  font-size: calc(1.2rem + var(--tlkv-chrome-bump));
}

.tlkv-global-footer__brand-tagline,
.footer-credit h5 {
  font-size: calc(0.775rem + var(--tlkv-chrome-bump));
}

.tlkv-global-footer__contact-card-label,
.tlkv-global-footer__menu-link {
  font-size: calc(0.87rem + var(--tlkv-chrome-bump));
  font-weight: 400;
}

.tlkv-global-footer__contact-card-hint {
  font-size: 0.75rem;
}

.tlkv-global-footer__title {
  font-size: calc(1.2rem + var(--tlkv-chrome-bump));
}

@media (max-width: 767.98px) {
  .tlkv-global-footer__brand-line {
    font-size: 1.2rem;
  }

  .tlkv-global-footer__brand-tagline,
  .footer-credit h5 {
    font-size: 0.62rem;
  }

  .tlkv-global-footer__contact-card-label,
  .tlkv-global-footer__menu-link {
    font-size: 0.74rem;
  }

  .tlkv-global-footer__contact-card-hint {
    font-size: 0.64rem;
  }

  .tlkv-global-footer__title {
    font-size: 0.95rem;
  }
}
