/* escortscentrallondon.com, "Meet Me At", inner pages. The homepage carries its own
   copy of the same sheet inline; anything shared lives in FOOT_CSS and MBAR_CSS. */
:root{
--bg:#14161a;--bg2:#1a1d22;--panel:#1e2127;--panel2:#24272e;
--deep:#0e1014;--deep2:#0b0d10;
--led:#a4f03c;--led2:#c8f68a;--led3:#8bcc33;--led4:#52781e;
--ink:#eef1f6;--mut:rgba(238,241,246,.75);--dim:rgba(238,241,246,.56);
--line:rgba(164,240,60,.14);--line2:rgba(164,240,60,.3);
--fh:"Economica",ui-sans-serif,system-ui,sans-serif;
--fb:"Familjen Grotesk",ui-sans-serif,system-ui,sans-serif;
--g:clamp(16px,4.6vw,56px);
--e:cubic-bezier(.2,.7,.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg)}
html,body{overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
body{background:var(--bg);color:var(--ink);font:400 1.02rem/1.68 var(--fb);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse 98% 18% at 50% 0%,rgba(164,240,60,.1),transparent 76%),radial-gradient(ellipse 42% 30% at 93% 88%,rgba(164,240,60,.04),transparent 72%),linear-gradient(180deg,#171a1f,#101216 58%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:radial-gradient(circle,rgba(164,240,60,.16) 1px,transparent 1.1px);background-size:15px 15px;-webkit-mask:radial-gradient(ellipse 94% 22% at 50% 1%,#000,transparent 80%);mask:radial-gradient(ellipse 94% 22% at 50% 1%,#000,transparent 80%)}
::selection{background:var(--led);color:#141619}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
svg{display:block;max-width:100%}
img{display:block;max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--led2);outline-offset:3px;border-radius:4px}
.wrap{max-width:1280px;margin-inline:auto;padding-inline:var(--g)}
h1,h2,h3,h4{font-family:var(--fh);font-weight:700;line-height:.98;letter-spacing:.012em}
.skip{position:absolute;left:-9999px;top:0;z-index:200;padding:.9rem 1.2rem;background:var(--led);color:#141619;font:700 .8rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase}
.skip:focus{left:8px;top:8px}
.srline{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------------------------------------------------------- atoms */
.kicker{display:inline-flex;align-items:center;gap:.55rem;font:600 .62rem/1.2 var(--fb);letter-spacing:.24em;text-transform:uppercase;color:var(--dim)}
.kicker b{color:var(--led);font-weight:700}
.lamp{width:7px;height:7px;border-radius:50%;background:var(--led);box-shadow:0 0 10px rgba(164,240,60,.9);flex:none}
.lede{max-width:62ch;color:var(--mut);font-size:clamp(1rem,1.15vw,1.08rem)}
.lede a,.body p a,.art p a,.gnote a{color:var(--led2);text-decoration:underline;text-underline-offset:2px}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:54px;padding:.9rem 1.5rem;border-radius:10px;font:700 .8rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(180deg,var(--led2),var(--led) 52%,var(--led3));color:#141619;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 18px 40px -18px rgba(139,204,51,.8);transition:transform .3s var(--e),box-shadow .3s var(--e),filter .3s var(--e);white-space:nowrap}
.btn:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 26px 46px -18px rgba(139,204,51,.85)}
.btn svg{width:18px;height:18px;fill:currentColor;flex:none}
.btn.gh{background:none;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}
.btn.gh:hover{color:var(--led2);box-shadow:inset 0 0 0 1px var(--led);filter:none}
.btn.sm{min-height:42px;padding:.55rem 1rem;font-size:.68rem;border-radius:8px;letter-spacing:.12em}
.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.34rem .55rem;border-radius:6px;font:700 .56rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;background:rgba(20,22,26,.78);box-shadow:inset 0 0 0 1px var(--line2);color:var(--ink);white-space:nowrap}
.chip.on{background:var(--led);color:#141619;box-shadow:none}
.chip .lamp{width:6px;height:6px}
.chipset{display:flex;flex-wrap:wrap;gap:.4rem}
.chipset a.chip:hover{background:rgba(164,240,60,.14);color:var(--led2)}
.ctas{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:clamp(.9rem,2.2vh,1.4rem)}
@media (max-width:520px){.ctas .btn{flex:1 1 100%}}

/* ---------------------------------------------------------- strip + header */
.strip{position:relative;z-index:71;background:#0b0d10;border-bottom:1px solid var(--line)}
.strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:34px;white-space:nowrap;overflow:hidden}
@media (max-width:820px){.strip .opt{display:none}}
header.site{position:sticky;top:0;z-index:70;background:rgba(20,22,26,.86);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid var(--line)}
.head{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:66px}
.brand{display:flex;align-items:center;gap:.7rem;min-width:0}
.mk{width:34px;height:34px;flex:none;border-radius:8px;background:radial-gradient(circle,var(--led) 1.6px,transparent 1.7px) 0 0/8px 8px,linear-gradient(180deg,#262a31,#111317);box-shadow:inset 0 0 0 1px var(--line2),0 0 22px -8px rgba(164,240,60,.9)}
.bt{font:700 1.22rem/1 var(--fh);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.bt small{display:block;margin-top:.22rem;font:600 .52rem/1 var(--fb);letter-spacing:.2em;color:var(--dim);text-transform:uppercase}
nav.main ul{display:flex;gap:.1rem}
nav.main a{display:block;padding:.5rem .8rem;border-radius:8px;font:600 .72rem/1.2 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);transition:color .3s var(--e),background .3s var(--e)}
nav.main a:hover,nav.main a.on{color:var(--led2);background:rgba(164,240,60,.08)}
nav.main a span{display:none}
.hr{display:flex;align-items:center;gap:.55rem}
.burger{display:none;width:44px;height:44px;border-radius:9px;place-items:center;box-shadow:inset 0 0 0 1px var(--line2)}
.burger i{display:block;width:17px;height:2px;border-radius:2px;background:var(--led2);box-shadow:0 6px 0 var(--led2),0 -6px 0 var(--led2)}
@media (max-width:1040px){
nav.main{position:absolute;top:100%;left:0;right:0;padding:.6rem var(--g) 1.4rem;background:#101216;border-bottom:1px solid var(--line);clip-path:inset(0 0 100% 0);transition:clip-path .45s var(--e)}
.menu-open nav.main{clip-path:inset(0)}
nav.main ul{flex-direction:column;gap:0}
nav.main a{font:700 1.7rem/1 var(--fh);letter-spacing:.06em;padding:.7rem .2rem;border-radius:0;border-bottom:1px solid var(--line);color:var(--ink)}
.burger{display:grid}
}
@media (max-width:560px){.hr .btn.sm{display:none}.bt{font-size:1.05rem}.bt small{display:none}}

/* ---------------------------------------------------------- breadcrumbs */
.crumbs{border-bottom:1px solid var(--line);background:rgba(11,13,16,.6)}
.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;min-height:38px;font:600 .58rem/1.4 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.crumbs li+li::before{content:"\00b7";margin-right:.5rem;color:var(--line2)}
.crumbs a:hover{color:var(--led2)}
.crumbs [aria-current]{color:var(--led2)}

/* ---------------------------------------------------------- page hero: the LED panel */
.phero{padding:clamp(1.6rem,4vw,3rem) 0 clamp(1.6rem,4vw,2.6rem)}
.pboard{position:relative;padding:10px;border-radius:14px;background:linear-gradient(180deg,#21252b,#111317 70%);box-shadow:inset 0 0 0 1px rgba(164,240,60,.22),inset 0 1px 0 rgba(200,246,138,.16),0 40px 90px -46px rgba(139,204,51,.5)}
.pboard::before{content:"";position:absolute;left:14%;right:14%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--led),transparent);opacity:.55}
.brail{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.1rem .5rem .5rem;font:600 .6rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);white-space:nowrap}
.brail .mid{overflow:hidden;text-overflow:ellipsis}
.brail.bot{padding:.55rem .5rem .1rem;margin-top:.5rem;border-top:1px solid rgba(164,240,60,.12)}
.brail time,.brail b{color:var(--led2);font-weight:700;letter-spacing:.14em}
@media (max-width:620px){.brail{font-size:.54rem;letter-spacing:.14em}.brail .opt{display:none}}
.pscreen{position:relative;border-radius:8px;overflow:hidden;padding:clamp(1.4rem,4vw,2.6rem) clamp(1rem,3vw,2rem);background:radial-gradient(ellipse 82% 130% at 50% 50%,#16191e,#0a0c0f);box-shadow:inset 0 0 0 1px rgba(164,240,60,.16),inset 0 10px 26px rgba(0,0,0,.75)}
.pscreen::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(164,240,60,.13) 1px,transparent 1.15px);background-size:9px 9px;opacity:.7}
.pscreen::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(228,251,197,.06),transparent 34%),radial-gradient(ellipse 60% 70% at 50% 50%,transparent 55%,rgba(0,0,0,.4))}
.pscreen h1,.pscreen .h1x{position:relative;z-index:2;font-size:clamp(2rem,6.2vw,4.4rem);line-height:.92;text-transform:uppercase;letter-spacing:.01em;background:linear-gradient(176deg,#f6feec 4%,var(--led2) 44%,var(--led3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 16px 36px rgba(139,204,51,.18))}
.pscreen .eyebrow{position:relative;z-index:2;display:block;margin-bottom:.7rem;font:600 .6rem/1 var(--fb);letter-spacing:.26em;text-transform:uppercase;color:var(--led)}
.phero .lede{margin-top:clamp(1.1rem,2.6vw,1.6rem)}
.phero .lede+.lede{margin-top:.8rem}

/* ---------------------------------------------------------- departure lines */
.sect{border-top:1px solid var(--line);padding:clamp(2.2rem,5vw,3.6rem) 0 clamp(2.4rem,5.4vw,4rem);scroll-margin-top:84px}
.sect>.wrap{display:grid;grid-template-columns:clamp(76px,8.6vw,152px) minmax(0,1fr);column-gap:clamp(1rem,2.8vw,2.6rem)}
.dep{grid-column:1/-1;display:grid;grid-template-columns:clamp(76px,8.6vw,152px) minmax(0,1fr);column-gap:clamp(1rem,2.8vw,2.6rem);align-items:end;padding-bottom:1rem;border-bottom:1px dotted rgba(164,240,60,.26);transition:border-color .35s var(--e)}
.sect:hover .dep{border-bottom-color:rgba(164,240,60,.5)}
.dep .t{font:700 clamp(1.4rem,2.6vw,2.4rem)/1 var(--fh);letter-spacing:.06em;color:var(--led);font-variant-numeric:tabular-nums}
.dep .b{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.6rem 1.2rem;min-width:0}
.dep h2,.dep .h2x{font-size:clamp(1.7rem,3.8vw,3rem);text-transform:uppercase;letter-spacing:.02em;scroll-margin-top:110px}
.dep .k{display:block;margin-bottom:.4rem;font:600 .6rem/1 var(--fb);letter-spacing:.24em;text-transform:uppercase;color:var(--dim)}
.body{grid-column:2;padding-top:clamp(1.4rem,3vw,2.2rem);min-width:0}
.body>p{max-width:74ch;color:var(--mut)}
.body>p+p{margin-top:.9rem}
.body>.lede{margin-bottom:clamp(1.1rem,2.6vw,1.6rem)}
.gnote{margin-top:1.2rem;font-size:.92rem;color:var(--mut);max-width:78ch}
@media (max-width:760px){
.sect>.wrap{grid-template-columns:minmax(0,1fr)}
.dep{grid-template-columns:minmax(0,1fr);gap:.5rem}
.dep .t{font-size:1.5rem}
.body{grid-column:1}
}
.tick{display:block;margin-top:.9rem;padding-top:.7rem;border-top:1px dotted rgba(164,240,60,.24);font:600 .6rem/1.4 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.notes{margin-top:1.1rem;padding:1rem 1.1rem;border-radius:11px;background:rgba(164,240,60,.04);box-shadow:inset 0 0 0 1px var(--line)}
.notes>span{display:block;margin-bottom:.6rem;font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--led)}
.notes ul{display:grid;gap:.5rem}
.notes li{position:relative;padding-left:1.3rem;font-size:.95rem;color:var(--mut)}
.notes li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--led3)}

/* ---------------------------------------------------------- trust cards */
.tg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.1rem)}
.tc{position:relative;padding:1.3rem 1.2rem 1.4rem;border-radius:12px;background:linear-gradient(180deg,rgba(164,240,60,.055),rgba(164,240,60,.012));box-shadow:inset 0 0 0 1px var(--line);transition:transform .35s var(--e),box-shadow .35s var(--e)}
.tc:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px var(--line2)}
.tc .num{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:radial-gradient(circle,rgba(164,240,60,.22) 1.4px,transparent 1.5px) 0 0/7px 7px,#1a1d22;box-shadow:inset 0 0 0 1px var(--line2);font:700 .95rem/1 var(--fh);color:var(--led2)}
.tc h3{margin:.85rem 0 .45rem;font-size:1.4rem;text-transform:uppercase;letter-spacing:.04em}
.tc p{font-size:.92rem;color:var(--mut)}
@media (max-width:960px){.tg{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.tg{grid-template-columns:1fr}}

/* ---------------------------------------------------------- filters + cards */
.tools{display:grid;gap:.6rem;margin-bottom:1.3rem;padding:.7rem;border-radius:12px;background:rgba(26,29,34,.9);box-shadow:inset 0 0 0 1px var(--line)}
.trow{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.trow>.lbl{font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-right:.4rem;flex:none}
.trow button,.trow a.fchip{padding:.48rem .72rem;border-radius:7px;font:600 .72rem/1.1 var(--fb);letter-spacing:.04em;color:var(--mut);transition:color .3s var(--e),background .3s var(--e)}
.trow button:hover,.trow a.fchip:hover{color:var(--ink);background:rgba(164,240,60,.09)}
.trow [aria-pressed="true"]{background:var(--led);color:#141619;font-weight:700}
.tres{margin-left:auto;font:700 .6rem/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);white-space:nowrap}
.tres b{color:var(--led2)}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.1rem)}
@media (min-width:1180px){.cards{grid-template-columns:repeat(5,minmax(0,1fr))}}
.card{display:block;min-width:0;border-radius:12px;padding:5px;background:linear-gradient(180deg,rgba(164,240,60,.07),rgba(164,240,60,.015));box-shadow:inset 0 0 0 1px var(--line);transition:transform .35s var(--e),box-shadow .35s var(--e)}
.card:hover,.card:focus-visible{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--line2),0 26px 50px -30px rgba(139,204,51,.6)}
.card.off{display:none}
.shot{display:block;position:relative;aspect-ratio:3/4;border-radius:9px;overflow:hidden;background:linear-gradient(180deg,#232830,#101216)}
.shot img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:50% 22%;transition:transform .5s var(--e)}
.card:hover .shot img{transform:scale(1.035)}
.shot::before{content:"";position:absolute;inset:0;z-index:3;background-image:radial-gradient(circle,rgba(200,246,138,.22) 1px,transparent 1.2px);background-size:6px 6px;opacity:.26;transition:opacity .35s var(--e)}
.card:hover .shot::before{opacity:.42}
.shot::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(10,12,15,.5),transparent 26%,transparent 54%,rgba(10,12,15,.88))}
.shot .tp{position:absolute;inset:.5rem .5rem auto;z-index:4;display:flex;justify-content:space-between;align-items:flex-start;gap:.3rem}
.shot .ref{font:700 .54rem/1 var(--fb);letter-spacing:.14em;color:var(--led2);padding:.32rem .42rem;border-radius:5px;background:rgba(10,12,15,.7)}
.meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.1rem .6rem;padding:.7rem .45rem .35rem}
.meta h3{font-size:1.14rem;text-transform:uppercase;letter-spacing:.05em}
.meta .ag{font:700 .72rem/1 var(--fh);letter-spacing:.1em;color:var(--led2)}
.meta p{grid-column:1/-1;font:600 .62rem/1.3 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.empty{display:none;margin-top:1rem;padding:2.2rem 1rem;border-radius:12px;text-align:center;color:var(--mut);box-shadow:inset 0 0 0 1px var(--line)}
.empty.on{display:block}
@media (max-width:1080px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.cards{grid-template-columns:1fr 1fr}.tres{margin-left:0}
  .shot .tp{flex-wrap:wrap;gap:.28rem}
  .shot .tp .chip{white-space:normal;max-width:100%;text-align:left}
}

/* ---------------------------------------------------------- steps */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.1rem)}
.step{position:relative;padding:1.3rem 1.2rem 1.5rem;border-radius:12px;background:linear-gradient(180deg,rgba(164,240,60,.05),transparent);box-shadow:inset 0 0 0 1px var(--line)}
.step .sn{font:700 2.4rem/1 var(--fh);letter-spacing:.04em;color:var(--led);opacity:.85}
.step h3{margin:.5rem 0 .5rem;font-size:1.35rem;text-transform:uppercase;letter-spacing:.04em}
.step p{font-size:.92rem;color:var(--mut)}
@media (max-width:960px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* ---------------------------------------------------------- rates */
.rates{border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}
.rate{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr) auto;align-items:center;gap:.3rem 1.4rem;padding:1rem 1.2rem;border-bottom:1px solid var(--line);transition:background .3s var(--e)}
.rate:last-child{border-bottom:0}
.rate:hover{background:rgba(164,240,60,.06)}
.rate h3{font-size:1.4rem;text-transform:uppercase;letter-spacing:.05em}
.rate p{font-size:.9rem;color:var(--mut)}
.rate .pr{font:700 clamp(1.6rem,2.8vw,2.2rem)/1 var(--fh);letter-spacing:.03em;color:var(--led2);white-space:nowrap;justify-self:end}
.rate .pr.rq{font-size:clamp(1.05rem,1.7vw,1.3rem);color:var(--led);letter-spacing:.14em;text-transform:uppercase}
.rate.hot{background:rgba(164,240,60,.09)}
.tag{display:inline-block;margin-left:.6rem;padding:.24rem .4rem;border-radius:4px;background:var(--led);color:#141619;font:700 .52rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;vertical-align:.24em}
.rnote{margin-top:1.1rem;font:600 .62rem/1.7 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.rnote a{color:var(--led2)}
@media (max-width:700px){.rate{grid-template-columns:minmax(0,1fr) auto;padding:.9rem}.rate p{grid-column:1/-1}}
.rgrid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.95fr);gap:clamp(1rem,2.4vw,1.8rem);align-items:start}
@media (max-width:900px){.rgrid{grid-template-columns:1fr}}
.slip{padding:1.2rem 1.2rem 1rem;border-radius:12px;background:linear-gradient(180deg,#1c1f25,#121419);box-shadow:inset 0 0 0 1px var(--line2)}
.slip .hd{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding-bottom:.7rem;margin-bottom:.4rem;border-bottom:1px dotted rgba(164,240,60,.3);font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.slip h3{margin:.4rem 0 .5rem;font-size:1.4rem;text-transform:uppercase;letter-spacing:.04em}
.slip>p{font-size:.92rem;color:var(--mut);margin-bottom:.8rem}
.slip li{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;font:600 .68rem/1.3 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);border-top:1px dotted rgba(164,240,60,.16)}
.slip li:first-child{border-top:0}
.slip li b{color:var(--ink);font-weight:700;text-align:right}
.slip li.hi b{color:var(--led2)}
.slip .btn{margin-top:1rem;width:100%}
.scriptcard{padding:1.2rem;border-radius:12px;background:rgba(26,29,34,.9);box-shadow:inset 0 0 0 1px var(--line2)}
.scriptcard>span{display:block;margin-bottom:.7rem;font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--led)}
.scriptbody{padding:1rem 1.1rem;border-radius:9px;background:#0e1014;box-shadow:inset 0 0 0 1px var(--line);font-size:.95rem;color:var(--ink)}
.scriptcard .ctas{margin-top:1rem}

/* ---------------------------------------------------------- area lines */
.areas{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.areas.hub{grid-template-columns:1fr 1fr 1fr}
.area{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.2rem .9rem;padding:.95rem 1rem;border-radius:11px;background:rgba(164,240,60,.03);box-shadow:inset 0 0 0 1px var(--line);transition:background .3s var(--e),box-shadow .3s var(--e)}
.area:hover{background:rgba(164,240,60,.08);box-shadow:inset 0 0 0 1px var(--line2)}
.area .eta{font:700 1.25rem/1 var(--fh);letter-spacing:.03em;color:var(--led);white-space:nowrap;font-variant-numeric:tabular-nums}
.area .eta small{font:600 .5rem/1 var(--fb);letter-spacing:.18em;margin-left:.25rem;color:var(--dim)}
.area h3{font-size:1.26rem;text-transform:uppercase;letter-spacing:.05em}
.area h3 a:hover{color:var(--led2)}
.area p{grid-column:2;font-size:.85rem;color:var(--mut)}
.area .show{width:40px;height:40px;grid-row:span 2;display:grid;place-items:center;border-radius:9px;box-shadow:inset 0 0 0 1px var(--line);transition:background .3s var(--e),box-shadow .3s var(--e)}
.area .show span{display:grid;grid-template-columns:repeat(3,3px);gap:2.5px}
.area .show i{width:3px;height:3px;border-radius:50%;background:var(--led2)}
.area .show i:nth-child(2),.area .show i:nth-child(6),.area .show i:nth-child(7){opacity:.32}
.area .show:hover{background:rgba(164,240,60,.14);box-shadow:inset 0 0 0 1px var(--line2)}
@media (max-width:1040px){.areas.hub{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.areas,.areas.hub{grid-template-columns:1fr}}

/* ---------------------------------------------------------- venue + station panels */
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.7rem,1.4vw,1.1rem)}
@media (max-width:820px){.vgrid{grid-template-columns:1fr}}
.vcard{padding:1.1rem 1.2rem 1.2rem;border-radius:12px;background:rgba(26,29,34,.86);box-shadow:inset 0 0 0 1px var(--line)}
.vcard .vh{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;padding-bottom:.7rem;margin-bottom:.5rem;border-bottom:1px dotted rgba(164,240,60,.26)}
.vcard h3{font-size:1.26rem;text-transform:uppercase;letter-spacing:.04em}
.vcard .vh span{font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.vcard li{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;padding:.45rem 0;border-top:1px dotted rgba(164,240,60,.13);font-size:.92rem;color:var(--mut)}
.vcard li:first-child{border-top:0}
.vcard li b{color:var(--ink);font-weight:600}
.vcard li .sw{font:700 .6rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--led2);white-space:nowrap}

/* ---------------------------------------------------------- faq accordion */
.q{margin-bottom:.5rem;border-radius:11px;background:rgba(164,240,60,.03);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .35s var(--e)}
.q.open{box-shadow:inset 0 0 0 1px var(--line2)}
.q button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1.05rem 1.1rem;text-align:left;font:600 clamp(1rem,1.4vw,1.06rem)/1.4 var(--fb)}
.q .qn{font:700 .8rem/1 var(--fh);letter-spacing:.14em;color:var(--led)}
.q .ic{position:relative;width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s var(--e)}
.q .ic::before,.q .ic::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:2px;border-radius:2px;background:var(--led2);transform:translate(-50%,-50%)}
.q .ic::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .35s var(--e)}
.q.open .ic{background:rgba(164,240,60,.16)}
.q.open .ic::after{transform:translate(-50%,-50%) rotate(0)}
.a>div{overflow:hidden}
.js .a>div{max-height:0;transition:max-height .4s var(--e)}
.a p{padding:0 1.1rem 1.15rem 3.3rem;color:var(--mut);max-width:78ch}
.js .q.open .a>div{max-height:46rem}
@media (max-width:620px){.a p{padding-left:1.1rem}}

