/* Aurora Design Systems32 hard-freeze pass v07
   Purpose: stop Chrome zoom/tablet breakpoints from collapsing desktop layouts.
   Behavior: keep desktop-style canvas and allow horizontal scrolling on narrow/zoomed screens.
   Scope: CSS/layout only; no header/nav/content rewrite. */

html,
body {
  min-width: 1600px !important;
  overflow-x: auto !important;
}

body {
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}

/* UHD header: do not stack under zoom. */
header.aurora-uhd,
.aurora-uhd,
.site-header,
.ads-site-header,
.topbar,
.navbar,
.header,
.masthead {
  min-width: 1500px !important;
  flex-direction: row !important;
  align-items: center !important;
}

header.aurora-uhd .uhd-brand,
.aurora-uhd .uhd-brand {
  flex: 0 0 auto !important;
}

header.aurora-uhd .uhd-nav,
.aurora-uhd .uhd-nav,
.top-nav,
.ads-nav,
nav {
  flex-wrap: wrap !important;
}

header.aurora-uhd .uhd-search,
.aurora-uhd .uhd-search,
.top-search,
.ads-header-search {
  flex: 0 1 420px !important;
  max-width: 420px !important;
  width: 360px !important;
}

/* Root homepage hard lock. */
.page-shell.simple.home-wow {
  width: 1760px !important;
  max-width: 1760px !important;
  min-width: 1760px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home-wow-hero {
  min-height: 430px !important;
}

.home-wow-hero::before {
  opacity: 1 !important;
  background-size: cover !important;
}

.home-wow-hero .hero-copy {
  max-width: 700px !important;
  padding: 52px 52px 42px !important;
}

.home-wow-hero h1 {
  font-size: 72px !important;
  line-height: 1.02 !important;
}

.hero-feature-row {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.home-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home-wow-card .card-content {
  width: 62% !important;
  min-width: 380px !important;
  background: transparent !important;
}

.home-wow-card::before {
  opacity: .97 !important;
  background-size: 58% 100% !important;
}

.home-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.stat {
  border-bottom: 0 !important;
}
.stat:nth-child(2) {
  border-right: 1px solid rgba(0,231,255,.28) !important;
}

/* Generic grid freeze for section pages. */
.grid,
.cards,
.card-grid,
.project-grid,
.projects-grid,
.system-grid,
.systems-grid,
.feature-grid,
.module-grid,
.tiles,
.tile-grid,
.library-grid,
.research-grid,
.platform-grid,
.capability-grid,
.gallery-grid,
.cards-grid,
.home-grid,
.mini-grid,
.bridge-grid,
.bridge-detail-grid,
.rescue-grid,
.scope-grid,
.queue-grid,
.concept-grid {
  grid-auto-flow: row !important;
}

.cards,
.card-grid,
.project-grid,
.projects-grid,
.system-grid,
.systems-grid,
.feature-grid,
.module-grid,
.tiles,
.tile-grid,
.library-grid,
.research-grid,
.platform-grid,
.capability-grid,
.gallery-grid,
.cards-grid,
.mini-grid,
.rescue-grid,
.scope-grid,
.queue-grid,
.concept-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home-grid,
.hero-grid,
.split,
.two-col,
.two-column,
.book-layout,
.overview-grid,
.detail-grid,
.metrics-grid,
.stats-grid,
.dual-grid,
.timeline-grid,
.lead-grid,
.featured-grid,
.grid.featured,
.wide-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.bridge-wrap {
  width: 1780px !important;
  max-width: 1780px !important;
  min-width: 1780px !important;
}

.bridge-layout {
  grid-template-columns: 270px 1fr 270px !important;
}

.bridge-grid,
.bridge-detail-grid {
  grid-template-columns: repeat(4, 1fr) !important;
}

img,
video,
canvas,
svg {
  max-width: 100%;
}


/* v07 header freeze correction: keep the UHD/header bar pinned and prevent zoom-triggered vertical collapse. */
body > header,
header.aurora-uhd,
.site-header.aurora-uhd,
.aurora-uhd.site-header,
.topbar,
.navbar,
.masthead {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 99990 !important;
  width: 100% !important;
  min-width: 1600px !important;
  max-width: none !important;
  box-sizing: border-box !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
}

header.aurora-uhd .uhd-brand,
.site-header.aurora-uhd .uhd-brand,
.aurora-uhd .uhd-brand {
  flex: 0 0 auto !important;
  min-width: 300px !important;
  max-width: 560px !important;
}

header.aurora-uhd .uhd-brand img,
.site-header.aurora-uhd .uhd-brand img,
.aurora-uhd .uhd-brand img {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
}

header.aurora-uhd .uhd-title,
.site-header.aurora-uhd .uhd-title,
.aurora-uhd .uhd-title {
  font-size: 1.02rem !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

header.aurora-uhd .uhd-sub,
.site-header.aurora-uhd .uhd-sub,
.aurora-uhd .uhd-sub {
  font-size: .68rem !important;
  white-space: nowrap !important;
}

header.aurora-uhd .uhd-search,
.site-header.aurora-uhd .uhd-search,
.aurora-uhd .uhd-search {
  flex: 0 0 360px !important;
  width: 360px !important;
  max-width: 420px !important;
  min-width: 300px !important;
  margin: 0 !important;
}

header.aurora-uhd .uhd-contact-btn,
.site-header.aurora-uhd .uhd-contact-btn,
.aurora-uhd .uhd-contact-btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

header.aurora-uhd .uhd-nav,
.site-header.aurora-uhd .uhd-nav,
.aurora-uhd .uhd-nav,
nav.uhd-nav,
.top-nav {
  flex: 1 1 100% !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: .45rem !important;
  margin-top: .25rem !important;
  min-width: 1000px !important;
}

header.aurora-uhd .uhd-nav a,
.site-header.aurora-uhd .uhd-nav a,
.aurora-uhd .uhd-nav a,
.top-nav a {
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

/* v08 Alpha Hospital + Aurora Ares local page corrections
   Fixes local templates whose own max-width/@media rules fought the global hard-freeze. */

/* Alpha Hospital: keep the hospital page in desktop presentation under Chrome zoom. */
body.alpha-hospital-page {
  min-width: 1600px !important;
  overflow-x: auto !important;
}
body.alpha-hospital-page .ah-topbar,
body.alpha-hospital-page .breadcrumbs,
body.alpha-hospital-page .hero,
body.alpha-hospital-page .footer {
  min-width: 1600px !important;
  width: 100% !important;
}
body.alpha-hospital-page .ah-shell {
  width: 1188px !important;
  max-width: 1188px !important;
  min-width: 1188px !important;
}
body.alpha-hospital-page .ah-navwrap {
  width: 1320px !important;
  max-width: 1320px !important;
  min-width: 1320px !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
}
body.alpha-hospital-page .ah-brand {
  min-width: 268px !important;
}
body.alpha-hospital-page .ah-nav {
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
}
body.alpha-hospital-page .hero {
  min-height: 548px !important;
}
body.alpha-hospital-page .hero h1 {
  font-size: 5rem !important;
}
body.alpha-hospital-page .hero-copy {
  max-width: 420px !important;
}
body.alpha-hospital-page .metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr)) 290px !important;
}
body.alpha-hospital-page .status {
  grid-column: auto !important;
}
body.alpha-hospital-page .dept-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
body.alpha-hospital-page .dept-card {
  min-height: 272px !important;
}
body.alpha-hospital-page .feature-strip {
  grid-template-columns: repeat(5, 1fr) !important;
}
body.alpha-hospital-page .support-grid {
  grid-template-columns: repeat(3, 1fr) !important;
}
body.alpha-hospital-page .bottom-cta {
  grid-template-columns: 1.5fr repeat(3, 1fr) !important;
}
body.alpha-hospital-page .section-head {
  flex-direction: row !important;
  align-items: end !important;
}

/* Aurora Ares: user-requested 5-column module atlas instead of zoom/3-column collapse. */
body.ares-atlas-page {
  min-width: 1600px !important;
  overflow-x: auto !important;
}
body.ares-atlas-page .atlas-shell {
  width: 1540px !important;
  max-width: 1540px !important;
  min-width: 1540px !important;
}
body.ares-atlas-page .site-header,
body.ares-atlas-page header.aurora-uhd {
  min-width: 1600px !important;
  flex-direction: row !important;
  align-items: center !important;
}
body.ares-atlas-page .atlas-board {
  grid-template-columns: 240px minmax(0, 1fr) !important;
}
body.ares-atlas-page .atlas-nav {
  position: sticky !important;
  top: 88px !important;
  max-height: calc(100vh - 110px) !important;
  display: block !important;
}
body.ares-atlas-page .hero-head {
  grid-template-columns: 1fr 1.8fr !important;
}
body.ares-atlas-page .hero-copy {
  border-left: 1px solid var(--line) !important;
  padding-left: 24px !important;
}
body.ares-atlas-page .module-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
body.ares-atlas-page .module-card {
  min-height: 360px !important;
}
body.ares-atlas-page .module-card .visual {
  height: 142px !important;
}
body.ares-atlas-page .module-card h2 {
  font-size: 1.02rem !important;
}
body.ares-atlas-page .module-card p {
  font-size: .86rem !important;
  line-height: 1.32 !important;
}
body.ares-atlas-page .phase2-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.ares-atlas-page .phase2-spine,
body.ares-atlas-page .standards-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}


