html body {
  font-weight: 360 !important;
}

html body main#main section.hero {
  min-height: 640px !important;
}

html body main#main section.hero .hero-grid {
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 54px !important;
  padding-top: 72px !important;
  padding-bottom: 68px !important;
}

html body main#main section.hero .hero-grid > div:first-child > h1,
html body main#main section.hero h1,
html body section.hero h1,
html body.page-home section.hero h1,
html body.page-home .hero h1,
html body.page-home h1 {
  font-size: clamp(2.05rem, 2.85vw, 2.95rem) !important;
  line-height: 1.18 !important;
  font-weight: 360 !important;
  letter-spacing: -0.028em !important;
  max-width: 720px !important;
  margin-bottom: 1.25rem !important;
}

html body main#main section.hero .lead,
html body section.hero .lead,
html body.page-home section.hero .lead,
html body.page-home .hero .lead,
html body.page-home .lead {
  font-size: clamp(1rem, 1.05vw, 1.12rem) !important;
  line-height: 1.68 !important;
  font-weight: 350 !important;
  max-width: 700px !important;
}

html body .eyebrow,
html body.page-home .eyebrow {
  font-size: .72rem !important;
  font-weight: 520 !important;
  letter-spacing: .115em !important;
}

html body h2,
html body.page-home h2,
html body.page-home .section h2,
html body.page-home .section-head h2 {
  font-size: clamp(1.45rem, 1.85vw, 2rem) !important;
  line-height: 1.22 !important;
  font-weight: 390 !important;
  letter-spacing: -0.025em !important;
}

html body h3,
html body .card h3,
html body .feature-card h3,
html body .mission-card h3,
html body.page-home h3,
html body.page-home .feature-card h3,
html body.page-home .mission-card h3,
html body.page-home .stat strong,
html body.page-home .mission-panel strong {
  font-weight: 430 !important;
}

html body p,
html body li,
html body.page-home p,
html body.page-home li,
html body.page-home .card p,
html body.page-home .feature-card p {
  font-weight: 350 !important;
}

html body strong,
html body b,
html body.page-home strong,
html body.page-home b {
  font-weight: 480 !important;
}

html body .btn,
html body button,
html body .chip,
html body .nav-link,
html body .portal-trigger,
html body .language-switch a,
html body .theme-switch button,
html body.page-home .btn,
html body.page-home .chip,
html body.page-home .nav-link,
html body.page-home .portal-trigger,
html body.page-home .language-switch a,
html body.page-home .theme-btn {
  font-weight: 470 !important;
}

html body main#main section.hero .mission-panel,
html body.page-home .mission-panel {
  transform: scale(.88) !important;
  transform-origin: center right !important;
}

html body main#main section.hero .stat strong {
  font-size: 1.05rem !important;
  font-weight: 470 !important;
}

@media (max-width: 1040px) {
  html body main#main section.hero .hero-grid,
  html body.page-home .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  html body main#main section.hero .mission-panel,
  html body.page-home .mission-panel {
    transform: none !important;
  }
}

@media (max-width: 680px) {
  html body main#main section.hero {
    min-height: auto !important;
  }

  html body main#main section.hero .hero-grid {
    padding-top: 48px !important;
    padding-bottom: 52px !important;
  }

  html body main#main section.hero h1,
  html body.page-home section.hero h1,
  html body.page-home .hero h1,
  html body.page-home h1 {
    font-size: clamp(1.72rem, 7.1vw, 2.08rem) !important;
    line-height: 1.2 !important;
    font-weight: 360 !important;
    letter-spacing: -0.022em !important;
    max-width: 100% !important;
  }

  html body main#main section.hero .lead,
  html body.page-home section.hero .lead,
  html body.page-home .hero .lead,
  html body.page-home .lead {
    font-size: .96rem !important;
    line-height: 1.62 !important;
  }
}

html body {
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}

html body main#main h1,
html body main#main .page-hero h1,
html body main#main section.hero h1,
html body main#main .tracking-dashboard-hero h1 {
  font-size: clamp(2.15rem, 4.35vw, 4.15rem) !important;
  line-height: 1.08 !important;
  font-weight: 620 !important;
  letter-spacing: -0.052em !important;
  max-width: 860px !important;
}

