:root{
  --cube-aircraft-ink:#6f8ca3;
  --cube-aircraft-line:rgba(91,126,151,.24);
}

.cube-aircraft-mark{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:24;
  width:112px;
  height:92px;
  display:grid;
  place-items:center;
  margin:0;
  pointer-events:none;
  user-select:none;
  opacity:.48;
  isolation:isolate;
  transition:opacity .25s ease,transform .25s ease;
}

.cube-aircraft-mark::before,
.cube-aircraft-mark::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid var(--cube-aircraft-line);
  border-radius:50%;
  transform:scale(.74);
}

.cube-aircraft-mark::after{
  inset:9px;
  border-style:dashed;
  opacity:.72;
  transform:scale(.84) rotate(18deg);
}

.cube-aircraft-mark img{
  position:relative;
  z-index:1;
  width:76px;
  height:auto;
  display:block;
  filter:drop-shadow(0 4px 8px rgba(39,64,81,.14));
  transform:rotate(-8deg);
}

.cube-aircraft-mark span{
  position:absolute;
  right:2px;
  bottom:-2px;
  z-index:2;
  padding:2px 5px;
  color:var(--cube-aircraft-ink);
  background:rgba(242,247,250,.88);
  font:700 8px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.12em;
  white-space:nowrap;
}

main>section:not(.hero):not(.news-hero):not(.media-hero):not(.story-hero):not(.library-hero){
  position:relative;
  isolation:isolate;
}

main>section:not(.hero):not(.news-hero):not(.media-hero):not(.story-hero):not(.library-hero)::after{
  content:"";
  position:absolute;
  top:clamp(24px,4vw,56px);
  right:clamp(18px,4vw,64px);
  z-index:-1;
  width:clamp(110px,13vw,190px);
  aspect-ratio:480/350;
  background:url("assets/su27-silhouette.svg") center/contain no-repeat;
  opacity:.045;
  pointer-events:none;
}

body:has(link[href*="training/flight.css"]) .cube-aircraft-mark span,
body:has(link[href*="live/"]) .cube-aircraft-mark span{
  color:#a9c4d6;
  background:rgba(5,20,29,.82);
}

body:has(link[href*="training/flight.css"]) main>section:not(.hero)::after{
  opacity:.075;
  filter:brightness(1.45);
}

@media(max-width:800px){
  .cube-aircraft-mark{
    right:-14px;
    bottom:10px;
    width:54px;
    height:48px;
    opacity:.46;
  }
  .cube-aircraft-mark img{width:38px}
  .cube-aircraft-mark span{display:none}
  main>section::after{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .cube-aircraft-mark{transition:none}
}

@media print{
  .cube-aircraft-mark{display:none}
}

/* Global formation layer: four aircraft cruise behind the site, independent of the carousel. */
.flight-sky{position:fixed;inset:0;z-index:2;overflow:hidden;pointer-events:none;isolation:isolate}
.flight-sky::before{content:"";position:absolute;inset:10% -8%;background:radial-gradient(ellipse at 65% 42%,rgba(143,220,240,.14),transparent 38%);opacity:.75}
.flight-sky .flight-route{position:absolute;left:18%;top:34%;width:66%;height:30%;border-top:1px dashed rgba(105,183,207,.18);border-radius:50%;transform:rotate(-8deg);opacity:.7}
.flight-sky .flight-route::after{content:"";position:absolute;right:-3px;top:-4px;width:7px;height:7px;border:1px solid rgba(102,190,218,.5);border-radius:50%;box-shadow:0 0 0 4px rgba(151,226,241,.08)}
.flight-formation{--flight-dx:clamp(42px,4vw,58px);--flight-dy:clamp(27px,2.8vw,40px);position:absolute;left:0;top:0;width:clamp(210px,19vw,290px);height:clamp(120px,11vw,160px);will-change:transform;filter:drop-shadow(0 8px 14px rgba(26,66,83,.13))}
.flight-slot{position:absolute;display:block;width:clamp(62px,5.7vw,88px);height:auto;will-change:transform;transform:translate(-50%,-50%)}
.flight-slot .flight-plane{position:relative;z-index:2;display:block;width:100%;height:auto;opacity:.7;filter:brightness(1.12) saturate(.72) drop-shadow(0 0 4px rgba(118,205,230,.25));transform:scaleX(-1)}
.flight-slot-lead{left:calc(50% + var(--flight-dx));top:50%}.flight-slot-left{left:50%;top:calc(50% - var(--flight-dy))}.flight-slot-right{left:50%;top:calc(50% + var(--flight-dy))}.flight-slot-rear{left:calc(50% - var(--flight-dx));top:50%}
.flight-slot-left .flight-plane,.flight-slot-right .flight-plane,.flight-slot-rear .flight-plane{opacity:.66;transform:scaleX(-1)}
.flight-smoke{position:absolute;z-index:1;left:-235%;top:44%;width:250%;height:12px;border-top:2px solid rgba(224,244,248,.3);border-radius:50%;filter:blur(1px);opacity:.72}
.flight-slot-lead .flight-smoke{display:none}
.flight-slot-left .flight-smoke,.flight-slot-right .flight-smoke{left:-225%;width:245%}
.flight-slot-rear .flight-smoke{left:-205%;width:225%;opacity:.58}
.flight-sky .flight-hud{display:none}
.flight-sky .flight-hud b{font-size:14px;letter-spacing:.05em;font-weight:500}.flight-sky .flight-hud i{font-style:normal;color:#7798a8;font-size:8px}
.site-header{position:relative;z-index:4}
main,footer{position:relative}
.home-slim .hero-copy,.home-slim .hero-telemetry,.home-slim .hero-control,.home-slim .hero-index,.home-slim .hero-dots{z-index:3}
body:not(.home-slim) .hero>.hero-copy{position:relative;z-index:3}
@media(max-width:800px){.flight-sky .flight-route{left:-25%;top:38%;width:150%;opacity:.35}.flight-formation{--flight-dx:42px;--flight-dy:28px;width:185px;height:112px}.flight-slot{width:62px}.flight-sky .flight-hud{right:16px;top:30vh;min-width:130px;padding:7px 9px;opacity:.34}.flight-sky .flight-hud b{font-size:11px}.flight-slot .flight-plane{opacity:.58}.flight-smoke{opacity:.45}}
@media(prefers-reduced-motion:reduce){.flight-sky .flight-formation{transform:translate3d(35vw,16vh,0)}.flight-sky .flight-hud{opacity:.28}}
