/* Mobile pinned-stage stability.
   These rules intentionally load after index.min.css. */
@media (max-width: 900px) {
  html,
  body {
    overscroll-behavior-x: none !important;
    overflow-x: clip !important;
    max-width: 100% !important;
  }

  .ticker-wrap,
  .hero-partners-banner,
  .hero-partners-track-wrap {
    max-width: 100vw !important;
    overflow: hidden !important;
    contain: layout paint !important;
  }

  .hero-pin {
    height: calc(var(--frozen-vh, var(--hm-svh, 100vh)) * 2) !important;
  }

  .about-pin {
    height: calc(var(--frozen-vh, var(--hm-svh, 100vh)) * 1.85) !important;
  }

  .hero,
  #about,
  .flight {
    height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
    min-height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
  }

  .hero {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    width: 100% !important;
    z-index: 5 !important;
  }

  html.hm-mobile-crash-safe .hero,
  html.hm-ios-safari .hero,
  html.hm-webview-safe .hero {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    width: 100% !important;
    height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
    min-height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
    margin-top: 0 !important;
    z-index: 5 !important;
    visibility: visible !important;
    transform: none !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    contain: paint !important;
  }

  .hm-mobile-simple-flight .flight-pin {
    height: calc(var(--frozen-vh, var(--hm-svh, 100vh)) + 440px) !important;
  }

  .hm-mobile-simple-flight #consult {
    margin-top: calc(var(--frozen-vh, var(--hm-svh, 100vh)) * -0.88) !important;
    padding-top: clamp(42px, 10vw, 66px) !important;
    overflow-x: clip !important;
  }

  .hm-mobile-simple-flight .flight,
  .hm-mobile-simple-flight .flight-bg,
  .hm-mobile-simple-flight .consult-host-card {
    overflow-x: clip !important;
  }

  .hm-mobile-simple-flight .flight-clouds {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }

  .hm-mobile-simple-flight .consult-host-card,
  .hm-mobile-simple-flight .consult-grid,
  .hm-mobile-simple-flight .consult-host-info {
    transform: none !important;
  }

  .hm-mobile-simple-flight .consult-lift,
  .hm-mobile-simple-flight .consult-head-body,
  .hm-mobile-simple-flight .consult-diamond,
  .hm-mobile-simple-flight .consult-diamond-divider {
    will-change: transform, opacity;
  }

  .hm-mobile-simple-flight .consult-diamond-divider {
    width: 60px !important;
    height: clamp(128px, 38vw, 168px) !important;
    opacity: 0;
  }

  .hm-mobile-simple-flight .consult-diamond-divider img {
    width: auto !important;
    height: 100% !important;
    max-width: none !important;
  }

  .hm-mobile-simple-flight .consult-diamond {
    display: block !important;
    top: 0 !important;
    bottom: auto !important;
    left: 50% !important;
    width: min(110vw, 420px) !important;
    transform-origin: center top !important;
    opacity: 0;
  }

  .hm-mobile-simple-flight .consult-jet {
    top: 0 !important;
    bottom: auto !important;
    left: 50% !important;
    width: min(110vw, 420px) !important;
    transform-origin: center top !important;
    opacity: 0;
  }

  .hm-mobile-simple-flight .consult-jet img {
    filter: none !important;
  }

  .hm-mobile-simple-flight #jet-trail {
    display: none !important;
  }

  #page-loader,
  .mobile-nav,
  .ops-modal-overlay,
  .modal-overlay,
  .checkout-overlay,
  .cart-overlay,
  .wa-overlay {
    min-height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
  }
}

/* Lightweight executive ambient field.
   Two transform-only layers replace the continuously redrawn full-screen
   particle canvas. The result keeps dimensional mineral light and pinpoints
   without spending CPU/GPU time on every animation frame. */
#bg-canvas,
html.hm-mobile-crash-safe #bg-canvas,
html.hm-ios-safari #bg-canvas,
html.hm-webview-safe #bg-canvas {
  display: none !important;
  visibility: hidden !important;
}

.hm-mobile-ambient,
html.hm-mobile-crash-safe .hm-mobile-ambient,
html.hm-ios-safari .hm-mobile-ambient,
html.hm-webview-safe .hm-mobile-ambient {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 3 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  contain: strict !important;
  opacity: 1 !important;
  background:
    linear-gradient(128deg, transparent 0 27%, rgba(236, 192, 72, .045) 27.15% 27.28%, transparent 27.45% 68%, rgba(176, 188, 186, .025) 68.12% 68.22%, transparent 68.4%),
    linear-gradient(52deg, transparent 0 41%, rgba(235, 205, 126, .028) 41.1% 41.22%, transparent 41.4%),
    linear-gradient(180deg, rgba(3, 4, 4, .08), rgba(13, 13, 10, .2) 48%, rgba(3, 4, 4, .1)) !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}

.hm-mobile-ambient::before {
  content: "" !important;
  position: absolute !important;
  inset: -8% !important;
  background-image:
    radial-gradient(circle, rgba(255, 232, 151, .78) 0 .7px, transparent 1.45px),
    radial-gradient(circle, rgba(214, 168, 42, .58) 0 .8px, transparent 1.55px),
    radial-gradient(circle, rgba(255, 249, 225, .38) 0 .55px, transparent 1.25px) !important;
  background-size: 83px 91px, 137px 149px, 211px 197px !important;
  background-position: 13px 9px, 57px 71px, 101px 31px !important;
  opacity: .46 !important;
  transform: translate3d(-1.5%, -1.5%, 0) scale(1.03) !important;
  will-change: transform, opacity !important;
  animation: hmAmbientMineralDrift 26s ease-in-out infinite alternate !important;
}

.hm-mobile-ambient::after {
  content: "" !important;
  position: absolute !important;
  inset: -12% -22% !important;
  background:
    linear-gradient(108deg, transparent 0 35%, rgba(229, 183, 54, .025) 40%, rgba(255, 231, 151, .11) 47%, rgba(255, 248, 216, .035) 51%, transparent 58%),
    repeating-linear-gradient(112deg, transparent 0 132px, rgba(204, 153, 26, .038) 133px 134px, transparent 135px 276px) !important;
  opacity: .48 !important;
  transform: translate3d(-4%, 0, 0) scale(1.03) !important;
  will-change: transform, opacity !important;
  animation: hmAmbientOreSweep 20s cubic-bezier(.45, 0, .55, 1) infinite alternate !important;
}

@keyframes hmAmbientMineralDrift {
  0% { transform: translate3d(-1.5%, -1.5%, 0) scale(1.03); opacity: .34; }
  52% { opacity: .52; }
  100% { transform: translate3d(1.5%, 1.5%, 0) scale(1.03); opacity: .42; }
}

@keyframes hmAmbientOreSweep {
  0% { transform: translate3d(-4%, -1%, 0) scale(1.03); opacity: .3; }
  100% { transform: translate3d(4%, 1%, 0) scale(1.03); opacity: .5; }
}

.hero-bg,
html.hm-mobile-crash-safe .hero-bg,
html.hm-ios-safari .hero-bg,
html.hm-webview-safe .hero-bg {
  background: url('../hero-quarry-operations-lite.webp') center center / cover no-repeat !important;
}

html.hm-scrolling .hm-mobile-ambient::before,
html.hm-scrolling .hm-mobile-ambient::after,
html.hm-flight-active .hm-mobile-ambient::before,
html.hm-flight-active .hm-mobile-ambient::after,
html.hm-idle .hm-mobile-ambient::before,
html.hm-idle .hm-mobile-ambient::after {
  animation-play-state: paused !important;
}