/* ---------------------------------------------------------- link lines */
.lns{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:clamp(.7rem,1.4vw,1.1rem)}
.ln{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.2rem 1.2rem;border-radius:12px;background:linear-gradient(180deg,rgba(164,240,60,.05),rgba(164,240,60,.012));box-shadow:inset 0 0 0 1px var(--line);transition:transform .35s var(--e),box-shadow .35s var(--e)}
.ln:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px var(--line2)}
.ln .lt{display:flex;align-items:center;justify-content:space-between;gap:.6rem;font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.ln .lt b{color:var(--led);font-weight:700}
.ln .lh{font:700 1.34rem/1.05 var(--fh);text-transform:uppercase;letter-spacing:.03em}
.ln .lx{font-size:.92rem;color:var(--mut)}
.ln .lb{margin-top:auto;padding-top:.7rem;border-top:1px dotted rgba(164,240,60,.24);font:600 .58rem/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--led2)}
.ln-img{display:block;border-radius:9px;overflow:hidden;aspect-ratio:16/10;background:#101216;position:relative}
.ln-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 28%}
.dtoc{display:grid;gap:.1rem;counter-reset:toc}
.dtoc li{counter-increment:toc;border-top:1px dotted rgba(164,240,60,.2)}
.dtoc li:first-child{border-top:0}
.dtoc a{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.5rem;padding:.55rem .2rem;font-size:.92rem;color:var(--mut)}
.dtoc a::before{content:counter(toc,decimal-leading-zero);font:700 .78rem/1.5 var(--fh);letter-spacing:.1em;color:var(--led)}
.dtoc a:hover{color:var(--led2)}

