:root {
  --marketing-status-success: #20733c;
  --marketing-status-warning: #815900;
  --marketing-status-danger: #a62d25;
  --marketing-hero-size: 3.5rem;
  --marketing-hero-line: 1.1428571429;
  --marketing-hero-weight: 700;
  --marketing-hero-tracking: -0.025em;
  --marketing-page-title-size: 2.5rem;
  --marketing-page-title-line: 1.2;
  --marketing-page-title-weight: 700;
  --marketing-page-title-tracking: -0.02em;
  --marketing-section-size: 2.5rem;
  --marketing-section-line: 1.2;
  --marketing-section-weight: 700;
  --marketing-section-tracking: -0.02em;
  --marketing-card-size: 1.5rem;
  --marketing-card-line: 1.2916666667;
  --marketing-card-weight: 700;
  --marketing-card-tracking: -0.01em;
  --marketing-lead-size: 1.25rem;
  --marketing-lead-line: 1.6;
  --marketing-lead-weight: 400;
  --marketing-lead-tracking: normal;
  --marketing-body-size: 1rem;
  --marketing-body-line: 1.625;
  --marketing-body-weight: 400;
  --marketing-body-tracking: normal;
  --marketing-label-size: 1rem;
  --marketing-label-line: 1.5;
  --marketing-label-weight: 600;
  --marketing-label-tracking: normal;
  --marketing-caption-size: 0.875rem;
  --marketing-caption-line: 1.5;
  --marketing-caption-weight: 400;
  --marketing-caption-tracking: normal;
  --marketing-eyebrow-size: 0.875rem;
  --marketing-eyebrow-line: 1.5;
  --marketing-eyebrow-weight: 600;
  --marketing-eyebrow-tracking: 0.04em;
  --marketing-button-size: 1rem;
  --marketing-button-line: 1.5;
  --marketing-button-weight: 500;
  --marketing-button-tracking: normal;
  --marketing-button-compact-size: 0.875rem;
  --marketing-button-compact-line: 1.4285714286;
  --marketing-button-compact-weight: 500;
  --marketing-button-compact-tracking: normal;
  --marketing-provider-size: 0.875rem;
  --marketing-provider-line: 1.4285714286;
  --marketing-provider-weight: 500;
  --marketing-provider-tracking: normal;
  --marketing-chip-size: 0.875rem;
  --marketing-chip-line: 1.4285714286;
  --marketing-chip-weight: 500;
  --marketing-chip-tracking: normal;
  --marketing-table-size: 1rem;
  --marketing-table-line: 1.625;
  --marketing-table-weight: 400;
  --marketing-table-tracking: normal;
  --marketing-banner-title-size: 0.875rem;
  --marketing-banner-title-line: 1.2857142857;
  --marketing-banner-title-weight: 600;
  --marketing-banner-title-tracking: normal;
  --marketing-banner-caption-size: 0.75rem;
  --marketing-banner-caption-line: 1.3333333333;
  --marketing-banner-caption-weight: 400;
  --marketing-banner-caption-tracking: normal;
  --marketing-badge-size: 0.75rem;
  --marketing-badge-line: 1.5;
  --marketing-badge-weight: 600;
  --marketing-badge-tracking: normal;
}

@media (max-width: 744px) {
  :root {
    --marketing-hero-size: 2.25rem;
    --marketing-hero-line: 1.1944444444;
    --marketing-page-title-size: 1.75rem;
    --marketing-page-title-line: 1.25;
    --marketing-section-size: 1.75rem;
    --marketing-section-line: 1.25;
    --marketing-card-size: 1.25rem;
    --marketing-card-line: 1.4;
    --marketing-lead-size: 1.125rem;
    --marketing-lead-line: 1.5555555556;
    --marketing-body-size: 1rem;
    --marketing-body-line: 1.625;
    --marketing-label-size: 1rem;
    --marketing-label-line: 1.5;
    --marketing-caption-size: 0.875rem;
    --marketing-caption-line: 1.5;
    --marketing-eyebrow-size: 0.875rem;
    --marketing-eyebrow-line: 1.5;
    --marketing-button-size: 1rem;
    --marketing-button-line: 1.5;
    --marketing-button-compact-size: 0.875rem;
    --marketing-button-compact-line: 1.4285714286;
    --marketing-provider-size: 0.875rem;
    --marketing-provider-line: 1.4285714286;
    --marketing-chip-size: 0.875rem;
    --marketing-chip-line: 1.4285714286;
    --marketing-table-size: 0.875rem;
    --marketing-table-line: 1.5;
    --marketing-banner-title-size: 0.875rem;
    --marketing-banner-title-line: 1.2857142857;
    --marketing-banner-caption-size: 0.75rem;
    --marketing-banner-caption-line: 1.3333333333;
    --marketing-badge-size: 0.75rem;
    --marketing-badge-line: 1.5;
  }
}
:is(.mission-page,
.comparison-page,
.faq-page,
.flight-tracking-page,
.auto-scan-page,
.compensations-page,
.delay-predict-page,
.flight-board-page,
.find-plane-page,
.watch-page,
.friends-page,
.mcp-page) {
  font-size: var(--marketing-body-size);
  line-height: var(--marketing-body-line);
  font-weight: var(--marketing-body-weight);
  letter-spacing: var(--marketing-body-tracking);
  --marketing-control-size: var(--marketing-button-size);
  --marketing-control-line: var(--marketing-button-line);
  --marketing-control-weight: var(--marketing-button-weight);
  --marketing-action-background: #475be7;
  --marketing-action-hover: #384bd1;
  --marketing-link-color: #475be7;
  --marketing-control-muted: #656b7a;
  --marketing-pill-white-space: normal;
  font-family: "Google Sans", Roboto, Arial, sans-serif;
  color: #18191f;
}