html body main#main section.hero h1,
html body.page-home main#main section.hero h1,
html body.page-home main#main .hero h1 {
  font-size: clamp(2.05rem, 3.95vw, 3.65rem) !important;
  line-height: 1.1 !important;
  font-weight: 620 !important;
  letter-spacing: -0.048em !important;
  max-width: 820px !important;
}

html body main#main .page-hero {
  padding-top: 78px !important;
  padding-bottom: 62px !important;
}

html body main#main .page-hero .lead,
html body main#main section.hero .lead,
html body main#main .tracking-dashboard-hero .lead {
  font-size: clamp(1rem, 1.25vw, 1.18rem) !important;
  line-height: 1.68 !important;
  font-weight: 390 !important;
  max-width: 760px !important;
}

html body main#main h2,
html body main#main .section-head h2,
html body main#main .split h2 {
  font-size: clamp(1.42rem, 2.15vw, 2.15rem) !important;
  line-height: 1.2 !important;
  font-weight: 560 !important;
  letter-spacing: -0.034em !important;
}

html body main#main h3,
html body main#main .card h3,
html body main#main .mission-feature h3,
html body main#main .timeline-item h3,
html body main#main .update-item h3 {
  font-weight: 560 !important;
  letter-spacing: -0.018em !important;
}

html body main#main p,
html body main#main li,
html body main#main .lead,
html body main#main .callout,
html body main#main .hero-note,
html body main#main .card p,
html body main#main .mission-feature p,
html body main#main .timeline-item p,
html body main#main .update-item p {
  font-weight: 390 !important;
}

html body main#main strong,
html body main#main b,
html body main#main .stat strong,
html body main#main .panel-top strong,
html body main#main .checkpoint-header,
html body main#main .checkpoint-card li {
  font-weight: 620 !important;
}

html body .site-header .nav-link,
html body .site-header .portal-trigger,
html body .site-header .language-switch a,
html body .site-header .theme-switch button,
html body .btn,
html body main#main .chip {
  font-weight: 560 !important;
}

html body main#main .eyebrow {
  font-weight: 640 !important;
  letter-spacing: .12em !important;
}

html body .footer-grid h2 {
  font-weight: 560 !important;
  letter-spacing: .02em !important;
}

html body .footer-grid p,
html body .footer-grid li,
html body .footer-bottom {
  font-weight: 390 !important;
}

@media (max-width: 1040px) {
  html body main#main h1,
  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body main#main .tracking-dashboard-hero h1 {
    font-size: clamp(2rem, 6.2vw, 3.25rem) !important;
    line-height: 1.1 !important;
    max-width: 760px !important;
  }
}

@media (max-width: 680px) {
  html body main#main .page-hero {
    padding-top: 52px !important;
    padding-bottom: 48px !important;
  }

  html body main#main h1,
  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body main#main .tracking-dashboard-hero h1 {
    font-size: clamp(1.86rem, 9.2vw, 2.55rem) !important;
    line-height: 1.12 !important;
    font-weight: 610 !important;
    letter-spacing: -0.04em !important;
    max-width: 100% !important;
  }

  html body main#main h2,
  html body main#main .section-head h2,
  html body main#main .split h2 {
    font-size: clamp(1.28rem, 6vw, 1.72rem) !important;
    line-height: 1.24 !important;
    font-weight: 560 !important;
  }

  html body main#main .page-hero .lead,
  html body main#main section.hero .lead,
  html body main#main .tracking-dashboard-hero .lead {
    font-size: .98rem !important;
    line-height: 1.62 !important;
  }

  html body main#main .eyebrow {
    font-size: .68rem !important;
    letter-spacing: .105em !important;
  }
}

html body {
  font-weight: 380 !important;
}