@media (max-width: 900px) {
  .hm-mobile-ambient::before {
    opacity: .38 !important;
    animation-duration: 32s !important;
  }

  .hm-mobile-ambient::after {
    inset: -10% -28% !important;
    opacity: .3 !important;
    animation-duration: 28s !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hm-mobile-ambient::before,
  .hm-mobile-ambient::after {
    animation: none !important;
    will-change: auto !important;
  }
}

/* Final mobile compatibility pass: keep the same visual system while removing
   browser-webview layout traps that can clip or horizontally push content. */
@media (max-width: 900px) {
  html,
  body {
    -webkit-text-size-adjust: 100% !important;
    overscroll-behavior-x: none !important;
    overflow-x: clip !important;
    touch-action: pan-y !important;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

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

  section,
  footer,
  .wrap-section,
  #shop,
  #operations,
  #vmv,
  #board,
  #financials,
  #headquarters,
  #schematics,
  #documents,
  #corporate-enquiries {
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .wrap-section {
    width: min(100%, calc(100vw - 32px)) !important;
  }

  .section-label {
    max-width: 100% !important;
    min-width: 0 !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    letter-spacing: .14em !important;
    overflow-wrap: anywhere !important;
  }

  .section-label::before {
    flex: 0 0 26px !important;
  }

  .section-title,
  .section-body,
  .about-text {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  .about-text {
    width: min(100%, calc(100vw - 32px)) !important;
  }

  .hero,
  .hero-ct,
  .ct-ghost {
    contain: paint !important;
    max-width: 100% !important;
    overflow: clip !important;
  }

  html.hm-reveal .mask-reveal .mr-w,
  html.hm-reveal [data-lines] .ll-line {
    height: auto !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }

  html.hm-reveal .mask-reveal .mr-wi,
  html.hm-reveal [data-lines] .ll-inner,
  html.hm-reveal [data-letters] .lt {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }

  .fade-in,
  .fade-left,
  .fade-right,
  .scale-in,
  .card-slide,
  .fade-in.visible,
  .fade-left.visible,
  .fade-right.visible,
  .scale-in.visible,
  .card-slide.visible,
  .fade-in.hidden,
  .fade-left.hidden,
  .fade-right.hidden,
  .scale-in.hidden,
  .card-slide.hidden {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }

  .market-panel {
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .market-panel-bar {
    display: block !important;
    overflow: visible !important;
  }

  .livebar-cells {
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .livebar-cell {
    min-width: 0 !important;
    padding: 9px 8px !important;
    white-space: normal !important;
    width: 100% !important;
  }

  .livebar-name,
  .livebar-price,
  .livebar-sub {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .market-panel-quote {
    margin-top: 10px !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  .shop-grid {
    gap: 16px !important;
    grid-template-columns: 1fr !important;
  }

  .shop-item,
  .shop-body,
  .shop-side,
  .shop-price {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .shop-item {
    overflow: hidden !important;
  }

  .shop-item p.desc {
    -webkit-line-clamp: unset !important;
    display: block !important;
    height: auto !important;
    line-clamp: unset !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .shop-market,
  .shop-market span,
  .shop-retail,
  .shop-price .per {
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }

  .shop-side {
    gap: 12px !important;
  }

  #operations .ops-grid {
    gap: 12px !important;
    grid-template-columns: 1fr !important;
  }

  #operations .op-card,
  .ops-grid .op-card {
    height: clamp(360px, 106vw, 410px) !important;
    min-height: 360px !important;
    overflow: visible !important;
  }

  #operations .op-card img,
  .ops-grid .op-card img {
    transform: none !important;
  }

  #operations .op-card-overlay,
  .ops-grid .op-card-overlay {
    inset: 0 !important;
    min-width: 0 !important;
    padding: 24px 18px !important;
  }

  #operations .op-card-overlay > *,
  .ops-grid .op-card-overlay > * {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  #operations .op-card p,
  .ops-grid .op-card p {
    max-height: none !important;
    overflow: visible !important;
  }

  #operations .op-arrow,
  .ops-grid .op-arrow {
    max-width: 100% !important;
    opacity: 1 !important;
  }

  .panel {
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .corp-table {
    max-width: 100% !important;
    table-layout: fixed !important;
    width: 100% !important;
  }

  .corp-table th,
  .corp-table td {
    font-size: 11px !important;
    letter-spacing: .08em !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
    padding: 10px 7px !important;
    white-space: normal !important;
  }

  .corp-table td:last-child {
    text-align: left !important;
  }

  .consult-card,
  .doc-card,
  .fin-kpi,
  .board-member,
  .sch-item,
  .vmv-card,
  .shop-item {
    backface-visibility: hidden;
    transform: translateZ(0);
  }

  .consult-card {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  .consult-jet-strip {
    border-radius: 12px 12px 0 0 !important;
  }
}

@media (max-width: 360px) {
  .section-title {
    font-size: 34px !important;
  }

  #operations .op-card,
  .ops-grid .op-card {
    height: 390px !important;
  }

  .livebar-cell {
    padding: 8px 6px !important;
  }
}

@media (max-width: 900px) and (hover: none), (max-width: 900px) and (pointer: coarse) {
  .board-member:hover,
  .consult-card:hover,
  .doc-card:hover,
  .fin-kpi:hover,
  .op-card:hover,
  .sch-item:hover,
  .vmv-card:hover,
  .shop-item:hover {
    transform: none !important;
  }
}

/* Hero liquid wordmark: hollow gold outlines at rest, then the existing
   scroll pose fills OIL & MINING from the bottom like rising liquid. */
.hero-ct .ct-ghost {
  --hm-hero-fill: 0%;
  --hm-hero-liquid-y: 100%;
  --hero-fill: var(--hm-hero-fill, 0%);
  --hero-liquid: var(--hm-hero-liquid-y, 100%);
}

.hero-ct .ct-ghost .ct-ghost-word,
.hero-ct .ct-ghost .ct-amp {
  --hero-fill: var(--hm-hero-fill, 0%) !important;
  --hero-liquid: var(--hm-hero-liquid-y, 100%) !important;
  background-image:
    radial-gradient(circle at 10% 8%, rgba(255, 250, 215, .95) 0 1.5%, rgba(255, 250, 215, 0) 5%),
    radial-gradient(circle at 72% 6%, rgba(255, 236, 165, .78) 0 1.4%, rgba(255, 236, 165, 0) 5.4%),
    linear-gradient(to top, #8f6f1d 0%, #b98c1e 28%, #e0ab24 52%, #f2d373 74%, #fdeec2 90%, #f7e39a 100%) !important;
  background-position:
    calc(50% - 42px) var(--hero-liquid, 100%),
    calc(50% + 66px) var(--hero-liquid, 100%),
    50% var(--hero-liquid, 100%) !important;
  background-repeat: no-repeat !important;
  background-size:
    180px var(--hero-fill, 0%),
    220px var(--hero-fill, 0%),
    100% var(--hero-fill, 0%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: clamp(1px, .06em, 2px) rgba(245, 216, 122, .82) !important;
  paint-order: stroke fill;
  position: relative !important;
  text-shadow: 0 0 18px rgba(232, 180, 34, .18), 0 22px 72px rgba(0, 0, 0, .72) !important;
}

.hero-ct .ct-ghost .ct-ghost-word::after,
.hero-ct .ct-ghost .ct-amp::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background-image: linear-gradient(180deg, transparent 0 42%, rgba(255, 252, 214, .95) 48%, rgba(255, 235, 145, .52) 53%, transparent 62%);
  background-position: 50% var(--hero-liquid, 100%);
  background-repeat: no-repeat;
  background-size: 100% 180%;
  -webkit-background-clip: text;
  background-clip: text;
  clip-path: inset(calc(100% - var(--hero-fill, 0%)) 0 0 0);
  color: transparent;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 0 transparent;
  opacity: .82;
  mix-blend-mode: screen;
}

@media (max-width: 900px) {
  .hero-ct .ct-ghost .ct-ghost-word,
  .hero-ct .ct-ghost .ct-amp {
    background-size:
      132px var(--hero-fill, 0%),
      168px var(--hero-fill, 0%),
      100% var(--hero-fill, 0%) !important;
    -webkit-text-stroke-width: clamp(.9px, .075em, 1.7px) !important;
    text-shadow: 0 0 12px rgba(232, 180, 34, .16), 0 16px 48px rgba(0, 0, 0, .7) !important;
  }
}

/* Keep the consultation booking CTAs gold in every touch/browser state.
   Some mobile webviews briefly applied the dark button fallback during tap
   and scroll repaint, which made "Reserve This Call/Meeting" flash black. */
.consult-card .consult-book.btn-primary,
.consult-card .consult-book.btn-primary:visited,
.consult-card .consult-book.btn-primary:hover,
.consult-card .consult-book.btn-primary:focus,
.consult-card .consult-book.btn-primary:focus-visible,
.consult-card .consult-book.btn-primary:active {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: linear-gradient(135deg, #fff0ad 0%, #e8b422 42%, #c8960c 70%, #8f6f1d 100%) !important;
  background-color: #e8b422 !important;
  border: 1px solid rgba(255, 248, 237, .22) !important;
  box-shadow: 0 18px 46px rgba(214, 174, 73, .26), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
  color: #080705 !important;
  -webkit-text-fill-color: #080705 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

.consult-card .consult-book.btn-primary *,
.consult-card .consult-book.btn-primary .consult-book-arrow {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

.consult-card .consult-book.btn-primary:active {
  transform: translateY(0) scale(.99) !important;
}

.consult-card .consult-book.btn-primary:focus-visible {
  outline: 2px solid rgba(245, 216, 122, .9) !important;
  outline-offset: 3px !important;
}

/* Premium mining-grade animated backdrop. Desktop keeps the canvas particles,
   while mobile/WebViews get a CSS-only layer that cannot crash the browser. */
#bg-canvas {
  background:
    radial-gradient(72% 52% at 18% 14%, rgba(245, 216, 122, .18), transparent 58%),
    radial-gradient(58% 46% at 84% 20%, rgba(200, 150, 12, .14), transparent 62%),
    radial-gradient(72% 54% at 52% 104%, rgba(86, 63, 18, .38), transparent 68%),
    linear-gradient(115deg, rgba(245, 216, 122, .055) 0 1px, transparent 1px 18%),
    repeating-linear-gradient(92deg, rgba(245, 216, 122, .055) 0 1px, transparent 1px 132px),
    repeating-linear-gradient(0deg, rgba(245, 242, 236, .028) 0 1px, transparent 1px 96px),
    #030302 !important;
  filter: saturate(1.28) contrast(1.12) brightness(1.05) !important;
}

.hm-mobile-ambient {
  display: none;
}

body::before {
  content: "";
  position: fixed;
  inset: -18vh -12vw;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  background:
    linear-gradient(112deg, transparent 0 16%, rgba(245, 216, 122, .18) 16.2% 16.55%, transparent 16.8% 42%, rgba(255, 255, 255, .07) 42.2% 42.42%, transparent 42.7% 100%),
    repeating-linear-gradient(90deg, transparent 0 92px, rgba(245, 216, 122, .13) 93px 94px, transparent 95px 184px),
    repeating-radial-gradient(ellipse at 50% 48%, transparent 0 34px, rgba(200, 150, 12, .12) 35px 36px, transparent 37px 78px);
  transform: perspective(860px) rotateX(58deg) translate3d(0, -10vh, 0) scale(1.16);
  transform-origin: 50% 0%;
  animation: hmMobileMineGrid 18s linear infinite;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(circle at 18% 24%, rgba(245, 216, 122, .18), transparent 24%),
    radial-gradient(circle at 84% 72%, rgba(200, 150, 12, .16), transparent 28%),
    linear-gradient(100deg, transparent 0 28%, rgba(245, 216, 122, .18) 42%, transparent 56% 100%);
  mix-blend-mode: screen;
  animation: hmExecutiveOreSweep 9s ease-in-out infinite alternate;
}

@keyframes hmMobileMineGrid {
  0% { background-position: -18vw 0, 0 0, 0 0; opacity: .46; }
  50% { opacity: .68; }
  100% { background-position: 82vw 0, 276px 0, 110px 90px; opacity: .46; }
}

@keyframes hmExecutiveOreSweep {
  0% { transform: translate3d(-10vw, -2vh, 0) scale(1); opacity: .28; }
  100% { transform: translate3d(10vw, 3vh, 0) scale(1.04); opacity: .46; }
}

body::before,
body::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}

/* Instagram/Facebook/TikTok-style browsers have tight memory limits. Keep the
   same page structure and hero video, but remove the always-on canvas/effect
   work so the site does not crash inside those webviews. */
html.hm-mobile-crash-safe #bg-canvas,
html.hm-mobile-crash-safe .flight-stars,
html.hm-mobile-crash-safe #jet-trail,
html.hm-ios-safari #bg-canvas,
html.hm-ios-safari .flight-stars,
html.hm-ios-safari #jet-trail,
html.hm-webview-safe #bg-canvas,
html.hm-webview-safe .flight-stars,
html.hm-webview-safe #jet-trail {
  display: none !important;
  visibility: hidden !important;
}

html.hm-mobile-crash-safe .hero-bg,
html.hm-ios-safari .hero-bg,
html.hm-webview-safe .hero-bg {
  background: url('../hero-quarry-operations.webp') center center / cover no-repeat !important;
  object-fit: cover !important;
  filter: none !important;
  transform: translateZ(0) !important;
  will-change: auto !important;
}

html.hm-mobile-crash-safe .partner-track,
html.hm-mobile-crash-safe .consult-price-amount,
html.hm-mobile-crash-safe .wa-fab::after,
html.hm-webview-safe .partner-track,
html.hm-webview-safe .consult-price-amount,
html.hm-webview-safe .wa-fab::after {
  animation: none !important;
}

html.hm-mobile-crash-safe .consult-card,
html.hm-mobile-crash-safe .consult-host-card,
html.hm-mobile-crash-safe .doc-card,
html.hm-mobile-crash-safe .op-card,
html.hm-mobile-crash-safe .vmv-card,
html.hm-mobile-crash-safe .board-member,
html.hm-webview-safe .consult-card,
html.hm-webview-safe .consult-host-card,
html.hm-webview-safe .doc-card,
html.hm-webview-safe .op-card,
html.hm-webview-safe .vmv-card,
html.hm-webview-safe .board-member {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
  transform-style: flat !important;
}

html.hm-mobile-crash-safe .hero-ct .ct-ghost .ct-ghost-word::after,
html.hm-mobile-crash-safe .hero-ct .ct-ghost .ct-amp::after,
html.hm-ios-safari .hero-ct .ct-ghost .ct-ghost-word::after,
html.hm-ios-safari .hero-ct .ct-ghost .ct-amp::after,
html.hm-webview-safe .ct-ghost .ct-ghost-word::after,
html.hm-webview-safe .ct-ghost .ct-amp::after {
  content: none !important;
  display: none !important;
  mix-blend-mode: normal !important;
}

.consult-jet {
  clip-path: none;
  -webkit-clip-path: none;
  will-change: transform, opacity;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.consult-diamond {
  clip-path: none;
  -webkit-clip-path: none;
  will-change: transform, opacity;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.consult-jet img {
  transform: translateZ(0);
}

.flight-bg {
  isolation: isolate !important;
  overflow: hidden !important;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background:
    linear-gradient(180deg, rgba(5, 6, 6, .96), rgba(5, 6, 6, .14) 34%, rgba(5, 6, 6, .18) 66%, rgba(5, 6, 6, .96)),
    #050606 !important;
}

.flight-bg::before {
  content: "" !important;
  position: absolute !important;
  inset: -18% -10% !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(5, 6, 6, .58) 0%, rgba(5, 6, 6, .05) 28%, rgba(5, 6, 6, .04) 62%, rgba(5, 6, 6, .72) 100%),
    radial-gradient(82% 64% at 50% 52%, rgba(245, 216, 122, .12), transparent 74%),
    url('../meeting-jet.jpg?v=20260829-1') center center / cover no-repeat !important;
  opacity: .88 !important;
  filter: saturate(.98) contrast(1.08) brightness(.88) !important;
  transform: translate3d(0, 0, 0) scale(1.03) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.3) 13%, #000 30%, #000 70%, rgba(0,0,0,.3) 87%, transparent 100%) !important;
  mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.3) 13%, #000 30%, #000 70%, rgba(0,0,0,.3) 87%, transparent 100%) !important;
}

.flight-bg::after {
  content: "" !important;
  position: absolute !important;
  inset: -14% -10% !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 22% 62%, rgba(255, 255, 255, .09), transparent 44%),
    radial-gradient(ellipse at 78% 72%, rgba(226, 232, 232, .075), transparent 48%),
    linear-gradient(115deg, transparent 0 34%, rgba(245, 216, 122, .075) 48%, transparent 66% 100%) !important;
  filter: blur(9px) saturate(1.02) !important;
  opacity: .56 !important;
}

.flight-clouds {
  z-index: 2 !important;
  overflow: hidden !important;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background:
    radial-gradient(36% 18% at 12% 64%, rgba(255, 255, 255, .11), transparent 72%),
    radial-gradient(32% 16% at 82% 72%, rgba(226, 232, 232, .10), transparent 74%),
    radial-gradient(46% 20% at 50% 86%, rgba(245, 216, 122, .075), transparent 72%) !important;
}

.flight-clouds::before,
.flight-clouds::after {
  content: "" !important;
  position: absolute !important;
  inset: -30% -18% !important;
  pointer-events: none !important;
  transform: translateZ(0) rotate(-7deg) !important;
}

.flight-clouds::before {
  background:
    repeating-linear-gradient(112deg,
      transparent 0 54px,
      rgba(255, 255, 255, .055) 56px,
      rgba(245, 216, 122, .045) 58px,
      transparent 64px 154px) !important;
  opacity: .62 !important;
  filter: blur(.7px) !important;
}

.flight-clouds::after {
  background:
    radial-gradient(ellipse at 18% 62%, rgba(255, 255, 255, .14), transparent 34%),
    radial-gradient(ellipse at 84% 70%, rgba(210, 224, 226, .11), transparent 38%),
    radial-gradient(ellipse at 48% 88%, rgba(245, 216, 122, .08), transparent 42%) !important;
  opacity: .58 !important;
  filter: blur(12px) !important;
}

.flight-glow {
  z-index: 3 !important;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background:
    radial-gradient(ellipse at 50% 58%, rgba(245, 216, 122, .13), transparent 64%),
    radial-gradient(ellipse at 50% 76%, rgba(255, 255, 255, .045), transparent 72%) !important;
}

@media (max-width: 900px) {
  body::before,
  body::after {
    content: none !important;
    display: none !important;
    animation: none !important;
  }

  .hm-mobile-ambient {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    contain: strict !important;
    background: transparent !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    transform: translateZ(0) !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }

  .hm-mobile-ambient::before {
    content: "" !important;
    position: absolute !important;
    inset: -16% -18% !important;
    background:
      radial-gradient(70% 52% at 22% 18%, rgba(245, 216, 122, .18), transparent 64%),
      radial-gradient(54% 48% at 82% 78%, rgba(200, 150, 12, .13), transparent 66%),
      linear-gradient(118deg, transparent 0 26%, rgba(245, 216, 122, .16) 44%, rgba(255, 244, 198, .07) 50%, transparent 68% 100%),
      linear-gradient(180deg, rgba(255, 236, 164, .045), transparent 24%, transparent 76%, rgba(200, 150, 12, .06));
    opacity: .5 !important;
    transform: translate3d(0, 0, 0) scale(1.05) !important;
    animation: hmMobileAmbientStrata 38s ease-in-out infinite alternate !important;
  }

  .hm-mobile-ambient::after {
    content: "" !important;
    position: absolute !important;
    inset: -8% -18% !important;
    background:
      radial-gradient(48% 36% at 52% 44%, rgba(245, 216, 122, .16), transparent 68%),
      linear-gradient(106deg, transparent 0 34%, rgba(245, 216, 122, .18) 49%, rgba(255, 245, 204, .1) 52%, transparent 68% 100%);
    opacity: .34 !important;
    transform: translate3d(-6vw, 0, 0) !important;
    animation: hmMobileAmbientSweep 22s ease-in-out infinite alternate !important;
  }

  html.hm-scrolling .hm-mobile-ambient::before,
  html.hm-scrolling .hm-mobile-ambient::after,
  html.hm-mobile-crash-safe.hm-scrolling .hm-mobile-ambient::before,
  html.hm-mobile-crash-safe.hm-scrolling .hm-mobile-ambient::after,
  html.hm-ios-safari.hm-scrolling .hm-mobile-ambient::before,
  html.hm-ios-safari.hm-scrolling .hm-mobile-ambient::after,
  html.hm-webview-safe.hm-scrolling .hm-mobile-ambient::before,
  html.hm-webview-safe.hm-scrolling .hm-mobile-ambient::after {
    animation-play-state: paused !important;
  }

  html.hm-scrolling .hm-mobile-ambient {
    opacity: .72 !important;
  }

  .hm-mobile-simple-flight .flight {
    position: relative !important;
    background:
      linear-gradient(180deg, #050606 0%, #050606 18%, rgba(6, 10, 14, .92) 36%, rgba(7, 12, 18, .82) 52%, rgba(5, 8, 10, .94) 72%, #050606 92%, #050606 100%),
      radial-gradient(70% 46% at 50% 46%, rgba(245, 216, 122, .12), transparent 66%) !important;
  }

  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 4 !important;
    height: clamp(150px, 34vh, 280px) !important;
    pointer-events: none !important;
  }

  .hm-mobile-simple-flight .flight::before {
    top: 0 !important;
    background:
      linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .96) 28%, rgba(5, 6, 6, .68) 58%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight::after {
    bottom: 0 !important;
    background:
      linear-gradient(0deg, #050606 0%, rgba(5, 6, 6, .94) 30%, rgba(5, 6, 6, .62) 62%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    display: block !important;
    opacity: 1;
    visibility: visible !important;
    inset: -18vh 0 !important;
    background:
      radial-gradient(86% 48% at 50% 42%, rgba(245, 216, 122, .2), transparent 64%),
      radial-gradient(84% 54% at 50% 58%, rgba(6, 18, 32, .62), transparent 70%),
      linear-gradient(180deg, transparent 0%, rgba(7, 13, 20, .5) 32%, rgba(7, 12, 18, .62) 55%, rgba(5, 7, 9, .5) 76%, transparent 100%) !important;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.08) 12%, #000 34%, #000 68%, rgba(0,0,0,.1) 88%, transparent 100%) !important;
    mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.08) 12%, #000 34%, #000 68%, rgba(0,0,0,.1) 88%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background-image:
      radial-gradient(circle, rgba(245, 216, 122, .42) 0 .75px, transparent 1.4px),
      radial-gradient(circle, rgba(245, 242, 236, .24) 0 .62px, transparent 1.25px) !important;
    background-size: 112px 112px, 164px 164px !important;
    opacity: .34 !important;
    transform: translateZ(0) !important;
  }

  .hm-mobile-simple-flight .flight-clouds {
    display: block !important;
    opacity: .74;
    inset: -10vh -6vw !important;
    background:
      radial-gradient(ellipse at 20% 68%, rgba(245, 242, 236, .18), transparent 38%),
      radial-gradient(ellipse at 76% 72%, rgba(245, 216, 122, .12), transparent 42%),
      radial-gradient(ellipse at 50% 84%, rgba(255, 255, 255, .07), transparent 54%) !important;
    filter: blur(10px) saturate(1.04) !important;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 72%, transparent 100%) !important;
    mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 72%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight-glow {
    display: block !important;
    background:
      radial-gradient(ellipse at 50% 46%, rgba(245, 216, 122, .24), transparent 54%) !important;
    opacity: .58;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 34%, #000 66%, transparent 100%) !important;
    mask-image: linear-gradient(180deg, transparent 0%, #000 34%, #000 66%, transparent 100%) !important;
  }
}

@media (max-width: 900px) {
  .hm-mobile-simple-flight .jet-journey,
  .hm-mobile-simple-flight .flight-pin {
    position: relative !important;
    background: #050606 !important;
  }

  .hm-mobile-simple-flight .jet-journey {
    isolation: isolate !important;
    overflow: visible !important;
  }

  .hm-mobile-simple-flight .jet-journey::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: -34vh !important;
    height: 96vh !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background:
      radial-gradient(82% 54% at 50% 68%, rgba(245, 216, 122, .1), transparent 72%),
      linear-gradient(180deg, transparent 0%, rgba(5, 6, 6, .2) 28%, rgba(5, 6, 6, .28) 52%, rgba(5, 6, 6, .18) 76%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background:
      linear-gradient(180deg, #050606 0%, #081018 10%, #0b1c2a 31%, #112b3a 48%, #0b1a23 68%, #050606 100%) !important;
  }

  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 14 !important;
    height: clamp(180px, 40vh, 340px) !important;
    pointer-events: none !important;
    mix-blend-mode: normal !important;
  }

  .hm-mobile-simple-flight .flight::before {
    top: 0 !important;
    background:
      linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .96) 16%, rgba(5, 6, 6, .68) 44%, rgba(5, 6, 6, .22) 76%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight::after {
    bottom: 0 !important;
    background:
      linear-gradient(0deg, #050606 0%, rgba(5, 6, 6, .92) 18%, rgba(5, 6, 6, .54) 50%, rgba(5, 6, 6, .12) 84%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    display: block !important;
    visibility: visible !important;
    opacity: 1;
    z-index: 1 !important;
    inset: -48vh -10vw !important;
    background:
      linear-gradient(180deg, rgba(5, 6, 6, .34) 0%, rgba(7, 18, 29, .2) 28%, rgba(17, 42, 56, .18) 54%, rgba(5, 6, 6, .44) 100%),
      url('../meeting-jet.jpg?v=20260829-1') center 48% / cover no-repeat,
      linear-gradient(180deg, #081018, #102a39 48%, #050606) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: 100% 100% !important;
    mask-size: 100% 100% !important;
  }

  .hm-mobile-simple-flight .flight-bg::before {
    inset: -16vh -14vw !important;
    background:
      linear-gradient(180deg, rgba(5, 6, 6, .48) 0%, rgba(5, 6, 6, .02) 32%, rgba(5, 6, 6, .04) 66%, rgba(5, 6, 6, .56) 100%),
      radial-gradient(70% 52% at 50% 45%, rgba(245, 216, 122, .13), transparent 72%) !important;
    opacity: .98 !important;
    filter: saturate(1.02) contrast(1.05) brightness(.94) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .hm-mobile-simple-flight .flight-clouds {
    display: block !important;
    opacity: .52;
    inset: -30vh -12vw !important;
    background:
      radial-gradient(ellipse at 12% 60%, rgba(255, 255, 255, .2), transparent 44%),
      radial-gradient(ellipse at 82% 66%, rgba(226, 232, 232, .16), transparent 46%),
      radial-gradient(ellipse at 48% 82%, rgba(245, 216, 122, .12), transparent 60%),
      linear-gradient(116deg, transparent 0 24%, rgba(255, 255, 255, .055) 42%, transparent 62% 100%) !important;
    filter: saturate(1.02) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: 100% 100% !important;
    mask-size: 100% 100% !important;
  }

  .hm-mobile-simple-flight .flight-clouds::before,
  .hm-mobile-simple-flight .flight-clouds::after {
    content: none !important;
    display: none !important;
  }

  .hm-mobile-simple-flight .flight-glow {
    display: block !important;
    inset: -30vh 0 !important;
    opacity: .46;
    background:
      radial-gradient(ellipse at 50% 42%, rgba(245, 216, 122, .2), transparent 62%),
      radial-gradient(ellipse at 50% 66%, rgba(255, 255, 255, .075), transparent 70%) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: 100% 100% !important;
    mask-size: 100% 100% !important;
  }

  .hm-mobile-simple-flight .flight-stars {
    z-index: 12 !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: 100% 100% !important;
    mask-size: 100% 100% !important;
  }

  .hm-mobile-simple-flight #consult {
    isolation: isolate !important;
    background:
      linear-gradient(180deg, rgba(5, 6, 6, 0) 0%, rgba(5, 6, 6, .18) 18%, rgba(5, 6, 6, .7) 48%, #050606 78%, #050505 100%) !important;
  }

  .hm-mobile-simple-flight #consult::before {
    content: "" !important;
    position: absolute !important;
    left: -10vw !important;
    right: -10vw !important;
    top: -42vh !important;
    height: 92vh !important;
    z-index: -1 !important;
    pointer-events: none !important;
    opacity: var(--sky-handoff-opacity, 0) !important;
    transform: translate3d(0, var(--sky-handoff-y, 0px), 0) !important;
    background:
      linear-gradient(180deg, rgba(5, 6, 6, .08) 0%, rgba(8, 19, 30, .18) 34%, rgba(5, 6, 6, .5) 72%, #050606 100%),
      url('../meeting-jet.jpg?v=20260829-1') center 56% / cover no-repeat,
      linear-gradient(180deg, #0b1b28, #050606) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: opacity, transform !important;
  }
}

@media (max-width: 900px) {
  .hm-mobile-simple-flight .jet-journey::before,
  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after,
  .hm-mobile-simple-flight .flight-bg::before,
  .hm-mobile-simple-flight .flight-bg::after {
    content: none !important;
    display: none !important;
  }

  .hm-mobile-simple-flight .flight {
    background:
      linear-gradient(180deg, #050606 0%, #050606 10%, #05090d 24%, #07131c 42%, #07131c 58%, #05090d 76%, #050606 90%, #050606 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    inset: -140vh -28vw !important;
    background:
      linear-gradient(180deg, #050606 0%, #050606 11%, rgba(5, 6, 6, .92) 23%, rgba(5, 8, 11, .72) 34%, rgba(6, 13, 20, .38) 45%, rgba(7, 17, 25, .18) 52%, rgba(6, 13, 20, .42) 66%, rgba(5, 8, 11, .74) 78%, rgba(5, 6, 6, .94) 90%, #050606 100%),
      radial-gradient(ellipse at 50% 37%, rgba(245, 216, 122, .1), transparent 68%),
      radial-gradient(ellipse at 18% 66%, rgba(255, 255, 255, .065), transparent 58%),
      radial-gradient(ellipse at 82% 70%, rgba(226, 232, 232, .055), transparent 60%),
      url('../meeting-jet.jpg?v=20260829-1') center 16% / cover no-repeat,
      #0b1b28 !important;
    filter: none !important;
    transform: translate3d(0, 0, 0) !important;
    will-change: opacity !important;
  }

  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    display: none !important;
    opacity: 0 !important;
    transform: none !important;
    filter: none !important;
  }

  .hm-mobile-simple-flight #consult {
    background:
      linear-gradient(180deg, rgba(5, 6, 6, 0) 0%, rgba(5, 6, 6, .05) 28%, rgba(5, 6, 6, .36) 58%, rgba(5, 6, 6, .82) 84%, #050505 100%) !important;
  }

  .hm-mobile-simple-flight #consult::before {
    top: -92vh !important;
    height: 178vh !important;
    transform: translate3d(0, 0, 0) !important;
    background:
      linear-gradient(180deg, rgba(5, 6, 6, 0) 0%, rgba(8, 19, 30, .04) 26%, rgba(7, 17, 25, .08) 48%, rgba(5, 6, 6, .25) 76%, rgba(5, 6, 6, .78) 92%, #050606 100%),
      url('../meeting-jet.jpg?v=20260829-1') center 48% / cover no-repeat,
      linear-gradient(180deg, #0b1b28, #050606) !important;
    will-change: opacity !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body::before,
  body::after,
  .hm-mobile-ambient::before,
  .hm-mobile-ambient::after {
    animation: none !important;
  }
}

@keyframes hmMobileAmbientStrata {
  0% { transform: translate3d(-2vw, -1vh, 0) scale(1.05); opacity: .38; }
  100% { transform: translate3d(2vw, 1vh, 0) scale(1.07); opacity: .52; }
}

@keyframes hmMobileAmbientSweep {
  0% { transform: translate3d(-9vw, -1vh, 0); opacity: .2; }
  100% { transform: translate3d(9vw, 2vh, 0); opacity: .34; }
}

/* Board and consultation layout fixes that must win over index.min.css. */
.board-actual-img {
  aspect-ratio: 1170 / 844 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.board-img-placeholder {
  aspect-ratio: 1170 / 844 !important;
  max-height: none !important;
  min-height: 0 !important;
}

.board-member-photo {
  object-position: center top !important;
}

.consult-host-card {
  display: grid !important;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(18px, 3vw, 32px) !important;
  max-width: min(100%, 980px) !important;
  width: 100% !important;
}

.consult-head-photo {
  width: 100% !important;
  max-width: 340px !important;
  aspect-ratio: 1170 / 658 !important;
  height: auto !important;
  border-radius: 10px !important;
}

.consult-head-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.consult-host-copy {
  display: grid !important;
  grid-template-columns: minmax(132px, .76fr) auto minmax(230px, 1.24fr) !important;
  align-items: center !important;
  gap: clamp(12px, 2vw, 20px) !important;
  min-width: 0 !important;
  width: 100% !important;
}

.consult-host-id {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
}

.consult-head-host-name {
  display: block !important;
  font-size: clamp(22px, 2.25vw, 30px) !important;
  line-height: .98 !important;
}

.consult-head-host-role {
  display: block !important;
  margin-top: 7px !important;
  font-size: clamp(9px, .95vw, 11px) !important;
  letter-spacing: .2em !important;
}

.consult-diamond-divider {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: center !important;
  width: clamp(44px, 5.5vw, 66px);
  min-width: 36px;
  height: clamp(122px, 15vw, 176px);
  pointer-events: none !important;
}

.consult-diamond-divider img {
  width: auto;
  height: 100%;
  max-width: none;
  object-fit: contain;
}

.consult-host-info {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: left !important;
}

.consult-head-host-desc {
  margin: 0 !important;
  font-size: clamp(11px, 1.05vw, 13px) !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

.consult-spots {
  align-items: flex-start !important;
  max-width: 100% !important;
}

.consult-spots p {
  margin: 0 !important;
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  text-align: left !important;
}

.bk-host-hero img {
  width: clamp(112px, 22vw, 150px) !important;
  height: auto !important;
  aspect-ratio: 1170 / 658 !important;
  border-radius: 7px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.bk-host img {
  object-position: center center !important;
}

@media (max-width: 900px) {
  .consult-host-card {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 14px !important;
    max-width: min(100%, 520px) !important;
    padding-inline: clamp(18px, 5vw, 24px) !important;
  }

  .consult-head-photo {
    width: min(100%, 380px) !important;
    max-width: calc(100vw - 40px) !important;
  }

  .consult-host-copy {
    width: min(100%, 380px) !important;
    grid-template-columns: minmax(94px, .75fr) clamp(34px, 11vw, 48px) minmax(0, 1.25fr) !important;
    gap: clamp(7px, 2.3vw, 12px) !important;
  }

  .consult-diamond-divider {
    width: clamp(34px, 11vw, 48px);
    min-width: 34px;
    height: clamp(96px, 28vw, 132px);
  }

  .consult-head-host-name {
    font-size: clamp(19px, 6.2vw, 25px) !important;
  }

  .consult-head-host-role {
    font-size: clamp(7.5px, 2.35vw, 9px) !important;
    letter-spacing: .16em !important;
  }

  .consult-head-host-desc {
    font-size: clamp(9.4px, 2.75vw, 10.5px) !important;
    line-height: 1.5 !important;
  }

  .consult-spots {
    gap: 7px !important;
    padding: 6px 7px !important;
  }

  .consult-spots p {
    font-size: clamp(9px, 2.55vw, 10px) !important;
    line-height: 1.42 !important;
  }

  .consult-spots b {
    font-size: clamp(7.5px, 2.1vw, 8.5px) !important;
    letter-spacing: .05em !important;
  }
}

@media (max-width: 480px) {
  .bk-host-hero img {
    width: min(100%, 270px) !important;
    max-width: 270px !important;
  }
}

/* Mobile visual parity pass: keep the desktop atmosphere visible on phones
   while using cheaper layers for iOS and in-app browsers. */
@media (max-width: 900px) {
  #bg-canvas,
  html.hm-mobile-crash-safe #bg-canvas,
  html.hm-ios-safari #bg-canvas,
  html.hm-webview-safe #bg-canvas,
  .hm-mobile-simple-flight .flight-stars,
  html.hm-mobile-crash-safe .flight-stars,
  html.hm-ios-safari .flight-stars,
  html.hm-webview-safe .flight-stars {
    display: block !important;
    visibility: visible !important;
  }

  #bg-canvas {
    width: 100vw !important;
    height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
    opacity: .68 !important;
    background:
      radial-gradient(78% 58% at 18% 12%, rgba(245, 216, 122, .2), transparent 60%),
      radial-gradient(60% 48% at 86% 24%, rgba(200, 150, 12, .16), transparent 64%),
      radial-gradient(84% 60% at 50% 108%, rgba(86, 63, 18, .44), transparent 68%),
      repeating-linear-gradient(92deg, rgba(245, 216, 122, .055) 0 1px, transparent 1px 128px),
      #030302 !important;
    filter: saturate(1.22) contrast(1.08) brightness(1.02) !important;
  }

  html.hm-mobile-crash-safe #bg-canvas,
  html.hm-ios-safari #bg-canvas,
  html.hm-webview-safe #bg-canvas {
    opacity: .52 !important;
  }

  body::before {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: fixed !important;
    inset: -18vh -18vw !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: .24 !important;
    background:
      linear-gradient(112deg, transparent 0 16%, rgba(245, 216, 122, .14) 16.2% 16.55%, transparent 16.8% 42%, rgba(255, 255, 255, .055) 42.2% 42.42%, transparent 42.7% 100%),
      repeating-linear-gradient(90deg, transparent 0 92px, rgba(245, 216, 122, .11) 93px 94px, transparent 95px 184px),
      repeating-radial-gradient(ellipse at 50% 48%, transparent 0 34px, rgba(200, 150, 12, .1) 35px 36px, transparent 37px 78px) !important;
    mix-blend-mode: screen !important;
    transform: perspective(860px) rotateX(58deg) translate3d(0, -10vh, 0) scale(1.16) !important;
    transform-origin: 50% 0% !important;
    animation: hmMobileMineGrid 24s linear infinite !important;
  }

  body::after {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: .16 !important;
    background:
      radial-gradient(circle at 18% 24%, rgba(245, 216, 122, .15), transparent 24%),
      radial-gradient(circle at 84% 72%, rgba(200, 150, 12, .13), transparent 28%),
      linear-gradient(100deg, transparent 0 28%, rgba(245, 216, 122, .13) 42%, transparent 56% 100%) !important;
    mix-blend-mode: screen !important;
    animation: hmExecutiveOreSweep 13s ease-in-out infinite alternate !important;
  }

  .hm-mobile-ambient {
    display: block !important;
    visibility: visible !important;
    opacity: .92 !important;
  }

  html.hm-scrolling .hm-mobile-ambient,
  html.hm-mobile-crash-safe.hm-scrolling .hm-mobile-ambient,
  html.hm-ios-safari.hm-scrolling .hm-mobile-ambient,
  html.hm-webview-safe.hm-scrolling .hm-mobile-ambient {
    opacity: .88 !important;
  }

  html.hm-scrolling .hm-mobile-ambient::before,
  html.hm-scrolling .hm-mobile-ambient::after,
  html.hm-mobile-crash-safe.hm-scrolling .hm-mobile-ambient::before,
  html.hm-mobile-crash-safe.hm-scrolling .hm-mobile-ambient::after,
  html.hm-ios-safari.hm-scrolling .hm-mobile-ambient::before,
  html.hm-ios-safari.hm-scrolling .hm-mobile-ambient::after,
  html.hm-webview-safe.hm-scrolling .hm-mobile-ambient::before,
  html.hm-webview-safe.hm-scrolling .hm-mobile-ambient::after {
    animation-play-state: running !important;
  }

  .hm-mobile-simple-flight .flight {
    background:
      linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .96) 9%, rgba(6, 12, 18, .82) 24%, rgba(7, 18, 28, .62) 44%, rgba(7, 18, 28, .54) 58%, rgba(6, 12, 18, .8) 76%, rgba(5, 6, 6, .96) 91%, #050606 100%) !important;
  }

  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 14 !important;
    height: clamp(180px, 40vh, 340px) !important;
    pointer-events: none !important;
  }

  .hm-mobile-simple-flight .flight::before {
    top: 0 !important;
    background: linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .88) 24%, rgba(5, 6, 6, .44) 56%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight::after {
    bottom: 0 !important;
    background: linear-gradient(0deg, #050606 0%, rgba(5, 6, 6, .88) 24%, rgba(5, 6, 6, .44) 56%, transparent 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    display: block !important;
    visibility: visible !important;
    opacity: 0;
    will-change: opacity, transform !important;
    background:
      linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .92) 10%, rgba(5, 8, 11, .62) 24%, rgba(6, 13, 20, .22) 40%, rgba(7, 17, 25, .1) 52%, rgba(6, 13, 20, .28) 66%, rgba(5, 8, 11, .68) 80%, rgba(5, 6, 6, .94) 92%, #050606 100%),
      radial-gradient(ellipse at 50% 37%, rgba(245, 216, 122, .12), transparent 68%),
      radial-gradient(ellipse at 18% 66%, rgba(255, 255, 255, .075), transparent 58%),
      radial-gradient(ellipse at 82% 70%, rgba(226, 232, 232, .065), transparent 60%),
      url('../meeting-jet.jpg?v=20260829-1') center 18% / cover no-repeat,
      #0b1b28 !important;
    filter: saturate(.98) contrast(1.04) brightness(.9) !important;
  }

  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    display: block !important;
    visibility: visible !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    opacity: 0;
    filter: none !important;
    pointer-events: none !important;
    contain: paint !important;
    will-change: opacity, transform !important;
  }

  .hm-mobile-simple-flight .flight-clouds {
    background:
      radial-gradient(42% 18% at 14% 62%, rgba(255, 255, 255, .12), transparent 74%),
      radial-gradient(38% 17% at 84% 70%, rgba(226, 232, 232, .11), transparent 76%),
      radial-gradient(54% 21% at 50% 84%, rgba(245, 216, 122, .075), transparent 74%),
      repeating-linear-gradient(112deg, transparent 0 64px, rgba(255, 255, 255, .038) 66px, rgba(245, 216, 122, .032) 68px, transparent 74px 170px) !important;
  }

  .hm-mobile-simple-flight .flight-glow {
    background:
      radial-gradient(ellipse at 50% 58%, rgba(245, 216, 122, .16), transparent 66%),
      radial-gradient(ellipse at 50% 78%, rgba(255, 255, 255, .052), transparent 74%) !important;
  }

  .hm-mobile-simple-flight .consult-jet,
  .hm-mobile-simple-flight .consult-diamond {
    z-index: 30 !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: 100% 100% !important;
    mask-size: 100% 100% !important;
    will-change: transform, opacity, -webkit-mask-image, mask-image !important;
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  body::before,
  body::after,
  .hm-mobile-ambient::before,
  .hm-mobile-ambient::after {
    animation: none !important;
  }
}

/* Kill mobile sky seam artifacts. Safari/WebViews can rasterize animated
   layer masks and edge panels as a thin black horizontal band. Keep the sky
   visible, but fade it with opacity and motion only. */
@media (max-width: 900px) {
  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    background: none !important;
  }

  .hm-mobile-simple-flight .flight-bg,
  .hm-mobile-simple-flight .flight-stars,
  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }
}

/* Final one-piece mobile sky blend. This intentionally sits last: the mobile
   flight background is one oversized feathered layer, so there is no separate
   panel edge or animated sky mask that can create a visible seam. */
@media (max-width: 900px) {
  .hm-mobile-simple-flight .jet-journey {
    position: relative !important;
    isolation: isolate !important;
    overflow: visible !important;
    background:
      linear-gradient(180deg, #050606 0%, rgba(5, 6, 6, .98) 8%, rgba(6, 11, 16, .74) 22%, rgba(7, 18, 28, .42) 42%, rgba(7, 18, 28, .34) 58%, rgba(6, 11, 16, .76) 78%, #050606 100%) !important;
  }

  .hm-mobile-simple-flight .jet-journey::before {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    left: -36vw !important;
    right: -36vw !important;
    top: -120vh !important;
    bottom: -120vh !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: var(--hm-mobile-sky-bridge, 0) !important;
    transform: translate3d(0, var(--hm-mobile-sky-y, 0px), 0) scale(1.03) !important;
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, .99) 8%,
        rgba(5, 6, 6, .9) 17%,
        rgba(6, 12, 18, .52) 30%,
        rgba(8, 20, 31, .14) 43%,
        rgba(8, 20, 31, .1) 56%,
        rgba(6, 12, 18, .54) 70%,
        rgba(5, 6, 6, .9) 84%,
        #050606 100%),
      radial-gradient(70% 40% at 48% 38%, rgba(245, 216, 122, .12), transparent 72%),
      radial-gradient(80% 42% at 16% 64%, rgba(255, 255, 255, .07), transparent 70%),
      radial-gradient(78% 42% at 88% 68%, rgba(205, 223, 228, .055), transparent 72%),
      url('../meeting-jet.jpg?v=20260829-1') center 42% / cover no-repeat,
      linear-gradient(180deg, #0b1b28, #050606) !important;
    background-blend-mode: normal, screen, screen, screen, normal, normal !important;
    filter: saturate(.98) contrast(1.03) brightness(.88) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: opacity, transform !important;
  }

  .hm-mobile-simple-flight .flight,
  .hm-mobile-simple-flight .flight-pin,
  .hm-mobile-simple-flight #consult,
  .hm-mobile-simple-flight .consult-lift {
    position: relative !important;
    z-index: 1 !important;
  }

  .hm-mobile-simple-flight .flight {
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, .94) 10%,
        rgba(6, 12, 18, .64) 26%,
        rgba(7, 18, 28, .34) 45%,
        rgba(7, 18, 28, .30) 58%,
        rgba(6, 12, 18, .68) 76%,
        rgba(5, 6, 6, .96) 92%,
        #050606 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    inset: -170vh -36vw !important;
    display: block !important;
    visibility: visible !important;
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, .99) 7%,
        rgba(5, 6, 6, .9) 16%,
        rgba(6, 12, 18, .54) 30%,
        rgba(8, 20, 31, .16) 43%,
        rgba(8, 20, 31, .1) 56%,
        rgba(6, 12, 18, .56) 70%,
        rgba(5, 6, 6, .9) 84%,
        #050606 100%),
      radial-gradient(ellipse at 50% 38%, rgba(245, 216, 122, .13), transparent 68%),
      radial-gradient(ellipse at 18% 66%, rgba(255, 255, 255, .08), transparent 60%),
      radial-gradient(ellipse at 84% 70%, rgba(226, 232, 232, .07), transparent 62%),
      url('../meeting-jet.jpg?v=20260829-1') center 42% / cover no-repeat,
      #0b1b28 !important;
    background-blend-mode: normal, screen, screen, screen, normal, normal !important;
    filter: saturate(.98) contrast(1.04) brightness(.9) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: opacity, transform !important;
  }

  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    display: block !important;
    visibility: visible !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    pointer-events: none !important;
    contain: paint !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: opacity, transform !important;
  }

  .hm-mobile-simple-flight .flight-clouds {
    background:
      radial-gradient(48% 18% at 12% 62%, rgba(255, 255, 255, .105), transparent 76%),
      radial-gradient(44% 18% at 86% 70%, rgba(226, 232, 232, .095), transparent 78%),
      radial-gradient(58% 22% at 50% 84%, rgba(245, 216, 122, .065), transparent 76%) !important;
    mix-blend-mode: screen !important;
  }

  .hm-mobile-simple-flight .flight-glow {
    background:
      radial-gradient(ellipse at 50% 56%, rgba(245, 216, 122, .16), transparent 68%),
      radial-gradient(ellipse at 50% 80%, rgba(255, 255, 255, .045), transparent 76%) !important;
    mix-blend-mode: screen !important;
  }

  .hm-mobile-simple-flight #consult {
    background:
      linear-gradient(180deg,
        rgba(5, 6, 6, 0) 0%,
        rgba(5, 6, 6, .08) 20%,
        rgba(5, 6, 6, .34) 52%,
        rgba(5, 6, 6, .78) 82%,
        #050505 100%) !important;
  }

  .hm-mobile-simple-flight #consult::before {
    content: "" !important;
    display: block !important;
    left: -36vw !important;
    right: -36vw !important;
    top: -135vh !important;
    height: 250vh !important;
    opacity: var(--sky-handoff-opacity, 0) !important;
    transform: translate3d(0, var(--sky-handoff-y, 0px), 0) scale(1.02) !important;
    background:
      linear-gradient(180deg,
        rgba(5, 6, 6, 0) 0%,
        rgba(5, 6, 6, .05) 14%,
        rgba(7, 17, 26, .12) 30%,
        rgba(7, 17, 26, .08) 50%,
        rgba(5, 6, 6, .42) 76%,
        rgba(5, 6, 6, .88) 92%,
        #050606 100%),
      radial-gradient(70% 36% at 50% 34%, rgba(245, 216, 122, .08), transparent 72%),
      url('../meeting-jet.jpg?v=20260829-1') center 42% / cover no-repeat,
      linear-gradient(180deg, #0b1b28, #050606) !important;
    background-blend-mode: normal, screen, normal, normal !important;
    filter: saturate(.98) contrast(1.03) brightness(.86) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after,
  .hm-mobile-simple-flight .flight-bg::before,
  .hm-mobile-simple-flight .flight-bg::after,
  .hm-mobile-simple-flight .flight-clouds::before,
  .hm-mobile-simple-flight .flight-clouds::after {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    background: none !important;
  }
}

/* Mobile sky detail: stars stay visible while the scroll-driven wind lines
   build with the jet instead of relying on another expensive canvas. */
@media (max-width: 900px) {
  .hm-mobile-simple-flight .flight-stars {
    display: block !important;
    visibility: visible !important;
    z-index: 18 !important;
    opacity: 0;
    mix-blend-mode: screen !important;
    filter: brightness(1.35) saturate(1.1) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .hm-mobile-simple-flight .flight-bg::after {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    inset: -6% -8% !important;
    z-index: 4 !important;
    pointer-events: none !important;
    opacity: var(--hm-mobile-wind, 0) !important;
    transform: translate3d(var(--hm-mobile-wind-x, 0px), 0, 0) skewY(-3deg) !important;
    background:
      repeating-linear-gradient(108deg,
        transparent 0 48px,
        rgba(255, 255, 255, .16) 50px,
        rgba(255, 255, 255, .05) 52px,
        transparent 56px 146px),
      repeating-linear-gradient(108deg,
        transparent 0 92px,
        rgba(245, 216, 122, .105) 95px,
        transparent 99px 240px) !important;
    background-size: 230px 100%, 420px 100% !important;
    mix-blend-mode: screen !important;
    filter: blur(.25px) saturate(1.08) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: opacity, transform !important;
  }
}

/* Card polish: less generic glass, more deliberate executive surfaces. */
.consult-card,
.doc-card,
.fin-kpi,
.sch-item,
.vmv-card,
.board-member,
.market-card,
.invoice-card {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 7px !important;
  border: 1px solid rgba(245, 216, 122, .17) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .072), rgba(255, 255, 255, .024) 44%, rgba(214, 174, 73, .038) 100%),
    rgba(6, 7, 6, .94) !important;
  box-shadow:
    0 28px 86px rgba(0, 0, 0, .46),
    inset 0 1px 0 rgba(255, 255, 255, .075),
    inset 0 -1px 0 rgba(214, 174, 73, .04) !important;
}

.consult-card::after,
.doc-card::after,
.fin-kpi::after,
.sch-item::after,
.vmv-card::after,
.board-member::after,
.market-card::after,
.invoice-card::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 1px !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, transparent, rgba(245, 216, 122, .56), rgba(255, 248, 237, .16), transparent) !important;
  opacity: .82 !important;
}

.consult-card h3,
.doc-card h3,
.vmv-card h3,
.sch-title,
.board-member-name {
  letter-spacing: 0 !important;
  text-wrap: balance;
}

@media (min-width: 901px) {
  .consult-card:hover,
  .doc-card:hover,
  .fin-kpi:hover,
  .sch-item:hover,
  .vmv-card:hover,
  .board-member:hover,
  .market-card:hover {
    border-color: rgba(245, 216, 122, .34) !important;
    box-shadow:
      0 36px 112px rgba(0, 0, 0, .56),
      0 0 0 1px rgba(245, 216, 122, .08) inset,
      inset 0 1px 0 rgba(255, 255, 255, .1) !important;
  }
}

@media (max-width: 900px) {
  .consult-card,
  .doc-card,
  .fin-kpi,
  .sch-item,
  .vmv-card,
  .board-member,
  .market-card,
  .invoice-card {
    border-radius: 6px !important;
    box-shadow:
      0 20px 62px rgba(0, 0, 0, .42),
      inset 0 1px 0 rgba(255, 255, 255, .07) !important;
  }
}

/* Mobile flight performance: compositor-only morph for iOS/Android webviews. */
@media (max-width: 900px) {
  .hm-mobile-simple-flight .consult-jet,
  .hm-mobile-simple-flight .consult-diamond {
    -webkit-clip-path: none !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    will-change: transform, opacity !important;
    contain: paint !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }

  .hm-mobile-simple-flight .flight-bg,
  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    transform: translate3d(0, 0, 0) !important;
    will-change: opacity !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }

  .hm-mobile-simple-flight .flight-stars {
    filter: none !important;
    will-change: opacity !important;
  }

  .hm-mobile-simple-flight .flight-bg::after {
    transform: translate3d(0, 0, 0) skewY(-3deg) !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    will-change: opacity !important;
  }

  html.hm-flight-active #bg-canvas {
    opacity: .16 !important;
  }
}

/* Final mobile flight renderer: one composited aircraft canvas + one feathered sky. */
@media (max-width: 900px) {
  .hm-mobile-flight-canvas {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    width: 100vw !important;
    height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
    z-index: 31 !important;
    pointer-events: none !important;
    opacity: 0;
    contain: strict !important;
    transform: translate3d(0, 0, 0) !important;
    transition: none !important;
    will-change: opacity !important;
  }

  html.hm-flight-active .hm-mobile-flight-canvas {
    opacity: 1 !important;
  }

  html:not(.hm-flight-active) .hm-mobile-flight-canvas {
    opacity: 0 !important;
  }

  .hm-mobile-simple-flight .consult-diamond {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    transform: none !important;
    transition: none !important;
  }
  /* Hide the 2D morph canvas — the 3D WebGL jet handles mobile now */
  .hm-mobile-flight-canvas {
    display: none !important;
  }

  .hm-mobile-simple-flight .jet-journey {
    background:
      linear-gradient(180deg,
        #050606 0%,
        #050606 5%,
        rgba(6, 10, 14, .98) 12%,
        rgba(8, 19, 30, .76) 25%,
        rgba(9, 23, 36, .54) 42%,
        rgba(9, 23, 36, .50) 58%,
        rgba(8, 19, 30, .78) 75%,
        rgba(6, 10, 14, .98) 88%,
        #050606 96%,
        #050606 100%) !important;
  }

  .hm-mobile-simple-flight .jet-journey::before {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    background: none !important;
    opacity: 0 !important;
    transform: none !important;
    will-change: auto !important;
  }

  .hm-mobile-simple-flight .flight {
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, 1) 8%,
        rgba(6, 12, 19, .8) 22%,
        rgba(8, 20, 32, .36) 43%,
        rgba(8, 20, 32, .34) 58%,
        rgba(6, 12, 19, .82) 77%,
        rgba(5, 6, 6, 1) 92%,
        #050606 100%) !important;
  }

  .hm-mobile-simple-flight .flight-bg {
    inset: -24vh -10vw !important;
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, 1) 11%,
        rgba(5, 6, 6, .88) 21%,
        rgba(7, 15, 23, .56) 33%,
        rgba(9, 24, 38, .18) 45%,
        rgba(9, 24, 38, .12) 55%,
        rgba(7, 15, 23, .58) 67%,
        rgba(5, 6, 6, .9) 79%,
        rgba(5, 6, 6, 1) 90%,
        #050606 100%),
      radial-gradient(ellipse at 50% 38%, rgba(245, 216, 122, .14), transparent 70%),
      radial-gradient(ellipse at 16% 64%, rgba(255, 255, 255, .09), transparent 64%),
      radial-gradient(ellipse at 86% 68%, rgba(226, 232, 232, .075), transparent 66%),
      url('../meeting-jet.jpg?v=20260829-1') center 44% / cover no-repeat,
      #0b1b28 !important;
    background-blend-mode: normal, screen, screen, screen, normal, normal !important;
    filter: saturate(.96) contrast(1.02) brightness(.88) !important;
    transform: translate3d(0, 0, 0) !important;
    will-change: opacity !important;
  }

  .hm-mobile-simple-flight .flight-clouds,
  .hm-mobile-simple-flight .flight-glow {
    top: -10vh !important;
    right: auto !important;
    bottom: auto !important;
    left: -10vw !important;
    width: 120vw !important;
    height: calc(var(--frozen-vh, var(--hm-svh, 100vh)) * 1.2) !important;
    transform: translate3d(0, 0, 0) !important;
    will-change: opacity !important;
  }

  .hm-mobile-simple-flight #consult::before {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    background: none !important;
    opacity: 0 !important;
    transform: none !important;
    will-change: auto !important;
  }

  .hm-mobile-simple-flight #consult {
    isolation: isolate !important;
    overflow: visible !important;
    padding-bottom: 48px !important;
    background:
      linear-gradient(180deg,
        rgba(5, 6, 6, 0) 0,
        rgba(5, 6, 6, 0) 260px,
        rgba(5, 6, 6, .28) 620px,
        rgba(5, 6, 6, .84) 1080px,
        #050505 100%) !important;
  }

  .hm-mobile-simple-flight #consult::after {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    background: none !important;
  }

  .hm-mobile-simple-flight #consult > * {
    position: relative !important;
    z-index: 2 !important;
  }

  .hm-mobile-simple-flight .consult-grid {
    margin-bottom: 0 !important;
  }

  .hm-mobile-simple-flight .flight-bg::after {
    inset: -4% -6% !important;
    opacity: var(--hm-mobile-wind, 0) !important;
    background:
      repeating-linear-gradient(108deg,
        transparent 0 54px,
        rgba(255, 255, 255, .12) 57px,
        rgba(255, 255, 255, .035) 60px,
        transparent 64px 168px),
      repeating-linear-gradient(108deg,
        transparent 0 120px,
        rgba(245, 216, 122, .075) 124px,
        transparent 130px 290px) !important;
    background-size: 260px 100%, 520px 100% !important;
  }

  .hm-mobile-simple-flight .flight::before,
  .hm-mobile-simple-flight .flight::after {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    left: -2px !important;
    right: -2px !important;
    z-index: 24 !important;
    pointer-events: none !important;
    background: none !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
    will-change: auto !important;
  }

  .hm-mobile-simple-flight .flight::before {
    top: -1px !important;
    height: 62vh !important;
    background:
      linear-gradient(180deg,
        #050606 0%,
        rgba(5, 6, 6, .96) 8%,
        rgba(5, 6, 6, .68) 20%,
        rgba(5, 6, 6, .30) 34%,
        rgba(5, 6, 6, .06) 46%,
        rgba(5, 6, 6, 0) 58%,
        rgba(5, 6, 6, 0) 100%) !important;
  }

  .hm-mobile-simple-flight .flight::after {
    bottom: -1px !important;
    height: 72vh !important;
    background:
      linear-gradient(0deg,
        #050606 0%,
        rgba(5, 6, 6, .94) 12%,
        rgba(5, 6, 6, .64) 28%,
        rgba(5, 6, 6, .26) 46%,
        rgba(5, 6, 6, .06) 62%,
        rgba(5, 6, 6, 0) 100%) !important;
  }
}

/* Final low-cost sparkle field. No canvas redraw, grids, lines or sweep layers. */
#bg-canvas,
html.hm-mobile-crash-safe #bg-canvas,
html.hm-ios-safari #bg-canvas,
html.hm-webview-safe #bg-canvas {
  display: none !important;
  visibility: hidden !important;
}

.hm-mobile-ambient,
html.hm-mobile-crash-safe .hm-mobile-ambient,
html.hm-ios-safari .hm-mobile-ambient,
html.hm-webview-safe .hm-mobile-ambient {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  contain: strict !important;
  opacity: 1 !important;
  background: transparent !important;
  transition: opacity .35s ease !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}

body::before,
body::after,
.hm-mobile-ambient::before,
.hm-mobile-ambient::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  animation: none !important;
  background: none !important;
}

.hero-bg,
html.hm-mobile-crash-safe .hero-bg,
html.hm-ios-safari .hero-bg,
html.hm-webview-safe .hero-bg {
  background: url('../hero-quarry-operations-lite.webp') center center / cover no-repeat !important;
}

.hm-spark {
  --spark-x: 50%;
  --spark-size: 2px;
  --spark-drift: 18px;
  --spark-alpha: .72;
  --spark-duration: 18s;
  --spark-delay: 0s;
  --spark-color: rgba(255, 224, 128, .98);
  --spark-glow: rgba(232, 180, 34, .58);
  --spark-glow-size: 7px;
  --spark-twinkle: 3.4s;
  position: absolute;
  left: var(--spark-x);
  bottom: -18px;
  width: 1px;
  height: 1px;
  background: transparent;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  will-change: transform, opacity;
  animation: hmSparkRise var(--spark-duration) linear var(--spark-delay) infinite;
}

.hm-spark::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--spark-size);
  height: var(--spark-size);
  border-radius: 50%;
  background: var(--spark-color);
  box-shadow: 0 0 var(--spark-glow-size) var(--spark-glow);
  transform: translate3d(-50%, -50%, 0) scale(.68);
  animation: hmSparkTwinkle var(--spark-twinkle) ease-in-out var(--spark-delay) infinite;
}

.hm-spark:nth-child(1)  { --spark-x: 4%;  --spark-size: 1px;   --spark-drift: 20px;  --spark-duration: 19s; --spark-delay: -6s;  --spark-alpha: .48; }
.hm-spark:nth-child(2)  { --spark-x: 11%; --spark-size: 2px;   --spark-drift: -13px; --spark-duration: 24s; --spark-delay: -19s; --spark-alpha: .72; }
.hm-spark:nth-child(3)  { --spark-x: 18%; --spark-size: 1.5px; --spark-drift: 30px;  --spark-duration: 16s; --spark-delay: -3s;  --spark-alpha: .62; }
.hm-spark:nth-child(4)  { --spark-x: 25%; --spark-size: 2.5px; --spark-drift: -24px; --spark-duration: 22s; --spark-delay: -14s; --spark-alpha: .86; }
.hm-spark:nth-child(5)  { --spark-x: 32%; --spark-size: 1px;   --spark-drift: 16px;  --spark-duration: 27s; --spark-delay: -22s; --spark-alpha: .44; }
.hm-spark:nth-child(6)  { --spark-x: 39%; --spark-size: 2px;   --spark-drift: -18px; --spark-duration: 18s; --spark-delay: -9s;  --spark-alpha: .78; }
.hm-spark:nth-child(7)  { --spark-x: 46%; --spark-size: 1.5px; --spark-drift: 26px;  --spark-duration: 25s; --spark-delay: -16s; --spark-alpha: .58; }
.hm-spark:nth-child(8)  { --spark-x: 53%; --spark-size: 1px;   --spark-drift: -12px; --spark-duration: 20s; --spark-delay: -2s;  --spark-alpha: .54; }
.hm-spark:nth-child(9)  { --spark-x: 60%; --spark-size: 2.5px; --spark-drift: 22px;  --spark-duration: 23s; --spark-delay: -12s; --spark-alpha: .88; }
.hm-spark:nth-child(10) { --spark-x: 67%; --spark-size: 1.5px; --spark-drift: -28px; --spark-duration: 17s; --spark-delay: -5s;  --spark-alpha: .68; }
.hm-spark:nth-child(11) { --spark-x: 74%; --spark-size: 2px;   --spark-drift: 14px;  --spark-duration: 26s; --spark-delay: -21s; --spark-alpha: .74; }
.hm-spark:nth-child(12) { --spark-x: 81%; --spark-size: 1px;   --spark-drift: -19px; --spark-duration: 21s; --spark-delay: -8s;  --spark-alpha: .48; }
.hm-spark:nth-child(13) { --spark-x: 88%; --spark-size: 2px;   --spark-drift: 28px;  --spark-duration: 18s; --spark-delay: -15s; --spark-alpha: .76; }
.hm-spark:nth-child(14) { --spark-x: 95%; --spark-size: 1.5px; --spark-drift: -22px; --spark-duration: 24s; --spark-delay: -4s;  --spark-alpha: .58; }
.hm-spark:nth-child(15) { --spark-x: 15%; --spark-size: 2px;   --spark-drift: 34px;  --spark-duration: 29s; --spark-delay: -25s; --spark-alpha: .64; }
.hm-spark:nth-child(16) { --spark-x: 43%; --spark-size: 1px;   --spark-drift: -30px; --spark-duration: 15s; --spark-delay: -11s; --spark-alpha: .5; }
.hm-spark:nth-child(17) { --spark-x: 71%; --spark-size: 2.5px; --spark-drift: 18px;  --spark-duration: 28s; --spark-delay: -7s;  --spark-alpha: .82; }
.hm-spark:nth-child(18) { --spark-x: 91%; --spark-size: 1px;   --spark-drift: -16px; --spark-duration: 19s; --spark-delay: -17s; --spark-alpha: .52; }
.hm-spark:nth-child(19) { --spark-x: 7%;  --spark-size: 2.5px; --spark-drift: 24px;  --spark-duration: 31s; --spark-delay: -27s; --spark-alpha: .72; }
.hm-spark:nth-child(20) { --spark-x: 35%; --spark-size: 1.5px; --spark-drift: -20px; --spark-duration: 16s; --spark-delay: -13s; --spark-alpha: .62; }
.hm-spark:nth-child(21) { --spark-x: 63%; --spark-size: 2px;   --spark-drift: 30px;  --spark-duration: 21s; --spark-delay: -18s; --spark-alpha: .8; }
.hm-spark:nth-child(22) { --spark-x: 84%; --spark-size: 1.5px; --spark-drift: -26px; --spark-duration: 27s; --spark-delay: -10s; --spark-alpha: .58; }

.hm-spark:nth-child(3n) {
  --spark-color: rgba(255, 249, 225, .98);
  --spark-glow: rgba(255, 244, 213, .55);
}

.hm-spark:nth-child(5n) {
  --spark-color: rgba(208, 166, 49, .98);
  --spark-glow: rgba(208, 166, 49, .52);
}

.hm-spark:nth-child(4)::before,
.hm-spark:nth-child(9)::before,
.hm-spark:nth-child(14)::before,
.hm-spark:nth-child(19)::before {
  width: 15px;
  height: 15px;
  border-radius: 0;
  -webkit-clip-path: polygon(50% 0, 58% 40%, 100% 50%, 58% 60%, 50% 100%, 42% 60%, 0 50%, 42% 40%);
  clip-path: polygon(50% 0, 58% 40%, 100% 50%, 58% 60%, 50% 100%, 42% 60%, 0 50%, 42% 40%);
  background: linear-gradient(135deg, #fff8dc 0%, #f5d87a 48%, #c8960c 100%);
  box-shadow: none;
  animation-name: hmSparkFlare;
  animation-duration: 4.6s;
}

.hm-spark:nth-child(2)::before,
.hm-spark:nth-child(7)::before,
.hm-spark:nth-child(12)::before,
.hm-spark:nth-child(17)::before,
.hm-spark:nth-child(22)::before {
  width: 5px;
  height: 7px;
  border-radius: 1px;
  -webkit-clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
  background: linear-gradient(135deg, #fff8da, #d6a921 58%, #7e5908);
  box-shadow: 0 0 9px rgba(232, 180, 34, .48);
  animation-name: hmSparkDiamond;
  animation-duration: 3.8s;
}

@keyframes hmSparkRise {
  0% { opacity: 0; transform: translate3d(0, 8vh, 0) scale(.65); }
  9% { opacity: var(--spark-alpha); }
  48% { opacity: .58; }
  88% { opacity: var(--spark-alpha); }
  100% { opacity: 0; transform: translate3d(var(--spark-drift), -112vh, 0) scale(1.08); }
}

@keyframes hmSparkTwinkle {
  0%, 100% { opacity: .36; transform: translate3d(-50%, -50%, 0) scale(.62); }
  45% { opacity: 1; transform: translate3d(-50%, -50%, 0) scale(1.18); }
  62% { opacity: .68; transform: translate3d(-50%, -50%, 0) scale(.86); }
}

@keyframes hmSparkFlare {
  0%, 100% { opacity: .2; transform: translate3d(-50%, -50%, 0) rotate(0deg) scale(.46); }
  48% { opacity: 1; transform: translate3d(-50%, -50%, 0) rotate(12deg) scale(1.16); }
  64% { opacity: .58; transform: translate3d(-50%, -50%, 0) rotate(18deg) scale(.78); }
}

@keyframes hmSparkDiamond {
  0%, 100% { opacity: .34; transform: translate3d(-50%, -50%, 0) rotate(-10deg) scale(.66); }
  50% { opacity: 1; transform: translate3d(-50%, -50%, 0) rotate(18deg) scale(1.12); }
}

html.hm-idle .hm-spark {
  animation-play-state: paused !important;
}

html.hm-flight-active .hm-mobile-ambient {
  opacity: 0 !important;
}

html.hm-flight-active .hm-spark {
  animation-play-state: paused !important;
}

@media (max-width: 900px) {
  .hm-mobile-ambient {
    opacity: 1 !important;
  }

  .hm-spark::before {
    --spark-glow-size: 6px;
  }

  .hm-spark:nth-child(n + 16) {
    display: none;
  }

  .hm-spark:nth-child(4)::before,
  .hm-spark:nth-child(9)::before,
  .hm-spark:nth-child(14)::before {
    width: 17px;
    height: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hm-spark {
    animation: none !important;
    display: none !important;
    will-change: auto !important;
  }
}

/* Refined particulate field: irregular positions and optical pinlights only.
   This replaces the decorative star/diamond language with restrained motion. */
.hm-mobile-ambient .hm-spark {
  --spark-x: 50%;
  --spark-y: 50%;
  --spark-size: 1.5px;
  --spark-alpha: .66;
  --spark-color: rgba(247, 224, 159, .96);
  --spark-glow: rgba(214, 174, 73, .34);
  --spark-glow-size: 5px;
  --spark-duration: 18s;
  --spark-delay: 0s;
  --spark-dx: 24px;
  --spark-dy: -38px;
  display: block;
  left: var(--spark-x);
  top: var(--spark-y);
  bottom: auto;
  opacity: var(--spark-alpha);
  animation-name: hmDustDriftA !important;
  animation-duration: var(--spark-duration) !important;
  animation-timing-function: cubic-bezier(.45, 0, .55, 1) !important;
  animation-delay: var(--spark-delay) !important;
  animation-iteration-count: infinite !important;
  animation-direction: alternate !important;
}

.hm-mobile-ambient .hm-spark::before {
  width: var(--spark-size) !important;
  height: var(--spark-size) !important;
  border-radius: 50% !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  background: var(--spark-color) !important;
  box-shadow: 0 0 var(--spark-glow-size) var(--spark-glow) !important;
  animation: hmDustShimmer var(--spark-twinkle, 5.7s) ease-in-out var(--spark-delay) infinite !important;
}

.hm-mobile-ambient .hm-spark::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}

.hm-spark:nth-child(1)  { --spark-x: 6%;  --spark-y: 14%; --spark-size: 1.2px; --spark-duration: 23s; --spark-delay: -17s; --spark-dx: 22px;  --spark-dy: 36px;  --spark-alpha: .56; --spark-twinkle: 6.1s; }
.hm-spark:nth-child(2)  { --spark-x: 17%; --spark-y: 64%; --spark-size: 2px;   --spark-duration: 16s; --spark-delay: -9s;  --spark-dx: -28px; --spark-dy: -42px; --spark-alpha: .78; --spark-twinkle: 4.7s; }
.hm-spark:nth-child(3)  { --spark-x: 28%; --spark-y: 31%; --spark-size: 1px;   --spark-duration: 27s; --spark-delay: -21s; --spark-dx: 34px;  --spark-dy: -24px; --spark-alpha: .48; --spark-twinkle: 7.3s; }
.hm-spark:nth-child(4)  { --spark-x: 42%; --spark-y: 78%; --spark-size: 2.8px; --spark-duration: 19s; --spark-delay: -13s; --spark-dx: -20px; --spark-dy: -54px; --spark-alpha: .9;  --spark-glow-size: 9px; --spark-twinkle: 5.3s; }
.hm-spark:nth-child(5)  { --spark-x: 54%; --spark-y: 18%; --spark-size: 1.4px; --spark-duration: 24s; --spark-delay: -5s;  --spark-dx: 26px;  --spark-dy: 30px;  --spark-alpha: .58; --spark-twinkle: 6.8s; }
.hm-spark:nth-child(6)  { --spark-x: 67%; --spark-y: 48%; --spark-size: 2.2px; --spark-duration: 17s; --spark-delay: -15s; --spark-dx: -32px; --spark-dy: 44px;  --spark-alpha: .82; --spark-glow-size: 7px; --spark-twinkle: 4.4s; }
.hm-spark:nth-child(7)  { --spark-x: 81%; --spark-y: 26%; --spark-size: 1px;   --spark-duration: 29s; --spark-delay: -24s; --spark-dx: 18px;  --spark-dy: -32px; --spark-alpha: .46; --spark-twinkle: 7.8s; }
.hm-spark:nth-child(8)  { --spark-x: 93%; --spark-y: 72%; --spark-size: 1.6px; --spark-duration: 21s; --spark-delay: -7s;  --spark-dx: -24px; --spark-dy: 28px;  --spark-alpha: .68; --spark-twinkle: 5.9s; }
.hm-spark:nth-child(9)  { --spark-x: 9%;  --spark-y: 88%; --spark-size: 2.4px; --spark-duration: 15s; --spark-delay: -11s; --spark-dx: 38px;  --spark-dy: -46px; --spark-alpha: .86; --spark-glow-size: 8px; --spark-twinkle: 4.1s; }
.hm-spark:nth-child(10) { --spark-x: 23%; --spark-y: 7%;  --spark-size: 1px;   --spark-duration: 26s; --spark-delay: -19s; --spark-dx: -16px; --spark-dy: 40px;  --spark-alpha: .5;  --spark-twinkle: 7.1s; }
.hm-spark:nth-child(11) { --spark-x: 36%; --spark-y: 53%; --spark-size: 1.8px; --spark-duration: 20s; --spark-delay: -3s;  --spark-dx: 28px;  --spark-dy: -34px; --spark-alpha: .72; --spark-twinkle: 5.1s; }
.hm-spark:nth-child(12) { --spark-x: 49%; --spark-y: 36%; --spark-size: 1.3px; --spark-duration: 28s; --spark-delay: -23s; --spark-dx: -36px; --spark-dy: 22px;  --spark-alpha: .54; --spark-twinkle: 6.6s; }
.hm-spark:nth-child(13) { --spark-x: 61%; --spark-y: 91%; --spark-size: 2px;   --spark-duration: 18s; --spark-delay: -14s; --spark-dx: 20px;  --spark-dy: -52px; --spark-alpha: .8;  --spark-glow-size: 7px; --spark-twinkle: 4.9s; }
.hm-spark:nth-child(14) { --spark-x: 74%; --spark-y: 12%; --spark-size: 1px;   --spark-duration: 25s; --spark-delay: -8s;  --spark-dx: -30px; --spark-dy: 34px;  --spark-alpha: .48; --spark-twinkle: 7.5s; }
.hm-spark:nth-child(15) { --spark-x: 86%; --spark-y: 58%; --spark-size: 2.6px; --spark-duration: 16s; --spark-delay: -12s; --spark-dx: 32px;  --spark-dy: -40px; --spark-alpha: .88; --spark-glow-size: 9px; --spark-twinkle: 4.3s; }
.hm-spark:nth-child(16) { --spark-x: 96%; --spark-y: 38%; --spark-size: 1.2px; --spark-duration: 30s; --spark-delay: -26s; --spark-dx: -18px; --spark-dy: 26px;  --spark-alpha: .52; --spark-twinkle: 7.9s; }
.hm-spark:nth-child(17) { --spark-x: 13%; --spark-y: 43%; --spark-size: 1.5px; --spark-duration: 22s; --spark-delay: -16s; --spark-dx: 24px;  --spark-dy: -28px; --spark-alpha: .62; --spark-twinkle: 6.3s; }
.hm-spark:nth-child(18) { --spark-x: 31%; --spark-y: 93%; --spark-size: 1px;   --spark-duration: 27s; --spark-delay: -20s; --spark-dx: -22px; --spark-dy: -38px; --spark-alpha: .44; --spark-twinkle: 7.2s; }
.hm-spark:nth-child(19) { --spark-x: 45%; --spark-y: 11%; --spark-size: 2.2px; --spark-duration: 17s; --spark-delay: -6s;  --spark-dx: 30px;  --spark-dy: 42px;  --spark-alpha: .78; --spark-twinkle: 4.8s; }
.hm-spark:nth-child(20) { --spark-x: 58%; --spark-y: 69%; --spark-size: 1.3px; --spark-duration: 24s; --spark-delay: -18s; --spark-dx: -28px; --spark-dy: -30px; --spark-alpha: .56; --spark-twinkle: 6.9s; }
.hm-spark:nth-child(21) { --spark-x: 77%; --spark-y: 84%; --spark-size: 1.7px; --spark-duration: 19s; --spark-delay: -10s; --spark-dx: 22px;  --spark-dy: -48px; --spark-alpha: .7;  --spark-twinkle: 5.4s; }
.hm-spark:nth-child(22) { --spark-x: 89%; --spark-y: 4%;  --spark-size: 1px;   --spark-duration: 31s; --spark-delay: -28s; --spark-dx: -26px; --spark-dy: 36px;  --spark-alpha: .46; --spark-twinkle: 8.1s; }

.hm-spark:nth-child(3n) {
  --spark-color: rgba(255, 250, 231, .98);
  --spark-glow: rgba(255, 246, 218, .3);
}

.hm-spark:nth-child(5n) {
  --spark-color: rgba(214, 174, 73, .98);
  --spark-glow: rgba(214, 174, 73, .4);
}

.hm-spark:nth-child(3n + 1) {
  animation-name: hmDustDriftA !important;
}

.hm-spark:nth-child(3n + 2) {
  animation-name: hmDustDriftB !important;
}

.hm-spark:nth-child(3n) {
  animation-name: hmDustDriftC !important;
}

@keyframes hmDustDriftA {
  0% { transform: translate3d(-6px, 8px, 0); }
  100% { transform: translate3d(var(--spark-dx), var(--spark-dy), 0); }
}

@keyframes hmDustDriftB {
  0% { transform: translate3d(8px, -5px, 0); }
  100% { transform: translate3d(var(--spark-dx), var(--spark-dy), 0); }
}

@keyframes hmDustDriftC {
  0% { transform: translate3d(-4px, -7px, 0); }
  100% { transform: translate3d(var(--spark-dx), var(--spark-dy), 0); }
}

@keyframes hmDustShimmer {
  0%, 15%, 100% { opacity: .44; transform: translate3d(-50%, -50%, 0) scale(.82); }
  18% { opacity: .96; transform: translate3d(-50%, -50%, 0) scale(1.14); }
  23% { opacity: .58; transform: translate3d(-50%, -50%, 0) scale(.9); }
  63% { opacity: .72; transform: translate3d(-50%, -50%, 0) scale(1); }
}

@media (max-width: 900px) {
  .hm-mobile-ambient .hm-spark:nth-child(n + 16) {
    display: block;
  }

  .hm-mobile-ambient .hm-spark:nth-child(n + 17) {
    display: none;
  }

  .hm-mobile-ambient .hm-spark::before {
    --spark-glow-size: 6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hm-mobile-ambient .hm-spark {
    display: none !important;
    animation: none !important;
  }
}

/* Optical depth renderer. The CSS particulate field remains a no-canvas
   fallback, then disappears as soon as the lightweight renderer is ready. */
#spark-canvas,
.hm-spark-canvas {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: var(--frozen-vh, var(--hm-svh, 100vh)) !important;
  z-index: 3 !important;
  pointer-events: none !important;
  contain: strict !important;
  opacity: 0 !important;
  transform: translateZ(0) !important;
  transition: opacity .4s ease !important;
}

html.hm-spark-canvas-ready #spark-canvas {
  opacity: .94 !important;
}

html.hm-spark-canvas-ready .hm-mobile-ambient {
  display: none !important;
  visibility: hidden !important;
}

html.hm-flight-active #spark-canvas,
html.hm-idle #spark-canvas {
  opacity: 0 !important;
}

@media (max-width: 900px) {
  html.hm-spark-canvas-ready #spark-canvas {
    opacity: 1 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #spark-canvas,
  .hm-spark-canvas {
    display: none !important;
  }
}

/* Keep the optical field behind the experience and outside the hero. Dark
   section surfaces are translucent so the depth remains visible without ever
   drawing over typography, controls, cards or photography. */
#spark-canvas,
.hm-spark-canvas {
  z-index: 1 !important;
}

html.hm-spark-canvas-ready #spark-canvas {
  opacity: 0 !important;
}

html.hm-spark-canvas-ready.hm-sparks-after-hero #spark-canvas {
  opacity: 1 !important;
}

html.hm-flight-active.hm-sparks-after-hero #spark-canvas,
html.hm-idle.hm-sparks-after-hero #spark-canvas {
  opacity: 0 !important;
}

#about,
#vmv,
#headquarters,
#financials,
#corporate-enquiries {
  background: rgba(3, 4, 4, .7) !important;
}

#shop,
#operations,
#board,
#schematics {
  background: rgba(9, 10, 8, .74) !important;
}

@media (max-width: 900px) {
  #about,
  #vmv,
  #headquarters,
  #financials,
  #corporate-enquiries {
    background: rgba(3, 4, 4, .64) !important;
  }

  #shop,
  #operations,
  #board,
  #schematics {
    background: rgba(9, 10, 8, .68) !important;
  }
}
