/* Westchester Chimney & Masonry // stylesheet.
   Runway-clay orange on approach-light blue; fog-cream field. */

:root {
   --wc5-brick: #B34426;
   --wc5-brick-dark: #7E3013;
   --wc5-ember: #F4973A;
   --wc5-ember-glow: #FFC382;
   --wc5-coast: #2E5D8C;
   --wc5-charcoal: #181310;
   --wc5-charcoal-2: #231D19;
   --wc5-charcoal-3: #302823;
   --wc5-cream: #F9F4EC;
   --wc5-cream-2: #F0E7DA;
   --wc5-ink: #1A1411;
   --wc5-muted: #6D6258;
   --wc5-line: rgba(24,19,16,.12);
   --wc5-gold: #E3C167;
   --wc5-green-ok: #2D7C53;
   --wc5-radius: 16px;
   --wc5-radius-lg: 26px;
   --wc5-shadow-sm: 0 4px 14px rgba(24,19,16,.08);
   --wc5-shadow: 0 14px 40px rgba(24,19,16,.14);
   --wc5-shadow-lg: 0 30px 70px rgba(24,19,16,.26);
   --wc5-wrap: 1200px;
   --wc5-font: 'Mukta',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
   --wc5-display: 'Encode Sans Condensed','Arial Narrow',var(--wc5-font);
   --wc5-header-h: 76px;
   }

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

html {
   scroll-behavior: smooth;
   scroll-padding-top: 90px;
   -webkit-text-size-adjust: 100%;
   }

body {
   margin: 0;
   font-family: var(--wc5-font);
   color: var(--wc5-ink);
   background: var(--wc5-cream);
   font-size: 17px;
   line-height: 1.65;
   overflow-x: hidden;
   -webkit-font-smoothing: antialiased;
   }

img {
   max-width: 100%;
   height: auto;
   display: block;
   }

a {
   color: var(--wc5-brick);
   text-decoration: none;
   }

a:hover {
   color: var(--wc5-brick-dark);
   }

button {
   font-family: inherit;
   }

h1,h2,h3,h4 {
   font-family: var(--wc5-display);
   font-weight: 700;
   line-height: 1.08;
   margin: 0 0 .5em;
   letter-spacing: .4px;
   text-transform: uppercase;
   }

h1 {
   font-size: clamp(2.15rem,5.4vw,4.15rem);
   }

h2 {
   font-size: clamp(1.85rem,3.9vw,3rem);
   }

h3 {
   font-size: clamp(1.15rem,1.7vw,1.45rem);
   }

p {
   margin: 0 0 1.1em;
   }

.apron {
   width: min(var(--wc5-wrap),92%);
   margin-inline: auto;
   }

.centerline {
   text-align: center;
   }

.quietdeck-aid {
   position: absolute;
   width: 1px;
   height: 1px;
   padding: 0;
   margin: -1px;
   overflow: hidden;
   clip: rect(0,0,0,0);
   white-space: nowrap;
   border: 0;
   }

.jetbridge-link {
   position: absolute;
   left: -9999px;
   top: 0;
   background: var(--wc5-brick);
   color: #fff;
   padding: 12px 20px;
   z-index: 9999;
   }

.jetbridge-link:focus {
   left: 10px;
   top: 10px;
   }

:focus-visible {
   outline: 3px solid var(--wc5-ember);
   outline-offset: 3px;
   }

#bg-fx-wc {
   position: fixed;
   inset: 0;
   z-index: 0;
   pointer-events: none;
   overflow: hidden;
   }

#emberCanvas-wc {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   opacity: .55;
   }

.foglight {
   position: absolute;
   border-radius: 50%;
   filter: blur(70px);
   opacity: .34;
   will-change: transform;
   }

.foglight-1 {
   width: 520px;
   height: 520px;
   background: radial-gradient(circle at 30% 30%,var(--wc5-ember),transparent 68%);
   top: -140px;
   left: -120px;
   animation: float1 26s ease-in-out infinite;
   }

.foglight-2 {
   width: 640px;
   height: 640px;
   background: radial-gradient(circle at 60% 40%,var(--wc5-brick),transparent 66%);
   top: 38%;
   right: -220px;
   animation: float2 32s ease-in-out infinite;
   }

.foglight-3 {
   width: 420px;
   height: 420px;
   background: radial-gradient(circle at 50% 50%,var(--wc5-gold),transparent 65%);
   bottom: -120px;
   left: 22%;
   animation: float3 29s ease-in-out infinite;
   }

@keyframes float1 {
   0%,100% {
      transform: translate3d(0,0,0) scale(1);
      }
   50% {
      transform: translate3d(90px,120px,0) scale(1.16);
      }
   }

@keyframes float2 {
   0%,100% {
      transform: translate3d(0,0,0) scale(1.05);
      }
   50% {
      transform: translate3d(-120px,-90px,0) scale(.9);
      }
   }

@keyframes float3 {
   0%,100% {
      transform: translate3d(0,0,0) scale(.95);
      }
   50% {
      transform: translate3d(70px,-110px,0) scale(1.2);
      }
   }

main,header,footer,.skybridge {
   position: relative;
   z-index: 1;
   }

.throttle {
   --wc5-bg: var(--wc5-brick);
   --wc5-fg: #fff;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: .6rem;
   background: var(--wc5-bg);
   color: var(--wc5-fg);
   font-weight: 700;
   font-size: 1.02rem;
   padding: 16px 30px;
   border-radius: 60px;
   border: 0;
   cursor: pointer;
   letter-spacing: .3px;
   box-shadow: 0 10px 26px rgba(178,58,33,.32);
   transition: transform .22s cubic-bezier(.2,.8,.3,1),box-shadow .22s,background .22s;
   position: relative;
   overflow: hidden;
   text-align: center;
   }

.throttle:hover {
   transform: translateY(-3px);
   box-shadow: 0 18px 40px rgba(178,58,33,.42);
   color: #fff;
   }

.throttle:active {
   transform: translateY(-1px);
   }

.throttle::after {
   content: "";
   position: absolute;
   top: 0;
   left: -60%;
   width: 40%;
   height: 100%;
   background: linear-gradient(100deg,transparent,rgba(255,255,255,.42),transparent);
   transform: skewX(-18deg);
   animation: sheen 4.5s ease-in-out infinite;
   }

@keyframes sheen {
   0%,72% {
      left: -60%;
      }
   88%,100% {
      left: 135%;
      }
   }

.throttle-hot {
   --wc5-bg: linear-gradient(135deg,var(--wc5-ember),var(--wc5-brick));
   box-shadow: 0 10px 26px rgba(240,128,60,.4);
   }