html body main#main h1,
html body main#main .page-hero h1,
html body main#main section.hero h1,
html body main#main .tracking-dashboard-hero h1,
html body.page-home main#main section.hero h1,
html body.page-home main#main .hero h1 {
  font-size: clamp(2rem, 3.25vw, 3.35rem) !important;
  line-height: 1.14 !important;
  font-weight: 520 !important;
  letter-spacing: -0.038em !important;
  max-width: 790px !important;
}

html body main#main section.hero h1,
html body.page-home main#main section.hero h1,
html body.page-home main#main .hero h1 {
  font-size: clamp(1.95rem, 3.05vw, 3.2rem) !important;
  line-height: 1.15 !important;
  font-weight: 520 !important;
  letter-spacing: -0.036em !important;
  max-width: 780px !important;
}

html body main#main .page-hero .lead,
html body main#main section.hero .lead,
html body main#main .tracking-dashboard-hero .lead,
html body.page-home main#main section.hero .lead,
html body.page-home main#main .hero .lead {
  font-size: clamp(.98rem, 1.05vw, 1.12rem) !important;
  line-height: 1.66 !important;
  font-weight: 380 !important;
  max-width: 720px !important;
}

html body main#main h2,
html body main#main .section-head h2,
html body main#main .split h2,
html body .footer-grid h2 {
  font-size: clamp(1.32rem, 1.75vw, 1.86rem) !important;
  line-height: 1.24 !important;
  font-weight: 500 !important;
  letter-spacing: -0.024em !important;
}

html body main#main h3,
html body main#main .card h3,
html body main#main .feature-card h3,
html body main#main .mission-card h3,
html body main#main .mission-feature h3,
html body main#main .timeline-item h3,
html body main#main .update-item h3,
html body main#main .panel-top strong {
  font-weight: 500 !important;
  letter-spacing: -0.012em !important;
}

html body main#main p,
html body main#main li,
html body main#main .callout,
html body main#main .hero-note,
html body main#main .card p,
html body main#main .feature-card p,
html body main#main .mission-feature p,
html body main#main .timeline-item p,
html body main#main .update-item p,
html body .footer-grid p,
html body .footer-grid li,
html body .footer-bottom {
  font-weight: 380 !important;
}

html body main#main strong,
html body main#main b,
html body main#main .stat strong,
html body main#main .checkpoint-header,
html body main#main .checkpoint-card li,
html body .footer-brand strong {
  font-weight: 540 !important;
}

html body .site-header .nav-link,
html body .site-header .portal-trigger,
html body .site-header .language-switch a,
html body .site-header .theme-switch button,
html body .btn,
html body button,
html body main#main .chip {
  font-weight: 500 !important;
}

html body main#main .eyebrow,
html body .eyebrow {
  font-weight: 560 !important;
  letter-spacing: .11em !important;
}

html body main#main .mission-updates li,
html body main#main .status-card li,
html body main#main .timeline-list li,
html body main#main .check-list li {
  font-weight: 400 !important;
}

@media (max-width: 1040px) {
  html body main#main h1,
  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body main#main .tracking-dashboard-hero h1,
  html body.page-home main#main section.hero h1,
  html body.page-home main#main .hero h1 {
    font-size: clamp(1.9rem, 5.35vw, 2.85rem) !important;
    line-height: 1.15 !important;
    font-weight: 520 !important;
    max-width: 720px !important;
  }
}

@media (max-width: 680px) {
  html body main#main .page-hero {
    padding-top: 46px !important;
    padding-bottom: 44px !important;
  }

  html body main#main h1,
  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body main#main .tracking-dashboard-hero h1,
  html body.page-home main#main section.hero h1,
  html body.page-home main#main .hero h1 {
    font-size: clamp(1.58rem, 7.2vw, 2.02rem) !important;
    line-height: 1.17 !important;
    font-weight: 520 !important;
    letter-spacing: -0.028em !important;
    max-width: 100% !important;
  }

  html body main#main h2,
  html body main#main .section-head h2,
  html body main#main .split h2,
  html body .footer-grid h2 {
    font-size: clamp(1.18rem, 5.05vw, 1.48rem) !important;
    line-height: 1.26 !important;
    font-weight: 500 !important;
  }

  html body main#main h3,
  html body main#main .card h3,
  html body main#main .feature-card h3,
  html body main#main .mission-card h3,
  html body main#main .mission-feature h3,
  html body main#main .timeline-item h3,
  html body main#main .update-item h3 {
    font-weight: 500 !important;
  }

  html body main#main .page-hero .lead,
  html body main#main section.hero .lead,
  html body main#main .tracking-dashboard-hero .lead,
  html body.page-home main#main section.hero .lead,
  html body.page-home main#main .hero .lead {
    font-size: .94rem !important;
    line-height: 1.62 !important;
    font-weight: 380 !important;
  }

  html body main#main .eyebrow,
  html body .eyebrow {
    font-size: .66rem !important;
    font-weight: 540 !important;
    letter-spacing: .1em !important;
  }
}