/* Standalone supplied campaign retains its approved body/board typography.
   Interactive controls use the hosting site's finite semantic roles. */
.cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: "Google Sans", Roboto, Arial, sans-serif;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  gap: 8px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
  font-size: var(--marketing-button-size);
  line-height: var(--marketing-button-line);
  font-weight: var(--marketing-button-weight);
  letter-spacing: var(--marketing-button-tracking);
  min-height: 48px;
  padding: 11px 20px;
  border-color: transparent;
  background: #475be7;
  color: #fff;
  box-shadow: none;
  transform: none;
}
.cta > svg,
.cta > img {
  flex-shrink: 0;
}
.cta:focus-visible {
  outline: 3px solid var(--control-focus, #a8b3ff);
  outline-offset: 3px;
}
.cta:active:not(:disabled):not([aria-disabled=true]) {
  filter: brightness(0.94);
}
.cta:disabled, .cta[aria-disabled=true] {
  cursor: not-allowed;
  opacity: 0.5;
}
@media (prefers-reduced-motion: reduce) {
  .cta {
    transition: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .cta:hover:not(:disabled):not([aria-disabled=true]) {
    background: #384bd1;
  }
}

.cta.sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: "Google Sans", Roboto, Arial, sans-serif;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  gap: 8px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
  font-size: var(--marketing-button-size);
  line-height: var(--marketing-button-line);
  font-weight: var(--marketing-button-weight);
  letter-spacing: var(--marketing-button-tracking);
  min-height: 44px;
  padding: 11px 16px;
  font-size: var(--marketing-button-compact-size);
  line-height: var(--marketing-button-compact-line);
  font-weight: var(--marketing-button-compact-weight);
  letter-spacing: var(--marketing-button-compact-tracking);
}
.cta.sm > svg,
.cta.sm > img {
  flex-shrink: 0;
}
.cta.sm:focus-visible {
  outline: 3px solid var(--control-focus, #a8b3ff);
  outline-offset: 3px;
}
.cta.sm:active:not(:disabled):not([aria-disabled=true]) {
  filter: brightness(0.94);
}
.cta.sm:disabled, .cta.sm[aria-disabled=true] {
  cursor: not-allowed;
  opacity: 0.5;
}
@media (prefers-reduced-motion: reduce) {
  .cta.sm {
    transition: none;
  }
}

.ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: "Google Sans", Roboto, Arial, sans-serif;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  gap: 8px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
  font-size: var(--marketing-button-size);
  line-height: var(--marketing-button-line);
  font-weight: var(--marketing-button-weight);
  letter-spacing: var(--marketing-button-tracking);
  min-height: 48px;
  padding: 11px 20px;
  border-color: #d9dbe1;
  background: #fff;
  color: #18191f;
}
.ghost > svg,
.ghost > img {
  flex-shrink: 0;
}
.ghost:focus-visible {
  outline: 3px solid var(--control-focus, #a8b3ff);
  outline-offset: 3px;
}
.ghost:active:not(:disabled):not([aria-disabled=true]) {
  filter: brightness(0.94);
}
.ghost:disabled, .ghost[aria-disabled=true] {
  cursor: not-allowed;
  opacity: 0.5;
}
@media (prefers-reduced-motion: reduce) {
  .ghost {
    transition: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .ghost:hover:not(:disabled):not([aria-disabled=true]) {
    border-color: #475be7;
    background: #f3f4ff;
  }
}

.seg button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: "Google Sans", Roboto, Arial, sans-serif;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  gap: 8px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
  font-size: var(--marketing-button-size);
  line-height: var(--marketing-button-line);
  font-weight: var(--marketing-button-weight);
  letter-spacing: var(--marketing-button-tracking);
  min-height: 44px;
  padding: 11px 16px;
  font-size: var(--marketing-button-compact-size);
  line-height: var(--marketing-button-compact-line);
  font-weight: var(--marketing-button-compact-weight);
  letter-spacing: var(--marketing-button-compact-tracking);
  min-width: 44px;
}
.seg button > svg,
.seg button > img {
  flex-shrink: 0;
}
.seg button:focus-visible {
  outline: 3px solid var(--control-focus, #a8b3ff);
  outline-offset: 3px;
}
.seg button:active:not(:disabled):not([aria-disabled=true]) {
  filter: brightness(0.94);
}
.seg button:disabled, .seg button[aria-disabled=true] {
  cursor: not-allowed;
  opacity: 0.5;
}
@media (prefers-reduced-motion: reduce) {
  .seg button {
    transition: none;
  }
}

.cta:hover {
  transform: none;
}

.cta, .cta.sm, .ghost {
  white-space: normal;
}

.bar .wrap {
  flex-wrap: wrap;
}

.dlg {
  z-index: 100;
}