.throttle-ghosted {
   --wc5-bg: transparent;
   --wc5-fg: #fff;
   border: 2px solid rgba(255,255,255,.6);
   box-shadow: none;
   }

.throttle-ghosted:hover {
   background: rgba(255,255,255,.12);
   box-shadow: none;
   }

.throttle-night {
   --wc5-bg: var(--wc5-charcoal);
   box-shadow: 0 10px 26px rgba(24,19,16,.3);
   }

.throttle-long {
   padding: 19px 38px;
   font-size: 1.12rem;
   }

.throttle-span {
   display: flex;
   width: 100%;
   }

.skybridge {
   background: var(--wc5-charcoal);
   color: #E0D5C8;
   font-size: .86rem;
   letter-spacing: .3px;
   }

.skybridge .apron {
   display: flex;
   flex-wrap: wrap;
   gap: 8px 26px;
   align-items: center;
   justify-content: space-between;
   padding: 9px 0;
   }

.skybridge b {
   color: #fff;
   }

.skybridge .sb8-chip {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   }

.strobe-dot {
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: #4EC885;
   box-shadow: 0 0 0 0 rgba(73,199,126,.7);
   animation: pulseDot 2s infinite;
   }

@keyframes pulseDot {
   70% {
      box-shadow: 0 0 0 9px rgba(73,199,126,0);
      }
   100% {
      box-shadow: 0 0 0 0 rgba(73,199,126,0);
      }
   }

.controlband {
   position: sticky;
   top: 0;
   z-index: 900;
   background: rgba(246,240,231,.86);
   backdrop-filter: blur(14px);
   -webkit-backdrop-filter: blur(14px);
   border-bottom: 1px solid var(--wc5-line);
   transition: box-shadow .3s,background .3s;
   }

.controlband.ballasted {
   box-shadow: 0 8px 30px rgba(24,19,16,.13);
   background: rgba(246,240,231,.96);
   }

.controlband .apron {
   width: min(1360px,94%);
   }

.concourse {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 18px;
   min-height: var(--wc5-header-h);
   }

.tailmark {
   display: flex;
   align-items: center;
   gap: 12px;
   color: var(--wc5-ink);
   flex: 0 0 auto;
   }

.tailmark:hover {
   color: var(--wc5-ink);
   }

.tailmark-fin {
   width: 46px;
   height: 46px;
   flex: 0 0 auto;
   filter: drop-shadow(0 4px 8px rgba(178,58,33,.3));
   }

.tailmark-note {
   display: flex;
   flex-direction: column;
   line-height: 1.05;
   }

.tailmark-note strong {
   font-family: var(--wc5-display);
   font-size: 1.06rem;
   letter-spacing: .6px;
   text-transform: uppercase;
   }

.tailmark-note span {
   font-size: .7rem;
   letter-spacing: 2.4px;
   text-transform: uppercase;
   color: var(--wc5-brick);
   font-weight: 600;
   }

.gates {
   display: flex;
   align-items: center;
   gap: 22px;
   list-style: none;
   margin: 0;
   padding: 0;
   }

.gates a {
   color: var(--wc5-ink);
   font-weight: 600;
   font-size: .92rem;
   white-space: nowrap;
   position: relative;
   padding: 6px 0;
   }

.gates a::after {
   content: "";
   position: absolute;
   left: 0;
   bottom: 0;
   height: 2px;
   width: 0;
   background: var(--wc5-brick);
   transition: width .28s;
   }

.gates a:hover::after,.gates a.homing::after {
   width: 100%;
   }

.concourse-push2 {
   display: flex;
   align-items: center;
   gap: 14px;
   flex: 0 0 auto;
   }

.concourse-digits {
   display: flex;
   flex-direction: column;
   line-height: 1.1;
   text-align: right;
   }

.concourse-digits small {
   font-size: .68rem;
   text-transform: uppercase;
   letter-spacing: 1.4px;
   color: var(--wc5-muted);
   }

.concourse-digits b {
   font-family: var(--wc5-display);
   font-size: 1.22rem;
   color: var(--wc5-brick);
   }

.cabinlatch {
   display: none;
   width: 48px;
   height: 44px;
   border: 1px solid var(--wc5-line);
   background: #fff;
   border-radius: 12px;
   cursor: pointer;
   padding: 0;
   position: relative;
   }

.cabinlatch span {
   position: absolute;
   left: 13px;
   width: 22px;
   height: 2px;
   background: var(--wc5-ink);
   transition: .3s;
   }

.cabinlatch span:nth-child(1) {
   top: 15px;
   }

.cabinlatch span:nth-child(2) {
   top: 21px;
   }

.cabinlatch span:nth-child(3) {
   top: 27px;
   }

.cabinlatch[aria-expanded="true"] span:nth-child(1) {
   top: 21px;
   transform: rotate(45deg);
   }

.cabinlatch[aria-expanded="true"] span:nth-child(2) {
   opacity: 0;
   }

.cabinlatch[aria-expanded="true"] span:nth-child(3) {
   top: 21px;
   transform: rotate(-45deg);
   }

.flightdeck {
   position: relative;
   color: #fff;
   padding: clamp(56px,8vw,104px) 0 clamp(70px,9vw,120px);
   overflow: hidden;
   isolation: isolate;
   }

.flightdeck-haze2 {
   position: absolute;
   inset: 0;
   z-index: -2;
   }

.flightdeck-haze2 img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transform: scale(1.06);
   animation: kenburns 24s ease-in-out infinite alternate;
   }

@keyframes kenburns {
   to {
      transform: scale(1.17) translate3d(-1.5%,-1.5%,0);
      }
   }

.flightdeck::before {
   content: "";
   position: absolute;
   inset: 0;
   z-index: -1;
   background: linear-gradient(100deg,rgba(18,14,12,.95) 0%,rgba(26,18,14,.86) 38%,rgba(181,57,31,.6) 74%,rgba(242,145,63,.42) 100%);
   }

.flightdeck-bays2 {
   display: grid;
   grid-template-columns: 1.15fr .85fr;
   gap: 52px;
   align-items: center;
   }

.windsock {
   display: inline-flex;
   align-items: center;
   gap: 9px;
   background: rgba(255,255,255,.12);
   border: 1px solid rgba(255,255,255,.26);
   color: #fff;
   padding: 8px 17px;
   border-radius: 60px;
   font-size: .79rem;
   font-weight: 700;
   letter-spacing: 1.6px;
   text-transform: uppercase;
   margin-bottom: 22px;
   backdrop-filter: blur(6px);
   }

.flightdeck h1 {
   color: #fff;
   text-shadow: 0 6px 30px rgba(0,0,0,.4);
   }

.flightdeck h1 .emberstreak {
   color: var(--wc5-ember-glow);
   display: inline-block;
   }