@media (max-width: 1180px) {
  html body .container {
    width: min(100% - 36px, var(--max)) !important;
  }

  html body .site-header .header-inner {
    gap: 14px !important;
  }

  html body .site-header .nav-link {
    padding: .62rem .68rem !important;
    font-size: .86rem !important;
  }
}

@media (max-width: 1120px) {
  html body .site-header .site-nav {
    position: absolute !important;
    left: 20px !important;
    right: 20px !important;
    top: calc(100% + 10px) !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    padding: 12px !important;
    border: 1px solid var(--line) !important;
    border-radius: 22px !important;
    background: var(--surface) !important;
    box-shadow: var(--shadow) !important;
  }

  html body .site-header .site-nav.is-open {
    display: flex !important;
  }

  html body .site-header .menu-toggle {
    display: flex !important;
  }

  html body .site-header .header-actions {
    margin-left: auto !important;
  }

  html body .site-header .nav-link {
    width: 100% !important;
    border-radius: 14px !important;
    padding: .74rem .88rem !important;
    font-size: .92rem !important;
  }
}

@media (max-width: 980px) {
  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid,
  html body main#main .split,
  html body main#main .index-card,
  html body main#main .form-shell,
  html body main#main .tracking-dashboard-grid,
  html body main#main .tracking-intel-grid {
    grid-template-columns: 1fr !important;
  }

  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid {
    gap: 28px !important;
    padding-top: 58px !important;
    padding-bottom: 54px !important;
  }

  html body main#main section.hero .mission-panel,
  html body.page-home main#main section.hero .mission-panel {
    width: 100% !important;
    max-width: 520px !important;
    justify-self: start !important;
    transform: none !important;
    transform-origin: center !important;
  }

  html body main#main .section {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }

  html body main#main .split {
    gap: 34px !important;
    align-items: start !important;
  }

  html body main#main .grid-3,
  html body main#main .grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body main#main .mission-feature-list {
    grid-template-columns: 1fr !important;
  }

  html body main#main .checkpoint-card {
    justify-self: stretch !important;
    max-width: none !important;
  }

  html body .footer-grid,
  html body .footer-grid-refined {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px 34px !important;
  }
}

@media (max-width: 820px) {
  html body .site-header .header-inner {
    height: auto !important;
    min-height: 66px !important;
    padding: 9px 0 10px !important;
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    grid-template-areas:
      "brand spacer menu"
      "actions actions actions" !important;
    align-items: center !important;
    gap: 9px 10px !important;
  }

  html body .site-header .brand {
    grid-area: brand !important;
    min-width: 0 !important;
  }

  html body .site-header .menu-toggle {
    grid-area: menu !important;
    margin-left: 0 !important;
    justify-self: end !important;
    width: 48px !important;
    height: 44px !important;
  }

  html body .site-header .header-actions {
    grid-area: actions !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(132px, 1fr) auto auto !important;
    gap: 8px !important;
    min-width: 0 !important;
  }

  html body .site-header .portal-trigger {
    width: 100% !important;
    min-height: 40px !important;
    padding: .5rem .68rem !important;
    font-size: .8rem !important;
  }

  html body .site-header .language-switch,
  html body .site-header .theme-switch {
    justify-self: end !important;
  }

  html body .site-header .site-nav {
    left: 14px !important;
    right: 14px !important;
    top: calc(100% + 8px) !important;
  }

  html body main#main .page-hero {
    padding-top: 54px !important;
    padding-bottom: 48px !important;
  }

  html body main#main .grid-2,
  html body main#main .grid-3,
  html body main#main .grid-4,
  html body main#main .readiness-grid,
  html body main#main .choice-grid,
  html body main#main .quick-contact-row {
    grid-template-columns: 1fr !important;
  }

  html body main#main .span-2 {
    grid-column: auto !important;
  }

  html body main#main .image-card img,
  html body main#main .index-card img {
    min-height: 260px !important;
  }

  html body .footer-grid,
  html body .footer-grid-refined,
  html body .footer-bottom {
    grid-template-columns: 1fr !important;
    display: grid !important;
  }

  html body .footer-grid h2 {
    margin-top: 10px !important;
  }
}

