/* ORVEXA site enhancement layer · 2026-08-05 */

/* Stable backgrounds: remove the old scale/translate loop that looked like a jump. */
.visual-section > .section-photo,
.b2b-control > .section-photo,
.route-control > .section-photo,
.section-photo {
  animation: none !important;
  transform: none !important;
  backface-visibility: hidden;
}

/* A truly seamless airport ticker. JavaScript normalizes the track into two identical groups. */
.ticker-track { display:flex; width:max-content; will-change:transform; }
.ticker-group { display:flex; flex:none; align-items:center; height:100%; }
.ticker-group > span { flex:none; }
@media (prefers-reduced-motion: reduce) { .ticker-track { animation:none !important; } }

/* Radar traffic: points and labels, not aircraft silhouettes. */
.air-traffic-canvas { opacity:.96; }

/* Photo-backed service cards with a clear CTA button. */
.services-v2 .service-card-v2 {
  position:relative;
  isolation:isolate;
  min-height:330px;
  background-color:#07111d;
  background-image:linear-gradient(180deg,rgba(5,13,24,.48),rgba(5,13,24,.95) 78%),var(--service-photo);
  background-size:cover;
  background-position:center;
  overflow:hidden;
}
.services-v2 .service-card-v2:nth-child(1){--service-photo:url('/brand/orvexa-air-cargo.webp')}
.services-v2 .service-card-v2:nth-child(2){--service-photo:url('/brand/orvexa-aircargo-loading.webp')}
.services-v2 .service-card-v2:nth-child(3){--service-photo:url('/brand/orvexa-hero-air.webp')}
.services-v2 .service-card-v2:nth-child(4){--service-photo:url('/brand/orvexa-multimodal-terminal.webp')}
.services-v2 .service-card-v2:nth-child(5){--service-photo:url('/brand/orvexa-truck.webp')}
.services-v2 .service-card-v2:nth-child(6){--service-photo:url('/brand/orvexa-routes-gateway.webp')}
.services-v2 .service-card-v2::before {
  content:""; z-index:-1; position:absolute; inset:0;
  background:radial-gradient(320px circle at var(--card-x,50%) var(--card-y,50%),rgba(31,107,255,.38),transparent 70%);
  opacity:.55;
}
.services-v2 .service-card-v2 > * { position:relative; z-index:2; }
.services-v2 .service-card-v2 footer {
  width:max-content; max-width:100%; margin-top:auto; padding:11px 15px;
  background:var(--blue); border:1px solid rgba(255,255,255,.15);
  box-shadow:0 12px 28px rgba(31,107,255,.34); gap:26px;
  transition:transform .25s,background .25s;
}
.services-v2 .service-card-v2:hover footer { transform:translateY(-2px); background:#397eff; }
.services-v2 .service-card-v2 footer small { color:#fff; font-size:12px; letter-spacing:.04em; }

/* The business urgency section gets card-level imagery and real CTA buttons. */
.business-speed-section .audience-card {
  min-height:320px; position:relative; isolation:isolate;
  background-image:linear-gradient(180deg,rgba(5,13,24,.42),rgba(5,13,24,.95) 75%),var(--business-photo);
  background-size:cover; background-position:center;
}
.business-speed-section .audience-card:nth-child(1){--business-photo:url('/brand/orvexa-industries-supplychain.webp')}
.business-speed-section .audience-card:nth-child(2){--business-photo:url('/brand/orvexa-aircargo-loading.webp')}
.business-speed-section .audience-card:nth-child(3){--business-photo:url('/brand/orvexa-control-team.webp')}
.business-speed-section .audience-card:nth-child(4){--business-photo:url('/brand/orvexa-air-cargo.webp')}
.business-speed-section .audience-card > * { position:relative; z-index:2; }
.business-speed-section .audience-card footer {
  width:max-content; max-width:100%; margin-top:auto; padding:11px 15px;
  background:var(--blue); border:1px solid rgba(255,255,255,.15); gap:24px;
  box-shadow:0 12px 28px rgba(31,107,255,.32);
}

/* Special cargo built around recognized air-cargo handling categories. */
.special-cargo-section { min-height:980px; }
.special-cargo-grid {
  position:relative; z-index:4; display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  border-left:1px solid var(--line); border-top:1px solid var(--line);
}
.special-cargo-card {
  position:relative; isolation:isolate; min-height:300px; padding:26px;
  border-right:1px solid var(--line); border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; overflow:hidden;
  background-image:linear-gradient(180deg,rgba(5,13,24,.45),rgba(5,13,24,.96) 78%),var(--special-photo);
  background-size:cover; background-position:center;
  transition:transform .28s,filter .28s;
}
.special-cargo-card:hover { transform:translateY(-5px); filter:saturate(1.12); }
.special-cargo-card small { color:var(--soft-teal); letter-spacing:.13em; font-weight:800; }
.special-cargo-card h3 { margin:34px 0 12px; font-size:22px; }
.special-cargo-card p { color:#c3cfdd; margin:0 0 24px; }
.special-cargo-card footer {
  margin-top:auto; width:max-content; padding:10px 14px; background:var(--blue);
  display:flex; align-items:center; gap:24px; font-weight:700; font-size:13px;
}
.special-cargo-note {
  position:relative; z-index:4; margin-top:18px; padding:16px 18px;
  border:1px solid rgba(121,217,211,.24); background:rgba(7,17,29,.78);
  color:#c6d1de; font-size:14px;
}

/* Aviation document flow. */
.documents-section {
  position:relative; isolation:isolate; padding:110px max(5vw,44px);
  background:
    radial-gradient(circle at 82% 18%,rgba(21,183,176,.20),transparent 30%),
    linear-gradient(125deg,#07111d,#10213a 58%,#08121f);
  overflow:hidden;
}
.documents-section::before {
  content:""; position:absolute; inset:0; opacity:.23;
  background-image:linear-gradient(rgba(125,164,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(125,164,255,.18) 1px,transparent 1px);
  background-size:54px 54px; mask-image:linear-gradient(90deg,#000,transparent 88%);
}
.documents-head { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.55fr); gap:7vw; align-items:end; margin-bottom:48px; }
.documents-head > p { color:#bcc8d6; font-size:17px; margin:0 0 6px; }
.document-flow { position:relative; z-index:2; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-left:1px solid var(--line); border-top:1px solid var(--line); }
.document-step { min-height:330px; padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(7,17,29,.72); display:flex; flex-direction:column; }
.document-step > span { color:var(--teal); font-family:Montserrat,sans-serif; font-weight:800; }
.document-step h3 { margin:28px 0 14px; font-size:19px; }
.document-step p { color:#c0ccda; font-size:14px; margin:0 0 18px; }
.document-step ul { list-style:none; padding:0; margin:auto 0 0; }
.document-step li { position:relative; padding:8px 0 8px 17px; border-top:1px solid rgba(233,238,245,.10); color:#d7e0ea; font-size:13px; }
.document-step li::before { content:""; position:absolute; left:0; top:15px; width:6px; height:6px; background:var(--teal); transform:rotate(45deg); }
.document-responsibility { position:relative; z-index:2; margin-top:18px; padding:20px; display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center; border:1px solid rgba(121,217,211,.26); background:rgba(8,18,31,.86); }
.document-responsibility strong { color:var(--soft-teal); }
.document-responsibility p { margin:0; color:#c5d0dc; }

/* Footer radar with synchronized logo acquisition. */
.footer-logo-panel { position:relative; isolation:isolate; overflow:hidden; min-height:170px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(121,217,211,.18); background:#07111d; }
.footer-radar-canvas { position:absolute; inset:0; width:100%; height:100%; z-index:0; opacity:.9; }
.footer-logo-panel img { position:relative; z-index:2; width:min(88%,390px); transition:filter .22s,transform .22s,opacity .22s; }
.footer-logo-panel.is-acquired img { filter:brightness(1.34) drop-shadow(0 0 12px rgba(121,217,211,.95)) drop-shadow(0 0 32px rgba(31,107,255,.75)); transform:scale(1.025); }
.footer-logo-panel::after { content:"RADAR · ORVEXA FORWARDING"; position:absolute; z-index:2; left:12px; bottom:9px; color:rgba(121,217,211,.78); letter-spacing:.12em; font:700 9px/1.2 Montserrat,sans-serif; }
.footer-logo-panel.is-acquired::after { content:"TARGET ACQUIRED · ORVEXA"; color:#dffdfb; text-shadow:0 0 12px rgba(121,217,211,.9); }

@media (max-width:1280px) {
  .document-flow { grid-template-columns:repeat(3,1fr); }
  .special-cargo-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px) {
  .documents-head { grid-template-columns:1fr; }
  .document-flow { grid-template-columns:1fr 1fr; }
  .document-responsibility { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  /* Mobile-specific portrait images are swapped by site.js; videos are hidden to keep the full scene readable. */
  .cinematic-section .section-video { display:none !important; }

  .services-v2 .service-card-v2:nth-child(1){--service-photo:url('/brand/mobile/orvexa-air-cargo.webp')}
  .services-v2 .service-card-v2:nth-child(2){--service-photo:url('/brand/mobile/orvexa-aircargo-loading.webp')}
  .services-v2 .service-card-v2:nth-child(3){--service-photo:url('/brand/mobile/orvexa-hero-air.webp')}
  .services-v2 .service-card-v2:nth-child(4){--service-photo:url('/brand/mobile/orvexa-multimodal-terminal.webp')}
  .services-v2 .service-card-v2:nth-child(5){--service-photo:url('/brand/mobile/orvexa-truck.webp')}
  .services-v2 .service-card-v2:nth-child(6){--service-photo:url('/brand/mobile/orvexa-routes-gateway.webp')}
  .business-speed-section .audience-card:nth-child(1){--business-photo:url('/brand/mobile/orvexa-industries-supplychain.webp')}
  .business-speed-section .audience-card:nth-child(2){--business-photo:url('/brand/mobile/orvexa-aircargo-loading.webp')}
  .business-speed-section .audience-card:nth-child(3){--business-photo:url('/brand/mobile/orvexa-control-team.webp')}
  .business-speed-section .audience-card:nth-child(4){--business-photo:url('/brand/mobile/orvexa-air-cargo.webp')}
  .special-cargo-card:nth-child(1){--special-photo:url('/brand/mobile/orvexa-aircargo-loading.webp') !important}
  .special-cargo-card:nth-child(2){--special-photo:url('/brand/mobile/orvexa-control-team.webp') !important}
  .special-cargo-card:nth-child(3){--special-photo:url('/brand/mobile/orvexa-services-hub.webp') !important}
  .special-cargo-card:nth-child(4){--special-photo:url('/brand/mobile/orvexa-agent-network.webp') !important}
  .special-cargo-card:nth-child(5){--special-photo:url('/brand/mobile/orvexa-air-cargo.webp') !important}
  .special-cargo-card:nth-child(6){--special-photo:url('/brand/mobile/orvexa-multimodal-terminal.webp') !important}
  .section-photo { object-position:center !important; }
  .services-v2 .service-card-v2,.business-speed-section .audience-card,.special-cargo-card { min-height:300px; }
  .special-cargo-grid,.document-flow { grid-template-columns:1fr; }
  .documents-section { padding:82px 20px; }
  .documents-head { margin-bottom:32px; }
  .document-step { min-height:auto; }
  .footer-logo-panel { min-height:150px; }
}

/* Stability hardening v1.2: no photographic background moves on any page. */
.section-photo,
.visual-section > .section-photo,
.b2b-control > .section-photo,
.route-control > .section-photo,
.cinematic-section > .section-photo,
.hero-v2.cinematic-section > .hero-cinematic-photo,
.landing-image > img,
.landing-photo-section > img {
  animation: none !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
  backface-visibility: visible !important;
}

/* Looping background video caused a visible jump at every loop boundary. */
.section-video {
  display: none !important;
  visibility: hidden !important;
}

/* Aviation-document workflow now has a relevant, stable control-room background. */
.documents-section {
  background-color: #07111d;
  background-image:
    radial-gradient(circle at 82% 18%, rgba(21,183,176,.18), transparent 31%),
    linear-gradient(100deg, rgba(5,13,24,.98) 0%, rgba(5,13,24,.91) 42%, rgba(5,13,24,.70) 72%, rgba(5,13,24,.82) 100%),
    url('/brand/orvexa-control-team.webp');
  background-size: auto, auto, cover;
  background-position: center, center, center;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.documents-section::before {
  z-index: 0;
}
.documents-section .documents-head,
.documents-section .document-flow,
.documents-section .document-responsibility {
  position: relative;
  z-index: 2;
}

@media (max-width: 700px) {
  .documents-section {
    background-image:
      linear-gradient(180deg, rgba(5,13,24,.76) 0%, rgba(5,13,24,.86) 34%, rgba(5,13,24,.96) 68%, rgba(5,13,24,.99) 100%),
      url('/brand/mobile/orvexa-control-team.webp');
    background-size: auto, 100% auto;
    background-position: center, center 220px;
    background-repeat: no-repeat;
  }
}


/* v1.2.1 — mobile heading overflow guardrail and improved footer radar logo reveal. */
.site-home .section-head > *,
.site-home .documents-head > *,
.site-home .control-tower-intro,
.site-home .faq-intro,
.site-home .contact-copy,
.site-home .landing-copy,
.site-home .service-card-v2,
.site-home .audience-card,
.site-home .special-cargo-card,
.site-home .document-step,
.site-home .footer-links > div,
.site-home .footer-brand,
.site-home .landing-image-caption {
  min-width: 0;
}

.site-home :is(h1,h2,h3,.eyebrow) {
  max-width: 100%;
}

.site-home :is(h1,h2,h3,.eyebrow, .eyebrow *, .landing-image-caption strong) {
  overflow-wrap: anywhere;
  word-break: normal;
}

.footer-logo-panel {
  --scan-x: 50%;
  --scan-y: 50%;
  --scan-opacity: 0;
  background: radial-gradient(circle at 50% 50%, rgba(21,183,176,.08), rgba(7,17,29,0) 44%), #07111d;
}

.footer-logo-panel .footer-logo-base,
.footer-logo-panel .footer-logo-highlight {
  width: min(92%, 440px);
  max-width: 92%;
  height: auto;
}

.footer-logo-panel .footer-logo-base {
  position: relative;
  z-index: 1;
  filter: brightness(.22) saturate(.85) contrast(1.06);
  opacity: .88;
  transition: filter .22s ease, opacity .22s ease, transform .22s ease;
}

.footer-logo-panel .footer-logo-highlight {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  z-index: 2;
  pointer-events: none;
  opacity: var(--scan-opacity, 0);
  filter: brightness(1.46) saturate(1.12) drop-shadow(0 0 12px rgba(121,217,211,.86)) drop-shadow(0 0 30px rgba(31,107,255,.50));
  transition: opacity .12s linear;
  -webkit-mask-image: radial-gradient(circle 84px at var(--scan-x) var(--scan-y), #000 0, #000 36%, rgba(0,0,0,.82) 49%, rgba(0,0,0,.25) 60%, transparent 72%);
  mask-image: radial-gradient(circle 84px at var(--scan-x) var(--scan-y), #000 0, #000 36%, rgba(0,0,0,.82) 49%, rgba(0,0,0,.25) 60%, transparent 72%);
}

.footer-logo-panel.is-acquired .footer-logo-base {
  filter: brightness(.32) saturate(.96) contrast(1.08);
}

.footer-logo-panel::after,
.footer-logo-panel.is-acquired::after {
  content: none !important;
}

@media (max-width: 700px) {
  .site-home .eyebrow {
    flex-wrap: wrap;
    gap: 8px 10px;
    line-height: 1.45;
    letter-spacing: .12em;
    margin-bottom: 18px;
  }

  .site-home .eyebrow span {
    flex: none;
  }

  .site-home h1 {
    font-size: clamp(34px, 10.2vw, 54px) !important;
    line-height: 1.03;
    letter-spacing: -.05em;
  }

  .site-home h2 {
    font-size: clamp(28px, 8.4vw, 46px) !important;
    line-height: 1.06;
    letter-spacing: -.04em;
  }

  .site-home h3 {
    font-size: clamp(20px, 6.1vw, 28px);
    line-height: 1.18;
  }

  .site-home :is(h1,h2,h3,.eyebrow) {
    text-wrap: pretty;
  }

  .site-home .hero-v2,
  .site-home .visual-section,
  .site-home .network-section,
  .site-home .solutions-section,
  .site-home .faq-section,
  .site-home .contact-section,
  .site-home .b2b-control,
  .site-home .documents-section {
    padding-left: 20px;
    padding-right: 20px;
  }

  .site-home .hero-v2-copy,
  .site-home .section-head,
  .site-home .documents-head,
  .site-home .control-tower-intro,
  .site-home .faq-intro,
  .site-home .contact-copy,
  .site-home .landing-copy {
    overflow: visible;
  }

  .footer-logo-panel {
    min-height: 158px;
  }

  .footer-logo-panel .footer-logo-base,
  .footer-logo-panel .footer-logo-highlight {
    width: min(94%, 420px);
    max-width: 94%;
  }

  .footer-logo-panel .footer-logo-highlight {
    -webkit-mask-image: radial-gradient(circle 72px at var(--scan-x) var(--scan-y), #000 0, #000 34%, rgba(0,0,0,.82) 48%, rgba(0,0,0,.25) 58%, transparent 70%);
    mask-image: radial-gradient(circle 72px at var(--scan-x) var(--scan-y), #000 0, #000 34%, rgba(0,0,0,.82) 48%, rgba(0,0,0,.25) 58%, transparent 70%);
  }
}


/* v1.2.1b — tighten inner-page hero spacing on narrow mobile widths. */
@media (max-width: 700px) {
  .landing-hero,
  .landing-benefits,
  .landing-photo-section,
  .landing-process,
  .landing-faq,
  .landing-cta {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .landing-copy h1,
  .landing-copy h2,
  .landing-photo-section h2,
  .landing-process h2,
  .landing-faq h2,
  .landing-cta h2 {
    font-size: clamp(27px, 8.1vw, 44px) !important;
    line-height: 1.08;
    letter-spacing: -.04em;
  }

  .landing-copy .eyebrow,
  .landing-photo-section .eyebrow,
  .landing-process .eyebrow,
  .landing-faq .eyebrow,
  .landing-cta .eyebrow {
    max-width: 100%;
  }
}