/* v09 space-systems uniform card atlas
   Purpose: make Space Systems card pages resemble the Alpha Hospital visual density,
   keep 5-column desktop card fields under Chrome zoom, and prevent local @media rules
   from collapsing atlas/card pages into long 3x7 or 1-column stacks. */
body.space-atlas-page,
body.space-card-page,
body.space-systems-gateway {
  min-width: 1600px !important;
  overflow-x: auto !important;
}

/* Atlas pages: Aurora Prime / Aurora Ares / Mars Terraforming use sidebar + cards. */
body.space-atlas-page .atlas-shell {
  width: 1540px !important;
  max-width: 1540px !important;
  min-width: 1540px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.space-atlas-page .atlas-board {
  display: grid !important;
  grid-template-columns: 240px minmax(0, 1fr) !important;
  gap: 18px !important;
}
body.space-atlas-page.mars-terraforming-page .atlas-board {
  grid-template-columns: 250px minmax(0, 1fr) !important;
}
body.space-atlas-page .atlas-nav {
  position: sticky !important;
  top: 88px !important;
  max-height: calc(100vh - 110px) !important;
  display: block !important;
  overflow: auto !important;
}
body.space-atlas-page .hero-head {
  display: grid !important;
  grid-template-columns: 1fr 1.8fr !important;
  gap: 20px !important;
  align-items: center !important;
}
body.space-atlas-page .hero-copy {
  border-left: 1px solid var(--line, rgba(22,232,255,.34)) !important;
  padding-left: 24px !important;
}
body.space-atlas-page .section-title {
  display: flex !important;
  flex-direction: row !important;
  align-items: end !important;
  justify-content: space-between !important;
}
body.space-atlas-page .phase2-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.space-atlas-page .phase2-spine {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.space-atlas-page .module-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
body.space-atlas-page .module-card {
  min-height: 360px !important;
  height: 100% !important;
  border-radius: 16px !important;
}
body.space-atlas-page .module-card .visual {
  height: 142px !important;
  min-height: 142px !important;
  background-size: cover !important;
  background-position: center !important;
}
body.space-atlas-page .module-card .body {
  padding: .88rem !important;
  gap: .38rem !important;
}
body.space-atlas-page .module-card h2 {
  font-size: 1.02rem !important;
  line-height: 1.08 !important;
}
body.space-atlas-page .module-card p {
  font-size: .86rem !important;
  line-height: 1.30 !important;
}
body.space-atlas-page .module-card .btn {
  margin-top: auto !important;
  font-size: .78rem !important;
  padding: .48rem .62rem !important;
}
body.space-atlas-page .status-strip {
  margin-top: 18px !important;
}

/* Alpha Hospital remains the reference look: 5 cards across, compact graphics, no zoom collapse. */
body.alpha-hospital-page .dept-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  grid-auto-rows: 1fr !important;
}
body.alpha-hospital-page .dept-card {
  min-height: 272px !important;
  height: 100% !important;
}
body.alpha-hospital-page .dept-card img {
  height: 116px !important;
  object-fit: cover !important;
}

/* Other Space Systems card sections: use a comparable 5-column visual field where practical. */
body.space-card-page .module-grid,
body.space-card-page .detail-grid,
body.space-card-page .standards-grid,
body.space-card-page .grid.tech-grid,
body.space-card-page .grid.device-grid,
body.space-card-page .folder-grid,
body.space-card-page .navcards,
body.space-systems-gateway .grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
body.space-systems-gateway .grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 1500px !important;
  max-width: 1500px !important;
}
body.space-card-page .module-card,
body.space-card-page .detail-card,
body.space-card-page .standards-card,
body.space-card-page .card,
body.space-card-page .tile,
body.space-systems-gateway .card {
  height: 100% !important;
  min-height: 330px !important;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 16px !important;
}
body.space-card-page .module-card .visual,
body.space-card-page .card .art,
body.space-systems-gateway .card .art {
  height: 142px !important;
  min-height: 142px !important;
  background-size: cover !important;
  background-position: center !important;
}
body.space-card-page .subcard-art {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  object-fit: cover !important;
  margin-bottom: .85rem !important;
}
body.space-card-page .module-card h2,
body.space-card-page .detail-card h2,
body.space-card-page .standards-card h2,
body.space-card-page .card h2,
body.space-card-page .tile h2,
body.space-systems-gateway .card h2 {
  font-size: 1.02rem !important;
  line-height: 1.10 !important;
}
body.space-card-page .module-card p,
body.space-card-page .detail-card p,
body.space-card-page .standards-card p,
body.space-card-page .card p,
body.space-card-page .tile p,
body.space-systems-gateway .card p {
  font-size: .86rem !important;
  line-height: 1.30 !important;
}
body.space-card-page .btn,
body.space-card-page .umbra-button,
body.space-card-page .wp-button,
body.space-card-page .tile .btn,
body.space-card-page .card .btn,
body.space-systems-gateway .card .btn {
  margin-top: auto !important;
  align-self: flex-start !important;
}