@media (max-width: 620px) {
  html body .container {
    width: min(100% - 28px, var(--max)) !important;
  }

  html body main#main section.hero,
  html body.page-home main#main section.hero {
    min-height: auto !important;
    align-items: start !important;
    background-position: center top !important;
  }

  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid {
    padding-top: 44px !important;
    padding-bottom: 46px !important;
    gap: 24px !important;
  }

  html body main#main .page-hero {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }

  html body main#main .breadcrumb {
    margin-bottom: 16px !important;
    font-size: .82rem !important;
  }

  html body main#main .cta-row {
    gap: 10px !important;
    margin-top: 22px !important;
    margin-bottom: 20px !important;
  }

  html body main#main .btn {
    width: 100% !important;
    min-height: 44px !important;
    padding: .78rem 1rem !important;
  }

  html body main#main .hero-note,
  html body main#main .callout,
  html body main#main .soft-note,
  html body main#main .urgent-brief-card {
    padding: 14px 15px !important;
    border-radius: 16px !important;
  }

  html body main#main .trust-bar {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  html body main#main .trust-list {
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  html body main#main .chip {
    padding: .5rem .68rem !important;
    font-size: .8rem !important;
    max-width: 100% !important;
  }

  html body main#main .section {
    padding-top: 54px !important;
    padding-bottom: 54px !important;
  }

  html body main#main .section-head {
    margin-bottom: 24px !important;
  }

  html body main#main .split {
    gap: 26px !important;
  }

  html body main#main .card,
  html body main#main .mission-feature,
  html body main#main .timeline-item,
  html body main#main .checkpoint-card,
  html body main#main .form-card,
  html body main#main .legal-box {
    border-radius: 18px !important;
  }

  html body main#main .card,
  html body main#main .mission-feature,
  html body main#main .checkpoint-card,
  html body main#main .form-card,
  html body main#main .legal-box {
    padding: 18px !important;
  }

  html body main#main .timeline-item {
    padding: 18px 18px 18px 64px !important;
  }

  html body main#main .timeline-item:before {
    left: 18px !important;
    top: 18px !important;
    width: 30px !important;
    height: 30px !important;
  }

  html body main#main .mission-panel {
    padding: 18px !important;
    border-radius: 20px !important;
  }

  html body main#main .panel-top {
    gap: 12px !important;
  }

  html body main#main .stats-grid {
    gap: 10px !important;
  }

  html body main#main .stat {
    padding: 13px !important;
    border-radius: 15px !important;
  }

  html body main#main .stat strong {
    font-size: .98rem !important;
  }

  html body main#main .stat span,
  html body main#main .route-labels {
    font-size: .78rem !important;
  }

  html body main#main .image-card img,
  html body main#main .index-card img {
    min-height: 220px !important;
  }

  html body .site-footer {
    padding-top: 32px !important;
    padding-bottom: 22px !important;
  }

  html body .footer-grid,
  html body .footer-grid-refined {
    gap: 24px !important;
  }

  html body .footer-bottom {
    gap: 10px !important;
    margin-top: 24px !important;
    font-size: .8rem !important;
  }
}

