/* SCROLLBAR OWNER — quiet native-style tracks, shared by every app scrollport.
   OS overlay-scrollbar preferences remain authoritative. Never change overflow. */
* { scrollbar-width: thin; scrollbar-color: #92979e88 transparent; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb { background: #92979e88; border: 2px solid transparent; border-radius: 999px; background-clip: padding-box; }
*::-webkit-scrollbar-thumb:hover { background-color: #b7bcc3; }
*::-webkit-scrollbar-corner { background: transparent; }
/* Popup-only progressive enhancement. Keyboard focus and thumb hover remain
   discoverable; simply resting the pointer over a popup does not pin the bar. */
@media (forced-colors: none) {
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog),
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog) * {
    --rw-scroll-thumb: transparent;
    scrollbar-color: var(--rw-scroll-thumb) transparent;
  }
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog):is(:focus-visible, :has(:focus-visible), .rw-is-scrolling),
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog) :is(:focus-visible, :has(:focus-visible), .rw-is-scrolling) {
    --rw-scroll-thumb: #92979e88;
  }
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog)::-webkit-scrollbar-thumb,
  .rw-scrollbar-auto :where(.modal, .ff-envelope, .mode-select, .auth-method-modal, #listings-panel, .fg-shell, .contact-modal, [role="dialog"], dialog) *::-webkit-scrollbar-thumb {
    background-color: var(--rw-scroll-thumb);
    transition: background-color 180ms ease;
  }
  .rw-scrollbar-auto *::-webkit-scrollbar-thumb:hover { background-color: #b7bcc3; }
}
@media (prefers-reduced-motion: reduce) {
  *::-webkit-scrollbar-thumb { transition: none !important; }
}
@media (forced-colors: active) {
  * { scrollbar-color: auto; scrollbar-width: auto; }
  *::-webkit-scrollbar-thumb { background-color: ButtonText; }
}

/* Persistent loading component ownership: available before and after hydration.
   Visibility and retry lifecycle remain controlled by existing JavaScript. */
