.theme-public .public-nav-link {
  white-space: nowrap;
}

@media (min-width: 1600px) {
  .theme-public .public-shell {
    padding: 44px 56px;
    gap: 36px;
  }

  .theme-public .home-layout {
    grid-template-columns: minmax(0, 640px) minmax(420px, 1fr);
    gap: 48px;
  }

  .theme-public .home-subtitle {
    width: min(100%, 640px);
  }

  .theme-public .about-hero {
    padding: 60px;
    gap: 52px;
  }

  .theme-public .auth-shell,
  .theme-public .onboarding-shell {
    min-height: calc(100vh - 172px);
  }
}

@media (max-width: 1200px) {
  .theme-public .public-shell {
    padding-inline: 28px;
  }

  .theme-public .home-header {
    gap: 20px;
  }

  .theme-public .home-nav {
    gap: 12px 16px;
  }

  .theme-public .about-header {
    top: 12px;
  }

  .theme-public .about-header-person {
    max-width: 100%;
  }
}

@media (max-width: 920px) {
  .theme-public .home-nav,
  .theme-public .about-header .home-nav {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .theme-public .home-nav::-webkit-scrollbar,
  .theme-public .about-header .home-nav::-webkit-scrollbar {
    display: none;
  }

  .theme-public .home-subtitle {
    width: 100%;
  }

  .theme-public .home-bmi-result-value {
    overflow-wrap: anywhere;
  }

  .theme-public .about-header {
    top: 0;
  }

  .theme-public .about-header-person {
    justify-content: flex-start;
  }

  .theme-public .about-action-head {
    align-items: stretch;
  }

  .theme-public .auth-logo-link {
    justify-content: center;
  }

  .theme-public .auth-submit-wrap,
  .theme-public .onboarding-back-wrap,
  .theme-public .onboarding-continue-wrap {
    width: 100%;
  }
}

@media (max-width: 720px) {
  .theme-public.home-page .public-shell {
    padding: 16px 12px 22px;
    gap: 14px;
  }

  .theme-public.home-page .public-btn-primary {
    min-height: 52px;
    padding: 15px 18px;
  }

  .theme-public.home-page .public-btn-secondary,
  .theme-public.home-page .public-btn-outline {
    min-height: 44px;
  }

  .theme-public .public-shell {
    padding: 18px 14px 24px;
    gap: 20px;
  }

  .theme-public .public-btn-primary {
    min-height: 58px;
    padding: 18px 20px;
    font-size: 18px;
  }

  .theme-public .public-btn-secondary,
  .theme-public .public-btn-outline {
    min-height: 48px;
    font-size: 15px;
  }

  .theme-public .home-calculator-footer {
    gap: 14px;
  }

  .theme-public .about-header-person {
    padding: 8px 10px 8px 8px;
  }

  .theme-public .about-header-person-image {
    width: 42px;
    height: 42px;
  }

  .theme-public .auth-form {
    gap: 18px;
  }

  .theme-public .onboarding-footer {
    gap: 18px;
  }

  .theme-public .onboarding-choice-row {
    flex-direction: column;
    align-items: stretch;
  }

  .theme-public .onboarding-medical-list-btn {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .theme-public.home-page .public-shell {
    padding: 14px 10px 20px;
  }

  .theme-public.home-page .home-title {
    font-size: 28px;
  }

  .theme-public .public-shell {
    padding: 16px 12px 22px;
  }

  .theme-public .home-title {
    font-size: 34px;
  }

  .theme-public .about-title {
    font-size: 32px;
  }

  .theme-public .auth-title,
  .theme-public .onboarding-section-title {
    font-size: 26px;
  }

  .theme-public .home-bmi-result-value {
    font-size: 22px;
  }

  .theme-public .home-hero,
  .theme-public .about-hero,
  .theme-public .auth-shell,
  .theme-public .onboarding-shell {
    border-radius: 24px;
  }

  .theme-public .home-calculator,
  .theme-public .auth-card,
  .theme-public .auth-loading-card,
  .theme-public .onboarding-card,
  .theme-public .onboarding-loading-card,
  .theme-public .about-card,
  .theme-public .about-action-card,
  .theme-public .about-highlight-inner {
    border-radius: 24px;
  }
}