.flightdeck-subcopy {
   font-size: clamp(1.02rem,1.5vw,1.2rem);
   color: #EDE4D9;
   max-width: 610px;
   }

.flightdeck-levers2 {
   display: flex;
   flex-wrap: wrap;
   gap: 14px;
   margin: 30px 0 26px;
   }

.flightdeck-struts {
   display: flex;
   flex-wrap: wrap;
   gap: 10px 22px;
   list-style: none;
   padding: 0;
   margin: 0;
   font-size: .92rem;
   color: #E9DFD5;
   }

.flightdeck-struts li {
   display: flex;
   align-items: center;
   gap: 8px;
   }

.rivet-check {
   width: 20px;
   height: 20px;
   flex: 0 0 auto;
   border-radius: 50%;
   background: rgba(73,199,126,.2);
   display: grid;
   place-items: center;
   }

.rivet-check svg {
   width: 12px;
   height: 12px;
   stroke: #70E4A4;
   fill: none;
   stroke-width: 3;
   }

.manifest-card {
   background: linear-gradient(160deg,rgba(255,255,255,.98),rgba(246,240,231,.94));
   color: var(--wc5-ink);
   border-radius: var(--wc5-radius-lg);
   padding: 30px 28px;
   box-shadow: var(--wc5-shadow-lg);
   border: 1px solid rgba(255,255,255,.6);
   position: relative;
   animation: floaty 6.5s ease-in-out infinite;
   }

@keyframes floaty {
   0%,100% {
      transform: translateY(0);
      }
   50% {
      transform: translateY(-13px);
      }
   }

.manifest-stamp2 {
   position: absolute;
   top: -18px;
   right: -10px;
   background: var(--wc5-brick);
   color: #fff;
   font-family: var(--wc5-display);
   font-size: .82rem;
   letter-spacing: 1.4px;
   padding: 9px 16px;
   border-radius: 40px;
   box-shadow: 0 8px 20px rgba(178,58,33,.4);
   text-transform: uppercase;
   animation: wobble 5s ease-in-out infinite;
   }

@keyframes wobble {
   0%,100% {
      transform: rotate(-3deg);
      }
   50% {
      transform: rotate(3deg);
      }
   }

.manifest-fare {
   font-family: var(--wc5-display);
   font-size: clamp(3.4rem,7vw,4.6rem);
   line-height: 1;
   color: var(--wc5-brick);
   display: flex;
   align-items: flex-start;
   gap: 4px;
   justify-content: center;
   margin: 6px 0 2px;
   }

.manifest-fare sup {
   font-size: .42em;
   margin-top: .32em;
   }

.manifest-card h2 {
   font-size: 1.32rem;
   margin-bottom: 4px;
   text-align: center;
   }

.manifest-card .manifest-subline {
   text-align: center;
   color: var(--wc5-muted);
   font-size: .9rem;
   margin-bottom: 16px;
   }

.manifest-roster {
   list-style: none;
   margin: 0 0 20px;
   padding: 0;
   display: grid;
   gap: 9px;
   font-size: .95rem;
   }

.manifest-roster li {
   display: flex;
   gap: 10px;
   align-items: flex-start;
   }

.manifest-roster svg {
   width: 18px;
   height: 18px;
   flex: 0 0 auto;
   margin-top: 3px;
   stroke: var(--wc5-brick);
   fill: none;
   stroke-width: 3;
   }

.manifest-smalltype2 {
   font-size: .76rem;
   color: var(--wc5-muted);
   text-align: center;
   margin: 12px 0 0;
   line-height: 1.5;
   }

.taxiline {
   background: var(--wc5-charcoal-2);
   color: #CEC2B5;
   overflow: hidden;
   padding: 13px 0;
   border-block: 1px solid rgba(255,255,255,.07);
   }

.taxiline-roll2 {
   display: flex;
   gap: 52px;
   white-space: nowrap;
   width: max-content;
   animation: scrollX 34s linear infinite;
   font-family: var(--wc5-display);
   letter-spacing: 2px;
   font-size: .94rem;
   text-transform: uppercase;
   }

.taxiline-roll2 span {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   }

.taxiline-roll2 b {
   color: var(--wc5-ember);
   }

@keyframes scrollX {
   to {
      transform: translateX(-50%);
      }
   }

section {
   padding: clamp(56px,7vw,100px) 0;
   position: relative;
   }

.towerhead {
   max-width: 760px;
   margin: 0 auto 52px;
   }

.towerhead.portside2 {
   margin-inline: 0;
   }

.callsign {
   display: inline-flex;
   align-items: center;
   gap: 9px;
   color: var(--wc5-brick);
   font-weight: 800;
   letter-spacing: 2.4px;
   text-transform: uppercase;
   font-size: .78rem;
   margin-bottom: 14px;
   }

.callsign::before {
   content: "";
   width: 28px;
   height: 2px;
   background: var(--wc5-brick);
   }

.preflight {
   font-size: 1.06rem;
   color: var(--wc5-muted);
   }

.livery-fog {
   background: linear-gradient(180deg,rgba(237,227,213,.75),rgba(246,240,231,.4));
   }

.livery-night {
   background: var(--wc5-charcoal);
   color: #E0D6CB;
   }

.livery-night h2,.livery-night h3 {
   color: #fff;
   }

.livery-night .preflight {
   color: #BAAEA1;
   }

.livery-night .callsign {
   color: var(--wc5-ember-glow);
   }

.livery-night .callsign::before {
   background: var(--wc5-ember);
   }

.altimeter {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 22px;
   }

.altimeter-dial2 {
   background: #fff;
   border-radius: var(--wc5-radius);
   padding: 26px 20px;
   text-align: center;
   box-shadow: var(--wc5-shadow-sm);
   border: 1px solid var(--wc5-line);
   transition: transform .3s,box-shadow .3s;
   }

.altimeter-dial2:hover {
   transform: translateY(-7px);
   box-shadow: var(--wc5-shadow);
   }

.altimeter-dial2 b {
   display: block;
   font-family: var(--wc5-display);
   font-size: clamp(2rem,3.6vw,2.9rem);
   color: var(--wc5-brick);
   line-height: 1;
   }

.altimeter-dial2 span {
   font-size: .87rem;
   color: var(--wc5-muted);
   letter-spacing: .6px;
   }

.hangarbay-row2 {
   display: grid;
   grid-template-columns: repeat(auto-fit,minmax(295px,1fr));
   gap: 26px;
   }

.hangarbay {
   background: #fff;
   border-radius: var(--wc5-radius-lg);
   overflow: hidden;
   box-shadow: var(--wc5-shadow-sm);
   border: 1px solid var(--wc5-line);
   display: flex;
   flex-direction: column;
   transition: transform .35s cubic-bezier(.2,.8,.3,1),box-shadow .35s;
   }

