
/* v31: final correction for public header link backgrounds and home hero vertical gap. */

/* Desktop header links must be text-only, no little white/blue boxes. */
@media (min-width: 1121px) {
  .site-header .site-nav,
  .site-header .site-nav-v20,
  .site-header .site-nav-v24 {
    gap: clamp(14px, 1.35vw, 28px) !important;
  }

  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav-v20 > a:not(.nav-cta),
  .site-header .site-nav-v24 > a:not(.nav-cta),
  html[data-theme="light"] .site-header .site-nav > a:not(.nav-cta),
  html[data-theme="dark"] .site-header .site-nav > a:not(.nav-cta) {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    border-radius: 0 !important;
    padding: 7px 0 !important;
    min-height: 0 !important;
  }

  .site-header .site-nav > a:not(.nav-cta):hover,
  .site-header .site-nav > a:not(.nav-cta):focus-visible,
  .site-header .site-nav > a:not(.nav-cta).active,
  .site-header .site-nav-v20 > a:not(.nav-cta):hover,
  .site-header .site-nav-v24 > a:not(.nav-cta):hover {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .site-header .site-nav > a:not(.nav-cta)::before,
  .site-header .site-nav > a:not(.nav-cta)::after {
    box-shadow: none !important;
  }
}

/* Keep tap-target cards only in mobile menu. */
@media (max-width: 1120px) {
  html[data-theme="light"] .site-nav-v24 > a:not(.nav-cta) {
    background: #f7fbff !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-radius: 12px !important;
  }

  html[data-theme="dark"] .site-nav-v24 > a:not(.nav-cta) {
    background: rgba(255,255,255,.055) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 12px !important;
  }
}

/* Home page: no giant empty band below header. Target all known hero wrappers. */
body:not(.auth-page) .hero-premium,
body:not(.auth-page) .hero,
main .hero-premium,
main .hero {
  min-height: auto !important;
  height: auto !important;
  padding-top: clamp(92px, 9vh, 132px) !important;
  padding-bottom: clamp(54px, 7vh, 92px) !important;
  align-items: start !important;
}

/* The actual home hero grid had enough intrinsic height; do not vertically center it. */
.hero-premium > *,
.hero > * {
  align-self: center !important;
}

@media (min-width: 980px) {
  body:not(.auth-page) .hero-premium,
  body:not(.auth-page) .hero,
  main .hero-premium,
  main .hero {
    padding-top: clamp(100px, 10vh, 145px) !important;
  }
}

@media (min-width: 1280px) {
  body:not(.auth-page) .hero-premium,
  body:not(.auth-page) .hero,
  main .hero-premium,
  main .hero {
    padding-top: 118px !important;
  }
}

@media (max-width: 760px) {
  body:not(.auth-page) .hero-premium,
  body:not(.auth-page) .hero,
  main .hero-premium,
  main .hero {
    padding-top: 86px !important;
  }
}