@media (max-width: 430px) {
  html body .container,
  html body .site-header .container.header-inner {
    width: min(100% - 22px, var(--max)) !important;
  }

  html body .site-header .header-actions {
    grid-template-columns: minmax(98px, 1fr) auto auto !important;
    gap: 6px !important;
  }

  html body .site-header .portal-trigger {
    min-height: 38px !important;
    padding: .44rem .54rem !important;
    font-size: .74rem !important;
  }

  html body .site-header .language-switch a,
  html body .site-header .theme-switch button {
    padding: .34rem .38rem !important;
    font-size: .7rem !important;
  }

  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid {
    padding-top: 36px !important;
    padding-bottom: 40px !important;
  }

  html body main#main .mission-panel .stats-grid {
    grid-template-columns: 1fr !important;
  }

  html body main#main .panel-top,
  html body main#main .route-labels {
    flex-wrap: wrap !important;
  }

  html body main#main .image-card img,
  html body main#main .index-card img {
    min-height: 190px !important;
  }
}

@media (max-width: 1160px) {
  html body .site-header .header-inner {
    display: grid !important;
    grid-template-columns: auto 1fr auto auto !important;
    grid-template-areas: "brand spacer actions menu" !important;
    gap: 12px !important;
  }

  html body .site-header .brand { grid-area: brand !important; }
  html body .site-header .header-actions { grid-area: actions !important; margin-left: 0 !important; }
  html body .site-header .menu-toggle { grid-area: menu !important; display: inline-flex !important; }

  html body .site-header .site-nav {
    position: absolute !important;
    left: max(16px, calc((100vw - var(--max)) / 2 + 18px)) !important;
    right: max(16px, calc((100vw - var(--max)) / 2 + 18px)) !important;
    top: calc(100% + 8px) !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    padding: 12px !important;
    border: 1px solid var(--line) !important;
    border-radius: 20px !important;
    background: color-mix(in srgb, var(--surface) 96%, transparent) !important;
    box-shadow: var(--shadow) !important;
    backdrop-filter: blur(18px) !important;
    z-index: 60 !important;
  }

  html body .site-header .site-nav.is-open { display: flex !important; }

  html body .site-header .nav-link {
    display: flex !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: .72rem .86rem !important;
    border-radius: 14px !important;
    font-size: .92rem !important;
  }
}

@media (max-width: 900px) {
  html body .container { width: min(100% - 32px, var(--max)) !important; }

  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid,
  html body main#main .split,
  html body main#main .index-card,
  html body main#main .form-shell,
  html body main#main .tracking-dashboard-grid,
  html body main#main .tracking-intel-grid,
  html body main#main .quick-contact-row {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  html body main#main .split > *,
  html body main#main .index-card > *,
  html body main#main .form-shell > *,
  html body main#main .tracking-dashboard-grid > *,
  html body main#main .tracking-intel-grid > * {
    min-width: 0 !important;
  }

  html body main#main .grid-2,
  html body main#main .grid-3,
  html body main#main .grid-4,
  html body main#main .readiness-grid,
  html body main#main .choice-grid,
  html body main#main .mission-feature-list,
  html body main#main .status-grid,
  html body main#main .timeline-grid {
    grid-template-columns: 1fr !important;
  }

  html body main#main .section,
  html body main#main .section.alt {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  html body main#main .page-hero {
    padding-top: 58px !important;
    padding-bottom: 52px !important;
  }

  html body main#main .page-hero h1,
  html body main#main h1 {
    max-width: 780px !important;
  }

  html body main#main section.hero .mission-panel,
  html body.page-home main#main section.hero .mission-panel,
  html body main#main .checkpoint-card,
  html body main#main .form-card,
  html body main#main .image-card,
  html body main#main .index-card {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }

  html body main#main .image-card img,
  html body main#main .index-card img {
    width: 100% !important;
    min-height: 260px !important;
    max-height: 360px !important;
    object-fit: cover !important;
  }

  html body main#main .span-2,
  html body main#main .span-3 {
    grid-column: auto !important;
  }

  html body .footer-grid,
  html body .footer-grid-refined {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 30px 34px !important;
  }

  html body .footer-bottom {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    text-align: left !important;
  }
}