.hangarbay:hover {
   transform: translateY(-10px);
   box-shadow: var(--wc5-shadow-lg);
   }

.hangarbay-window2 {
   position: relative;
   aspect-ratio: 16/10;
   overflow: hidden;
   background: var(--wc5-charcoal-3);
   }

.hangarbay-window2 img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .7s cubic-bezier(.2,.8,.3,1);
   }

.hangarbay:hover .hangarbay-window2 img {
   transform: scale(1.09);
   }

.hangarbay-window2::after {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(180deg,transparent 42%,rgba(20,16,14,.72));
   }

.hangarbay-roundel {
   position: absolute;
   left: 18px;
   bottom: 16px;
   z-index: 2;
   width: 46px;
   height: 46px;
   border-radius: 13px;
   background: var(--wc5-brick);
   display: grid;
   place-items: center;
   box-shadow: 0 8px 20px rgba(178,58,33,.45);
   }

.hangarbay-roundel svg {
   width: 24px;
   height: 24px;
   stroke: #fff;
   fill: none;
   stroke-width: 1.9;
   stroke-linecap: round;
   stroke-linejoin: round;
   }

.hangarbay-cargo2 {
   padding: 24px 24px 26px;
   display: flex;
   flex-direction: column;
   flex: 1;
   }

.hangarbay-cargo2 h3 {
   margin-bottom: 8px;
   }

.hangarbay-cargo2 p {
   font-size: .95rem;
   color: var(--wc5-muted);
   margin-bottom: 16px;
   }

.hangarbay-cargo2 ul {
   list-style: none;
   margin: 0 0 18px;
   padding: 0;
   font-size: .9rem;
   display: grid;
   gap: 6px;
   }

.hangarbay-cargo2 li {
   display: flex;
   gap: 9px;
   align-items: flex-start;
   color: #494139;
   }

.hangarbay-cargo2 li::before {
   content: "";
   width: 7px;
   height: 7px;
   border-radius: 50%;
   background: var(--wc5-ember);
   flex: 0 0 auto;
   margin-top: 8px;
   }

.hangarbay-vector {
   margin-top: auto;
   font-weight: 700;
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: .95rem;
   }

.hangarbay-vector svg {
   width: 16px;
   height: 16px;
   stroke: currentColor;
   fill: none;
   stroke-width: 2.4;
   transition: transform .3s;
   }

.hangarbay:hover .hangarbay-vector svg {
   transform: translateX(5px);
   }

.signalrow2 {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 52px;
   align-items: center;
   }

.signal-roster {
   display: grid;
   gap: 14px;
   margin: 0;
   padding: 0;
   list-style: none;
   }

.signal-roster li {
   display: flex;
   gap: 15px;
   background: rgba(255,255,255,.05);
   border: 1px solid rgba(255,255,255,.1);
   border-radius: 14px;
   padding: 16px 18px;
   align-items: flex-start;
   transition: transform .3s,border-color .3s,background .3s;
   }

.signal-roster li:hover {
   transform: translateX(7px);
   border-color: rgba(240,128,60,.55);
   background: rgba(240,128,60,.08);
   }

.signal-roster .sg8 {
   width: 38px;
   height: 38px;
   flex: 0 0 auto;
   border-radius: 11px;
   background: rgba(240,128,60,.16);
   display: grid;
   place-items: center;
   }

.signal-roster .sg8 svg {
   width: 20px;
   height: 20px;
   stroke: var(--wc5-ember-glow);
   fill: none;
   stroke-width: 2;
   stroke-linecap: round;
   stroke-linejoin: round;
   }

.signal-roster b {
   display: block;
   color: #fff;
   font-family: var(--wc5-display);
   letter-spacing: .5px;
   font-size: 1.02rem;
   text-transform: uppercase;
   }

.signal-roster span {
   font-size: .92rem;
   color: #B6AA9E;
   }

.signal-window2 {
   position: relative;
   border-radius: var(--wc5-radius-lg);
   overflow: hidden;
   box-shadow: var(--wc5-shadow-lg);
   }

.signal-window2 img {
   width: 100%;
   aspect-ratio: 4/5;
   object-fit: cover;
   }

.signal-placard2 {
   position: absolute;
   left: 20px;
   bottom: 20px;
   right: 20px;
   background: rgba(24,19,16,.82);
   backdrop-filter: blur(9px);
   border: 1px solid rgba(255,255,255,.14);
   border-radius: 16px;
   padding: 16px 18px;
   color: #fff;
   }

.signal-placard2 b {
   font-family: var(--wc5-display);
   display: block;
   color: var(--wc5-ember-glow);
   letter-spacing: 1px;
   }

.signal-placard2 span {
   font-size: .88rem;
   color: #CABEB1;
   }

.glidepath {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 24px;
   counter-reset: step;
   position: relative;
   }

.glidepath-leg2 {
   background: #fff;
   border-radius: var(--wc5-radius);
   padding: 34px 24px 26px;
   box-shadow: var(--wc5-shadow-sm);
   border: 1px solid var(--wc5-line);
   position: relative;
   transition: transform .35s,box-shadow .35s;
   }

.glidepath-leg2:hover {
   transform: translateY(-8px);
   box-shadow: var(--wc5-shadow);
   }

.glidepath-marker2 {
   position: absolute;
   top: -20px;
   left: 24px;
   width: 44px;
   height: 44px;
   border-radius: 14px;
   background: linear-gradient(140deg,var(--wc5-ember),var(--wc5-brick));
   color: #fff;
   font-family: var(--wc5-display);
   font-size: 1.3rem;
   display: grid;
   place-items: center;
   box-shadow: 0 10px 22px rgba(178,58,33,.35);
   }

.glidepath-leg2 h3 {
   font-size: 1.12rem;
   margin-top: 8px;
   }

.glidepath-leg2 p {
   font-size: .93rem;
   color: var(--wc5-muted);
   margin: 0;
   }

.fieldlog {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 16px;
   }

.fieldlog-frame2 {
   position: relative;
   border-radius: 18px;
   overflow: hidden;
   box-shadow: var(--wc5-shadow-sm);
   aspect-ratio: 1;
   background: var(--wc5-charcoal-3);
   }

.fieldlog-frame2:nth-child(1),.fieldlog-frame2:nth-child(6) {
   grid-row: span 2;
   aspect-ratio: 1/2.06;
   }

.fieldlog-frame2 img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .8s cubic-bezier(.2,.8,.3,1);
   }

.fieldlog-frame2:hover img {
   transform: scale(1.1);
   }