/* ---------------------------------------------------------- profile */
.pgrid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(1.2rem,3vw,2.6rem);align-items:start}
@media (max-width:900px){.pgrid{grid-template-columns:1fr}}
.folio{position:relative;border-radius:14px;padding:8px;background:linear-gradient(180deg,#21252b,#111317 70%);box-shadow:inset 0 0 0 1px rgba(164,240,60,.22),0 40px 90px -46px rgba(139,204,51,.45)}
.folio a{display:block;position:relative;border-radius:9px;overflow:hidden;aspect-ratio:2/3;background:#101216}
.folio img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.folio .fcap{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.6rem .4rem .1rem;font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.ptop{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.8rem}
.ptop .brk{font:600 .58rem/1 var(--fb);letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}
.phead h1{font-size:clamp(2rem,4.6vw,3.4rem);text-transform:uppercase;letter-spacing:.02em}
.tagline{margin-top:.7rem;color:var(--led2);font-size:1.02rem}
.prows{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:1.2rem;border-radius:12px;overflow:hidden;background:var(--line);box-shadow:inset 0 0 0 1px var(--line)}
.prows>div{background:rgba(30,33,39,.9);padding:.75rem .85rem}
.prows dt{font:600 .54rem/1 var(--fb);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-bottom:.4rem}
.prows dd{font:700 1.02rem/1.15 var(--fh);letter-spacing:.03em;color:var(--led2)}
.prows dd a{text-decoration:underline;text-underline-offset:2px}
@media (max-width:520px){.prows{grid-template-columns:1fr}}
.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.34rem .6rem;border-radius:6px;font:700 .56rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 0 0 1px var(--line2);color:var(--ink)}
.pill.gd{background:var(--led);color:#141619;box-shadow:none}
.pill.away{color:var(--led2)}
.pill i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.facs{margin-top:1.4rem;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.facs .fh{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.7rem 1rem;background:rgba(164,240,60,.06);font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.facs .fh b{color:var(--led)}
.facs>div{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:.6rem;padding:.6rem 1rem;border-top:1px dotted rgba(164,240,60,.14)}
.facs dt{font:600 .58rem/1.4 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.facs dd{font-size:.95rem;color:var(--ink)}
@media (max-width:520px){.facs>div{grid-template-columns:1fr;gap:.15rem}}
.pset{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.5rem,1.2vw,.9rem)}
.pset a{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:2/3;background:#101216;box-shadow:inset 0 0 0 1px var(--line)}
.pset img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .5s var(--e)}
.pset a:hover img{transform:scale(1.04)}
.pset .pnum{position:absolute;left:.4rem;top:.4rem;z-index:2;font:700 .52rem/1 var(--fb);letter-spacing:.14em;color:var(--led2);padding:.3rem .4rem;border-radius:5px;background:rgba(10,12,15,.72)}
@media (max-width:760px){.pset{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.pset{grid-template-columns:1fr 1fr}}
.ladder{margin-top:1.2rem;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.ladder .lh{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.7rem 1rem;background:rgba(164,240,60,.06);font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.ladder .lh b{color:var(--led)}
.ladder .lrow{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.55rem 1rem;border-top:1px dotted rgba(164,240,60,.14);font-size:.95rem;color:var(--mut)}
.ladder .lv{font:700 1.1rem/1 var(--fh);letter-spacing:.03em;color:var(--led2);white-space:nowrap}
.ladder .lfoot{display:block;padding:.7rem 1rem;border-top:1px dotted rgba(164,240,60,.14);font:600 .58rem/1.5 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.ladder .lfoot a{color:var(--led2);text-decoration:underline;text-underline-offset:2px}
.pn{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:1.2rem}
.pn a{display:grid;gap:.25rem;padding:.9rem 1rem;border-radius:11px;box-shadow:inset 0 0 0 1px var(--line);font:700 1.05rem/1.1 var(--fh);text-transform:uppercase;letter-spacing:.04em}
.pn a:hover{box-shadow:inset 0 0 0 1px var(--line2);color:var(--led2)}
.pn a span{font:600 .54rem/1 var(--fb);letter-spacing:.22em;color:var(--dim)}
.pn a:last-child{text-align:right}
@media (max-width:620px){.pn{grid-template-columns:1fr}.pn a:last-child{text-align:left}}
.ledger{display:grid;gap:.6rem}
.ledger li{padding:1.1rem 1.2rem;border-radius:11px;background:rgba(164,240,60,.03);box-shadow:inset 0 0 0 1px var(--line)}
.ledger blockquote{color:var(--ink);font-size:1rem;line-height:1.6}
.ledger .lmeta{display:block;margin-top:.6rem;font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--led2)}
.ledger-empty{padding:1.2rem;border-radius:11px;box-shadow:inset 0 0 0 1px var(--line);color:var(--mut);font-size:.95rem}
.ledger-empty b{display:block;margin-bottom:.5rem;font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--led)}

/* ---------------------------------------------------------- guide article */
.art-grid{display:grid;grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:clamp(1.4rem,3.4vw,3rem);align-items:start;padding-bottom:clamp(2rem,5vw,3.4rem)}
@media (max-width:980px){.art-grid{grid-template-columns:1fr}}
.art-toc{position:sticky;top:90px;padding:1.1rem 1.2rem 1.2rem;border-radius:12px;background:rgba(26,29,34,.86);box-shadow:inset 0 0 0 1px var(--line)}
.art-toc>span{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin-bottom:.6rem;font:600 .56rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.art-toc>span b{color:var(--led)}
.art-toc .btn{margin-top:1rem;width:100%}
@media (max-width:980px){.art-toc{position:static}}
.art>section{padding-top:clamp(1.6rem,3.4vw,2.4rem);margin-top:clamp(1.6rem,3.4vw,2.4rem);border-top:1px dotted rgba(164,240,60,.2)}
.art>section:first-child{border-top:0;margin-top:0;padding-top:0}
.art h2{font-size:clamp(1.6rem,3.2vw,2.4rem);text-transform:uppercase;letter-spacing:.02em;scroll-margin-top:110px;margin-bottom:.8rem}
.art p{max-width:74ch;color:var(--mut)}
.art p+p{margin-top:.9rem}
.byline{display:block;margin-top:.9rem;font:600 .58rem/1.5 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.byline b{color:var(--led2)}
.filed{margin-top:1.4rem;padding:1rem 1.1rem;border-radius:11px;background:rgba(164,240,60,.04);box-shadow:inset 0 0 0 1px var(--line);font-size:.93rem;color:var(--mut)}
.filed a{color:var(--led2);text-decoration:underline;text-underline-offset:2px}

/* ---------------------------------------------------------- closing block */
.final{border-top:1px solid var(--line);padding:clamp(2.6rem,6vw,4.4rem) 0 clamp(3rem,7vw,5rem)}
.fin{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(1.6rem,4vw,3.4rem);align-items:center;container-type:inline-size}
.fin h2{font-size:clamp(2.2rem,8cqi,4.6rem);text-transform:uppercase;letter-spacing:.02em;line-height:.92;margin-top:.8rem}
.fin h2 em{font-style:normal;color:var(--led)}
.fin .lede{margin-top:1rem}
@media (max-width:860px){.fin{grid-template-columns:1fr}}

/* ---------------------------------------------------------- 404 */
.nf{padding:clamp(3rem,8vw,6rem) 0;text-align:center}
.nf .big{font:700 clamp(5rem,22vw,14rem)/1 var(--fh);letter-spacing:.06em;color:transparent;background:radial-gradient(circle,var(--led) 1.7px,transparent 1.8px) 0 0/10px 10px;-webkit-background-clip:text;background-clip:text;opacity:.85}
.nf h1{margin-top:1rem;font-size:clamp(1.8rem,5vw,3.2rem);text-transform:uppercase;letter-spacing:.02em}
.nf .lede{margin:1rem auto 0}
.nf .ctas{justify-content:center}

/* ---------------------------------------------------------- reveal */
.js .rv{opacity:0;transform:translateY(16px);transition:opacity .55s var(--e),transform .55s var(--e);transition-delay:var(--d,0s)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
.js .rv{opacity:1;transform:none}
}

/* ---------------------------------------------------------- lightbox
   NOTE: the class is .lbx, not .lb: .ln .lb is the "Open the line" label on a
   link card, and a bare .lb{display:none} rule would hide every one of them. */
.lbx{position:fixed;inset:0;z-index:120;display:none;place-items:center;padding:clamp(12px,3vw,40px);background:rgba(8,9,11,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lbx.on{display:grid}
.lbx figure{position:relative;max-width:min(92vw,820px)}
.lbx img{width:100%;height:auto;border-radius:10px;box-shadow:0 40px 90px -40px rgba(0,0,0,.9)}
.lbx figcaption{margin-top:.7rem;font:600 .58rem/1.4 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);text-align:center}
.lbx button{position:absolute;top:-46px;right:0;width:40px;height:40px;border-radius:9px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line2);color:var(--led2);font:700 1.2rem/1 var(--fb)}
.lbx .nav{position:absolute;left:0;right:0;top:50%;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none}
.lbx .nav button{position:static;pointer-events:auto;background:rgba(20,22,26,.8)}

footer.site-foot{border-top:1px solid var(--line);background:#0b0d10;padding:clamp(2.6rem,6vw,3.8rem) 0 2rem}
.fg{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,1fr));gap:2rem 1.5rem}
.fg h4{margin-bottom:.9rem;font:600 .6rem/1 var(--fb);letter-spacing:.22em;text-transform:uppercase;color:var(--led)}
.fg h4 a{color:inherit}
.fg ul{list-style:none;display:grid;gap:.45rem;font-size:.9rem;color:var(--mut);align-content:start}
.fg a:hover{color:var(--led2)}
.fg .fnote{margin-top:.9rem;font-size:.9rem;color:var(--mut);max-width:44ch}
.fg small{color:var(--dim)}
.ftrust{margin-top:1.8rem;padding:1rem 1.1rem;border-radius:11px;box-shadow:inset 0 0 0 1px var(--line);font-size:.84rem;line-height:1.6;color:var(--mut);max-width:96ch}
.ftrust b{display:inline-block;margin-right:.6rem;font:600 .58rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--led)}
.ftrust a{color:var(--led2);text-decoration:underline;text-underline-offset:2px}
.fbase{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.8rem;padding-top:1.3rem;border-top:1px solid var(--line);font-size:.83rem;color:var(--dim)}
.fbase nav{display:flex;flex-wrap:wrap;gap:1.2rem}
.fbase a:hover{color:var(--led2)}
.age{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--led);color:#141619;font:700 1rem/1 var(--fh);letter-spacing:.04em;margin-right:.7rem;vertical-align:middle;flex:none}
@media (max-width:1040px){.fg{grid-template-columns:1fr 1fr}}
@media (max-width:760px){footer.site-foot{padding-bottom:96px}}
@media (max-width:520px){.fg{grid-template-columns:1fr}}

.cc-mbar{gap:6px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:rgba(26,29,34,.94);box-shadow:inset 0 1px 0 rgba(164,240,60,.3),0 -18px 40px -12px rgba(0,0,0,.85) !important}
.cc-mbar a{border-radius:10px;font-family:"Familjen Grotesk",Arial,sans-serif !important;font-weight:700 !important;font-size:.78rem !important;letter-spacing:.12em !important;text-transform:uppercase}
.cc-mbar a.cc-wa{background:linear-gradient(180deg,#c8f68a,#8bcc33) !important;color:#141619 !important}
.cc-mbar a.cc-wa svg{fill:#141619 !important}
.cc-mbar a.cc-tg{background:none !important;box-shadow:inset 0 0 0 1px rgba(164,240,60,.34) !important;color:#eef1f6 !important}
