@font-face{font-family:'Atkinson Hyperlegible';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/atkinson-hyperlegible-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Atkinson Hyperlegible';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/atkinson-hyperlegible-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Saira Extra Condensed';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/saira-extra-condensed-800.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* Hangar 1 Cafe - Valley Digital build. Colors come from the cafe's own olive badge. */
:root{--deep:#1b2112;--olive:#44532a;--olive2:#2c361c;--gold:#f3b53a;--cream:#f8f2e2;--card:#fffaf0;--ink:#1b2014;--mute:#4b5140;--line:#1b201426}
*{box-sizing:border-box;margin:0}
html{font-size:112.5%;scroll-behavior:smooth;scroll-padding-top:6rem}
html.big{font-size:131.25%}
body{background:var(--cream);color:var(--ink);font:400 1.06rem/1.55 "Atkinson Hyperlegible",system-ui,sans-serif;padding-bottom:0}
a{color:inherit}
img,svg{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{max-width:74rem;margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem)}
.d{font-family:"Saira Extra Condensed","Arial Narrow",sans-serif;font-weight:800;text-transform:uppercase;line-height:.9;letter-spacing:.005em}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--gold);padding:.6rem 1rem;z-index:99}
/* header */
.hdr{position:sticky;top:0;z-index:20;background:var(--cream);border-bottom:2px solid var(--ink)}
.hdr .wrap{display:flex;align-items:center;gap:1rem 1.4rem;padding-top:.55rem;padding-bottom:.55rem}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;margin-right:auto}
.brand svg{width:3rem;height:3rem;flex:none}
.brand b{display:block;font:800 1.75rem/.9 "Saira Extra Condensed",sans-serif;text-transform:uppercase}
.brand span{font-size:.8rem;font-weight:700;color:var(--mute)}
.nav{display:flex;gap:.2rem}
.nav a{text-decoration:none;font-weight:700;padding:.75rem .7rem;border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current]{border-color:var(--gold)}
.tel{display:inline-flex;align-items:center;gap:.5rem;min-height:3rem;padding:.5rem 1.1rem;background:var(--olive);color:var(--cream);font-weight:700;font-size:1.15rem;text-decoration:none;border-radius:.4rem;white-space:nowrap}
.tel:hover{background:var(--deep)}
.size{min-height:3rem;min-width:3rem;border:2px solid var(--ink);background:none;border-radius:.4rem;font:700 1rem "Atkinson Hyperlegible",sans-serif;cursor:pointer;color:var(--ink)}
.size[aria-pressed=true]{background:var(--ink);color:var(--cream)}
/* hero */
.hero{position:relative;background:var(--deep);color:var(--cream);overflow:hidden}
.hero .scene{position:absolute;inset:0;width:100%;height:100%}
.hero .in{position:relative;padding-top:clamp(2.5rem,7vw,5.5rem);padding-bottom:clamp(2rem,5vw,3.5rem)}
.hero h1{font-size:clamp(3.6rem,11vw,8.6rem);max-width:9.5em}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero p.lead{font-size:1.3rem;max-width:27em;margin-top:1.1rem;color:#f1ebd8}
.cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.3rem;padding:.7rem 1.5rem;border-radius:.4rem;font-weight:700;font-size:1.15rem;text-decoration:none;background:var(--gold);color:var(--ink);border:2px solid var(--gold)}
.btn:hover{background:#ffd16b}
.btn.ghost{background:#1b2112b3;color:var(--cream);border-color:var(--cream)}.btn.ghost:hover{background:var(--cream);color:var(--ink)}
.btn.dark{background:var(--olive);border-color:var(--olive);color:var(--cream)}.btn.dark:hover{background:var(--deep)}
.btn.line{background:none;border-color:var(--ink);color:var(--ink)}.btn.line:hover{background:var(--ink);color:var(--cream)}
.rate{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.4rem;font-weight:700;text-underline-offset:.25em}
.rate i{font-style:normal;color:var(--gold);letter-spacing:.1em;font-size:1.25rem}
/* departures board */
.board{position:relative;margin-top:clamp(2rem,5vw,3.5rem);background:#0e120a;border:2px solid #3a4427;border-radius:.6rem;display:grid;grid-template-columns:1fr 1fr 2fr 1.4fr;box-shadow:0 1.2rem 2.5rem #0008}
.board>div{padding:1rem 1.15rem 1.15rem;border-right:1px solid #3a4427;min-width:0}
.board>div:last-child{border-right:0}
.board small{display:block;font-weight:700;font-size:.82rem;letter-spacing:.08em;color:#c9d0ae;margin-bottom:.5rem}
.flap{display:flex;flex-wrap:wrap;gap:3px}
.flap span{display:inline-grid;place-items:center;width:1.05em;height:1.45em;background:linear-gradient(#2a3020 0 49%,#0e120a 49% 53%,#232a19 53%);color:var(--cream);font:800 1.75rem/1 "Saira Extra Condensed",sans-serif;border-radius:3px}
.flap span.sp{background:none;width:.4em}
.flap.gold span{color:var(--gold)}
[data-open=yes] .flap.st span{color:#7fe38e}[data-open=no] .flap.st span{color:#ff9d7a}
@media(prefers-reduced-motion:no-preference){.flap span{animation:flip .5s both;animation-delay:calc(var(--i)*35ms)}@keyframes flip{from{transform:rotateX(90deg);opacity:0}}}
.boardnote{position:relative;font-size:.85rem;color:#c9d0ae;margin-top:.7rem}
/* runway threshold divider */
.thresh{height:1.5rem;background:var(--ink) repeating-linear-gradient(90deg,var(--cream) 0 .9rem,transparent .9rem 1.8rem);background-size:auto 60%;background-repeat:repeat-x;background-position:0 50%}
section{padding:clamp(3rem,7vw,5.5rem) 0}
h2.d{font-size:clamp(2.8rem,6.5vw,4.6rem);color:var(--olive2)}
.sub{font-size:1.2rem;max-width:32em;margin-top:.7rem;color:var(--mute)}
/* favorites */
.fav{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);margin-top:2rem;align-items:start}
.list{background:var(--card);border:2px solid var(--ink);border-radius:.6rem;padding:.4rem 1.4rem}
.item{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:.95rem 0;border-bottom:1px solid var(--line)}
.item:last-child{border:0}
.item b{font-size:1.3rem}
.item p{grid-column:1;color:var(--mute)}
.item .p{font-weight:700;font-size:1.2rem;color:var(--olive)}
.tag{display:inline-block;background:var(--gold);font-size:.8rem;font-weight:700;padding:.1rem .5rem;border-radius:.25rem;margin-left:.5rem;vertical-align:middle}
.slot{display:grid;place-items:center;text-align:center;border:2px dashed var(--olive);border-radius:.6rem;background:repeating-linear-gradient(135deg,#44532a12 0 14px,transparent 14px 28px);color:var(--olive2);font-weight:700;padding:1.2rem;min-height:15rem}
.slot small{display:block;font-weight:400;color:var(--mute)}
.photos{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.photos .slot:first-child{grid-column:1/-1;min-height:17rem}.photos .slot{min-height:10rem}
/* dark band */
.dark{background:var(--olive2);color:var(--cream)}
.dark h2.d{color:var(--cream)}.dark .sub{color:#e6e0cc}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,4rem);align-items:center}
.dark .slot{border-color:var(--gold);color:var(--cream);background:repeating-linear-gradient(135deg,#f3b53a14 0 14px,transparent 14px 28px)}.dark .slot small{color:#e6e0cc}
.pts{list-style:none;padding:0;margin-top:1.4rem}.pts li{padding:.8rem 0 .8rem 2.2rem;border-top:1px solid #f8f2e233;position:relative;font-size:1.15rem}
.pts li:before{content:"";position:absolute;left:.1rem;top:1.3rem;width:1.2rem;height:.35rem;background:var(--gold)}
/* pilots */
.pilot{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(1.5rem,5vw,4rem);align-items:start}
.strip{background:var(--card);border:2px solid var(--ink);border-radius:.6rem;display:grid;grid-template-columns:repeat(3,1fr)}
.strip div{padding:.9rem 1.1rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.strip small{display:block;font-weight:700;font-size:.82rem;color:var(--mute)}
.strip b{font:800 2rem/1 "Saira Extra Condensed",sans-serif}
.fine{font-size:.9rem;color:var(--mute);margin-top:.8rem}
/* reviews */
.rev{display:grid;grid-template-columns:auto 1fr;gap:clamp(1.5rem,5vw,4rem);align-items:center}
.rev .n{font-size:clamp(5rem,13vw,8.5rem);color:var(--olive)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.chips span{border:2px solid var(--ink);border-radius:2rem;padding:.3rem .9rem;font-weight:700;background:var(--card)}
blockquote{font-size:1.5rem;line-height:1.35;border-left:.4rem solid var(--gold);padding-left:1.2rem}blockquote cite{display:block;font-size:1rem;font-style:normal;color:var(--mute);margin-top:.5rem}
/* events */
.ev{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.ev div{background:var(--card);border:2px solid var(--ink);border-radius:.6rem;padding:1.2rem}
.ev small{font-weight:700;color:var(--olive)}.ev b{display:block;font-size:1.3rem;margin:.2rem 0}
/* visit */
.hours{background:var(--card);border:2px solid var(--ink);border-radius:.6rem;padding:.4rem 1.2rem}
.hours div{display:flex;justify-content:space-between;padding:.75rem .4rem;border-bottom:1px solid var(--line);font-size:1.15rem}.hours div:last-child{border:0}
.hours b{font-weight:700}.hours .today{background:var(--gold);border-radius:.3rem;font-weight:700}
.addr{font-size:1.5rem;font-weight:700;line-height:1.3;margin-top:1rem}
footer{background:var(--deep);color:#e6e0cc;padding:2.5rem 0 6.5rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:1rem 3rem;justify-content:space-between}footer a{color:var(--cream)}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;grid-template-columns:repeat(3,1fr);background:var(--deep);border-top:3px solid var(--gold)}
.bar a{display:grid;place-items:center;min-height:3.8rem;color:var(--cream);font-weight:700;font-size:1.1rem;text-decoration:none;border-right:1px solid #f8f2e233}.bar a:first-child{background:var(--gold);color:var(--ink)}
/* menu page */
.mhead{background:var(--deep);color:var(--cream);padding:clamp(2rem,6vw,4rem) 0}.mhead h1{font-size:clamp(3.6rem,10vw,7rem)}
.jump{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}
.msec h2{font-size:3.2rem;color:var(--olive2);border-bottom:3px solid var(--ink);padding-bottom:.3rem;margin-bottom:.2rem;display:flex;justify-content:space-between;align-items:baseline}
.msec h2 span{font:700 .95rem "Atkinson Hyperlegible",sans-serif;text-transform:none;letter-spacing:0;color:var(--mute)}
@media(max-width:60rem){.nav{display:none}.fav,.two,.pilot,.rev,.mgrid{grid-template-columns:1fr}.board{grid-template-columns:1fr 1fr}.board>div{border-bottom:1px solid #3a4427}.board>div:nth-child(2n){border-right:0}.board>div:nth-child(n+3){grid-column:1/-1;border-right:0}.ev{grid-template-columns:1fr}.bar{display:grid}}
@media(max-width:34rem){.brand span,.hdr .tel{display:none}.board>div{grid-column:1/-1;border-right:0}.brand b{font-size:1.45rem}.brand svg{width:2.5rem;height:2.5rem}.strip{grid-template-columns:1fr 1fr}.flap span{font-size:1.45rem}.hdr .wrap{gap:.5rem}}
@media print{.hdr,.bar,footer,.jump,.noprint,.thresh{display:none!important}body{background:#fff;font-size:11pt}.mhead{background:none;color:#000;padding:0}.mhead h1{font-size:28pt}.list{border:0;padding:0}.mgrid{grid-template-columns:1fr 1fr}section{padding:8pt 0}}

/* real photos + instagram + labelled action buttons */
.hphoto{position:absolute;inset:0 0 0 42%;background:none 62% 30%/cover no-repeat}
.hphoto:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 0,#1b2112cc 22%,#1b211233 60%,#1b211200),linear-gradient(0deg,var(--deep) 0,#1b211200 45%)}
.hero h1{text-shadow:0 2px 18px #0009}
.btn.act{flex-direction:column;align-items:flex-start;gap:0;min-height:4.2rem;padding:.6rem 1.4rem;font-size:1.35rem;line-height:1.15}
.btn.act small{font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.85}
.shot{position:relative;display:block;grid-column:1/-1;border-radius:.6rem;overflow:hidden;border:2px solid var(--ink)}
.shot img{width:100%;height:19rem;object-fit:cover}
.shot span{position:absolute;left:.7rem;bottom:.7rem;background:var(--deep);color:var(--cream);font-weight:700;font-size:.85rem;padding:.25rem .7rem;border-radius:.3rem}
.pic{width:100%;height:100%;min-height:22rem;max-height:30rem;object-fit:cover;border-radius:.6rem;border:2px solid var(--gold)}
.igsec{background:var(--card);border-block:2px solid var(--ink)}
.ighead{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:end}
.iggrid{display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem;margin-top:1.8rem}
.iggrid a{display:grid;aspect-ratio:1;border-radius:.5rem;overflow:hidden;text-decoration:none;min-height:0;padding:.5rem;font-size:.9rem}
.iggrid a:not(.slot){padding:0;border:2px solid var(--ink)}
.iggrid img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
.iggrid a:hover img{transform:scale(1.05)}
@media(max-width:60rem){.hphoto{inset:0;opacity:.55}.hphoto:after{background:linear-gradient(0deg,var(--deep) 8%,#1b211288 60%,#1b2112cc)}.iggrid{grid-template-columns:repeat(3,1fr)}.cta.acts .btn{flex:1 1 100%}}

/* fly-in map, airport list, google map, small photo tiles */
.shot.sm{grid-column:auto}.shot.sm img{height:11rem}
.iggrid{grid-template-columns:repeat(4,1fr)}
.dark .strip{margin-top:1.6rem;color:var(--ink)}
.radar{width:100%;max-width:34rem;margin:0 auto;background:#161b0e;border:2px solid #3a4427;border-radius:50%}
.radar .ap{font:800 19px "Saira Extra Condensed",sans-serif;fill:var(--gold);letter-spacing:.03em}
.radar .rg{font:700 11px "Atkinson Hyperlegible",sans-serif;fill:#c9d0ae}
.apts{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:.6rem;margin-top:1rem}
.apt{display:grid;grid-template-columns:3.6rem 1fr auto;gap:.8rem;align-items:center;min-height:4rem;padding:.6rem .9rem;background:var(--card);color:var(--ink);border-radius:.5rem;text-decoration:none;border:2px solid transparent}
.apt:hover,.apt:focus-visible{border-color:var(--gold)}
.apt b{font:800 1.9rem/1 "Saira Extra Condensed",sans-serif;color:var(--olive)}
.apt span{font-weight:700;line-height:1.2}.apt small{display:block;font-weight:400;font-size:.82rem;color:var(--mute)}
.apt em{font-style:normal;font-weight:700;text-align:right;line-height:1.2;white-space:nowrap}
.gmap{margin-top:2.5rem;border:2px solid var(--gold);border-radius:.6rem;overflow:hidden;background:#0e120a}
.gmap iframe{display:block;width:100%;height:26rem;border:0}
@media(max-width:60rem){.iggrid{grid-template-columns:repeat(2,1fr)}.gmap iframe{height:20rem}}

/* ---- cleanup pass: full-bleed real hero, softer cards, more air ---- */
.hphoto{inset:0;background:url(img/hero-ramp.webp) 72% 62%/cover no-repeat}
.hphoto:after{background:linear-gradient(90deg,#141a0df2 0,#141a0dd9 30%,#141a0d73 58%,#141a0d1a 100%),linear-gradient(0deg,#141a0df2 0,#141a0d00 38%)}
.hero .in{padding-top:clamp(3rem,8vw,6.5rem)}
.hero h1{max-width:8.2em}
.credit{position:relative;font-size:.78rem;color:#c9d0ae;margin-top:.8rem;text-align:right}.credit a{color:inherit}
.hdr{border-bottom:1px solid var(--line)}
.list,.strip,.ev div,.hours{border:1px solid var(--line);box-shadow:0 1px 2px #1b20140f,0 8px 24px -12px #1b201433}
.shot,.iggrid a:not(.slot){border:0}
.size{border-width:1px}
.chips span{border-width:1px}
.btn.line{border-width:1px}
.igsec,section[style*="border-block"]{border-block:1px solid var(--line)!important}
.board{border-width:1px;background:#0e120ae6;backdrop-filter:blur(6px)}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}
.sub{margin-top:.9rem}
.pic{border:0}
.gmap{border:0}
.hop{margin-top:2.2rem;border-top:1px solid #f8f2e233;padding-top:1.2rem}
.hop summary{cursor:pointer;font-weight:700;font-size:1.15rem;min-height:3rem;display:flex;align-items:center;gap:.6rem;list-style:none}
.hop summary::-webkit-details-marker{display:none}
.hop summary:before{content:"+";display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--gold);color:var(--ink);font-size:1.3rem;line-height:1}
.hop[open] summary:before{content:"\2013"}
@media(max-width:60rem){.hphoto{inset:0;opacity:1;background-image:url(img/hero-ramp-sm.webp);background-position:68% 50%}.hphoto:after{background:linear-gradient(0deg,#141a0df7 12%,#141a0dbf 55%,#141a0dd9)}.credit{text-align:left}}
/* keep the headline clear of the aircraft */
.hero h1{font-size:clamp(3.4rem,8.2vw,6.7rem);max-width:6.6em}
.hero .in{padding-top:clamp(2.2rem,5vw,4rem)}
@media(max-width:60rem){.hphoto:after{background:linear-gradient(0deg,#141a0df7 10%,#141a0d99 50%,#141a0dbf)}}

/* ---- fixes: phone menu, tap targets, icons, spacing ---- */
.ic{width:1.15em;height:1.15em;fill:currentColor;flex:none;display:inline-block;vertical-align:-.18em;margin-right:.4em}
.btn.act span{display:inline-flex;align-items:center}
.bar a{display:flex;align-items:center;justify-content:center}
.navbtn{display:none;flex-direction:column;justify-content:center;gap:.32rem;width:3rem;height:3rem;padding:0 .7rem;border:1px solid var(--ink);border-radius:.4rem;background:none;cursor:pointer}
.navbtn span{display:block;height:.16rem;background:var(--ink);border-radius:1px;transition:transform .2s,opacity .2s}
.navbtn[aria-expanded=true] span:nth-child(1){transform:translateY(.48rem) rotate(45deg)}
.navbtn[aria-expanded=true] span:nth-child(2){opacity:0}
.navbtn[aria-expanded=true] span:nth-child(3){transform:translateY(-.48rem) rotate(-45deg)}
@media(max-width:60rem){.navbtn{display:flex;order:3}.hdr .wrap{position:relative}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--cream);border-bottom:2px solid var(--ink);box-shadow:0 1rem 2rem #0003;padding:.3rem clamp(1rem,4vw,2.5rem) .8rem}
 .nav.open{display:flex}.nav a{padding:1rem .2rem;font-size:1.2rem;border-bottom:1px solid var(--line)}.nav a:last-child{border-bottom:0}}
footer a{display:inline-block;padding:.65rem 0;min-height:2.75rem}
footer .wrap>div{line-height:1.5}
.rate{min-height:2.75rem}
.credit a{display:inline-block;padding:.85rem .15rem}
.skip:focus{padding:.9rem 1.2rem}
.item{padding:1.05rem 0}
.fav{margin-top:2.4rem}
.two{gap:clamp(2rem,6vw,5rem)}
.ev{gap:1.2rem}.ev div{padding:1.4rem}
img{height:auto}.shot img,.iggrid img,.pic{height:100%}.shot img{height:19rem}.shot.sm img{height:11rem}

/* ---- critique pass ---- */
.nowline{position:relative;display:inline-flex;align-items:center;gap:.6rem;margin-top:1rem;padding:.45rem .9rem;background:#0e120acc;border-radius:.4rem;font-weight:700;font-size:1.15rem;color:var(--cream)}
.nowline i{width:.8rem;height:.8rem;border-radius:50%;background:#ff9d7a;flex:none}[data-open=yes] .nowline i{background:#7fe38e}
.hero p.lead{margin-top:.9rem}
.flap{gap:3px .55em;font:800 1.75rem/1.45 "Saira Extra Condensed",sans-serif;color:var(--cream)}
.flap .w{display:inline-flex;gap:3px;white-space:nowrap;background:none;width:auto;height:auto;animation:none}
.flap .w span{animation:flip .5s both;animation-delay:calc(var(--i)*35ms)}
@media(prefers-reduced-motion:reduce){.flap .w span{animation:none}}
.btn.act small,.board small,.strip small,.apt small,.credit,.ev small{font-size:.9rem}
.tag{font-size:.9rem;white-space:nowrap}
.brand span{font-size:.9rem}
.size span{font-weight:700}
.size{padding:0 .8rem}
.radar .ap{font-size:22px}
.msec .list{box-shadow:none;border:0}
.hop summary:before{flex:none}
footer{padding-bottom:2.5rem}
.bye{display:block!important;margin-bottom:1.5rem}.bye .d{font-size:2.6rem;color:var(--gold)}
footer .credit{text-align:left;margin-top:.3rem}
@media(max-width:60rem){footer{padding-bottom:7rem}.radar .rg{display:none}.radar .ap{font-size:27px}.size span{display:none}}
@media(max-width:34rem){.apts{grid-template-columns:1fr}.apt{grid-template-columns:3.2rem 1fr auto}.apt span{min-width:0}.apt em{white-space:normal;max-width:9.5rem}
 .bar a{font-size:1rem}.bar .ic{margin-right:.3em}.flap,.flap span{font-size:1.45rem}.strip b{font-size:1.7rem}.btn.act{font-size:1.2rem}}
@media(max-width:34rem){.apt{grid-template-columns:3.2rem 1fr;row-gap:.15rem}.apt em{grid-column:2;text-align:left;max-width:none;white-space:normal}.apt em small{display:inline;margin-left:.5rem}}

/* ================= fly-in section v2 ================= */
.fly{background:linear-gradient(180deg,#232b17,#1b2112 70%)}
.fl-top{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:flex-end;justify-content:space-between}
.fl-top .nowline{margin:0 0 .4rem;background:#0e120a}
.fl-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);margin-top:2.4rem;align-items:center}
.fl-map{margin:0}.fl-map svg{width:100%;height:auto;border-radius:.8rem;box-shadow:0 1.5rem 3rem -1rem #000a,0 0 0 1px #3a4427}
.fl-map figcaption{font-size:.9rem;color:#c9d0ae;margin-top:.6rem}
.fl-map .lb{font:700 15px "Atkinson Hyperlegible",sans-serif;fill:#f8f2e2;letter-spacing:.06em}
.fl-map .lb.dim{fill:#c9d0ae}.fl-map .lb.gold{fill:#f3b53a;font-size:17px}.fl-map .lb.ink{fill:#1b2014}.fl-map .lb.big{font:800 24px "Saira Extra Condensed",sans-serif;letter-spacing:.04em}
.fl-map .rw{font:800 40px "Saira Extra Condensed",sans-serif;fill:#f8f2e2;text-anchor:middle}
@media(prefers-reduced-motion:no-preference){.fl-map .walk{animation:walk 1.4s linear infinite}@keyframes walk{to{stroke-dashoffset:-22}}}
.fl-facts{margin:0;display:grid;gap:0}
.fl-facts>div:not(.cta){padding:1.1rem 0;border-top:1px solid #f8f2e22e}
.fl-facts dt{font:800 1.7rem/1 "Saira Extra Condensed",sans-serif;text-transform:uppercase;color:var(--gold);letter-spacing:.02em}
.fl-facts dd{margin:.35rem 0 0;font-size:1.12rem;color:#f1ebd8}
.fl-facts .cta{margin-top:.6rem;padding-top:1.2rem;border-top:1px solid #f8f2e22e}
.fl-ref{margin-top:2.4rem;padding:1rem 1.2rem;background:#0e120a;border-radius:.6rem;font-weight:700;font-size:1.05rem;line-height:1.7;color:var(--cream)}
.fl-ref b{color:var(--gold);margin-right:.7rem;text-transform:uppercase;font-size:.9rem;letter-spacing:.06em}
.fl-ref i{font-style:normal;color:#8f9a72;margin:0 .35rem}
.fl-ref span{display:block;font-weight:400;font-size:.95rem;color:#c9d0ae}.fl-ref a{color:var(--cream);text-underline-offset:.2em}
.fl-far{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(1.5rem,5vw,4.5rem);align-items:center;margin-top:clamp(3rem,6vw,5rem)}
.fl-radar{position:relative;max-width:36rem;margin:0 auto;border-radius:50%;background:radial-gradient(circle at 50% 50%,#22301a 0,#131809 72%);box-shadow:0 0 0 1px #3a4427,0 0 0 .7rem #161b0e,0 0 0 calc(.7rem + 1px) #3a4427,0 2rem 4rem -1rem #000c}
.fl-radar svg{display:block;width:100%;height:auto;position:relative;z-index:1;overflow:visible}
.fl-radar .ring{fill:none;stroke:#f8f2e2;stroke-opacity:.22;stroke-dasharray:2 7}.fl-radar .axis{stroke:#f8f2e2;stroke-opacity:.12}
.fl-radar .rg{font:700 12px "Atkinson Hyperlegible",sans-serif;fill:#c9d0ae}.fl-radar .rg.n{font-size:17px;fill:#f8f2e2}
.fl-radar .ap{font:800 23px "Saira Extra Condensed",sans-serif;fill:#e9c676;letter-spacing:.03em;transition:fill .2s}
.fl-radar .ap.home{fill:#f8f2e2;font-size:25px}
.fl-radar .pt{cursor:pointer;outline:none}
.fl-radar .pt line{stroke:#f3b53a;stroke-opacity:0;stroke-width:2;transition:stroke-opacity .25s}
.fl-radar .pt .hit{fill:transparent}
.fl-radar .pt .dot{fill:#f3b53a;transform-box:fill-box;transform-origin:center;transition:transform .2s}
.fl-radar .pt:hover .ap,.fl-radar .pt:focus-visible .ap,.fl-radar .pt.on .ap{fill:#fff}
.fl-radar .pt:hover line,.fl-radar .pt:focus-visible line{stroke-opacity:.45}
.fl-radar .pt.on line{stroke-opacity:.95}
.fl-radar .pt.on .dot{fill:#fff;transform:scale(1.5);filter:drop-shadow(0 0 6px #f3b53a)}
.fl-radar .pt:focus-visible .hit{stroke:#f3b53a;stroke-width:2.5}
.sweep{position:absolute;inset:0;border-radius:50%;pointer-events:none;z-index:0;background:conic-gradient(from 0deg,#f3b53a00 0 285deg,#f3b53a14 320deg,#f3b53a4d 360deg);display:none}
@media(prefers-reduced-motion:no-preference){.sweep{display:block;animation:sweep 7s linear infinite}@keyframes sweep{to{transform:rotate(360deg)}}
 .fl-radar .pt:not(.on) .dot{animation:ping 7s linear infinite;animation-delay:var(--d)}@keyframes ping{0%{transform:scale(1.9);filter:brightness(1.7)}9%{transform:scale(1);filter:none}100%{transform:scale(1)}}}
.fl-read h3{font-size:clamp(2.4rem,5vw,3.6rem);color:var(--cream)}
.fl-hint{color:#c9d0ae;margin-top:.5rem}
.fl-out{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid #f8f2e22e}
.fl-code{font-size:clamp(4.5rem,9vw,6rem);color:var(--gold);line-height:.85}
.fl-name{font-weight:700;font-size:1.35rem;margin-top:.5rem}
.fl-dist,.fl-time{font-size:1.15rem;color:#f1ebd8;margin-top:.5rem}.fl-dist b,.fl-time b{font:800 2rem/1 "Saira Extra Condensed",sans-serif;color:var(--cream);margin:0 .1rem}
.fl-speed{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem}.fl-speed span{font-weight:700;margin-right:.4rem;color:#c9d0ae}
.fl-speed button{min-height:3rem;padding:0 1.1rem;border-radius:2rem;border:1px solid #f8f2e266;background:none;color:var(--cream);font:700 1.05rem "Atkinson Hyperlegible",sans-serif;cursor:pointer}
.fl-speed button:hover{border-color:var(--gold)}.fl-speed button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.fl-link{display:inline-block;margin-top:1.3rem;padding:.7rem 0;font-weight:700;color:var(--cream);text-underline-offset:.25em}
@media(max-width:60rem){.fl-grid,.fl-far{grid-template-columns:1fr}.fl-radar{margin-inline:.7rem}.fl-radar .rg{display:none}.fl-radar .ap{font-size:29px}.fl-radar .ap.home{font-size:30px}.fl-map .lb{font-size:17px}.fl-map .lb.gold{font-size:20px}}
@media(max-width:34rem){.fl-map{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:.8rem;box-shadow:0 0 0 1px #3a4427}.fl-map svg{min-width:36rem;box-shadow:none;border-radius:0}.fl-map figcaption{position:sticky;left:0;padding:0 .2rem .6rem}.fl-map figcaption:after{content:" Swipe sideways to see the whole ramp."}}

/* ============ fly-in v3: light section, glass-cockpit display ============ */
.brand .logo{width:3rem;height:3rem;border-radius:.5rem;flex:none;display:block}
.fly{background:linear-gradient(180deg,#e8ecd8 0,#f3f0df 55%,var(--cream) 100%);color:var(--ink)}
.fly h2.d{color:var(--olive2)}.fly .sub{color:var(--mute)}
.fly .fl-top .nowline{background:var(--deep)}
.fl-map svg{box-shadow:0 1px 2px #1b20141a,0 1.4rem 2.6rem -1.2rem #1b201455,0 0 0 1px #44532a40}
.fl-map figcaption{color:var(--mute)}
.fl-map .lb.pap{fill:#1b2014}.fl-map .lb.pap.b{font-size:17px;fill:#5b3d00}
.fl-facts>div:not(.cta),.fl-facts .cta{border-top-color:var(--line)}
.fl-facts dt{color:var(--olive)}.fl-facts dd{color:var(--ink)}
/* shared glass */
.fl-ref,.mfd{--glass1:#1d5361;--glass2:#123843;--cy:#8ff0ff;--mg:#ff7de0;--gr:#9dffb0;background:linear-gradient(160deg,var(--glass1),var(--glass2));color:#eafcff;border-radius:.9rem;box-shadow:0 0 0 1px #0d2a33,0 0 0 .45rem #cfd5c2,0 0 0 calc(.45rem + 1px) #9aa58a,0 1.6rem 3rem -1.2rem #12384366}
.fl-ref{margin:2.8rem .45rem 0;padding:1rem 1.2rem;font-weight:400;font-size:1rem;line-height:1.5}
.fields{display:grid;grid-template-columns:repeat(6,auto);gap:.6rem 1.4rem;margin:0;justify-content:space-between}
.fields dt,.mfd-top dt{font:700 .78rem/1 "Atkinson Hyperlegible",sans-serif;letter-spacing:.12em;color:var(--cy);opacity:.85}
.fields dd,.mfd-top dd{margin:.25rem 0 0;font:800 1.9rem/1 "Saira Extra Condensed",sans-serif;letter-spacing:.03em;color:#fff;text-shadow:0 0 14px #8ff0ff66;white-space:nowrap}
.fl-ref p{margin-top:.8rem;padding-top:.7rem;border-top:1px solid #8ff0ff33;font-size:.95rem;color:#c7eef4}.fl-ref a{color:#fff}
.fl-farhead{margin-top:clamp(3rem,6vw,4.5rem);display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1.5rem}
.fl-farhead h3{font-size:clamp(2.4rem,5vw,3.6rem);color:var(--olive2)}.fl-farhead p{color:var(--mute);font-size:1.1rem}
.mfd{margin:1.4rem .45rem 0;overflow:hidden;background:
  repeating-linear-gradient(0deg,#ffffff06 0 1px,transparent 1px 4px),linear-gradient(160deg,var(--glass1),var(--glass2))}
.mfd-top{display:grid;grid-template-columns:repeat(5,1fr);margin:0;border-bottom:1px solid #8ff0ff40;background:#0b262e66}
.mfd-top>div{padding:.8rem 1.1rem;border-right:1px solid #8ff0ff26}.mfd-top>div:last-child{border-right:0}
.mfd-top dd small{font:700 .8rem "Atkinson Hyperlegible",sans-serif;margin-left:.25rem;color:var(--cy);text-shadow:none}
.mfd-top [data-out=wpt]{color:var(--mg);text-shadow:0 0 14px #ff7de088}
.mfd-body{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(1rem,4vw,3rem);align-items:center;padding:clamp(1.2rem,3vw,2.2rem)}
.mfd .fl-radar{max-width:32rem;width:100%;background:radial-gradient(circle,#2a6f80 0,#18495600 70%);box-shadow:inset 0 0 0 1px #8ff0ff55,0 0 2.5rem #8ff0ff22}
.mfd .fl-radar .ring{stroke:var(--cy);stroke-opacity:.45;stroke-dasharray:2 6}.mfd .fl-radar .axis{stroke:var(--cy);stroke-opacity:.25}
.mfd .fl-radar .rg{fill:var(--cy)}.mfd .fl-radar .rg.n{fill:#fff}
.mfd .fl-radar .ap{fill:#eafcff}.mfd .fl-radar .ap.home{fill:var(--gr)}
.mfd .fl-radar .pt .dot{fill:var(--cy)}
.mfd .fl-radar .pt line{stroke:var(--mg);stroke-width:3}
.mfd .fl-radar .pt.on line{stroke-opacity:1;filter:drop-shadow(0 0 5px #ff7de0)}
.mfd .fl-radar .pt.on .dot{fill:#fff;filter:drop-shadow(0 0 7px #ff7de0)}
.mfd .fl-radar .pt.on .ap,.mfd .fl-radar .pt:hover .ap,.mfd .fl-radar .pt:focus-visible .ap{fill:var(--mg)}
.mfd .fl-radar .pt:focus-visible .hit{stroke:#fff}
.mfd .fl-radar svg>circle[fill="#f8f2e2"]{fill:var(--gr)}.mfd .fl-radar svg>circle[fill="#44532a"]{fill:#123843}
.mfd .sweep{background:conic-gradient(from 0deg,#8ff0ff00 0 290deg,#8ff0ff1f 325deg,#8ff0ff66 360deg)}
.mfd .fl-out{margin:0;padding:0;border:0}
.mfd .fl-code{color:var(--mg);text-shadow:0 0 22px #ff7de066}
.mfd .fl-name{color:#fff}.mfd .fl-dist,.mfd .fl-time{color:#d6f5fa}.mfd .fl-dist b,.mfd .fl-time b{color:#fff}
.mfd .fl-link{color:var(--cy)}
.mfd-keys{margin:0;padding:.8rem 1.1rem;border-top:1px solid #8ff0ff40;background:#0b262e66}
.mfd-keys span{color:var(--cy);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}
.mfd-keys button{border-radius:.35rem;border-color:#8ff0ff80;color:#eafcff;font-family:"Saira Extra Condensed",sans-serif;font-weight:800;font-size:1.35rem;letter-spacing:.05em;min-width:5.5rem}
.mfd-keys button:hover{border-color:#fff}.mfd-keys button[aria-pressed=true]{background:var(--cy);border-color:var(--cy);color:#0b262e;box-shadow:0 0 1.2rem #8ff0ff66}
.fly .hop{border-top-color:var(--line)}.fly .hop summary{color:var(--ink)}
.fly .apt{border:1px solid var(--line)}
@media(max-width:60rem){.fields{grid-template-columns:repeat(3,1fr)}.mfd-body{grid-template-columns:1fr}.mfd-top{grid-template-columns:repeat(5,auto)}.mfd-top>div{padding:.6rem .55rem}.mfd-top dd,.fields dd{font-size:1.5rem}.mfd .fl-radar{margin-inline:auto}}
@media(max-width:34rem){.fields{grid-template-columns:repeat(2,1fr)}.mfd-top dt{font-size:.7rem;letter-spacing:.06em}.mfd-top dd{font-size:1.3rem}.mfd-top dd small{font-size:.65rem;margin-left:.1rem}}

/* ---- phone pass ---- */
.fl-pick{display:block;font-weight:700;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cy)}
.fl-sel{display:block;width:100%;max-width:22rem;min-height:3.2rem;margin:.4rem 0 1.4rem;padding:0 .9rem;border-radius:.4rem;border:1px solid #8ff0ff80;background:#0b262e;color:#fff;font:700 1.1rem "Atkinson Hyperlegible",sans-serif}
.fl-ref a{display:inline-block;padding:.75rem .1rem}
.fl-ref p{line-height:1.3}
@media(max-width:60rem){.mfd-body{padding:.9rem .7rem 1.3rem;gap:1.2rem}.mfd .fl-radar{max-width:26rem}.fl-radar .pt .hit{transform-box:fill-box;transform-origin:center;transform:scale(1.5)}.fl-sel{max-width:none}}
@media(max-width:34rem){.mfd,.fl-ref{margin-inline:.3rem}.mfd .fl-code{font-size:4rem}.fl-top{gap:.8rem}}

/* ================= mobile rebuild ================= */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.btn.act b{font-weight:inherit}.btn.act small i{font-style:normal}
.short{display:none}
@media(max-width:60rem){
  .long{display:none}.short{display:inline}
  .hero{display:flex;flex-direction:column}
  .hphoto{position:relative;inset:auto;flex:none;height:clamp(11rem,48vw,21rem);opacity:1;background-position:76% 44%}
  .hphoto:after{background:linear-gradient(0deg,var(--deep) 0,#1b211200 42%)}
  .hero .in{padding-top:.4rem;padding-bottom:2rem}
  .hero h1{font-size:min(3.6rem,10.6vw);max-width:none;line-height:.94;text-shadow:none}
  .hero h1 em{display:block}
  .nowline{font-size:1rem;margin-top:.9rem;padding:.4rem .8rem}
  .hero p.lead{font-size:1.08rem;line-height:1.5;margin-top:.8rem;max-width:none}
  .cta.acts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1.1rem}
  .cta.acts .btn{flex:none;min-height:3.6rem;padding:.5rem .8rem;font-size:1.08rem;min-width:0}
  .cta.acts .btn small{font-size:.7rem;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .cta.acts .btn:nth-child(3){grid-column:1/-1;min-height:3rem;flex-direction:row;align-items:center;justify-content:center}
  .cta.acts .btn:nth-child(3) small{display:none}
  .rate{font-size:.95rem;margin-top:.9rem;min-height:2.75rem}.rate i{font-size:1rem}
  .board{margin-top:1.2rem}
  .board>div{grid-column:auto;padding:.7rem .85rem .85rem;border-right:1px solid #3a4427}
  .board>div:nth-child(2n){border-right:0}
  .board>div:nth-child(n+3){grid-column:1/-1;border-right:0}
  .board small{font-size:.78rem;margin-bottom:.35rem}
  .flap,.flap span{font-size:1.3rem}
  section{padding:2.8rem 0}
  h2.d{font-size:clamp(2.1rem,8vw,3rem)}
  .sub{font-size:1.06rem;margin-top:.6rem}
  .fav{margin-top:1.4rem;gap:1.4rem}
  .item b{font-size:1.15rem}.item .p{font-size:1.05rem}.item{padding:.85rem 0}
  .shot img{height:15rem}.shot.sm img{height:9rem}
  .two{gap:1.5rem}.pic{min-height:0;max-height:16rem}
  .pts li{font-size:1.05rem;padding:.7rem 0 .7rem 2rem}
  .rev{gap:1rem}.rev .n{font-size:4.2rem}
  blockquote{font-size:1.25rem}
  .fl-grid{margin-top:1.4rem;gap:1.2rem}
  .fl-facts dt{font-size:1.45rem}.fl-facts dd{font-size:1.02rem}.fl-facts>div:not(.cta){padding:.85rem 0}
  .fl-ref{margin-top:1.8rem;padding:.9rem 1rem}
  .fields dd,.mfd-top dd{font-size:1.4rem}
  .fl-farhead{margin-top:2.4rem}.fl-farhead h3{font-size:2.1rem}.fl-farhead p{font-size:1rem}
  .mfd .fl-code{font-size:3.2rem}.fl-name{font-size:1.15rem}.fl-dist,.fl-time{font-size:1.02rem}.fl-dist b,.fl-time b{font-size:1.6rem}
  .mfd-keys button{min-height:2.75rem;font-size:1.15rem;min-width:4.6rem;padding:0 .7rem}
  .ighead{align-items:flex-start}.iggrid{margin-top:1.2rem;gap:.5rem}
  .ev{margin-top:1.2rem}.ev div{padding:1rem 1.1rem}.ev b{font-size:1.15rem}
  .hours div{font-size:1.02rem;padding:.6rem .4rem}.addr{font-size:1.25rem}
  .gmap{margin-top:1.6rem}.gmap iframe{height:17rem}
  .btn{min-height:3rem;font-size:1.05rem;padding:.6rem 1.1rem}
  .bye .d{font-size:2rem}
  .bar a{min-height:3.4rem;font-size:1rem}
  footer{padding-bottom:6rem}
}
@media(max-width:34rem){
  html{font-size:100%}html.big{font-size:118%}
  body{font-size:1.04rem}
  .wrap{padding:0 1.1rem}
  .hdr .wrap{padding-top:.4rem;padding-bottom:.4rem}
  .brand .logo{width:2.6rem;height:2.6rem}.brand b{font-size:1.5rem}
  .size,.navbtn{min-height:2.75rem;min-width:2.75rem;width:auto;height:2.75rem}
  .strip b{font-size:1.5rem}
}
@media(max-width:60rem){
  .cta.acts .btn:nth-child(1){grid-column:1/-1;flex-direction:row;align-items:center;justify-content:center;gap:.7rem;min-height:3.4rem;font-size:1.2rem}
  .cta.acts .btn:nth-child(1) small{max-width:none;overflow:visible}
  .cta.acts .btn:nth-child(1) span{white-space:nowrap}
  .cta.acts .btn:nth-child(3){grid-column:auto;min-height:3.6rem;flex-direction:column;align-items:flex-start;justify-content:center}
  .cta.acts .btn:nth-child(3) small{display:block}
  .cta.acts .btn small{font-size:.8rem;text-transform:none;letter-spacing:0;opacity:.9}
  .cta.acts .btn:nth-child(1) small{text-transform:uppercase;letter-spacing:.04em}
}
@media(max-width:60rem){
  .cta.acts .btn:nth-child(2),.cta.acts .btn:nth-child(3){min-height:3.1rem;flex-direction:row;align-items:center;justify-content:center;font-size:1.1rem}
  .cta.acts .btn:nth-child(2) small,.cta.acts .btn:nth-child(3) small{display:none}
}
@media(max-width:60rem){.mfd-keys span{flex-basis:100%;margin:0 0 .1rem}.mhead h1{font-size:3rem}.mhead .lead{font-size:1.05rem!important}.msec h2{font-size:2.3rem}.jump .btn{flex:1 1 auto}}

/* ================= hero v3: the cafe itself, framed like a boarding gate ================= */
.hero{display:block}
.hero .in{padding-top:clamp(2rem,5vw,4rem)}
.htop{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.htext{min-width:0}
.hero h1{max-width:none;font-size:clamp(3.2rem,6.4vw,6rem);text-shadow:none}
.hero h1 em{display:block}
.hhours{position:relative;margin-top:.7rem;font-weight:700;color:#e6e0cc;font-size:1rem}.hhours span{color:var(--gold);margin:0 .3rem}
.hvis{position:relative;margin:0;min-width:0}
.hcafe{display:block;width:100%;height:auto;aspect-ratio:5/4.4;object-fit:cover;object-position:50% 40%;border-radius:1rem 1rem 1rem 5rem;box-shadow:0 0 0 3px var(--gold),0 2rem 4rem -1.5rem #000}
.hplate{position:absolute;left:-1.6rem;bottom:-1.4rem;width:34%;height:auto;aspect-ratio:1/1.18;object-fit:cover;border-radius:46% / 40%;border:.45rem solid var(--cream);box-shadow:0 1rem 2rem -.6rem #000c}
.hvis figcaption{position:absolute;right:.8rem;top:.8rem;background:var(--deep);color:var(--cream);font-weight:700;font-size:.9rem;padding:.35rem .7rem .35rem .4rem;border-radius:.4rem;display:flex;align-items:center;gap:.5rem}
.hvis figcaption b{font:800 1.3rem/1 "Saira Extra Condensed",sans-serif;background:var(--gold);color:var(--ink);padding:.2rem .4rem;border-radius:.25rem;letter-spacing:.04em}
.board{margin-top:clamp(2.6rem,5vw,3.6rem)}

/* fly-in, condensed */
.mapsm{display:none}
.fl-grid{grid-template-columns:1.35fr 1fr}
details.fl-ref{margin-top:1.6rem}
details.fl-ref summary{cursor:pointer;list-style:none;font-weight:700;display:flex;align-items:center;gap:.6rem;min-height:2.75rem;color:#eafcff}
details.fl-ref summary::-webkit-details-marker{display:none}
details.fl-ref summary:before{content:"+";display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--cy);color:#0b262e;font-size:1.2rem;line-height:1;flex:none}
details.fl-ref[open] summary:before{content:"\2013"}
details.fl-ref[open] summary{margin-bottom:.6rem}
.fl-farhead{margin-top:clamp(2.2rem,4vw,3.2rem)}

@media(max-width:60rem){
  .htop{display:block}
  .hvis{margin:0 calc(-1 * clamp(1rem,4vw,2.5rem)) 1.6rem}
  .hero .in{padding-top:0}
  .hcafe{aspect-ratio:16/11;border-radius:0;box-shadow:none;object-position:50% 34%}
  .hplate{left:auto;right:1.1rem;bottom:-1.3rem;width:26%;border-width:.3rem}
  .hvis figcaption{right:auto;left:.8rem;top:.8rem;font-size:.82rem}
  .hero h1{font-size:min(3.6rem,10.6vw);padding-right:0}
  .hhours{font-size:.92rem;margin-top:.6rem}
  .maplg{display:none}.mapsm{display:block;width:100%;height:auto;border-radius:.8rem;box-shadow:0 1px 2px #1b20141a,0 1rem 2rem -1rem #1b201455,0 0 0 1px #44532a40}
  .fl-map{overflow:visible!important;box-shadow:none!important}.fl-map svg.mapsm{min-width:0}
  .fl-map figcaption{position:static;padding:0}.fl-map figcaption:after{content:none!important}
  .mapsm .lb{font:700 12.5px "Atkinson Hyperlegible",sans-serif;fill:#f8f2e2;letter-spacing:.05em}
  .mapsm .lb.pap{fill:#1b2014}.mapsm .lb.pap.b{font-size:14px;fill:#5b3d00}
  .mapsm .lb.ink{fill:#1b2014}.mapsm .lb.big{font:800 21px "Saira Extra Condensed",sans-serif}
  .mapsm .rw{font:800 26px "Saira Extra Condensed",sans-serif;fill:#f8f2e2;text-anchor:middle}
  .fl-facts>div:not(.cta){padding:.7rem 0}
  .mfd .fl-code,.mfd .fl-link,.fly .hop{display:none}
  .mfd .fl-name{font-size:1.2rem}
  .fl-sel{margin-bottom:.9rem}
  .mfd-body{padding-bottom:1rem}
  .iggrid a:nth-child(n+5){display:none}
  .ev{gap:.6rem}.ev div{padding:.8rem 1rem}
}
@media(max-width:60rem){
  .htop{display:flex;flex-direction:column}
  .hvis{order:-1;margin:0 calc(-1 * clamp(1rem,4vw,2.5rem)) 2rem;align-self:stretch}
  .hcafe{aspect-ratio:16/10.5}
}
@media(max-width:34rem){.hvis{margin-inline:-1.1rem}}
@media(max-width:60rem){.fl-grid{grid-template-columns:1fr;gap:1rem}}
@media(min-width:60.01rem){
  .htop{grid-template-columns:1.05fr .95fr;align-items:start;row-gap:0}
  .htext{display:contents}
  .htext>*{grid-column:1}
  .htext>h1{grid-column:1/-1;font-size:clamp(3.4rem,6.6vw,6.2rem);margin-bottom:.6rem}
  .htext>h1 em{display:inline}
  .htext>.nowline{justify-self:start}
  .hvis{grid-column:2;grid-row:2/span 6;align-self:center;margin-left:1.6rem}
  .hcafe{aspect-ratio:5/3.6}
}

/* ---- "come see us" card + speed ---- */
.pop{position:fixed;right:1.5rem;bottom:1.5rem;z-index:25;width:min(23rem,calc(100vw - 1.2rem));background:var(--deep);color:var(--cream);border-radius:.8rem;border-top:.3rem solid var(--gold);padding:1.1rem 1.2rem 1.2rem;box-shadow:0 1.5rem 3rem -1rem #000c,0 0 0 1px #3a4427;transform:translateY(1.2rem);opacity:0;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s}
.pop.on{transform:none;opacity:1}
.poph{font-size:2rem;padding-right:2.4rem}
.popn{display:flex;align-items:center;gap:.5rem;margin-top:.35rem;font-weight:700;font-size:.98rem;color:#e6e0cc}
.popn i{width:.7rem;height:.7rem;border-radius:50%;background:#ff9d7a;flex:none}[data-open=yes] .popn i{background:#7fe38e}
.popb{display:grid;gap:.5rem;margin-top:.9rem}.popb .btn{min-height:3rem;width:100%}
.popx{position:absolute;right:.4rem;top:.35rem;width:2.75rem;height:2.75rem;border:0;background:none;color:var(--cream);font-size:1.9rem;line-height:1;cursor:pointer;border-radius:.4rem}
.popx:hover{background:#f8f2e21f}
@media(prefers-reduced-motion:reduce){.pop{transition:none}}
.mfd .sweep,.mfd:not(.live) .fl-radar .dot{animation-play-state:paused}
.mfd.live .sweep{animation-play-state:running}
.board{backdrop-filter:none;background:#0e120a}
@media(max-width:60rem){
  .pop{left:.6rem;right:.6rem;width:auto;bottom:calc(3.4rem + .6rem)}
  .poph{font-size:1.7rem}
  .popb{grid-template-columns:1fr 1fr}.popb .btn{font-size:1rem;padding:.5rem .6rem}
  .flap span{animation:none!important}
}

/* ================= calm pass ================= */
.flystrip{padding:1.6rem 0;background:#e8ecd8;border-block:1px solid var(--line)}
.flystrip .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}
.flystrip p{max-width:38em}.flystrip b{font-size:1.7rem;margin-right:.5rem;color:var(--olive2);font-weight:800}
.board{grid-template-columns:auto auto;justify-content:start;display:inline-grid}
.board>div{padding:.8rem 1.3rem .9rem}
.fly h1.d{font-size:clamp(2.6rem,6.5vw,4.6rem);color:var(--olive2)}
.flypage .fly{padding-top:clamp(2.4rem,6vw,4.5rem)}
@media(max-width:60rem){
  .board,.hero .rate{display:none}
  .hero .in{padding-bottom:1.8rem}
  .flystrip .btn{width:100%}
  .flypage .fly .hop{display:block}.flypage .mfd .fl-link{display:inline-block}
  /* one small size, one body size, three heading sizes */
  body{font-size:1.0625rem}
  .hhours,.fl-map figcaption,.fine,.credit,.fl-farhead p,.fl-ref p,.apt small,.item p,blockquote cite,.sub,.hero p.lead,.pts li,.fl-facts dd,.fl-dist,.fl-time,.hours div{font-size:1.0625rem}
  .hhours,.fine,.credit,.fl-map figcaption,.apt small,blockquote cite,.fl-ref p,.nowline,.chips span,.tag,.brand span,.mfd-keys span,.fl-pick,.cta.acts .btn small,.btn.act small,.board small,.strip small,.fields dt,.mfd-top dt,.mfd-top dd small,.ev small{font-size:.875rem}
  .item b,.fl-name,.addr,.fl-sel,.btn,.cta.acts .btn,.bar a,.nav a{font-size:1.125rem}
  .fl-facts dt,.fields dd,.mfd-top dd,.fl-dist b,.fl-time b,.flystrip b,.mfd-keys button,.apt b,.strip b{font-size:1.5rem}
  h2.d,.fl-farhead h3,.msec h2,.bye .d{font-size:2.125rem}
  blockquote{font-size:1.125rem}
  .cta.acts .btn:nth-child(1){font-size:1.25rem}
}
@media(max-width:60rem){.hvis figcaption{font-size:.875rem}}

/* ================= food first + fly-in badge ================= */
.hplate{border-radius:50%;aspect-ratio:1;width:30%}
.hcafe{object-position:50% 58%}
.flybadge{position:absolute;right:-1rem;top:-1.2rem;width:6.6rem;height:6.6rem;border-radius:50%;background:var(--gold);color:var(--ink);display:grid;place-content:center;justify-items:center;text-align:center;text-decoration:none;line-height:1;transform:rotate(8deg);box-shadow:0 0 0 .22rem var(--deep),0 0 0 .34rem var(--gold),0 .8rem 1.6rem -.4rem #000c;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.flybadge:before{content:"";position:absolute;inset:.32rem;border:1.5px dashed #1b201480;border-radius:50%}
.flybadge svg{width:1.7rem;height:1.7rem;fill:currentColor;transform:rotate(45deg)}
.flybadge b{font:800 1.75rem/1 "Saira Extra Condensed",sans-serif;text-transform:uppercase;letter-spacing:.03em;margin-top:.1rem}
.flybadge span{font-weight:700;font-size:.8rem;margin-top:.1rem}
.flybadge:hover,.flybadge:focus-visible{transform:rotate(0) scale(1.07)}
@media(prefers-reduced-motion:reduce){.flybadge{transition:none}}
@media(max-width:60rem){
  .hcafe{aspect-ratio:16/11.5;object-position:50% 62%}
  .hplate{right:1.1rem;left:auto;bottom:-1.3rem;width:25%;border-width:.3rem}
  .flybadge{right:auto;left:.9rem;top:.9rem;width:5.6rem;height:5.6rem}
  .flybadge b{font-size:1.5rem}.flybadge span{font-size:.875rem}.flybadge svg{width:1.4rem;height:1.4rem}
  .cta.acts .btn:nth-child(1) small{text-transform:uppercase;letter-spacing:.04em}
  .fav .photos{order:-1}
  .fav{display:flex;flex-direction:column}
}
@media(max-width:60rem){
  .cta.acts .btn:nth-child(1) small{display:none}
  .fav .photos{width:100%}.fav>div{width:100%}
}

/* ---- highlighted fly-in band ---- */
.flystrip{padding:2.2rem 0;border:0;color:#eafcff;background:repeating-linear-gradient(0deg,#ffffff07 0 1px,transparent 1px 4px),linear-gradient(160deg,#1d5361,#123843);box-shadow:inset 0 .3rem 0 var(--gold),inset 0 -.3rem 0 var(--gold)}
.flystrip .wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.2rem 2rem}
.flystrip .fs-badge{position:static;transform:rotate(-8deg);flex:none;width:6.6rem;height:6.6rem;box-shadow:0 0 0 .22rem #123843,0 0 0 .34rem var(--gold),0 .8rem 1.6rem -.4rem #000a}
.flystrip .fs-badge:hover{transform:rotate(0) scale(1.07)}
.flystrip h2.d{color:#fff;font-size:clamp(2.2rem,4.4vw,3.2rem);text-shadow:0 0 18px #8ff0ff55}
.flystrip p{max-width:36em;margin-top:.4rem;color:#d6f5fa}
.flystrip .fs-btn{background:var(--gold);border-color:var(--gold);color:var(--ink);min-height:3.4rem;padding:.7rem 1.6rem;font-size:1.2rem;box-shadow:0 0 1.6rem #f3b53a55}
.flystrip .fs-btn:hover{background:#ffd16b}
@media(max-width:60rem){
  .flystrip{padding:1.8rem 0 2rem}
  .flystrip .wrap{grid-template-columns:auto 1fr;gap:1rem 1rem}
  .flystrip .fs-badge{width:5.2rem;height:5.2rem}.flystrip .fs-badge b{font-size:1.35rem}.flystrip .fs-badge svg{width:1.3rem;height:1.3rem}
  .flystrip h2.d{font-size:2rem}
  .flystrip .fs-text p{font-size:1.0625rem}
  .flystrip .fs-btn{grid-column:1/-1;width:100%;font-size:1.2rem}
}

/* ================= hero v4: the Hangar 1 sign, then the food ================= */
.htop.v4{display:grid;grid-template-columns:1fr 1.05fr;grid-template-areas:"brand food" "text food";column-gap:clamp(2rem,5vw,4.5rem);row-gap:1.2rem;align-items:start}
.htop.v4 .hbrand{grid-area:brand;display:flex;align-items:center;gap:1.2rem}
.htop.v4 .hlogo{width:clamp(11rem,17vw,15rem);height:auto;flex:none;display:block}
.htop.v4 .hbrand p{font-weight:700;color:#e6e0cc;font-size:1.05rem;max-width:11em;line-height:1.3}
.htop.v4 .htext{grid-area:text;display:block;min-width:0}
.htop.v4 .htext>*{grid-column:auto}
.htop.v4 .htext>h1{font-size:clamp(2.8rem,4.6vw,4.3rem);margin:0;grid-column:auto}
.htop.v4 .htext>h1 em{display:block}
.htop.v4 .hfood{grid-area:food;position:relative;margin:0;display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:.7rem;align-self:center;min-width:0}
.htop.v4 .hfood img{display:block;width:100%;height:100%;object-fit:cover;border-radius:.8rem;min-height:0}
.htop.v4 .hfood .f1{grid-row:1/3;aspect-ratio:4/5;border-radius:.8rem .8rem .8rem 4rem;box-shadow:0 0 0 3px var(--gold)}
.htop.v4 .hfood .f2,.htop.v4 .hfood .f3{aspect-ratio:auto}
.htop.v4 .flybadge{right:-1.1rem;top:-1.3rem;left:auto}
@media(max-width:60rem){
  .htop.v4{display:flex;flex-direction:column;gap:0}
  .htop.v4 .hbrand{order:0;flex-direction:column;gap:.3rem;align-self:center;text-align:center;padding:1.1rem 0 1rem}
  .htop.v4 .hlogo{width:min(15rem,62vw)}
  .htop.v4 .hbrand p{max-width:none;font-size:.95rem}
  .htop.v4 .hfood{order:1;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:auto;gap:.35rem;margin:0 calc(-1 * clamp(1rem,4vw,2.5rem)) 1.3rem;align-self:stretch}
  .htop.v4 .hfood img{aspect-ratio:3/4;border-radius:0;box-shadow:none}
  .htop.v4 .hfood .f1{grid-row:auto;aspect-ratio:3/4;border-radius:0;box-shadow:none}
  .htop.v4 .htext{order:2}
  .htop.v4 .htext>h1{font-size:min(3.4rem,10.4vw);text-align:left}
  .htop.v4 .htext>.lead{display:none}
  .htop.v4 .flybadge{left:auto;right:.7rem;top:-2.6rem;width:5.2rem;height:5.2rem}
  .htop.v4 .flybadge b{font-size:1.35rem}
  .hero .in{padding-top:0}
}
@media(max-width:34rem){.htop.v4 .hfood{margin-inline:-1.1rem}}
@media(max-width:60rem){
  .htop.v4{position:relative}
  .htop.v4 .hfood{position:static}
  .htop.v4 .flybadge{left:-.2rem;right:auto;top:.8rem;width:4.7rem;height:4.7rem;transform:rotate(-8deg)}
  .htop.v4 .flybadge b{font-size:1.2rem}.htop.v4 .flybadge span{font-size:.72rem}.htop.v4 .flybadge svg{width:1.15rem;height:1.15rem}
  .htop.v4 .hlogo{width:min(13.5rem,56vw)}
}
@media(max-width:60rem){.htop.v4 .hlogo{width:min(12rem,50vw)}}
@media(min-width:60.01rem){
  .htop.v4 .htext>h1{font-size:clamp(2.3rem,3.75vw,3.5rem)}
  .htop.v4 .hlogo{width:clamp(9rem,13vw,11.5rem)}
  .htop.v4{row-gap:.8rem}
  .htop.v4 .hfood{max-height:31rem;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}
  .htop.v4 .hfood .f1{aspect-ratio:auto;height:100%}
  .hero .in{padding-top:clamp(1.6rem,3.5vw,3rem)}
  .htop.v4 .cta.acts{margin-top:1.2rem}
}
.fl-farhead h2{font-size:clamp(2.4rem,5vw,3.6rem);color:var(--olive2)}
@media(max-width:60rem){.fl-farhead h2{font-size:2.125rem}}

/* ---- real menu (from Kelly's printed menu) ---- */
.fav{grid-template-columns:1fr}
#food .list{display:grid;grid-template-columns:1fr 1fr;column-gap:2.4rem}
#food .list .item:nth-last-child(2){border-bottom:0}
.mpart{font-size:clamp(2.6rem,6vw,3.8rem);color:var(--olive2);margin-top:1.2rem;scroll-margin-top:6rem}
.mpart:not(:first-child){margin-top:3.2rem}
.mnote{color:var(--mute);max-width:52em;margin:.6rem 0 1.4rem}
.mgrid{grid-template-columns:1fr 1fr;gap:1.6rem 2.6rem;margin-bottom:1.2rem}
.msec{scroll-margin-top:6rem}
.msec h2{font-size:2.1rem;margin-bottom:0}
.mlist{border:0;background:none;padding:0;box-shadow:none}
.mlist .item{padding:.6rem 0}.mlist .item b{font-size:1.12rem;font-weight:700}.mlist .item .p{font-size:1.1rem;font-variant-numeric:tabular-nums}.mlist .item p{font-size:.95rem}
.jump .btn{min-height:2.75rem;padding:.4rem .9rem;font-size:1rem}
.fl-solo{max-width:38rem;margin-top:1.4rem}
@media(max-width:60rem){#food .list{grid-template-columns:1fr}#food .list .item:nth-last-child(2){border-bottom:1px solid var(--line)}.mgrid{grid-template-columns:1fr}.jump{gap:.4rem}.mpart{font-size:2.4rem}}
@media print{.mgrid{grid-template-columns:1fr 1fr}.mnote{font-size:9pt}.mlist .item{padding:2pt 0}.mpart{font-size:18pt;margin-top:8pt}}
.hours .closed{color:var(--mute)}.hours .closed b{color:var(--ink);text-align:right}

/* ---- round 2 from Kelly's feedback ---- */
.lockup{display:block;width:min(19rem,100%);height:auto;border-radius:.6rem;margin-bottom:.6rem}
.fl-grid2{grid-template-columns:1fr 1fr;align-items:center}
.fl-map2 svg{display:block;width:100%;height:auto;border-radius:.8rem;box-shadow:0 1px 2px #1b20141a,0 1.2rem 2.4rem -1.2rem #1b201455,0 0 0 1px #44532a40}
.fl-map2 .lb{font:700 13px "Atkinson Hyperlegible",sans-serif;fill:#f8f2e2;letter-spacing:.05em}
.fl-map2 .lb.pap{fill:#1b2014}.fl-map2 .lb.pap.b{font-size:14px;fill:#5b3d00}
.fl-map2 .lb.ink{fill:#1b2014}.fl-map2 .lb.big{font:800 24px "Saira Extra Condensed",sans-serif;letter-spacing:.04em}
@media(max-width:60rem){.fl-grid2{grid-template-columns:1fr}.fl-map2 svg{min-width:0!important}.fl-map2{overflow:visible!important}}

/* ---- Kelly's own photos + "what we are known for" ---- */
.htop.v4 .hfood .f1{object-position:72% 50%}.htop.v4 .hfood .f2{object-position:62% 60%}.htop.v4 .hfood .f3{object-position:32% 60%}
.made{list-style:none;padding:0;margin:1.1rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}
.made li{background:var(--olive);color:var(--cream);font-weight:700;padding:.4rem .95rem;border-radius:2rem;font-size:1rem}
.foodwide{display:block;width:100%;height:auto;aspect-ratio:21/8;object-fit:cover;object-position:50% 62%;border-radius:.8rem;margin-top:1.6rem}
@media(max-width:60rem){.foodwide{aspect-ratio:16/9;margin-top:1.2rem}.made li{font-size:.95rem;padding:.35rem .8rem}}

/* ---- finishing pass (desktop hero balance) ---- */
@media(min-width:60.01rem){
  .htop.v4{grid-template-columns:1.12fr .88fr;column-gap:clamp(2rem,4vw,3.5rem)}
  .htop.v4 .hlogo{width:clamp(12rem,17vw,15rem)}
  .htop.v4 .hbrand{gap:1.4rem}
  .htop.v4 .hbrand p{font-size:1.15rem}
  .htop.v4 .htext>h1{font-size:clamp(2.6rem,4.4vw,4.1rem)}
  .htop.v4 .hfood{max-height:34rem}
  .board{margin-top:1.8rem}
  .foodwide{aspect-ratio:auto;height:clamp(14rem,24vw,19rem)}
}
@media(min-width:60.01rem){.htop.v4 .hfood{height:clamp(20rem,33vw,28rem);max-height:none}}

/* ---- credit + one-time privacy notice ---- */
.madeby{display:block!important;margin-top:1.4rem;font-size:.8rem;opacity:.55}
.madeby a{color:inherit;text-decoration:none;padding:.9rem 0;min-height:0;display:inline-block}.madeby a:hover{text-decoration:underline}
.pn{position:fixed;left:1rem;bottom:1rem;z-index:40;max-width:26rem;display:flex;align-items:center;gap:1rem;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:.7rem;padding:.9rem 1rem;box-shadow:0 1rem 2.5rem -1rem #000a;font-size:.95rem;line-height:1.4}
.pn p{margin:0}.pn .btn{min-height:2.75rem;padding:.4rem 1.2rem;flex:none;background:var(--olive);border-color:var(--olive);color:var(--cream)}
@media(max-width:60rem){.pn{left:.6rem;right:.6rem;bottom:calc(3.4rem + .6rem);max-width:none;font-size:.9rem}}
@media print{.pn{display:none}}