.fieldlog-frame2 figcaption {
   position: absolute;
   inset: auto 0 0 0;
   padding: 34px 16px 14px;
   background: linear-gradient(transparent,rgba(20,16,14,.86));
   color: #fff;
   font-size: .85rem;
   font-weight: 600;
   transform: translateY(6px);
   opacity: 0;
   transition: .35s;
   }

.fieldlog-frame2:hover figcaption {
   transform: translateY(0);
   opacity: 1;
   }

.logentries {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 24px;
   }

.logentry {
   background: #fff;
   border-radius: var(--wc5-radius);
   padding: 28px 26px;
   box-shadow: var(--wc5-shadow-sm);
   border: 1px solid var(--wc5-line);
   position: relative;
   transition: transform .35s,box-shadow .35s;
   }

.logentry:hover {
   transform: translateY(-8px);
   box-shadow: var(--wc5-shadow);
   }

.logentry .quotewing {
   position: absolute;
   top: 16px;
   right: 22px;
   font-family: var(--wc5-display);
   font-size: 4.2rem;
   color: rgba(178,58,33,.13);
   line-height: 1;
   }

.starfield2 {
   display: flex;
   gap: 3px;
   margin-bottom: 12px;
   }

.starfield2 svg {
   width: 18px;
   height: 18px;
   fill: var(--wc5-gold);
   }

.logentry p {
   font-size: .98rem;
   color: #494139;
   }

.logentry footer {
   display: flex;
   align-items: center;
   gap: 12px;
   margin-top: 16px;
   border-top: 1px solid var(--wc5-line);
   padding-top: 14px;
   }

.crewbadge {
   width: 42px;
   height: 42px;
   border-radius: 50%;
   background: linear-gradient(140deg,var(--wc5-brick),var(--wc5-ember));
   color: #fff;
   display: grid;
   place-items: center;
   font-family: var(--wc5-display);
   font-size: 1.05rem;
   flex: 0 0 auto;
   }

.logentry footer b {
   display: block;
   font-size: .95rem;
   }

.logentry footer span {
   font-size: .8rem;
   color: var(--wc5-muted);
   }

.coveragering {
   display: flex;
   flex-wrap: wrap;
   gap: 11px;
   justify-content: center;
   list-style: none;
   padding: 0;
   margin: 0 0 30px;
   }

.coveragering li {
   background: #fff;
   border: 1px solid var(--wc5-line);
   border-radius: 60px;
   padding: 10px 20px;
   font-size: .92rem;
   font-weight: 600;
   box-shadow: var(--wc5-shadow-sm);
   transition: transform .25s,background .25s,color .25s,border-color .25s;
   }

.coveragering li:hover {
   transform: translateY(-4px);
   background: var(--wc5-brick);
   color: #fff;
   border-color: var(--wc5-brick);
   }

.towerdesk {
   max-width: 880px;
   margin-inline: auto;
   }

.towerdesk details {
   background: #fff;
   border: 1px solid var(--wc5-line);
   border-radius: 14px;
   margin-bottom: 12px;
   box-shadow: var(--wc5-shadow-sm);
   overflow: hidden;
   transition: box-shadow .3s;
   }

.towerdesk details[open] {
   box-shadow: var(--wc5-shadow);
   }

.towerdesk summary {
   cursor: pointer;
   list-style: none;
   padding: 20px 58px 20px 22px;
   font-weight: 700;
   font-size: 1.03rem;
   position: relative;
   }

.towerdesk summary::-webkit-details-marker {
   display: none;
   }

.towerdesk summary::after {
   content: "";
   position: absolute;
   right: 22px;
   top: 50%;
   width: 12px;
   height: 12px;
   border-right: 2.6px solid var(--wc5-brick);
   border-bottom: 2.6px solid var(--wc5-brick);
   transform: translateY(-70%) rotate(45deg);
   transition: transform .3s;
   }

.towerdesk details[open] summary::after {
   transform: translateY(-25%) rotate(-135deg);
   }

.towerdesk .towerdesk-cargo {
   padding: 0 22px 20px;
   color: var(--wc5-muted);
   font-size: .97rem;
   }

.towerdesk .towerdesk-cargo p:last-child {
   margin-bottom: 0;
   }

.beaconband {
   position: relative;
   color: #fff;
   text-align: center;
   overflow: hidden;
   isolation: isolate;
   }

.beaconband .beaconband-haze {
   position: absolute;
   inset: 0;
   z-index: -2;
   }

.beaconband .beaconband-haze img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   }

.beaconband::before {
   content: "";
   position: absolute;
   inset: 0;
   z-index: -1;
   background: linear-gradient(120deg,rgba(140,43,22,.94),rgba(24,19,16,.9));
   }

.beaconband h2 {
   color: #fff;
   font-size: clamp(2rem,4.4vw,3.3rem);
   }

.beaconband p {
   color: #F2E8DD;
   max-width: 660px;
   margin-inline: auto;
   font-size: 1.06rem;
   }

.beaconband-levers {
   display: flex;
   gap: 15px;
   justify-content: center;
   flex-wrap: wrap;
   margin-top: 28px;
   }

.beaconband-digits {
   display: block;
   font-family: var(--wc5-display);
   font-size: clamp(2rem,5vw,2.9rem);
   color: #fff;
   margin-top: 20px;
   letter-spacing: 1px;
   }

.beaconband-digits:hover {
   color: var(--wc5-ember-glow);
   }

.terminal-row {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 44px;
   align-items: start;
   }

.terminal-row>* {
   min-width: 0;
   }

.terminal-lines2 a,.tarmac address a {
   overflow-wrap: anywhere;
   }

.clipcard {
   background: #fff;
   border-radius: var(--wc5-radius-lg);
   padding: 34px 32px;
   box-shadow: var(--wc5-shadow);
   border: 1px solid var(--wc5-line);
   }

.bin {
   margin-bottom: 16px;
   }

.bin label {
   display: block;
   font-weight: 700;
   font-size: .86rem;
   margin-bottom: 7px;
   letter-spacing: .4px;
   }

.bin input,.bin select,.bin textarea {
   width: 100%;
   padding: 14px 16px;
   border: 1.6px solid var(--wc5-line);
   border-radius: 12px;
   font-size: 1rem;
   font-family: inherit;
   background: #FDFBFA;
   color: var(--wc5-ink);
   transition: border-color .25s,box-shadow .25s,background .25s;
   }

.bin input:focus,.bin select:focus,.bin textarea:focus {
   outline: none;
   border-color: var(--wc5-brick);
   background: #fff;
   box-shadow: 0 0 0 4px rgba(178,58,33,.12);
   }

.bin textarea {
   resize: vertical;
   min-height: 110px;
   }

.twinbay2 {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 16px;
   }

