
@import url('./brand/brand.css');
:root{--shadow:0 1px 2px light-dark(rgba(0,0,0,.05),transparent),0 8px 24px light-dark(rgba(0,0,0,.06),transparent)}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
*{box-sizing:border-box}
.logo-d{display:none}
:root[data-theme="dark"] .logo-l{display:none}
:root[data-theme="dark"] .logo-d{display:block}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo-l{display:none}:root:not([data-theme="light"]) .logo-d{display:block}}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:1rem}
@media(min-width:720px){[id]{scroll-margin-top:5rem}}
body{margin:0;background:var(--bg);color:var(--fg);font:400 1.0625rem/1.6 var(--font-text);-webkit-font-smoothing:antialiased}
a{color:var(--accent-fg)}
a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}
.i{width:1.25em;height:1.25em;fill:currentColor;vertical-align:-.25em;flex:none}
.wrap{max-width:60rem;margin:0 auto;padding:0 16px}
.draft{background:var(--gold);color:#1B1B1B;font:600 .8125rem/1.3 var(--font-mono);text-align:center;padding:.4rem 16px}
/* header: a dark brand bar on every page (color-scheme:dark turns the kit switches dark too).
   Phone: row 1 = logo + switches, row 2 = the menu on one line that scrolls sideways. */
.goa-hdr{color-scheme:dark;background:#0D0F0D;color:#F2EFE6;border-bottom:1px solid rgba(242,239,230,.08)}
@media(min-width:720px){.goa-hdr{position:sticky;top:0;z-index:10}}
.goa-hdr.goa-hdr{padding-inline:max(16px,calc((100% - 60rem)/2 + 16px));padding-block:.4rem}
.goa-hdr__brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:#fff;font:900 1.15rem var(--font-sans);letter-spacing:.02em}
.goa-hdr__brand img{width:30px;height:auto}
.site-nav{display:flex;gap:.2rem;align-items:center}
.site-nav a{color:#C9C5B9;text-decoration:none;padding:.5rem .85rem;border-radius:var(--radius-pill);font:600 .95rem var(--font-sans);white-space:nowrap}
.site-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.site-nav a[aria-current="page"]{background:#19CB44;color:#0F1A10}
@media(max-width:719px){.goa-hdr.goa-hdr .goa-hdr__end{display:contents}}
@media(max-width:719px){.goa-hdr.goa-hdr .goa-hdr__tools{order:2;margin-left:auto}}
@media(max-width:719px){.goa-hdr.goa-hdr .site-nav{order:3;flex:1 0 100%;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:.1rem 16px .4rem}}
@media(max-width:719px){.goa-hdr .site-nav::-webkit-scrollbar{display:none}}
@media(max-width:719px){.goa-hdr .site-nav{gap:.05rem}.goa-hdr .site-nav a{padding:.45rem .55rem;font-size:.9rem}}
.goa-hdr .goa-lang .goa-lang__list,.goa-hdr .goa-theme .goa-theme__modes{border:0;padding:3px;border-radius:999px;background:rgba(255,255,255,.06)}
.goa-hdr .goa-lang .goa-lang__link,.goa-hdr .goa-theme .goa-sw__face{min-width:34px;min-height:34px;border-radius:999px;color:#9C988C}
.goa-hdr .goa-lang .goa-lang__link{padding:0 .6rem;font:600 .76rem var(--font-mono);letter-spacing:.06em}
.goa-hdr .goa-lang__link:hover,.goa-hdr .goa-sw__opt:hover .goa-sw__face{color:#fff}
.goa-hdr .goa-lang__link[aria-current="true"],.goa-hdr .goa-sw__opt input:checked + .goa-sw__face{background:rgba(255,255,255,.13);color:#fff;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.goa-hdr .goa-sw__icon{width:18px;height:18px}
.goa-hdr .goa-hdr__tools{gap:.4rem}
@media(max-width:419px){.goa-hdr__brand span{display:none}}
@media(max-width:419px){.goa-hdr.goa-hdr{column-gap:.2rem}.goa-hdr.goa-hdr .goa-hdr__tools{gap:.2rem}}
/* hero card: the same look as the /stats/ hero */
.hero-card{position:relative;overflow:hidden;margin-top:1rem;padding:clamp(1.5rem,5vw,3rem);border-radius:var(--radius-lg);box-shadow:var(--shadow);
 background:radial-gradient(120% 140% at 82% -10%,light-dark(#E9E2C9,#1E2A22) 0%,transparent 55%),linear-gradient(180deg,var(--bg-raised) 0%,var(--bg-sunken) 100%)}
.hero-card.radar::before{content:"";position:absolute;top:-140px;right:-140px;width:480px;height:480px;border-radius:50%;pointer-events:none;opacity:.55;
 background:repeating-radial-gradient(circle,transparent 0 38px,color-mix(in srgb,var(--accent-fill) 14%,transparent) 39px 40px)}
.hero-card>*{position:relative}
.hero-card h1{font:900 clamp(2.2rem,7vw,3.8rem)/1.04 var(--font-sans);margin:0 0 .7rem;letter-spacing:-.02em}
.hero-card h1 em{font-style:normal;color:var(--accent-fg)}
.hero-card .lead{font-size:1.15rem;color:var(--fg-soft);margin:0 0 1.2rem;max-width:34rem}
.eyebrow{display:block;font:600 .76rem var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-fg);margin-bottom:.6rem}
.lede{max-width:40rem;color:var(--fg-muted);margin:0 0 1.4rem}
.btns{display:flex;flex-wrap:wrap;gap:.6rem}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.2rem;border-radius:var(--radius-pill);font:700 1rem var(--font-sans);text-decoration:none;border:0;color:var(--fg);background:var(--bg-raised)}
.btn:hover{background:var(--bg-sunken)}
.btn.main{background:var(--accent-fill);color:var(--on-accent)}
.btn.main:hover{filter:brightness(.94)}
.btn .gold{color:light-dark(var(--gold-ink),var(--gold))}
section{padding:2.2rem 0 0}
h1,h2{font:800 clamp(1.5rem,3vw,2.1rem)/1.15 var(--font-sans);margin:0 0 .9rem;letter-spacing:-.01em;text-wrap:balance}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1 .i,h2 .i{color:var(--accent-fg)}
h3{font:800 1.15rem var(--font-sans);margin:1.4rem 0 .4rem}
.cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr))}
.card{background:var(--bg-raised);border-radius:var(--radius-lg);padding:1.2rem;box-shadow:var(--shadow)}
/* ---------- home: dark hero over a frame of the newest video, then a bento grid ---------- */
.hx{position:relative;isolation:isolate;overflow:hidden;color:#F2EFE6;background:#0D0F0D;margin:0 0 clamp(1.5rem,4vw,2.5rem)}
.hx::before{content:"";position:absolute;inset:-12px;z-index:-2;background:var(--hx-img) center/cover no-repeat;opacity:.5;filter:blur(3px) saturate(1.15)}
.hx::after{content:"";position:absolute;inset:0;z-index:-1;
 background:radial-gradient(80% 90% at 85% 0%,rgba(25,203,68,.28),transparent 60%),linear-gradient(180deg,rgba(13,15,13,.35) 0%,rgba(13,15,13,.75) 55%,#0D0F0D 100%)}
.hx-in{max-width:60rem;margin:0 auto;padding:clamp(3rem,10vw,7rem) 16px clamp(2rem,5vw,3.5rem)}
.hx-kicker{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 1rem;font:600 .78rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#CBAC61}
.hx-title{font:900 clamp(3.4rem,15vw,8.5rem)/.9 var(--font-sans);letter-spacing:-.045em;margin:0;color:#fff}
.hx-title em{font-style:normal;color:#19CB44}
.hx-lead{font-size:clamp(1.1rem,2.6vw,1.45rem);line-height:1.45;max-width:34rem;margin:1.2rem 0 1.8rem;color:#E6E2D6}
.hx .btns{gap:.7rem}
.hx .btn{padding:.85rem 1.4rem;font-size:1.02rem}
.btn.ghost{background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.btn.ghost:hover{background:rgba(255,255,255,.18)}
.btn.ghost .i{color:#CBAC61}
.hx .live{display:inline-flex;align-items:center;gap:8px;margin:1.4rem 0 0;padding:7px 14px;border-radius:var(--radius-pill);background:rgba(25,203,68,.16);color:#3BDC63;font:600 .9rem var(--font-mono)}
.live[hidden]{display:none}
.hx .live::before{content:"";width:9px;height:9px;border-radius:50%;background:#19CB44;box-shadow:0 0 0 4px rgba(25,203,68,.3);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(25,203,68,0)}}
@media(prefers-reduced-motion:reduce){.hx .live::before{animation:none}}
.hx-stats{display:flex;flex-wrap:wrap;gap:1.2rem 2.6rem;margin:2.6rem 0 0;padding:1.4rem 0 0;border-top:1px solid rgba(242,239,230,.14)}
.hx-stats div{display:flex;flex-direction:column}
.hx-stats dd{order:-1;margin:0;font:700 clamp(2rem,6vw,3rem)/1 var(--font-mono);color:#fff;letter-spacing:-.02em}
.hx-stats dt{font-size:.88rem;color:#A8A498;margin-top:.35rem}
/* bento */
.bento{display:grid;gap:14px;grid-template-columns:1fr 1fr}
@media(min-width:760px){.bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(170px,auto)}}
.tile{position:relative;overflow:hidden;border-radius:24px;background:var(--bg-raised);color:var(--fg);text-decoration:none;padding:1.3rem;
 display:flex;flex-direction:column;justify-content:flex-end;min-height:170px;box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease}
a.tile:hover{transform:translateY(-3px);box-shadow:0 14px 34px light-dark(rgba(0,0,0,.12),rgba(0,0,0,.5))}
.tile-k{font:600 .72rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted)}
.tile-t{font:800 1.2rem/1.2 var(--font-sans);margin-top:.3rem;letter-spacing:-.01em}
.tile-s{font-size:.9rem;color:var(--fg-muted);margin-top:.3rem}
.tile-go{display:inline-flex;align-items:center;gap:.35rem;margin-top:.8rem;font-weight:700;color:var(--accent-fg)}
.tile-go .i{width:1.1em;height:1.1em;transition:transform .18s ease}
a.tile:hover .tile-go .i{transform:translateX(3px)}
.span2{grid-column:span 2}
@media(min-width:760px){.big{grid-column:span 2;grid-row:span 2}.wide{grid-column:span 2}}
/* video tiles: the picture on top (16:9), the text below it; never text over the picture */
.t-vid{padding:0;justify-content:flex-start;color:#fff;background:#141614;min-height:0}
.t-vid img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#0D0F0D}
.t-vid .vtxt{display:flex;flex-direction:column;padding:.9rem 1.1rem 1.1rem}
.t-vid .tile-k{color:#CBAC61}.t-vid .tile-s{color:#B8B4A8}
.t-vid .tile-t{font-size:1.05rem}
.t-vid.big .tile-t{font-size:clamp(1.25rem,3vw,1.8rem)}
@media(min-width:760px){.t-vid.big img{flex:1;min-height:0;aspect-ratio:auto}}
.play{position:absolute;top:.8rem;right:.8rem;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#19CB44;color:#0F1A10;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.play .i{width:26px;height:26px}
.t-vid:not(.big) .play{width:36px;height:36px}.t-vid:not(.big) .play .i{width:20px;height:20px}
a.t-vid:hover .tile-t{color:#3BDC63}
/* phone: the two smaller videos are full-width rows, the thumbnail left and the title right */
@media(max-width:759px){
 .t-vid:not(.big){grid-column:span 2;flex-direction:row;align-items:center}
 .t-vid:not(.big) img{width:42%;flex:none}
 .t-vid:not(.big) .vtxt{padding:.6rem .9rem;min-width:0}
 .t-vid:not(.big) .tile-k,.t-vid:not(.big) .play{display:none}
 .t-vid:not(.big) .tile-t{font-size:.95rem;line-height:1.25}
 .t-vid:not(.big) .tile-s{font-size:.78rem}
}
/* logbook tile: the route map behind */
.t-map{justify-content:space-between;min-height:320px}
.t-map>svg.mini{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.t-map>*:not(svg){position:relative;z-index:1}
.tile-txt{display:flex;flex-direction:column}
.t-map .num{font:700 clamp(2.6rem,7vw,3.6rem)/1 var(--font-mono);letter-spacing:-.03em;color:var(--accent-fg)}
.t-map .num small{font-size:.45em;color:var(--fg-muted);margin-left:.15em}
.t-map .tile-go{align-self:flex-start;background:var(--bg-raised);padding:.45rem .9rem;border-radius:var(--radius-pill);box-shadow:var(--shadow)}
.mini .sea{fill:light-dark(#FBF9F3,#161616)}
.mini .basemap .land{fill:light-dark(#ECE7DA,#232523);stroke:var(--line);stroke-width:1}
.mini .route-line{stroke:var(--accent-fg);stroke-linecap:round}
.mini .airport-node{fill:light-dark(#FBF9F3,#161616);stroke:var(--accent-fg);stroke-width:1.6}
.mini .airport-node.hub{fill:var(--accent-fill);fill-opacity:.22}
.mini .airport-label{display:none}
.t-map>.map-fade{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,var(--bg-raised) 22%,color-mix(in srgb,var(--bg-raised) 55%,transparent) 48%,transparent 75%)}
/* pilot tile */
.t-pilot{background:linear-gradient(135deg,#1B1B1B,#272727);color:#F2EFE6}
.t-pilot .tile-k{color:#CBAC61}.t-pilot .tile-s{color:#A8A498}.t-pilot .tile-go{color:#3BDC63}
.t-pilot .tile-t{font-size:1.6rem}
.track{display:flex;align-items:center;gap:.4rem;margin:1rem 0 .2rem;font:600 .76rem var(--font-mono);color:#A8A498;flex-wrap:wrap}
.track b{display:inline-flex;align-items:center;gap:.35rem;color:#F2EFE6;font-weight:600}
.track b::before{content:"";width:9px;height:9px;border-radius:50%;background:#19CB44;box-shadow:0 0 0 3px rgba(25,203,68,.3)}
.track i{flex:1;min-width:1rem;height:2px;background:repeating-linear-gradient(90deg,#5E5A50 0 4px,transparent 4px 8px)}
.track .goal{color:#CBAC61}
@media(max-width:420px){.track{font-size:.68rem;gap:.25rem}.track i{min-width:.5rem}}
/* small tiles */
.t-ants{background:color-mix(in srgb,var(--accent-fill) 14%,var(--bg-raised))}
.tile-ic{position:absolute!important;top:1.1rem;left:1.2rem;width:2rem;height:2rem;color:var(--accent-fg)}
.t-social{justify-content:space-between;gap:.9rem}
.t-social .tile-go{margin-top:0}
.socials{display:flex;gap:.6rem}
.socials a{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--bg-sunken);color:var(--fg)}
.socials a:hover{background:var(--accent-fill);color:var(--on-accent)}
.socials .i{width:24px;height:24px}
.next{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.next a{display:flex;gap:.9rem;align-items:center;text-decoration:none;color:var(--fg)}
.next a .i{width:1.8em;height:1.8em;color:var(--accent-fg)}
.next-t{display:block;font-weight:700}.next-s{display:block;font-size:.9rem;color:var(--fg-muted)}
.next a:hover .next-t{color:var(--accent-fg)}
.video{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--base)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapbox{height:clamp(20rem,70vw,34rem);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-sunken)}
.mapbox iframe{width:100%;height:100%;border:0}
.prose{max-width:44rem}.prose p{margin:.6rem 0}
.note{color:var(--fg-muted);font-size:.95rem}
footer{margin-top:3.5rem;padding:.6rem 0 2rem;color:var(--fg-muted);font-size:.95rem}
footer .wrap{display:flex;gap:.2rem 1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:.8rem 0 0;width:calc(100% - 32px);max-width:calc(60rem - 32px)}
footer a{display:inline-block;padding:.6rem .3rem;color:var(--fg-muted)}
.mono{font-family:var(--font-mono)}
/* brand page */
.pair{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.panel{border-radius:24px;padding:1.5rem;background:var(--bg);color:var(--fg);box-shadow:var(--shadow),0 0 0 1px var(--line-strong)}
.panel .tag{font:700 .72rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:.6rem}
.panel img{max-width:11rem;height:auto;display:block;margin:.6rem auto 1.2rem}
.roles{display:grid;gap:.5rem}
.role{display:flex;justify-content:space-between;gap:.6rem;padding:.6rem .9rem;border-radius:14px;font:600 .9rem var(--font-sans)}
.sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr));gap:10px}
.sw div{border-radius:18px;padding:.8rem;font:600 .8rem var(--font-mono);min-height:7rem;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:inset 0 0 0 1px var(--line-strong)}
.sw div span:first-child{font-weight:700;font-size:.86rem}
.spec{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.spec>div{border-radius:24px;padding:1.5rem;background:var(--bg-raised);box-shadow:var(--shadow);overflow:hidden}
.spec .big{font:900 clamp(2.2rem,6vw,3.4rem)/1 var(--font-sans);letter-spacing:-.03em;margin:.6rem 0 .3rem}
.spec .bigm{font:700 clamp(1.6rem,4.5vw,2.4rem)/1.1 var(--font-mono);margin:.6rem 0 .3rem;color:var(--accent-fg)}
.demo{border-radius:24px;padding:clamp(1.4rem,4vw,2.2rem);color-scheme:dark;color:#F2EFE6;
 background:radial-gradient(70% 90% at 100% 0%,rgba(25,203,68,.22),transparent 60%),#0D0F0D}
.demo .btns{margin:1rem 0}
.demo .live{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-pill);background:rgba(25,203,68,.16);color:#3BDC63;font:600 .9rem var(--font-mono)}
.demo .live::before{content:"";width:9px;height:9px;border-radius:50%;background:#19CB44;box-shadow:0 0 0 4px rgba(25,203,68,.3)}
.demo dl{display:flex;gap:2rem;margin:1.4rem 0 0}.demo dl div{display:flex;flex-direction:column}
.demo dd{order:-1;margin:0;font:700 2rem/1 var(--font-mono);color:#fff}.demo dt{font-size:.85rem;color:#A8A498;margin-top:.3rem}
.rule ul{margin:.6rem 0 0;padding:0;list-style:none}
.rule li{display:flex;gap:.6rem;align-items:flex-start;padding:.45rem 0}
.rule.yes li .i{color:var(--accent-fg)}.rule.no li .i{color:var(--danger-fg)}
.rule{border-radius:24px;padding:1.5rem;background:var(--bg-raised);box-shadow:var(--shadow)}
.rule h3{margin:0;font-size:1.3rem}
.qs{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.qs>div{border-radius:24px;padding:1.5rem;background:var(--bg-raised);box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}
.qs b{font:700 2rem/1 var(--font-mono);color:var(--accent-fg)}
.notes{max-width:52rem}.notes table{border-collapse:collapse;width:100%;font-size:.95rem}
.notes th,.notes td{text-align:left;vertical-align:top;padding:.55rem .6rem;border-bottom:1px solid var(--line)}
.notes th{font:700 .8rem var(--font-mono);color:var(--fg-muted)}
.tablewrap{overflow-x:auto}.notes code{font-family:var(--font-mono)}
/* pilot */
.gauge{background:var(--bg-sunken);border-radius:var(--radius-pill);height:1rem;overflow:hidden}
.gauge>span{display:block;height:100%;background:var(--accent-fill)}
.gauge-row{display:flex;justify-content:space-between;gap:1rem;font:600 .9rem var(--font-mono);margin:.4rem 0}
/* pilot: radar hero, age track, section titles, branch tiles, fund tile, sources panel */
.hx-radar::before{inset:0;opacity:1;filter:none;background:repeating-radial-gradient(circle at 88% 18%,transparent 0 46px,rgba(25,203,68,.11) 47px 48px)}
.hx-title.s{font-size:clamp(2.9rem,11vw,6.2rem);line-height:.95}
.hx-track{list-style:none;margin:2.6rem 0 0;padding:1.6rem 0 .2rem;border-top:1px solid rgba(242,239,230,.14);display:grid;grid-template-columns:repeat(5,minmax(5.6rem,1fr));overflow-x:auto;scrollbar-width:none}
.hx-track li{position:relative;padding:1.5rem .6rem 0 0}
.hx-track li::before{content:"";position:absolute;top:0;left:0;width:12px;height:12px;border-radius:50%;background:#0D0F0D;box-shadow:inset 0 0 0 2px #6E6A60}
.hx-track li::after{content:"";position:absolute;top:5px;left:18px;right:6px;height:2px;background:repeating-linear-gradient(90deg,#55524A 0 5px,transparent 5px 10px)}
.hx-track li:last-child::after{display:none}
.hx-track .now::before{background:#19CB44;box-shadow:0 0 0 5px rgba(25,203,68,.28)}
.hx-track .now::after{background:linear-gradient(90deg,#19CB44,#55524A)}
.hx-track .goal::before{background:#CBAC61;box-shadow:0 0 0 5px rgba(203,172,97,.22)}
.hx-track b{display:block;font:700 clamp(1.05rem,2.6vw,1.35rem) var(--font-mono);color:#fff}
.hx-track span{display:block;color:#A8A498;font-size:.9rem;margin-top:.1rem}
.hx-track .now b{color:#3BDC63}.hx-track .goal b{color:#CBAC61}
@media(max-width:519px){.hx-track{grid-template-columns:repeat(5,1fr)}.hx-track li{padding-right:.2rem}.hx-track b{font-size:.92rem}.hx-track span{font-size:.72rem}.hx-track li::after{left:16px;right:3px}}
.sec-t{font-size:clamp(1.8rem,4.5vw,2.7rem);line-height:1.05;letter-spacing:-.025em;margin-bottom:1.4rem}
.branch{border-radius:24px;padding:1.4rem}
.branch h3{font-size:1.25rem;margin-top:.5rem}
.branch.main.main{background:linear-gradient(135deg,#1B1B1B,#26302A);color:#F2EFE6;color-scheme:dark}
.branch.main .tag{color:#3BDC63}
.fine{display:flex;gap:.7rem;align-items:flex-start;margin-top:1rem}
.fine .i{color:light-dark(var(--gold-ink),var(--gold));margin-top:.15rem}
.fund{position:relative;overflow:hidden;border-radius:24px;padding:clamp(1.4rem,4vw,2.4rem);color-scheme:dark;color:#F2EFE6;
 background:radial-gradient(70% 90% at 100% 0%,rgba(25,203,68,.22),transparent 60%),linear-gradient(135deg,#1B1B1B,#272727)}
.fund .tile-ic{position:absolute;top:1.4rem;right:1.4rem;left:auto;width:2.4rem;height:2.4rem;color:#19CB44}
.fund p{max-width:40rem}
.srcbox{background:var(--bg-raised);border-radius:24px;padding:1rem 1.4rem;box-shadow:var(--shadow)}
.srcbox summary{cursor:pointer;font-weight:700;padding:.4rem 0;list-style-position:inside}
.srcbox[open] summary{margin-bottom:.4rem}
/* live flight card (site/live.js), inside a dark hero */
.fc{margin:1.6rem 0 0;max-width:46rem;padding:1.2rem 1.3rem;border-radius:20px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(25,203,68,.35);color:#F2EFE6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.fc[hidden]{display:none}
.fc .mono{font-family:var(--font-mono)}
.fc-top{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;font-size:.92rem;color:#D4D0C4}
.fc-live{display:inline-flex;align-items:center;gap:7px;font:700 .74rem var(--font-mono);letter-spacing:.12em;color:#3BDC63}
.fc-live::before{content:"";width:9px;height:9px;border-radius:50%;background:#19CB44;box-shadow:0 0 0 4px rgba(25,203,68,.3);animation:pulse 1.6s ease-in-out infinite}
.fc-yt{margin-left:auto;color:#3BDC63;font-weight:700;text-decoration:none}
.fc-yt:hover{text-decoration:underline}
.fc-route{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;margin:1rem 0 1.1rem}
.fc-route b{display:block;font-size:1.15rem;color:#fff;line-height:1.2}.fc-route span{font-size:.8rem;color:#A8A498}
.fc-arr{text-align:right}
.fc-bar{position:relative;height:4px;border-radius:2px;background:rgba(255,255,255,.16)}
.fc-bar i{position:absolute;left:0;top:0;bottom:0;background:#19CB44;border-radius:2px}
.fc-bar span{position:absolute;top:50%;width:22px;height:22px;transform:translate(-50%,-50%);color:#fff}
.fc-bar svg{width:22px;height:22px;fill:currentColor;transform:rotate(45deg);display:block}
.fc-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:0}
.fc-nums div{display:flex;flex-direction:column;min-width:0}
.fc-nums dt{font:600 .68rem var(--font-mono);letter-spacing:.1em;color:#A8A498;text-transform:uppercase}
.fc-nums dd{margin:.2rem 0 0;font:700 1.05rem var(--font-mono);color:#fff}
.fc-nums small{display:block;font:500 .75rem var(--font-sans);color:#A8A498;margin-top:.1rem}
.fc-state{margin:.9rem 0 .2rem;font-size:.82rem;color:#D4D0C4}
.fc-freq,.fc-wxs{display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:baseline;font-size:.86rem;margin-top:.8rem;color:#D4D0C4}
.fc-k{font:600 .68rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#CBAC61;flex-basis:100%}
.fc-freq b{color:#3BDC63}
.fc-wx{flex:1 1 16rem;display:flex;flex-direction:column;gap:.15rem;min-width:0}
.fc-wx b{color:#fff}.fc-wx b .mono{font-size:.78rem;color:#A8A498;margin-left:.3rem}
.fc-wx code{font:.72rem var(--font-mono);color:#8A867B;word-break:break-word}
@media(max-width:560px){.fc-nums{grid-template-columns:1fr 1fr}.fc-route b{font-size:1rem}}
/* ants: dotted "trail" hero, map tile, article as tiles */
.hx-ants::before{inset:0;opacity:1;filter:none;background:radial-gradient(circle,rgba(203,172,97,.2) 1.4px,transparent 1.9px) 0 0/22px 22px;
 -webkit-mask-image:linear-gradient(90deg,transparent 20%,#000 90%);mask-image:linear-gradient(90deg,transparent 20%,#000 90%)}
.hx-ants .hx-stats dd{font-size:clamp(1.5rem,4.5vw,2.4rem)}
.maptile{border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:var(--bg-raised);padding:6px}
.maptile .mapbox{border-radius:19px}
.ant-lead{font-size:clamp(1.08rem,2.2vw,1.25rem);line-height:1.55;max-width:46rem;color:var(--fg-soft);margin:0 0 1.6rem}
.ant-grid{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:760px){.ant-grid{grid-template-columns:repeat(3,1fr)}.ant.wide,.ant-sub{grid-column:1/-1}}
.ant{background:var(--bg-raised);border-radius:24px;padding:1.4rem;box-shadow:var(--shadow)}
.ant h3{margin:.7rem 0 .4rem;font-size:1.15rem}
.ant p{margin:0;color:var(--fg-soft);font-size:.98rem}
.ant-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--accent-fill) 16%,var(--bg-raised));color:var(--accent-fg)}
.ant-ic .i{width:24px;height:24px}
@media(min-width:760px){.ant.wide{display:grid;grid-template-columns:auto 1fr;column-gap:1.1rem;align-items:start}
 .ant.wide .ant-ic{grid-row:span 2}.ant.wide h3{margin-top:.2rem}}
.ant-sub{margin-top:1.4rem}.ant-sub h3{font-size:1.4rem;margin:0 0 .3rem;letter-spacing:-.01em}.ant-sub p{margin:0;color:var(--fg-muted)}
.ant-dark{margin-top:14px;border-radius:24px;padding:clamp(1.4rem,4vw,2.4rem);color-scheme:dark;color:#F2EFE6;
 background:radial-gradient(70% 90% at 100% 0%,rgba(25,203,68,.18),transparent 60%),linear-gradient(135deg,#1B1B1B,#272727)}
.ant-dark h3{color:#fff;font-size:1.3rem;margin:0 0 .5rem}.ant-dark h3+p{margin-top:0}
.ant-dark p{max-width:46rem;color:#D4D0C4}.ant-dark p+h3{margin-top:1.6rem}
/* pilot timeline: a rail with one dot per step; age above the step on phones, in its own column on desktop */
.timeline{list-style:none;margin:0;padding:0 0 0 .5rem}
.timeline>li{position:relative;border-left:2px solid var(--line-strong);padding:0 0 1.8rem 1.5rem;max-width:46rem}
.timeline>li:last-child{border-left-color:transparent}
.timeline>li::before{content:"";position:absolute;left:-.55rem;top:.2rem;width:.9rem;height:.9rem;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 2px var(--line-strong)}
.timeline>li.now{border-left-color:var(--accent-fill);background:color-mix(in srgb,var(--accent-fill) 12%,var(--bg-raised));border-radius:0 var(--radius) var(--radius) 0;padding:1rem 1.2rem 1rem 1.5rem;margin-bottom:1.8rem}
.timeline>li.now::before{background:var(--accent-fill);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-fill) 25%,transparent);top:1.2rem}
.timeline .age{font:700 .85rem var(--font-mono);color:light-dark(var(--gold-ink),var(--gold))}
.timeline h3{margin:.1rem 0 .3rem}
.timeline p{margin:.3rem 0}
@media(min-width:720px){
 .timeline{padding-left:6.5rem}
 .timeline .age{position:absolute;left:-6.5rem;width:5.2rem;text-align:right;font-size:1.45rem;line-height:1.2;top:-.15rem;font-variant-numeric:tabular-nums}
 .timeline>li.now .age{top:.85rem}
 .timeline>li.now .age{color:var(--accent-fg)}
}
.price{display:inline-block;font:600 .85rem var(--font-mono);background:var(--bg-raised);border-radius:var(--radius-pill);padding:.15rem .7rem;margin-top:.3rem}
.now .price,.card .price{background:var(--bg-sunken)}
sup a{text-decoration:none;font-weight:700}
.branches{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:640px){.branches{grid-template-columns:1fr 1fr}}
.branch.main{background:color-mix(in srgb,var(--accent-fill) 16%,var(--bg-raised))}
.branch .tag{font:700 .75rem var(--font-mono);text-transform:uppercase;color:var(--accent-fg)}
ol.src{padding-left:1.4rem}ol.src li{margin:.35rem 0;word-break:break-word}
.fine{background:var(--bg-sunken);border-radius:var(--radius);padding:.9rem 1rem}

/* flight pages (/stats/<date>-<callsign>/) */
.fband .hx-in{padding-top:clamp(1.6rem,5vw,3rem)}
.bp{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:.2rem .8rem;margin:0}
.bp b{display:block;font:800 clamp(2.6rem,12vw,5.4rem)/1 var(--font-mono);letter-spacing:-.03em;color:#fff}
.bp-end>span{display:block;margin-top:.35rem;font:600 clamp(.8rem,2.4vw,1.05rem) var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:#A8A498}
.bp-end.r{text-align:right}
.bp-line{align-self:center;display:flex;justify-content:center;align-items:center;height:2px;margin-bottom:1.6rem;background:repeating-linear-gradient(90deg,#55524A 0 6px,transparent 6px 12px)}
.bp-line .i{width:2rem;height:2rem;padding:0 .3rem;color:#19CB44;background:#0D0F0D;transform:rotate(45deg)}
.fsub{margin:.8rem 0 0;color:#A8A498;font-weight:600}
.fmap{position:relative;margin:1.4rem 0 0;border-radius:18px;overflow:hidden;border:1px solid rgba(242,239,230,.1);background:#0D0F0D}
.fmap svg{display:block;width:100%;height:auto}
.fmap .land path{fill:#1A1E1B;stroke:rgba(242,239,230,.16);stroke-width:1;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.fmap .gc{stroke:#F2EFE6;stroke-opacity:.35;stroke-dasharray:3 6;stroke-width:1.2;vector-effect:non-scaling-stroke}
.fmap .glow{fill:none;stroke:#19CB44;stroke-opacity:.28;stroke-width:10;vector-effect:non-scaling-stroke;filter:blur(3px)}
.fmap .trk{fill:none;stroke:#3BDC63;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.fmap .dep,.fmap .arr{r:12px;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}
.fmap .dep{fill:#0D0F0D}.fmap .arr{fill:#19CB44}
@media(max-width:560px){.fmap .dep,.fmap .arr{r:18px}}
.fmap .lbl{position:absolute;transform:translate(-50%,14px);font:700 .72rem/1.15 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;text-align:center;white-space:nowrap;color:#fff;text-shadow:0 1px 3px #000}
.fmap .lbl.l{transform:translate(-14%,14px);text-align:left}.fmap .lbl.r{transform:translate(-86%,14px);text-align:right}
.fmap .lbl small{display:block;font-weight:500;font-size:.66rem;color:#A8A498}
.fmap .scale{position:absolute;left:0;right:0;bottom:10px;font:500 .66rem var(--font-mono);color:#A8A498;padding-left:12px}
.fmap .scale i{display:block;height:2px;margin:0 0 3px;background:#A8A498}
.fstats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1.6rem}
@media(min-width:720px){.fstats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ftimes{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin:1.3rem 0 0;color:#E6E2D6}
.ftimes .i{color:#19CB44}.ftimes b{font-family:var(--font-mono);color:#fff}
.fnote{margin:1rem 0 0;padding:.7rem .95rem;border-radius:12px;background:rgba(203,172,97,.14);color:#EADBB0}
.fsec{margin:0 0 1.8rem}
.fstream .tile-t{font-size:1.15rem}
@media(min-width:720px){.fstream{display:grid;grid-template-columns:20rem 1fr;align-items:center}.fstream img{height:100%}}
.fprof-card{padding:1.1rem 1rem .8rem}
.fprof{position:relative;margin:.4rem 0 0;height:clamp(150px,28vw,230px)}
.fprof svg{display:block;width:100%;height:100%;overflow:visible}
.fprof .area{fill:color-mix(in srgb,var(--accent-fill) 22%,transparent)}
.fprof .alt{fill:none;stroke:var(--accent-fill);stroke-width:2;vector-effect:non-scaling-stroke}
.fprof .grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}
.fprof .mark{stroke:var(--fg-muted);stroke-dasharray:3 4;stroke-width:1;vector-effect:non-scaling-stroke}
.fprof .lvl{position:absolute;left:0;transform:translateY(-115%);font:500 .68rem var(--font-mono);color:var(--fg-muted)}
.fprof .mk{position:absolute;top:0;transform:translateX(6px);padding:0 .25rem;border-radius:4px;background:var(--bg-raised);font:600 .72rem var(--font-mono);white-space:nowrap}
.fprof .mk.r{transform:translateX(calc(-100% - 6px))}.fprof .mk~.mk{top:1.5em}
.aps{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
.ap h3{margin:.1rem 0 .7rem;font-size:1.3rem}.ap .mono{font:500 .85em var(--font-mono);color:var(--fg-muted)}
.ap .wx{display:flex;gap:.5rem;align-items:flex-start;margin:0}.ap .wx .i{flex:none;margin-top:.15em;color:var(--accent-fg)}
.ap .metar{display:block;margin:.45rem 0 0;font:500 .74rem/1.45 var(--font-mono);color:var(--fg-muted);overflow-wrap:anywhere}
.ap-k{display:flex;gap:.4rem;align-items:center;margin:1.1rem 0 .5rem;font:600 .72rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted)}
.atc{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.atc li{display:flex;flex-direction:column;align-items:center;min-width:3.4rem;padding:.35rem .5rem;border-radius:10px;border:1px dashed var(--line);font:600 .78rem var(--font-mono);color:var(--fg-muted)}
.atc li.on{border:1px solid var(--accent-fill);background:color-mix(in srgb,var(--accent-fill) 14%,transparent);color:var(--fg)}
.atc li small{font-weight:500;font-size:.68rem;color:var(--fg-muted)}
.ap .note{margin:.7rem 0 0;font-size:.88rem}
.fplan summary{display:flex;gap:.5rem;align-items:center;cursor:pointer;font-weight:700;list-style:none}
.fplan summary::-webkit-details-marker{display:none}
.fplan summary::after{content:"+";margin-left:auto;font:700 1.3rem/1 var(--font-mono);color:var(--accent-fg)}
.fplan[open] summary::after{content:"−"}
.fplan dl{display:grid;gap:.7rem;margin:1rem 0 0}
.fplan dl div{display:grid;grid-template-columns:minmax(8rem,12rem) 1fr;gap:1rem}
@media(max-width:520px){.fplan dl div{grid-template-columns:1fr;gap:.1rem}}
.fplan dt{font-size:.9rem;color:var(--fg-muted)}.fplan dd{margin:0}
.fplan code{font:500 .85rem/1.5 var(--font-mono);overflow-wrap:anywhere}
.fnav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2.2rem 0 .8rem}
.fnav a{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.1rem;border-radius:var(--radius-lg);background:var(--bg-raised);box-shadow:var(--shadow);color:var(--fg);text-decoration:none;font-weight:700}
.fnav a>span{display:flex;align-items:center;gap:.4rem}.fnav .new{align-items:flex-end;text-align:right}
.fnav small{font-weight:400;font-size:.84rem;color:var(--fg-muted)}
.fback{margin:0 0 1rem;text-align:center}
.fine-print{font-size:.85rem;margin:1.4rem 0 2.6rem}
