/* Shared desktop/tablet height, following the six existing signup/access pages.
   Keep each surface's established compact/mobile breakpoints unchanged. */
:root {
  --site-header-height: 72px;
  --site-logo-height: 31px;
}

/* One lockup for real site navigation/footer logos. Scale the original 31px
   wordmark, 26.25px ball and 7px gap together; illustrations are independent. */
body [data-site-brand] {
  --site-logo-ball-size: calc(var(--site-logo-height) * 26.25 / 31);
  gap: calc(var(--site-logo-height) * 7 / 31);
  align-items: center;
}

body [data-site-brand] img[src*="/tennis-ball.png"] {
  display: block;
  width: var(--site-logo-ball-size);
  height: var(--site-logo-ball-size);
  flex: 0 0 var(--site-logo-ball-size);
  object-fit: contain;
}

body [data-site-brand] img[src*="/govfetch-logo.png"] {
  width: auto;
  height: var(--site-logo-height);
  max-width: none;
  flex: 0 0 auto;
  object-fit: contain;
}

@media (max-width: 780px) {
  :root { --site-logo-height: 27px; }
}

@media (max-width: 460px) {
  :root { --site-logo-height: 24px; }
}

/* The open desktop chat workbench deliberately leaves less navigation space. */
@media (min-width: 1181px) {
  body.chat-workbench-open .topbar-brand { --site-logo-height: 28px; }
}

@media (min-width: 781px) {
  :root { --marketing-nav-height: var(--site-header-height); }
  .marketing-nav { min-height: var(--site-header-height); flex-basis: var(--site-header-height); }
}

@media (min-width: 521px) {
  .legal-nav { min-height: var(--site-header-height); flex: 0 0 var(--site-header-height); padding-block: 0; }
}

/* Matches the app's existing compact-phone/landscape boundary. Keep chat and
   fixed-header offsets in sync rather than overriding the visible height alone. */
@media (min-width: 701px) and (min-height: 601px), (min-width: 951px) {
  :root { --chat-header-height: var(--site-header-height); --topbar-height: var(--site-header-height); }
  body[data-page], body[data-onboarding-review] { --topbar-height: var(--site-header-height); }
  body > header:not([class]) { box-sizing: border-box; min-height: var(--site-header-height); padding-block: 0; }
}

/* Scoring Context keeps its existing two-row search header on tablets. */
@media (min-width: 701px) and (max-width: 1180px) and (min-height: 601px), (min-width: 951px) and (max-width: 1180px) {
  body[data-page="customer-context"]:not([data-onboarding-review]):not(.chat-workbench-open) { --topbar-height: 118px; }
}