:root { --rw-loading-surface: #181a1d; --rw-loading-text: #f4f5f6; --rw-loading-muted: #bdc2c9; --rw-loading-line: #444950;
  --rw-ui-surface: #202428; --rw-ui-text: #e2fff7; --rw-ui-muted: #bdc2c9; --rw-ui-border: #444950; --rw-ui-focus: #60cfff;
  --rw-ui-radius-shell: 20px;
  --rw-ui-icon-size: 20px;
  --rw-ui-icon-stroke: 1.8;
  --rw-menu-bar-reserve: calc(32px + 3rem + env(safe-area-inset-bottom));
  --rw-ui-radius-card: 14px;
  --rw-ui-radius-control: 10px;
  --rw-ui-control-height: 44px;
  --rw-ui-space: 14px;
}
.loading-container, .shell-pending-card, .rw-launch-card {
  box-sizing: border-box; width: min(360px, calc(100vw - 32px));
  padding: 20px; border: 1px solid var(--rw-loading-line); border-radius: 16px;
  background: var(--rw-loading-surface); color: var(--rw-loading-text);
  box-shadow: 0 12px 36px rgba(0,0,0,.24); font-family: system-ui, sans-serif;
}
.loading-container {
  position: fixed; z-index: 9999; inset: auto 16px max(20px,env(safe-area-inset-bottom));
  margin-inline: auto; display: grid; grid-template-columns: 24px minmax(0,1fr);
  align-items: center; gap: 12px; pointer-events: none; transition: opacity .2s ease;
}
.loading-container.hidden { display: none !important; }
.loading-text, .shell-pending-copy strong, [data-launch-status] {
  color: var(--rw-loading-text); font-size: 16px; font-weight: 500; line-height: 1.45;
  letter-spacing: 0; text-shadow: none; overflow-wrap: anywhere;
}
.loading-container .realwing-context-logo, .shell-pending-card .realwing-context-logo, .rw-launch-card .realwing-context-logo {
  grid-column: 1 / -1; display: block; width: 128px; height: auto; max-width: 100%; margin: 0 auto 8px; padding: 0; background: none;
}
.loading-container:is(.has-error,.is-load-error) { pointer-events: auto; border-color: #c99286; }
.loading-container:is(.has-error,.is-load-error) .loading-skeleton { display: none; }
.loading-container:is(.has-error,.is-load-error) .loading-text { grid-column: 1 / -1; }
#startupReloadButton { grid-column: 1 / -1; min-height: 44px; padding: 10px 16px; border: 1px solid #f4f5f6; border-radius: 10px; background: #f4f5f6; color: #181a1d; font: 600 16px/1.4 system-ui,sans-serif; cursor: pointer; }
#startupReloadButton.hidden { display: none; }
#startupReloadButton:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
body:has(#spawnInstruction:not(.hidden)) .loading-container { bottom: calc(90px + 2rem); }
/* Pending owns the viewport until the destination takes over. The six IDs
   match startup-shell's intent map; state specificity beats hydrated dialogs
   without changing any ready-state geometry or hiding the Back action. */
:is(#listings-panel,#hangarModal,#leaderboardModal,#profileModal,#optionsModal,#paywallModal).shell-pending-surface[data-shell-pending] {
  position: fixed !important; z-index: 12000 !important; inset: 0 !important;
  width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important;
  min-width: 0 !important; min-height: 0 !important; margin: 0 !important; box-sizing: border-box;
  transform: none !important; translate: none !important; animation: none !important; transition: none !important;
  opacity: 1 !important; display: grid !important; grid-template: auto / minmax(0,1fr) !important;
  place-content: safe center !important; place-items: safe center !important; gap: 0 !important;
  padding: max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)) !important;
  overflow: auto !important; overscroll-behavior: contain; border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important; background: rgba(10,11,13,.94) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
:is(#listings-panel,#hangarModal,#leaderboardModal,#profileModal,#optionsModal,#paywallModal).shell-pending-surface[data-shell-pending] > :not(.shell-pending-card),
:is(#listings-panel,#hangarModal,#leaderboardModal,#profileModal,#optionsModal,#paywallModal).shell-pending-surface[data-shell-pending]::before,
:is(#listings-panel,#hangarModal,#leaderboardModal,#profileModal,#optionsModal,#paywallModal).shell-pending-surface[data-shell-pending]::after { display: none !important; }
.shell-pending-card { display: grid; gap: 16px; text-align: left; max-width: 100%; }
.shell-pending-status { display: grid; grid-template-columns: 24px minmax(0,1fr); align-items: center; gap: 12px; }
.shell-pending-back { min-height: 44px; width: 100%; border: 1px solid var(--rw-loading-line); border-radius: 10px; background: transparent; color: var(--rw-loading-text); padding: 10px 14px; font: 600 max(14px,.875rem)/1.4 system-ui,sans-serif; cursor: pointer; }
.shell-pending-back:hover { background: #ffffff0d; }
.shell-pending-back:focus-visible { outline: 2px solid var(--rw-ui-focus); outline-offset: 3px; }
.shell-pending-copy { display: grid; gap: 6px; min-width: 0; }
.shell-pending-copy small { color: var(--rw-loading-muted); font-size: max(14px,.875rem); line-height: 1.5; }
.shell-pending-copy strong { font-size: max(16px,1rem); }
:is(.loading-skeleton,.splash-skeleton,.rw-progress):not(.hidden) { display: inline-flex; width: auto; height: 18px; align-items: end; justify-content: center; gap: 4px; padding: 0; border: 0; background: transparent; }
:is(.loading-skeleton,.splash-skeleton,.rw-progress) > :is(i,span) { display: block; width: 4px; height: 12px; border: 0; border-radius: 3px; background: #dce0e5; box-shadow: none; transform-origin: center bottom; animation: rw-load-pulse .9s ease-in-out infinite; }
:is(.loading-skeleton,.splash-skeleton,.rw-progress) > :is(i,span):nth-child(2) { animation-delay: .11s; }
:is(.loading-skeleton,.splash-skeleton,.rw-progress) > :is(i,span):nth-child(3) { animation-delay: .22s; }
:is(.loading-skeleton,.rw-progress) > i::after { display: none; }
.rw-progress-inline { height: 16px; }
.rw-progress.hidden, .vp-loading.hidden { display: none !important; }
.vp-loading { position: absolute; inset: 0; display: grid; place-items: center; pointer-events: none; }
.vp-loading.rw-progress { position: absolute; inset: 50% auto auto 50% !important; width: auto !important; height: 18px !important; transform: translate(-50%,-50%); }
.spinner, .loader-spinner { display: inline-block; width: 20px; height: 8px; border: 0; border-radius: 4px; background: currentColor; animation: rw-load-pulse .9s ease-in-out infinite; }
#flight-launch-sequence { position: fixed; inset: 0; z-index: 9200; display: grid; place-items: end center; padding: 24px 16px max(32px,env(safe-area-inset-bottom)); pointer-events: none; transition: opacity .2s ease; }
.rw-launch-card { display: grid; gap: 8px; text-align: center; }
[data-launch-kicker], [data-launch-destination] { color: var(--rw-loading-muted); font-size: 14px; line-height: 1.4; }
.rw-launch-title { margin: 0; font-size: 22px; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; }
.rw-launch-track { height: 3px; margin-top: 8px; background: #444950; overflow: hidden; border-radius: 3px; }
[data-launch-progress] { height: 100%; width: 0; background: #dce0e5; transition: width .12s linear; }
@keyframes rw-load-pulse { 0%,100% { opacity: .45; transform: scaleY(.55); } 50% { opacity: 1; transform: scaleY(1); } }
@media(prefers-reduced-motion:reduce) { :is(.loading-skeleton,.splash-skeleton,.rw-progress) > :is(i,span), .spinner, .loader-spinner { animation: none !important; } #flight-launch-sequence, [data-launch-progress], .loading-container { transition: none; } }
/* Navigation authority: shared before and after world hydration.
   Icons are opt-in controls, never artwork. Geometry is deliberately protected
   from legacy button-svg rules until their feature owners are migrated. */
svg.rw-icon, svg.menu-nav-icon, svg.hud-control-icon {
  display: inline-block;
  width: var(--rw-ui-icon-size) !important;
  height: var(--rw-ui-icon-size) !important;
  min-width: var(--rw-ui-icon-size);
  flex: 0 0 var(--rw-ui-icon-size) !important;
  vertical-align: middle;
  stroke-width: var(--rw-ui-icon-stroke);
}
svg.menu-nav-icon, svg.hud-control-icon {
  fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round;
}
#mainMenu .menu-brand {
  position: sticky; top: 0; z-index: 7; flex-shrink: 0;
  background: #0b0b09;
  grid-column: 1; grid-row: auto; align-self: start; justify-self: center;
  display: flex; align-items: center; width: 100%; max-width: 1200px;
  min-height: 48px; padding-right: 192px; text-align: left;
}
#mainMenu .brand-name { margin: 0; line-height: 1; font-size: 32px; }
#mainMenu .brand-mark { min-width: 0; max-width: 100%; }
#mainMenu .brand-name .realwing-brand-logo { width: 220px; max-width: 100%; height: auto; }
#mainMenu .brand-tagline { display: none; }
body:has(#mainMenu:not(.hidden)) .auth-bar {
  position: fixed; z-index: 250; display: flex; align-items: center;
  top: 24px; right: max(clamp(22px,4vw,48px),calc((100vw - 1200px)/2));
  max-width: 176px; min-height: 48px; gap: 0;
  font: 400 max(14px,.875rem)/1.3 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body:has(#mainMenu:not(.hidden)) .auth-signed-in { display: flex; align-items: center; min-width: 0; max-width: 100%; padding: 0; border: 0; background: transparent; }
body:has(#mainMenu:not(.hidden)) .auth-user { display: flex; align-items: center; gap: 8px; max-width: 100%; min-width: 0; font: inherit; }
body:has(#mainMenu:not(.hidden)) .auth-user-name { display: block; min-width: 0; font: inherit; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body:has(#mainMenu:not(.hidden)) .auth-user-avatar { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: max(30px,1.5rem); height: max(30px,1.5rem); font-size: max(14px,.875rem); }
#mainMenu .menu-rail {
  grid-column: 1; grid-row: auto; justify-self: center;
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px;
  width: 100%; max-width: 1200px;
}
#mainMenu .rail-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  min-width: 0; min-height: 48px; padding: 8px;
  border: 1px solid rgba(238,216,161,.18); border-radius: 12px;
  background: rgba(255,255,255,.025); color: #cde0e7; cursor: pointer;
}
#mainMenu .rail-label { max-width: 100%; overflow-wrap: anywhere; font-size: max(14px,.875rem); line-height: 1.3; }
#mainMenu .rail-icon { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; }
#mainMenu .rail-copy { display: grid; min-width: 0; }
#mainMenu .rail-copy small { display: none; }
@media (min-width:1200px) and (min-aspect-ratio:6/5) {
  body:has(#mainMenu:not(.hidden)) .auth-bar { top: clamp(28px,4vh,40px); right: max(clamp(54px,5vw,84px),calc((100vw - 1200px)/2)); }
}
/* A single phone breakpoint owns the bottom bar, including short landscape. */
@media (max-width:767px), (max-height:500px) and (pointer:coarse) {
  #mainMenu .menu-brand { padding-right: 144px; min-height: 48px; }
  #mainMenu .brand-name .realwing-brand-logo { width: 180px; }
  body:has(#mainMenu:not(.hidden)) .auth-bar { top: max(12px,env(safe-area-inset-top)); right: max(16px,env(safe-area-inset-right)); max-width: 128px; }
  #mainMenu .menu-rail {
    position: fixed; z-index: 6; left: 0; right: 0; bottom: 0;
    max-width: none; gap: 0; padding: 6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
    border-top: 1px solid rgba(238,216,161,.18);
    background: rgba(18,17,14,.97); backdrop-filter: blur(14px);
  }
  #mainMenu .rail-btn { min-height: 56px; flex-direction: column; gap: 4px; padding: 4px; border: 0; border-radius: 8px; background: transparent; }
  #mainMenu .rail-label { font-size: max(12px,.75rem); }
}
@media (min-width:768px) and (max-height:500px) and (pointer:coarse) {
  #mainMenu.menu-v3 { padding: max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) var(--rw-menu-bar-reserve) max(16px,env(safe-area-inset-left)) !important; scroll-padding-bottom: var(--rw-menu-bar-reserve); }
}
/* Persistent menu authority: extracted from the owner-selected cold-start design. */
/* Explicit inherited values prevent lazy game fonts and generic overlay rules
   from restyling the menu. This file deliberately contains no world controls. */
#mainMenu {
  inset: auto; width: 100%; max-width: none; height: 100dvh; max-height: none;
  margin: 0; border: 0; border-radius: 0; transform: none;
  align-items: normal; justify-content: normal;
  z-index: 100; backdrop-filter: none; -webkit-backdrop-filter: none;
  font: 400 16px/normal -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
  letter-spacing: normal; text-transform: none; text-align: start;
}
#mainMenu, #mainMenu * { box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif !important; }
#mainMenu button { font-size: inherit; font-weight: 400; line-height: normal; letter-spacing: normal; text-transform: none; }
#mainMenu.hidden { display: none !important; }
#mainMenu .menu-legacy-hidden { display: none !important; }
body:has(#mainMenu:not(.hidden)) .auth-signed-out {
  display: block; padding: 0; border: 0; border-radius: 0; background: transparent;
  box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none;
}
body:has(#mainMenu:not(.hidden)) #auth-signin-btn {
  display: inline-block; min-width: 0; width: auto; height: auto;
  font: inherit !important; letter-spacing: normal !important; text-transform: none;
  box-shadow: none !important; outline: none; transform: none;
}
body:has(#mainMenu:not(.hidden)) #auth-signin-btn:focus-visible,
#mainMenu button:focus-visible { outline: 2px solid #e7ca82; outline-offset: 3px; }
#mainMenu.menu-v3{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);grid-template-areas:"brand stats" "hero context" "rail context";gap:16px;min-height:100svh;padding:clamp(22px,4vw,56px);overflow:hidden;background:radial-gradient(circle at 72% 28%,rgba(54,142,179,.22),transparent 38%),linear-gradient(145deg,#07151f,#031017 70%);color:#edf8fc}
#mainMenu.menu-v3:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);mask-image:linear-gradient(to bottom,#000,transparent 82%)}
.realwing-brand-logo{display:block;width:220px;max-width:100%;height:auto}
#mainMenu .menu-stats{grid-area:stats;display:grid;grid-template-columns:repeat(4,1fr);align-self:start;border:1px solid rgba(151,211,233,.15);border-radius:16px;background:rgba(255,255,255,.035)}
#mainMenu .stat-card{display:grid;gap:2px;padding:12px;text-align:center}
#mainMenu .stat-value{font-weight:700}
#mainMenu .stat-label{color:#9fb5be;font-size:11px}
#mainMenu .hero-tiles{grid-area:hero;display:grid;grid-template-columns:1.3fr .85fr;gap:14px}
#mainMenu .hero-stack{display:grid;gap:14px}
#mainMenu .hero-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:180px;padding:22px;border:1px solid rgba(151,211,233,.18);border-radius:20px;background:linear-gradient(145deg,rgba(25,74,95,.82),rgba(7,24,34,.92));color:#eef9fd;text-align:left;cursor:pointer;box-shadow:0 20px 60px rgba(0,0,0,.18)}
#mainMenu .hero-primary{min-height:374px;background:linear-gradient(155deg,rgba(28,105,135,.82),rgba(8,30,42,.95))}
#mainMenu .hero-icon{position:absolute;top:20px;right:22px;color:#8edcf3;font-size:24px}
#mainMenu .hero-kicker{color:#91dff5;font-size:11px;font-weight:750;letter-spacing:.14em}
#mainMenu .hero-title{margin-top:8px;font-size:clamp(25px,3vw,42px);font-weight:680;letter-spacing:-.035em}
#mainMenu .hero-desc{margin-top:8px;color:#b7ccd5;font-size:13px}
#mainMenu .hero-cta{margin-top:16px;color:#9ce5f7;font-size:12px;font-weight:700}
body:has(#mainMenu:not(.hidden)) .auth-pill-btn, body:has(#mainMenu:not(.hidden)) .auth-user{min-height:44px;padding:0 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(5,20,29,.78);color:#fff}
@media(max-width:767px){#mainMenu.menu-v3{display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) 16px 28px}#mainMenu .menu-stats{width:100%}#mainMenu .stat-card{padding:9px 5px}#mainMenu .hero-tiles{display:grid;grid-template-columns:1fr;gap:10px}#mainMenu .hero-primary{min-height:170px}#mainMenu .hero-stack{grid-template-columns:1fr 1fr}#mainMenu .hero-tile{min-height:118px;padding:16px}#mainMenu .hero-secondary .hero-desc{display:none}#mainMenu .hero-title{font-size:21px}}
@media(min-width:1024px){
  #mainMenu.menu-v3{grid-template-columns:minmax(0,1fr) minmax(360px,420px);grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-areas:"brand context" "stats context" "hero context" "rail context";column-gap:clamp(22px,3vw,44px);row-gap:14px;padding:clamp(24px,3vh,38px) clamp(34px,5vw,76px)}
  #mainMenu .menu-stats{width:min(600px,100%)}
  #mainMenu .hero-tiles{min-height:0;grid-template-rows:minmax(210px,1.2fr);align-self:stretch}
  #mainMenu .hero-tile, #mainMenu .hero-primary{min-height:0;height:100%}
}
@media(max-width:767px){
  #mainMenu.menu-v3{min-height:100svh;gap:12px;padding:max(12px,env(safe-area-inset-top)) 16px var(--rw-menu-bar-reserve);overflow-y:auto;scroll-padding-bottom:var(--rw-menu-bar-reserve)}
  #mainMenu .hero-tiles{flex:1 0 auto}#mainMenu .hero-tile{padding:16px 18px}
}
#mainMenu.menu-v3{background:radial-gradient(ellipse at 68% 8%,rgba(231,202,130,.08),transparent 28%),radial-gradient(ellipse at 12% 100%,rgba(255,255,255,.035),transparent 36%),linear-gradient(135deg,#0b0b09,#080807 58%,#11100d);color:#f7f3ea}
#mainMenu.menu-v3:after{background:linear-gradient(rgba(238,216,161,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(238,216,161,.018) 1px,transparent 1px);background-size:48px 48px}
#mainMenu .stat-label, #mainMenu .hero-desc{color:rgba(247,243,234,.62)}
#mainMenu .menu-stats, #mainMenu .hero-tile{border-color:rgba(238,216,161,.18)}
#mainMenu .menu-stats{background:rgba(255,255,255,.025)}
#mainMenu .hero-tile, #mainMenu .hero-primary{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.06)}
#mainMenu .hero-icon, #mainMenu .hero-kicker, #mainMenu .hero-cta{color:#e7ca82}
body:has(#mainMenu:not(.hidden)) .auth-pill-btn, body:has(#mainMenu:not(.hidden)) .auth-user{border-color:rgba(238,216,161,.24);background:rgba(18,17,14,.82);color:#f7f3ea}
#mainMenu.menu-v3 .stat-label{font-size:max(14px,.875rem);letter-spacing:normal;color:#c5c2b9;white-space:normal;overflow-wrap:anywhere;overflow:visible}
@media(max-width:480px){#mainMenu.menu-v3 .menu-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
#mainMenu .hero-tile{isolation:isolate;overflow:hidden;background:#13130f!important}
#mainMenu .hero-tile>:not(.hero-scene){position:relative;z-index:2}
#mainMenu .hero-scene{position:absolute;z-index:0;inset:0;display:block;overflow:hidden;pointer-events:none}
#mainMenu .hero-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,7,.93),rgba(8,8,7,.45) 58%,rgba(8,8,7,.1)),linear-gradient(0deg,rgba(8,8,7,.88),transparent 72%)}
#mainMenu .hero-scene-flight img{width:100%;height:100%;object-fit:cover;object-position:58% 60%;opacity:.5;filter:saturate(.62) sepia(.12) contrast(1.08);transform:scale(1.015)}
#mainMenu .hero-scene-mission img{position:absolute;top:50%;right:-4%;width:62%;height:82%;object-fit:contain;opacity:.7;filter:drop-shadow(0 18px 28px rgba(0,0,0,.5));transform:translateY(-50%) rotate(-5deg)}
#mainMenu .hero-scene-mission i{position:absolute;top:50%;right:26%;width:70px;height:70px;border:1px solid rgba(231,202,130,.24);border-radius:50%;transform:translate(50%,-50%)}
#mainMenu .hero-scene-mission i:nth-child(2){width:108px;height:108px;opacity:.6}
#mainMenu .hero-scene-mission i:nth-child(3){width:146px;height:146px;opacity:.3}
#mainMenu .hero-scene-property{background:repeating-linear-gradient(28deg,transparent 0 42px,rgba(231,202,130,.08) 43px 45px),linear-gradient(145deg,#56654e,#25291f 48%,#10110d)}
#mainMenu .hero-scene-property i{position:absolute;right:8%;width:clamp(90px,14vw,180px);height:clamp(60px,10vw,125px);border:5px solid rgba(239,231,207,.62);background:linear-gradient(135deg,#a87850,#5e422f);box-shadow:0 18px 40px rgba(0,0,0,.34);transform:rotate(-7deg) skewY(3deg)}
#mainMenu .hero-scene-property i:nth-child(1){top:12%}
#mainMenu .hero-scene-property i:nth-child(2){top:50%;right:29%;width:clamp(70px,10vw,130px);height:clamp(50px,7vw,88px);opacity:.8}
#mainMenu .hero-scene-property i:nth-child(3){top:65%;right:3%;width:clamp(60px,8vw,110px);height:clamp(40px,6vw,72px);opacity:.7}
#mainMenu .hero-scene-property b{position:absolute;top:17%;right:36%;color:#e7ca82;font-size:28px;text-shadow:0 8px 20px #000}
#mainMenu .hero-title, #mainMenu .hero-desc, #mainMenu .hero-kicker{text-shadow:0 2px 14px rgba(0,0,0,.86)}
@media(max-width:767px){#mainMenu .hero-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#mainMenu .hero-primary{min-height:154px}#mainMenu .hero-secondary{min-height:110px}#mainMenu .hero-tile{padding:14px}}
/* Menu renders before the world stylesheet: icon geometry must live here too. */
#mainMenu .hero-icon{position:absolute!important;top:16px!important;right:16px!important;bottom:auto!important;left:auto!important;width:24px;height:24px;z-index:1;pointer-events:none}
@media(max-width:767px){#mainMenu .hero-icon{display:block;top:16px;right:16px}#mainMenu .hero-secondary .hero-title{font-size:17px}#mainMenu .hero-secondary .hero-kicker, #mainMenu .hero-secondary .hero-cta{font-size:8px}#mainMenu .hero-scene-mission img{width:76%;right:-18%;opacity:.5}}
#mainMenu .menu-vignette, #mainMenu .menu-bg-grid, #mainMenu .menu-bg-horizon{display:none}
@media (min-width:768px) and (max-width:1199px),(min-width:768px) and (max-aspect-ratio:6/5){#mainMenu.menu-v3{grid-template-columns:minmax(0,960px);grid-template-rows:repeat(5,auto);grid-template-areas:none;align-content:start;justify-content:center;gap:12px;min-height:100dvh;padding:24px clamp(22px,4vw,48px) 30px;overflow-x:hidden;overflow-y:auto}#mainMenu .menu-stats, #mainMenu .hero-tiles{grid-column:1;grid-row:auto;width:100%;max-width:960px;justify-self:center}#mainMenu .hero-tiles{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);grid-template-rows:clamp(360px,42vw,430px);max-height:430px}#mainMenu .hero-stack{grid-template-rows:repeat(2,minmax(0,1fr))}#mainMenu .hero-tile, #mainMenu .hero-primary, #mainMenu .hero-secondary{min-height:0;height:auto}}
@media (min-width:768px) and (max-width:860px){#mainMenu .hero-tiles{grid-template-columns:1fr;grid-template-rows:auto;max-height:none}#mainMenu .hero-primary{min-height:250px}#mainMenu .hero-stack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:180px}}
#mainMenu .stat-card-action{color:inherit;border:0;background:transparent;cursor:pointer}
@media (min-width:768px){#mainMenu.menu-v3{grid-template-columns:minmax(0,1200px);grid-template-rows:repeat(4,auto);grid-template-areas:none;align-content:start;justify-content:center;max-height:none;overflow-x:hidden;overflow-y:auto}#mainMenu .menu-stats, #mainMenu .hero-tiles{grid-column:1;grid-row:auto;width:100%;justify-self:center}#mainMenu .menu-stats{max-width:1200px}#mainMenu .hero-stack{grid-template-rows:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px) and (min-aspect-ratio:6/5){#mainMenu.menu-v3{gap:14px;padding:clamp(28px,4vh,40px) clamp(54px,5vw,84px) 32px}#mainMenu .hero-tiles{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);grid-template-rows:clamp(390px,48vh,500px)}#mainMenu .hero-tile, #mainMenu .hero-primary, #mainMenu .hero-secondary{min-height:0;height:auto}}