.clipaside {
   font-size: .79rem;
   color: var(--wc5-muted);
   margin-top: 12px;
   text-align: center;
   }

.clipnote {
   display: none;
   padding: 14px 16px;
   border-radius: 12px;
   font-size: .94rem;
   margin-bottom: 16px;
   }

.clipnote.oncourse {
   display: block;
   background: rgba(46,125,81,.1);
   color: #2D7C53;
   border: 1px solid rgba(46,125,81,.3);
   }

.clipnote.offcourse {
   display: block;
   background: rgba(178,58,33,.1);
   color: var(--wc5-brick-dark);
   border: 1px solid rgba(178,58,33,.3);
   }

.terminal-lines2 {
   list-style: none;
   padding: 0;
   margin: 0 0 26px;
   display: grid;
   gap: 16px;
   }

.terminal-lines2 li {
   display: flex;
   gap: 16px;
   align-items: flex-start;
   }

.terminal-roundel {
   width: 48px;
   height: 48px;
   flex: 0 0 auto;
   border-radius: 14px;
   background: rgba(178,58,33,.1);
   display: grid;
   place-items: center;
   }

.terminal-roundel svg {
   width: 22px;
   height: 22px;
   stroke: var(--wc5-brick);
   fill: none;
   stroke-width: 1.9;
   stroke-linecap: round;
   stroke-linejoin: round;
   }

.terminal-lines2 b {
   display: block;
   font-family: var(--wc5-display);
   letter-spacing: .6px;
   text-transform: uppercase;
   font-size: .95rem;
   }

.terminal-lines2 a,.terminal-lines2 span {
   color: var(--wc5-muted);
   font-size: 1rem;
   }

.terminal-lines2 a:hover {
   color: var(--wc5-brick);
   }

.chart-pane2 {
   border-radius: var(--wc5-radius);
   overflow: hidden;
   box-shadow: var(--wc5-shadow-sm);
   border: 1px solid var(--wc5-line);
   line-height: 0;
   }

.chart-pane2 iframe {
   width: 100%;
   height: 290px;
   border: 0;
   }

.schedboard {
   background: #fff;
   border: 1px solid var(--wc5-line);
   border-radius: var(--wc5-radius);
   padding: 22px 24px;
   box-shadow: var(--wc5-shadow-sm);
   margin-bottom: 26px;
   }

.schedboard dl {
   display: grid;
   grid-template-columns: auto 1fr;
   gap: 8px 18px;
   margin: 0;
   font-size: .95rem;
   }

.schedboard dt {
   font-weight: 700;
   }

.schedboard dd {
   margin: 0;
   text-align: right;
   color: var(--wc5-muted);
   }

.tarmac {
   background: var(--wc5-charcoal);
   color: #ACA093;
   padding: 70px 0 0;
   font-size: .95rem;
   }

.tarmac-row {
   display: grid;
   grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
   gap: 38px;
   padding-bottom: 44px;
   }

.tarmac h4 {
   color: #fff;
   font-size: 1rem;
   letter-spacing: 1.6px;
   margin-bottom: 18px;
   }

.tarmac a {
   color: #ACA093;
   }

.tarmac a:hover {
   color: var(--wc5-ember-glow);
   }

.tarmac-lines {
   list-style: none;
   padding: 0;
   margin: 0;
   display: grid;
   gap: 10px;
   }

.tarmac-roundel2 {
   display: flex;
   align-items: center;
   gap: 12px;
   margin-bottom: 16px;
   color: #fff;
   }

.tarmac-roundel2 strong {
   font-family: var(--wc5-display);
   font-size: 1.1rem;
   letter-spacing: .6px;
   text-transform: uppercase;
   }

.tarmac-apronedge {
   border-top: 1px solid rgba(255,255,255,.1);
   padding: 20px 0;
   display: flex;
   flex-wrap: wrap;
   gap: 10px 24px;
   justify-content: space-between;
   font-size: .84rem;
   }

.beaconpip {
   position: fixed;
   right: 22px;
   bottom: 26px;
   z-index: 950;
   display: inline-flex;
   align-items: center;
   gap: 12px;
   background: linear-gradient(135deg,var(--wc5-brick),var(--wc5-brick-dark));
   color: #fff;
   padding: 15px 24px 15px 17px;
   border-radius: 60px;
   font-weight: 800;
   letter-spacing: .4px;
   box-shadow: 0 16px 40px rgba(178,58,33,.5);
   transition: transform .3s cubic-bezier(.2,.8,.3,1),box-shadow .3s;
   }

.beaconpip:hover {
   transform: scale(1.06) translateY(-3px);
   color: #fff;
   box-shadow: 0 22px 52px rgba(178,58,33,.6);
   }

.beaconpip .bp8-halo {
   position: relative;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background: rgba(255,255,255,.18);
   display: grid;
   place-items: center;
   flex: 0 0 auto;
   }

.beaconpip .bp8-halo::before,.beaconpip .bp8-halo::after {
   content: "";
   position: absolute;
   inset: 0;
   border-radius: 50%;
   border: 2px solid rgba(255,255,255,.6);
   animation: ring 2.6s ease-out infinite;
   }

.beaconpip .bp8-halo::after {
   animation-delay: 1.3s;
   }

@keyframes ring {
   0% {
      transform: scale(1);
      opacity: .85;
      }
   100% {
      transform: scale(2.1);
      opacity: 0;
      }
   }

.beaconpip svg {
   width: 20px;
   height: 20px;
   stroke: #fff;
   fill: none;
   stroke-width: 2;
   animation: shake 3.2s ease-in-out infinite;
   }

@keyframes shake {
   0%,86%,100% {
      transform: rotate(0);
      }
   90% {
      transform: rotate(-14deg);
      }
   94% {
      transform: rotate(14deg);
      }
   }

.beaconpip .bp8-callout {
   display: flex;
   flex-direction: column;
   line-height: 1.15;
   }

.beaconpip .bp8-callout small {
   font-size: .66rem;
   text-transform: uppercase;
   letter-spacing: 1.4px;
   opacity: .85;
   font-weight: 600;
   }

.beaconpip .bp8-callout b {
   font-family: var(--wc5-display);
   font-size: 1.12rem;
   letter-spacing: .6px;
   }

.jetway {
   display: none;
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 960;
   background: rgba(24,19,16,.97);
   backdrop-filter: blur(12px);
   border-top: 1px solid rgba(255,255,255,.12);
   padding: 9px 10px calc(9px + env(safe-area-inset-bottom));
   }

.jetway ul {
   list-style: none;
   margin: 0;
   padding: 0;
   display: grid;
   grid-template-columns: 1.4fr 1fr 1fr;
   gap: 8px;
   }