/* Give pages with no sidebar a fixed card canvas so Chrome zoom scrolls instead of relayout. */
body.space-card-page main,
body.space-card-page .page-shell,
body.space-card-page .shell,
body.space-card-page .container,
body.space-systems-gateway .page-shell,
body.space-systems-gateway main {
  max-width: none !important;
}
body.space-card-page .page-shell,
body.space-card-page .shell,
body.space-card-page .container,
body.space-systems-gateway .page-shell {
  width: 1500px !important;
  min-width: 1500px !important;
}

/* Keep local headers/search bars horizontal on these pages even when older inline @media rules fire. */
body.space-atlas-page .site-header,
body.space-card-page .site-header,
body.space-systems-gateway .site-header,
body.space-atlas-page header.aurora-uhd,
body.space-card-page header.aurora-uhd,
body.space-systems-gateway header.aurora-uhd {
  min-width: 1600px !important;
  flex-direction: row !important;
  align-items: center !important;
}

/* v09b Space Systems gateway visual card lock */
body.space-systems-gateway .space-page-v2 {
  width: 1540px !important;
  min-width: 1540px !important;
  max-width: 1540px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.space-systems-gateway .space-hero-copy {
  width: 740px !important;
  max-width: 740px !important;
  padding: 52px 52px 42px !important;
}
body.space-systems-gateway .space-hero-copy h1 {
  font-size: 82px !important;
  line-height: .96 !important;
}
body.space-systems-gateway .space-cap-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.space-systems-gateway .space-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
body.space-systems-gateway .space-card-v2 {
  min-height: 300px !important;
  height: 100% !important;
}
body.space-systems-gateway .space-card-content {
  min-height: 190px !important;
  display: flex !important;
  flex-direction: column !important;
}
body.space-systems-gateway .space-card-v2 h2 {
  font-size: 1.55rem !important;
  line-height: 1.04 !important;
}
body.space-systems-gateway .space-card-v2 p {
  font-size: .92rem !important;
  line-height: 1.38 !important;
}
body.space-systems-gateway .space-card-v2 .open-v2 {
  margin-top: auto !important;
}