@media (max-width: 720px) {
  html body .site-header .header-inner {
    min-height: 62px !important;
    grid-template-columns: auto 1fr auto !important;
    grid-template-areas:
      "brand spacer menu"
      "actions actions actions" !important;
    gap: 8px 10px !important;
    padding: 8px 0 10px !important;
  }

  html body .site-header .brand-text {
    max-width: 154px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body .site-header .header-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    align-items: center !important;
    gap: 8px !important;
  }

  html body .site-header .portal-trigger {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
    min-height: 39px !important;
    padding: .48rem .64rem !important;
    font-size: .78rem !important;
  }

  html body .site-header .site-nav {
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 7px) !important;
  }

  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body.page-home main#main section.hero h1,
  html body.page-home main#main .hero h1 {
    font-size: clamp(1.9rem, 7.1vw, 2.45rem) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.035em !important;
  }

  html body main#main .page-hero .lead,
  html body main#main section.hero .lead,
  html body.page-home main#main section.hero .lead {
    font-size: .98rem !important;
    line-height: 1.62 !important;
    max-width: 100% !important;
  }

  html body main#main .cta-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body main#main .btn,
  html body main#main a.btn,
  html body main#main button.btn {
    width: 100% !important;
    justify-content: center !important;
    min-height: 45px !important;
    white-space: normal !important;
    text-align: center !important;
  }

  html body main#main .trust-list {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  html body main#main .chip {
    max-width: 100% !important;
    white-space: normal !important;
    line-height: 1.3 !important;
  }

  html body main#main .mission-panel .stats-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  html body .footer-grid,
  html body .footer-grid-refined {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  html body .footer-grid h2,
  html body .footer-grid-refined h2 {
    font-size: 1rem !important;
    letter-spacing: .035em !important;
    margin-bottom: 10px !important;
  }
}

@media (max-width: 520px) {
  html body .container,
  html body .site-header .container.header-inner {
    width: min(100% - 24px, var(--max)) !important;
  }

  html body .site-header .brand-text {
    display: none !important;
  }

  html body .site-header .header-actions {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    gap: 6px !important;
  }

  html body .site-header .portal-trigger {
    min-height: 38px !important;
    font-size: .74rem !important;
    padding: .42rem .54rem !important;
  }

  html body .site-header .language-switch a,
  html body .site-header .theme-switch button {
    min-width: 34px !important;
    min-height: 34px !important;
    padding: .3rem .36rem !important;
    font-size: .7rem !important;
  }

  html body main#main section.hero .hero-grid,
  html body.page-home main#main section.hero .hero-grid {
    padding-top: 34px !important;
    padding-bottom: 38px !important;
  }

  html body main#main .page-hero {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }

  html body main#main .page-hero h1,
  html body main#main section.hero h1,
  html body.page-home main#main section.hero h1,
  html body.page-home main#main .hero h1 {
    font-size: clamp(1.72rem, 8.2vw, 2.06rem) !important;
    line-height: 1.18 !important;
  }

  html body main#main h2,
  html body main#main .section-head h2,
  html body main#main .split h2 {
    font-size: clamp(1.28rem, 6vw, 1.6rem) !important;
    line-height: 1.22 !important;
  }

  html body main#main .section,
  html body main#main .section.alt {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  html body main#main .card,
  html body main#main .mission-feature,
  html body main#main .timeline-item,
  html body main#main .checkpoint-card,
  html body main#main .form-card,
  html body main#main .legal-box,
  html body main#main .callout,
  html body main#main .hero-note {
    padding: 16px !important;
    border-radius: 17px !important;
  }

  html body main#main .timeline-item {
    padding-left: 58px !important;
  }

  html body main#main .mission-panel .stats-grid {
    grid-template-columns: 1fr !important;
  }

  html body main#main .image-card img,
  html body main#main .index-card img {
    min-height: 190px !important;
    max-height: 260px !important;
  }

  html body .site-footer {
    padding-top: 30px !important;
  }

  html body .footer-bottom {
    margin-top: 22px !important;
    font-size: .78rem !important;
  }
}