.jetway a {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 3px;
   padding: 9px 4px;
   border-radius: 12px;
   color: #EBE1D7;
   font-size: .72rem;
   font-weight: 700;
   letter-spacing: .4px;
   text-transform: uppercase;
   }

.jetway a svg {
   width: 19px;
   height: 19px;
   stroke: currentColor;
   fill: none;
   stroke-width: 2;
   stroke-linecap: round;
   stroke-linejoin: round;
   }

.jetway .jw8-hail {
   background: linear-gradient(135deg,var(--wc5-brick),var(--wc5-brick-dark));
   color: #fff;
   box-shadow: 0 6px 18px rgba(178,58,33,.5);
   animation: mbPulse 2.4s ease-in-out infinite;
   }

@keyframes mbPulse {
   0%,100% {
      box-shadow: 0 6px 18px rgba(178,58,33,.5);
      }
   50% {
      box-shadow: 0 6px 26px rgba(240,128,60,.85);
      }
   }

.towerclimb2 {
   position: fixed;
   right: 26px;
   bottom: 104px;
   z-index: 940;
   width: 46px;
   height: 46px;
   border-radius: 50%;
   background: var(--wc5-charcoal);
   color: #fff;
   display: grid;
   place-items: center;
   box-shadow: var(--wc5-shadow);
   opacity: 0;
   visibility: hidden;
   transform: translateY(10px);
   transition: .3s;
   border: 0;
   cursor: pointer;
   }

.towerclimb2.upbeamed {
   opacity: 1;
   visibility: visible;
   transform: translateY(0);
   }

.towerclimb2 svg {
   width: 18px;
   height: 18px;
   stroke: #fff;
   fill: none;
   stroke-width: 2.6;
   }

.liftoff {
   opacity: 0;
   transform: translateY(34px);
   transition: opacity .8s cubic-bezier(.2,.8,.3,1),transform .8s cubic-bezier(.2,.8,.3,1);
   }

.liftoff.aloft {
   opacity: 1;
   transform: none;
   }

.liftoff.wcf1 {
   transition-delay: .1s;
   }

.liftoff.wcf2 {
   transition-delay: .2s;
   }

.liftoff.wcf3 {
   transition-delay: .3s;
   }

.liftoff.wcf4 {
   transition-delay: .4s;
   }

.liftoff.wcf5 {
   transition-delay: .5s;
   }

.liftoff.wcf6 {
   transition-delay: .6s;
   }

@media (max-width:1080px) {
   .flightdeck-bays2 {
      grid-template-columns: 1fr;
      gap: 44px;
      }
   .manifest-card {
      max-width: 520px;
      }
   .altimeter {
      grid-template-columns: repeat(2,1fr);
      }
   .glidepath {
      grid-template-columns: repeat(2,1fr);
      row-gap: 38px;
      }
   .logentries {
      grid-template-columns: 1fr;
      }
   .tarmac-row {
      grid-template-columns: 1fr 1fr;
      }
   .fieldlog {
      grid-template-columns: repeat(3,1fr);
      }
   }

@media (max-width:1440px) {
   .gates {
      gap: 18px;
      }
   .gates a {
      font-size: .9rem;
      }
   .concourse-digits {
      display: none;
      }
   }

@media (max-width:1240px) {
   .gates {
      gap: 15px;
      }
   .gates a {
      font-size: .86rem;
      }
   .gates li:has(.concourse-dim2) {
      display: none;
      }
   .concourse-dim2 {
      display: none;
      }
   }

@media (max-width:1150px) {
   .gates {
      position: fixed;
      inset: var(--wc5-header-h) 0 auto 0;
      background: var(--wc5-cream);
      flex-direction: column;
      align-items: stretch;
      gap: 0;
      padding: 10px 6% 26px;
      border-bottom: 1px solid var(--wc5-line);
      box-shadow: var(--wc5-shadow);
      transform: translateY(-135%);
      transition: transform .4s cubic-bezier(.2,.8,.3,1);
      max-height: calc(100vh - var(--wc5-header-h));
      overflow: auto;
      }
   .gates.unbolted {
      transform: translateY(0);
      }
   .gates li:has(.concourse-dim2) {
      display: block;
      }
   .concourse-dim2 {
      display: block;
      }
   .gates li {
      border-bottom: 1px solid var(--wc5-line);
      }
   .gates a {
      display: block;
      padding: 15px 0;
      font-size: 1.05rem;
      }
   .cabinlatch {
      display: block;
      }
   .concourse-digits {
      display: none;
      }
   .concourse-push2 .throttle {
      padding: 12px 20px;
      font-size: .92rem;
      }
   .signalrow2,.terminal-row {
      grid-template-columns: 1fr;
      gap: 34px;
      }
   .beaconpip {
      display: none;
      }
   .jetway {
      display: block;
      }
   body {
      padding-bottom: 74px;
      }
   .towerclimb2 {
      bottom: 88px;
      right: 16px;
      }
   }

@media (max-width:640px) {
   body {
      font-size: 16px;
      }
   .skybridge .apron {
      justify-content: center;
      text-align: center;
      font-size: .8rem;
      gap: 6px 16px;
      padding: 7px 0;
      }
   .skybridge .sb8-stow,.skybridge .sb8-live2 {
      display: none;
      }
   .concourse-hail-note {
      display: none;
      }
   .concourse-push2 .throttle {
      padding: 12px 14px;
      border-radius: 50%;
      }
   .concourse-push2 {
      gap: 9px;
      }
   .altimeter,.glidepath {
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      }
   .fieldlog {
      grid-template-columns: repeat(2,1fr);
      gap: 10px;
      }
   .fieldlog-frame2:nth-child(1),.fieldlog-frame2:nth-child(6) {
      grid-row: span 1;
      aspect-ratio: 1;
      }
   .twinbay2 {
      grid-template-columns: 1fr;
      }
   .clipcard {
      padding: 26px 20px;
      }
   .tarmac-row {
      grid-template-columns: 1fr;
      gap: 30px;
      }
   .flightdeck-levers2 .throttle {
      flex: 1 1 100%;
      }
   .concourse {
      gap: 8px;
      }
   .tailmark {
      min-width: 0;
      gap: 9px;
      }
   .tailmark-fin {
      width: 38px;
      height: 38px;
      }
   .tailmark-note {
      min-width: 0;
      }
   .tailmark-note span {
      font-size: .56rem;
      letter-spacing: 1.2px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      }
   .tailmark-note strong {
      font-size: .85rem;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      }
   .altimeter .altimeter-dial2 {
      padding: 20px 12px;
      }
   .hangarbay-cargo2,.clipcard {
      overflow-wrap: break-word;
      }
   }

@media (max-width:400px) {
   .apron {
      width: 94%;
      }
   .glidepath {
      grid-template-columns: 1fr;
      row-gap: 34px;
      }
   .altimeter {
      gap: 10px;
      }
   .tailmark-fin {
      width: 34px;
      height: 34px;
      }
   .tailmark-note strong {
      font-size: .8rem;
      }
   .concourse-push2 .throttle {
      padding: 11px 13px;
      }
   .cabinlatch {
      width: 44px;
      }
   }

@media (prefers-reduced-motion:reduce) {
   *,*::before,*::after {
      animation-duration: .001ms!important;
      animation-iteration-count: 1!important;
      transition-duration: .001ms!important;
      }
   html {
      scroll-behavior: auto;
      }
   .liftoff {
      opacity: 1;
      transform: none;
      }
   }

@media print {
   .controlband,.beaconpip,.jetway,.towerclimb2,#bg-fx-wc,.taxiline {
      display: none!important;
      }
   body {
      background: #fff;
      color: #000;
      }
   }

.manifest-zilch {
   font-family: var(--wc5-display);
   font-size: clamp(3rem,6.4vw,4.3rem);
   line-height: 1;
   color: var(--wc5-brick);
   text-align: center;
   letter-spacing: 2px;
   margin: 8px 0 2px;
   }

.manifest-zilch small {
   display: block;
   font-family: var(--wc5-font);
   font-size: .31em;
   letter-spacing: 3.4px;
   color: var(--wc5-coast);
   font-weight: 800;
   margin-top: 6px;
   }

.manifest-card .manifest-roster svg {
   stroke: var(--wc5-coast);
   }

.stamp-zilch {
   background: var(--wc5-coast);
   box-shadow: 0 8px 20px rgba(30,111,104,.42);
   }

.rivet-check-blue {
   background: rgba(30,111,104,.22);
   }

.rivet-check-blue svg {
   stroke: #8FC1E8;
   }

.shimmy-aside {
   display: flex;
   gap: 12px;
   align-items: flex-start;
   background: rgba(242,145,63,.1);
   border: 1px solid rgba(242,145,63,.34);
   border-radius: 14px;
   padding: 16px 18px;
   margin-top: 24px;
   }

.shimmy-aside svg {
   width: 22px;
   height: 22px;
   flex: 0 0 auto;
   margin-top: 2px;
   stroke: var(--wc5-brick);
   fill: none;
   stroke-width: 2;
   stroke-linecap: round;
   stroke-linejoin: round;
   }

.shimmy-aside p {
   margin: 0;
   font-size: .94rem;
   }

.dispatcher-card {
   background: linear-gradient(158deg,var(--wc5-charcoal) 0%,var(--wc5-charcoal-2) 55%,#39241C 100%);
   color: #DFD4C9;
   border-radius: var(--wc5-radius-lg);
   padding: 38px 34px;
   box-shadow: var(--wc5-shadow-lg);
   border: 1px solid rgba(255,255,255,.09);
   position: relative;
   overflow: hidden;
   }

.dispatcher-card::before {
   content: "";
   position: absolute;
   top: -90px;
   right: -70px;
   width: 260px;
   height: 260px;
   border-radius: 50%;
   background: radial-gradient(circle,rgba(242,145,63,.34),transparent 68%);
   filter: blur(14px);
   animation: float1 18s ease-in-out infinite;
   }

.dispatcher-card>* {
   position: relative;
   z-index: 1;
   }

.dispatcher-sign {
   display: inline-flex;
   align-items: center;
   gap: 9px;
   color: var(--wc5-ember-glow);
   font-weight: 800;
   letter-spacing: 2.4px;
   text-transform: uppercase;
   font-size: .74rem;
   margin-bottom: 12px;
   }

.dispatcher-sign::before {
   content: "";
   width: 26px;
   height: 2px;
   background: var(--wc5-ember);
   }

.dispatcher-card h3 {
   color: #fff;
   font-size: clamp(1.4rem,2.4vw,1.9rem);
   margin-bottom: 10px;
   }

.dispatcher-card p {
   color: #B8AC9F;
   font-size: .99rem;
   }

.dispatcher-digits {
   display: block;
   font-family: var(--wc5-display);
   font-size: clamp(2.1rem,4.6vw,3rem);
   color: #fff;
   letter-spacing: 1px;
   margin: 20px 0 18px;
   text-align: center;
   transition: color .25s,transform .25s;
   }

.dispatcher-digits:hover {
   color: var(--wc5-ember-glow);
   transform: scale(1.03);
   }

.dispatcher-sched {
   text-align: center;
   font-size: .92rem;
   margin: 18px 0 0;
   color: #B8AC9F;
   }

.dispatcher-sched strong {
   color: #fff;
   }

.dispatcher-flightplan {
   margin-top: 26px;
   padding-top: 22px;
   border-top: 1px solid rgba(255,255,255,.12);
   }

.dispatcher-flightplan h4 {
   color: #fff;
   font-size: .92rem;
   letter-spacing: 1.8px;
   margin-bottom: 14px;
   }

.dispatcher-flightplan ol {
   margin: 0;
   padding: 0;
   list-style: none;
   counter-reset: ce;
   display: grid;
   gap: 12px;
   }

.dispatcher-flightplan li {
   counter-increment: ce;
   display: flex;
   gap: 13px;
   align-items: flex-start;
   font-size: .94rem;
   color: #C6BAAD;
   }

.dispatcher-flightplan li::before {
   content: counter(ce);
   flex: 0 0 auto;
   width: 26px;
   height: 26px;
   border-radius: 8px;
   background: rgba(242,145,63,.18);
   color: var(--wc5-ember-glow);
   font-family: var(--wc5-display);
   font-size: .9rem;
   display: grid;
   place-items: center;
   margin-top: 1px;
   }

@media (max-width:640px) {
   .dispatcher-card {
      padding: 28px 22px;
      }
   }

.logentry p {
   font-size: .95rem;
   line-height: 1.62;
   }

.logentry footer b {
   font-size: .92rem;
   line-height: 1.3;
   }

.logentry .crewbadge svg {
   display: block;
   }

@media (max-width:1080px) {
   .logentries {
      gap: 22px;
      }
   }

.jetway ul.jw8-pair {
   grid-template-columns: 1.7fr 1fr;
   }

/* short-runway adjustments */
@media (max-width: 392px) {
   .tailmark-note strong {
      max-width: 46vw;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      }
   .concourse-hail {
      padding-inline: 13px;
      }
   }

.jetway ul {
   grid-template-columns: 1fr;
   }

.glidepath > * {
   min-width: 0;
   }

.glidepath-leg2 h3 {
   overflow-wrap: anywhere;
   }

.altimeter-dial2 b span {
   font-size: inherit;
   color: inherit;
   letter-spacing: 0;
   }
