@font-face{font-family:"Jost";src:url("fonts/jost-var.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Space Mono";src:url("fonts/spacemono.woff2") format("woff2");font-weight:400;font-display:swap}
:root{
  --ink:#ececec; --dim:rgba(236,236,236,.74); --faint:rgba(236,236,236,.58);
  --line:rgba(236,236,236,.12); --blue:#2296FF;
  --gold:linear-gradient(180deg,#FFF1B0 0%,#FFB21E 100%);
  --pad:clamp(22px,4.4vw,64px);
  --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:#000;color:var(--ink);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"Jost",system-ui,sans-serif;font-weight:400;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--blue);color:#000}
.mono{font-family:"Space Mono",ui-monospace,monospace;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:400}

/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:20;height:64px;display:flex;align-items:center;justify-content:space-between;
  padding:0 var(--pad);border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,0));transition:background .8s var(--ease),border-color .8s}
.nav.is-scrolled{background:rgba(0,0,0,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav__brand{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:500;letter-spacing:.5em;text-transform:uppercase}
.mark{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:2.4}
.nav__links{display:flex;gap:clamp(24px,3.4vw,52px)}
.nav__links a,.nav__cta{font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);transition:color .4s}
.nav__links a:hover,.nav__cta:hover{color:var(--ink)}
.nav__cta span{color:var(--blue)}
.nav__links a.nav__support{color:#FFD36A}.nav__links a.nav__support:hover{color:#FFF1B0}

/* hero */
.hero{position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;display:grid;place-items:center}
.hero__media{position:absolute;inset:-20vh 0 0;will-change:transform}
.hero__media img{width:100%;height:100%;object-fit:cover;object-position:50% 70%;
  animation:drift 22s var(--ease) both}
@keyframes drift{from{transform:scale(1.14);opacity:0}12%{opacity:1}to{transform:scale(1.02);opacity:1}}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(0deg,#000 0,rgba(0,0,0,.6) 7%,transparent 22%),radial-gradient(120% 80% at 50% 30%,transparent 40%,rgba(0,0,0,.55) 100%)}
.hero__copy{position:relative;z-index:2;text-align:center;transform:translateY(-21vh)}
.wordmark{font-weight:300;font-size:clamp(46px,11.2vw,184px);line-height:1;letter-spacing:.42em;margin-right:-.42em;
  text-transform:uppercase;color:#f2f2f2}
.wordmark span{display:inline-block;opacity:0;filter:blur(10px);animation:letter .8s var(--ease) forwards}
.wordmark span:nth-child(1){animation-delay:.05s}.wordmark span:nth-child(2){animation-delay:.1s}
.wordmark span:nth-child(3){animation-delay:.15s}.wordmark span:nth-child(4){animation-delay:.2s}
.wordmark span:nth-child(5){animation-delay:.25s}.wordmark span:nth-child(6){animation-delay:.3s}
.wordmark span:nth-child(7){animation-delay:.35s}
@keyframes letter{to{opacity:1;filter:blur(0)}}
.hero__line{margin-top:clamp(20px,2.6vw,34px);font-size:clamp(12px,1vw,14px);font-weight:500;letter-spacing:.62em;margin-right:-.62em;
  text-transform:uppercase;color:var(--dim)}
.hero .hero__line{opacity:0;animation:fade .8s .4s var(--ease) forwards}
@keyframes fade{to{opacity:1}}
.hero__meta{position:absolute;z-index:2;bottom:38px;color:var(--faint);opacity:0;animation:fade .8s .7s forwards}
.hero__meta--l{left:var(--pad)}.hero__meta--r{right:var(--pad)}

/* shared */
.label{color:var(--faint);margin-bottom:34px}
.body{font-size:clamp(16px,1.2vw,18px);font-weight:400;color:var(--dim);max-width:30em;letter-spacing:.02em}
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1.8s var(--ease),transform 1.8s var(--ease)}
.reveal.in{opacity:1;transform:none}
.gold{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}

/* signal */
.signal{min-height:100vh;display:grid;place-items:center;padding:22vh var(--pad) 18vh;text-align:center}
.signal__inner{display:flex;flex-direction:column;align-items:center}
.signal__moon{width:clamp(150px,17vw,250px);height:auto;margin-bottom:9vh;opacity:.95}
.statement{font-weight:300;font-size:clamp(34px,4.8vw,70px);line-height:1.12;letter-spacing:.08em;margin-bottom:38px}
.cities{display:flex;align-items:center;gap:22px;margin-top:56px;color:var(--faint)}
.cities i{display:block;width:clamp(60px,10vw,140px);height:1px;background:var(--line);position:relative}
.cities i::after{content:"";position:absolute;top:-2px;left:50%;width:5px;height:5px;border-radius:50%;background:var(--blue);
  box-shadow:0 0 12px var(--blue);animation:transit 7s ease-in-out infinite alternate}
@keyframes transit{from{left:0}to{left:calc(100% - 5px)}}

/* channel */
.channel{padding:16vh var(--pad) 22vh;border-top:1px solid var(--line)}
.channel__grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,7vw,120px);align-items:center}
.channel h2{font-weight:500;font-size:clamp(30px,3.6vw,52px);letter-spacing:.2em;text-transform:uppercase;line-height:1.1;margin-bottom:30px}
.channel__links{list-style:none;margin-top:52px;border-top:1px solid var(--line)}
.channel__links a{display:flex;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);
  font-size:13px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;transition:padding .6s var(--ease)}
.channel__links em{font-style:normal;color:var(--faint);letter-spacing:.08em;text-transform:none;font-size:15px;margin-left:auto}
.channel__links b{font-weight:400;color:var(--faint);transition:color .4s}
.channel__links a:hover{padding-left:10px}.channel__links a:hover b{color:var(--blue)}
.dot{width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 10px var(--blue)}
.dot--off{background:transparent;border:1px solid var(--faint);box-shadow:none}
.card{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--line);background:#000;transition:border-color .8s}
.card__img,.card__img img{position:absolute;inset:0;width:100%;height:100%}
.card__img img{object-fit:cover;object-position:50% 38%;transform:scale(1.04);transition:transform 2.4s var(--ease),opacity 1s;opacity:.86}
.card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent 45%)}
.card:hover{border-color:rgba(34,150,255,.55)}
.card:hover .card__img img{transform:scale(1.0);opacity:1}
.card__play{position:absolute;z-index:2;top:50%;left:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;
  border:1px solid rgba(236,236,236,.7);background:rgba(0,0,0,.38);display:grid;place-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(4px);transition:border-color .6s,transform .8s var(--ease)}
.card__play svg{width:22px;height:22px;fill:var(--ink);margin-left:3px}
.card:hover .card__play{border-color:var(--blue);transform:scale(1.06)}
.card__tag{position:absolute;z-index:2;top:20px;left:22px;color:var(--dim);display:flex;gap:10px;align-items:center}
.card__tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 10px var(--blue)}
.card__cap{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;color:var(--faint)}
.card__title{font-size:14px;letter-spacing:.32em;text-transform:uppercase;color:var(--ink);font-weight:450}
.card__title b{font-weight:600}

/* next */
.next{position:relative;min-height:100vh;overflow:hidden;display:flex;align-items:flex-start;justify-content:center;text-align:center;border-top:1px solid var(--line)}
.next__media{position:absolute;left:0;right:0;top:30%;bottom:-4%;will-change:transform}
.next__media img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.next__copy{position:relative;z-index:2;padding-top:15vh}
.wordmark--sm{font-size:clamp(28px,4.6vw,66px);letter-spacing:.5em;margin-right:-.5em}
.next .hero__line{margin-top:28px}

.next::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;z-index:1;pointer-events:none;background:linear-gradient(0deg,#000 8%,transparent)}

/* footer */
.foot{padding:72px var(--pad) 44px;border-top:1px solid var(--line)}
.foot__row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:48px}
.foot__links{display:flex;flex-wrap:wrap;gap:16px 40px}
.foot__links a{font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);transition:color .4s}
.foot__links a:hover{color:var(--ink)}.foot__links a span{color:var(--blue)}
.foot__org{max-width:76em;padding:0 0 36px;margin-bottom:36px;border-bottom:1px solid var(--line)}
.foot__name{font-size:13px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--ink)}
.foot__desc{margin-top:12px;font-size:15px;line-height:1.7;color:var(--dim);letter-spacing:.02em;max-width:60em}
.foot__links a[aria-current=page]{color:var(--ink)}
.credits{max-width:76em;font-size:13px;line-height:1.75;color:var(--faint);letter-spacing:.02em}
.copy{margin-top:22px;font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--faint)}

/* your moon */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.yours{padding:clamp(56px,9vh,96px) var(--pad) 18vh;position:relative;background:linear-gradient(180deg,#000,#030406 40%,#000)}
.yours__inner{max-width:1280px;margin:0 auto}
.yours__head{max-width:34em}
.yours__title{font-weight:300;font-size:clamp(30px,3.9vw,58px);line-height:1.14;letter-spacing:.2em;text-transform:uppercase;margin-bottom:30px}
.ym-k{display:block;color:var(--faint);margin-bottom:12px}
.ym-search{position:relative}
.ym-combo{position:relative}
.ym-combo input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(236,236,236,.28);border-radius:0;color:var(--ink);
  font:350 clamp(24px,2.4vw,34px)/1.2 "Jost",system-ui,sans-serif;letter-spacing:.06em;padding:10px 48px 16px 0;transition:border-color .5s}
.ym-combo input::placeholder{color:rgba(236,236,236,.5)}
.ym-combo input:focus{outline:none;border-bottom-color:var(--blue)}
.ym-combo__icon{position:absolute;right:4px;top:50%;width:22px;height:22px;margin-top:-14px;fill:none;stroke:var(--dim);stroke-width:1.2;pointer-events:none}
.ym-list{position:absolute;z-index:6;left:0;right:0;top:calc(100% + 6px);list-style:none;max-height:340px;overflow:auto;
  background:rgba(7,8,10,.96);border:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.ym-list li{display:flex;align-items:baseline;gap:16px;padding:14px 20px;cursor:pointer;border-left:1px solid transparent;transition:background .25s}
.ym-list li:hover,.ym-list li[aria-selected=true]{background:rgba(34,150,255,.07);border-left-color:var(--blue)}
.ym-opt__n{font-size:18px;font-weight:450;letter-spacing:.04em}
.ym-opt__r{font-size:14px;color:var(--faint);letter-spacing:.06em;margin-left:auto;text-align:right}
.ym-empty{color:var(--faint);cursor:default!important}
.ym-loc{display:inline-flex;align-items:center;gap:12px;background:none;border:0;color:var(--dim);cursor:pointer;padding:6px 0;transition:color .4s}
.ym-loc:hover{color:var(--ink)}
.ym-when{display:flex;align-items:flex-end;gap:clamp(18px,2.4vw,34px);flex-wrap:wrap}
.ym-field{display:flex;flex-direction:column}
.ym-field input{color-scheme:dark;background:transparent;border:0;border-bottom:1px solid rgba(236,236,236,.28);border-radius:0;color:var(--ink);
  font:450 17px/1.2 "Jost",system-ui,sans-serif;letter-spacing:.06em;padding:8px 0 12px;min-width:0;transition:border-color .5s}
.ym-field input:focus{outline:none;border-bottom-color:var(--blue)}
.ym-now{display:inline-flex;align-items:center;gap:10px;background:none;color:var(--dim);border:1px solid var(--line);padding:11px 16px;cursor:pointer;transition:border-color .4s,color .4s}
.ym-now i{width:5px;height:5px;border-radius:50%;border:1px solid var(--faint)}
.ym-now[aria-pressed=true]{color:var(--ink);border-color:rgba(34,150,255,.55)}
.ym-now[aria-pressed=true] i{background:var(--blue);border-color:var(--blue);box-shadow:0 0 10px var(--blue);animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.ym-status{min-height:1.6em;margin-top:10px;color:var(--faint);letter-spacing:.1em;text-transform:none}
.yours :focus-visible,.console :focus-visible,.nav :focus-visible,.foot :focus-visible,.channel :focus-visible{outline:1px solid var(--blue);outline-offset:4px}
.ym-combo input:focus-visible,.ym-field input:focus-visible,.ym-mail__row input:focus-visible{outline:none}

.ym-result{margin-top:clamp(36px,6vh,64px);padding-top:clamp(40px,7vh,72px);border-top:1px solid var(--line);animation:fade 1.4s var(--ease) both;opacity:0}
.ym-city{font-weight:300;font-size:clamp(36px,6.2vw,96px);line-height:1.04;letter-spacing:.22em;text-transform:uppercase;overflow-wrap:anywhere}
.ym-region{margin-top:22px;color:var(--dim)}
.ym-at{margin-top:10px;color:var(--faint)}
.ym-grid{margin-top:6vh;display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,7vw,120px);align-items:center}
.ym-figure{text-align:center}
.ym-disk{width:min(100%,460px);height:auto;display:block;margin:0 auto;overflow:visible}
.ym-figure figcaption{margin-top:22px;color:var(--faint)}
.ym-phase{font-weight:350;font-size:clamp(24px,2.6vw,38px);letter-spacing:.2em;text-transform:uppercase;line-height:1.2}
.ym-illum{display:flex;align-items:flex-end;gap:6px;margin-top:18px}
.ym-illum>span:first-child{font-weight:200;font-size:clamp(72px,9vw,136px);line-height:.86;letter-spacing:-.01em}
.ym-illum small{font-weight:300;font-size:clamp(26px,3vw,44px);line-height:1;margin-right:18px;color:var(--dim)}
.ym-illum .mono{color:var(--faint);line-height:2}
.ym-dl{margin-top:48px;display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(24px,3vw,48px)}
.ym-dl div{border-top:1px solid var(--line);padding:16px 0 18px}
.ym-dl dt{color:var(--faint)}
.ym-dl dd{margin-top:6px;font-size:17px;font-weight:450;letter-spacing:.03em;color:var(--ink)}
.ym-pos dd{display:flex;align-items:center;gap:10px}
.ym-pos dd::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;border:1px solid var(--faint)}
.ym-pos.is-up dd::before{background:var(--blue);border-color:var(--blue);box-shadow:0 0 10px var(--blue)}
.ym-next{margin-top:12vh}
.ym-quarters{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.4vw,36px)}
.ym-quarters li{border-top:1px solid var(--line);padding-top:22px;display:flex;flex-direction:column;gap:6px}
.ym-quarters svg{width:26px;height:26px;margin-bottom:12px}
.g-d{fill:#141517;stroke:rgba(236,236,236,.22);stroke-width:.06}.g-l{fill:#e4e4e4}
.ym-q__n{font-size:12.5px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--dim)}
.ym-q__d{font-size:clamp(19px,1.6vw,23px);font-weight:350;letter-spacing:.06em}
.ym-q__t{color:var(--faint)}
.ym-full{margin-top:56px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 26px}
.ym-full .ym-k{margin:0}
.ym-full__n{font-weight:350;font-size:clamp(22px,2.2vw,30px);letter-spacing:.18em;text-transform:uppercase}
.ym-full__d{color:var(--faint)}

.ym-seg{display:inline-flex;border:1px solid var(--line)}
.ym-seg label{position:relative;cursor:pointer}
.ym-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:inherit}
.ym-seg span{display:block;padding:13px clamp(14px,1.6vw,22px);font:400 11.5px/1 "Space Mono",ui-monospace,monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);transition:background .3s,color .3s}
.ym-seg label+label span{border-left:1px solid var(--line)}
.ym-seg input:checked+span{background:rgba(236,236,236,.08);color:var(--ink)}
.ym-seg input:focus-visible+span{outline:1px solid var(--blue);outline-offset:-1px}
.ym-mail__row{display:flex;gap:0;min-width:0}
.ym-mail__row input{flex:1;min-width:0;background:transparent;border:0;border-bottom:1px solid rgba(236,236,236,.28);border-radius:0;color:var(--ink);
  font:450 17px/1.2 "Jost",system-ui,sans-serif;letter-spacing:.04em;padding:12px 0}
.ym-mail__row input:focus{outline:none;border-bottom-color:var(--blue)}
.ym-mail__row input::placeholder{color:rgba(236,236,236,.5)}
.ym-mail__row button{margin-left:18px;background:none;color:var(--ink);border:1px solid rgba(236,236,236,.5);padding:13px 24px;cursor:pointer;transition:border-color .4s,background .4s}
.ym-mail__row button:hover{border-color:var(--blue);background:rgba(34,150,255,.08)}
.ym-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ym-mail__note a{color:var(--dim);border-bottom:1px solid var(--line)}

/* hero console: Your Moon search on the first screen */
.console{position:absolute;z-index:4;left:50%;bottom:clamp(60px,8vh,84px);transform:translateX(-50%);width:min(1080px,calc(100% - 2 * var(--pad)));
  padding:16px clamp(22px,2.4vw,32px) 14px;border:1px solid rgba(236,236,236,.16);
  background:linear-gradient(180deg,rgba(6,7,9,.66),rgba(4,5,7,.8));backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);
  opacity:0;animation:rise .9s .2s var(--ease) forwards}
.console::before{content:"";position:absolute;left:-1px;top:-1px;width:min(180px,30%);height:2px;background:var(--gold)}
@keyframes rise{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
.console__head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:4px}
.console__k{color:var(--dim);display:flex;align-items:center;gap:12px}
.console__k i{font-style:normal}
.console__k b{font-weight:400;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.console__live{width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 12px var(--blue);animation:pulse 2.4s ease-in-out infinite}
.console__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(22px,3vw,48px);align-items:center}
.console .ym-list{top:auto;bottom:calc(100% + 8px);max-height:min(340px,46vh)}
.console .ym-status{position:absolute;margin:0;top:calc(100% + 4px);left:0;right:0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.console__read{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:12px 0 12px clamp(18px,2.4vw,36px);border-left:1px solid var(--line);color:var(--ink);transition:color .4s}
.hx-disk{width:52px;height:52px;flex:none;filter:drop-shadow(0 0 14px rgba(207,216,230,.18))}
.hx-txt{display:flex;flex-direction:column;gap:6px;min-width:0}
.hx-phase{font-size:clamp(16px,1.3vw,19px);font-weight:500;letter-spacing:.16em;text-transform:uppercase;line-height:1.25}
.hx-phase em{font-style:normal;white-space:nowrap;font-weight:400;color:var(--dim);letter-spacing:.08em}
.hx-sub{color:var(--dim);letter-spacing:.12em;line-height:1.5}
.hx-more{display:inline-flex;align-items:center;gap:8px;color:var(--dim);white-space:nowrap;padding:10px 12px;border:1px solid var(--line);transition:border-color .4s,color .4s}
.hx-more svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.4}
.console__read:hover .hx-more{color:var(--ink);border-color:rgba(34,150,255,.6)}

/* Your Moon section bar */
.yours__bar{display:flex;justify-content:space-between;align-items:flex-end;gap:32px 48px;flex-wrap:wrap}
.yours__head .label{margin-bottom:14px}

/* CTA row: moon updates + support */
.ym-cta{margin-top:clamp(56px,9vh,96px);display:grid;grid-template-columns:7fr 5fr;border:1px solid rgba(236,236,236,.16);position:relative;
  background:radial-gradient(70% 140% at 0% 0%,rgba(34,150,255,.07),transparent 60%),radial-gradient(60% 140% at 100% 100%,rgba(255,178,30,.06),transparent 60%)}
.ym-cta::before{content:"";position:absolute;left:-1px;top:-1px;width:120px;height:2px;background:var(--blue)}
.ym-cta>*{padding:clamp(26px,3.2vw,48px)}
.ym-cta>*+*{border-left:1px solid var(--line)}
.ym-cta__k{display:flex;align-items:center;gap:14px;color:var(--dim);margin-bottom:18px}
.ym-cta__n{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid rgba(236,236,236,.3);letter-spacing:0;color:var(--ink)}
.ym-cta__t{font-weight:400;font-size:clamp(22px,2vw,30px);letter-spacing:.06em;line-height:1.25;margin-bottom:26px}
.ym-cta__t span{white-space:nowrap}
.ym-cta__t b{font-weight:500;letter-spacing:.14em}
.ym-soon{display:none;margin-left:auto;color:#7cc0ff;align-items:center;gap:10px}
.ym-soon::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 10px var(--blue)}
.is-soon .ym-soon{display:inline-flex}
.ym-mail fieldset{border:0;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.ym-mail__row{align-self:stretch}
.ym-mail__row button{margin-left:18px;background:none;color:var(--ink);border:1px solid rgba(236,236,236,.5);padding:13px 22px;cursor:pointer;white-space:nowrap;transition:border-color .4s,background .4s}
.is-soon fieldset{opacity:.55}.is-soon fieldset *{cursor:not-allowed!important}
.ym-mail__note{margin-top:22px;font-size:14px;color:var(--dim);letter-spacing:.02em;line-height:1.55}
.ym-mail__note a{color:var(--ink);border-bottom:1px solid var(--line)}
.ym-mail__msg{margin-top:10px;min-height:1.4em;color:var(--dim);text-transform:none;letter-spacing:.1em}
.ym-mail__msg:empty{display:none}
.ym-support{display:flex;flex-direction:column}
.ym-support__p{font-size:16px;color:var(--dim);margin:-8px 0 26px;max-width:24em}
.ym-support__btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;align-self:flex-start;padding:16px 24px;font-size:12px;
  border:1px solid transparent;background:var(--gold);color:#120d00;font-weight:400;transition:filter .4s,transform .6s var(--ease)}
.ym-support__btn:hover{filter:brightness(1.08)}
.ym-support__btn[aria-disabled=true]{background:transparent;color:var(--dim);border-color:rgba(236,236,236,.3);cursor:not-allowed}
.ym-support__legal{margin-top:auto;padding-top:22px;font-size:14px;line-height:1.55;color:var(--dim);max-width:30em}

/* hero console: YouTube @MoonUpdate row (secondary to Support: no gold, no fill) */
.console__yt{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}
.yt-short{display:inline-flex;align-items:center;gap:12px;min-width:0;font-size:15px;font-weight:450;letter-spacing:.06em;color:var(--dim);transition:color .4s}
.yt-short span{border-bottom:1px solid transparent;transition:border-color .4s}
.yt-short:hover{color:var(--ink)}.yt-short:hover span{border-bottom-color:rgba(236,236,236,.4)}
.yt-glyph{width:22px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5}
.yt-glyph path{fill:var(--ink);stroke:none}
.yt-short:hover .yt-glyph path{fill:#ff3b3b}
.yt-sub{flex:none;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);color:var(--dim);white-space:nowrap;transition:border-color .4s,color .4s}
.yt-sub span{color:var(--blue)}
.yt-sub:hover{color:var(--ink);border-color:rgba(34,150,255,.6)}
.yt-short:focus-visible,.yt-sub:focus-visible,.photo__btn:focus-visible{outline:1px solid var(--blue);outline-offset:3px}

/* Moon Photo of the Week (in the Moon Update section) */
.photo{max-width:1280px;margin:clamp(72px,12vh,130px) auto 0;padding:clamp(26px,3.2vw,44px);border:1px solid rgba(236,236,236,.16);position:relative;
  background:radial-gradient(60% 140% at 100% 0%,rgba(34,150,255,.06),transparent 60%)}
.photo::before{content:"";position:absolute;left:-1px;top:-1px;width:120px;height:2px;background:var(--blue)}
.photo__k{display:flex;align-items:center;gap:12px;color:var(--dim);margin-bottom:18px}
.photo__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px clamp(32px,5vw,80px);align-items:end}
.photo__t{font-weight:400;font-size:clamp(22px,2vw,30px);letter-spacing:.06em;line-height:1.25;margin-bottom:12px}
.photo__p{font-size:clamp(16px,1.2vw,18px);color:var(--dim);letter-spacing:.02em;max-width:34em}
.photo__p a{color:var(--ink);border-bottom:1px solid var(--line);transition:border-color .4s}.photo__p a:hover{border-color:var(--blue)}
.photo__act{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.photo__btn{display:inline-flex;align-items:center;gap:10px;padding:15px 22px;border:1px solid rgba(236,236,236,.5);color:var(--ink);white-space:nowrap;transition:border-color .4s,background .4s}
.photo__btn span{color:var(--blue)}
.photo__btn:hover{border-color:var(--blue);background:rgba(34,150,255,.08)}
.photo__to{color:var(--faint);text-transform:none;letter-spacing:.08em}
.photo__legal{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:14px;line-height:1.55;color:var(--dim);max-width:46em}
@media (max-width:900px){.photo__grid{grid-template-columns:1fr;align-items:start}}
@media (max-width:560px){
  .console__yt{margin-top:12px;padding-top:12px}
  .yt-short{font-size:14px;letter-spacing:.03em;gap:10px;line-height:1.35}
  .yt-sub{padding:7px 10px;font-size:10.5px;letter-spacing:.14em}
  .photo__btn{align-self:stretch;justify-content:center}
}

/* privacy page */
.doc{max-width:46em;margin:0 auto;padding:22vh var(--pad) 14vh}
.doc h1{font-weight:300;font-size:clamp(30px,3.6vw,48px);letter-spacing:.22em;text-transform:uppercase;margin-bottom:48px}
.doc h2{font-weight:500;font-size:14px;letter-spacing:.32em;text-transform:uppercase;margin:48px 0 14px;color:var(--ink)}
.doc p,.doc li{color:var(--dim);font-size:17px;margin-bottom:14px}
.doc ul{padding-left:1.2em}
.doc a{color:var(--ink);border-bottom:1px solid var(--line)}

/* about page */
.about__lead{font-weight:300;font-size:clamp(22px,2.4vw,30px)!important;line-height:1.5;letter-spacing:.04em;color:var(--ink)!important;margin-bottom:8px!important}
.about__facts{margin:22px 0 8px;border-top:1px solid var(--line)}
.about__facts div{display:grid;grid-template-columns:11em 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.about__facts dt{font-family:inherit;font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--faint);padding-top:3px}
.about__facts dd{font-size:17px;color:var(--ink);line-height:1.6}
.about__note{margin-top:28px;padding:18px 22px;border:1px solid var(--line);border-left:2px solid #FFB21E}
.about__note p{margin:0!important;color:var(--ink)!important}
.doc :focus-visible{outline:1px solid var(--blue);outline-offset:4px}
@media (max-width:560px){.about__facts div{grid-template-columns:1fr;gap:6px}}

@media (max-width:900px){
  .nav__links a{display:none}.nav__links a.nav__yours,.nav__links a.nav__support{display:inline}
  .ym-grid{grid-template-columns:1fr}
  .console__grid{grid-template-columns:1fr;gap:14px}
  .console__read{border-left:0;border-top:1px solid var(--line);padding:16px 0 2px}
  .console .ym-status{position:static;margin-top:6px;white-space:normal}
  .console .ym-status:empty{display:none}
  .ym-cta{grid-template-columns:1fr}
  .ym-cta>*+*{border-left:0;border-top:1px solid var(--line)}
  .ym-grid{gap:56px}
  .ym-quarters{grid-template-columns:1fr 1fr;row-gap:30px}
  .channel__grid{grid-template-columns:1fr}
  .hero__meta{display:none}
}
@media (max-width:560px){
  .nav{height:56px}
  .nav__brand{letter-spacing:.42em;font-size:11px}
  .wordmark{letter-spacing:.3em;margin-right:-.3em;font-size:15vw}
  .wordmark--sm{font-size:7.6vw;letter-spacing:.36em;margin-right:-.36em}
  .hero__line{letter-spacing:.48em;margin-right:-.48em}
  .signal{padding:16vh var(--pad) 14vh}
  .channel{padding:12vh var(--pad) 14vh}
  .channel h2{letter-spacing:.14em}
  .card{aspect-ratio:1/1}
  .card__img img{object-position:50% 30%}
  .card::after{background:linear-gradient(0deg,rgba(0,0,0,.95) 8%,transparent 50%)}
  .card__cap{flex-direction:column;align-items:flex-start;gap:8px}
  .card__play{width:60px;height:60px;margin:-30px 0 0 -30px}
  .next{min-height:88vh}
  .next__copy{padding-top:12vh}
  .next__media{top:34%}
  .foot__row{flex-direction:column;align-items:flex-start;gap:28px}
  .nav__links{gap:18px}
  .nav__links a,.nav__cta{letter-spacing:.18em;font-size:11px}
  .nav__brand span{display:none}
  .yours{padding:44px var(--pad) 12vh}
  .yours__title{letter-spacing:.14em}
  .ym-city{letter-spacing:.14em;font-size:clamp(30px,11vw,52px)}
  .ym-dl{grid-template-columns:1fr}
  .ym-dl div{padding:13px 0 14px;display:flex;justify-content:space-between;align-items:baseline;gap:18px}
  .ym-dl dd{margin:0;text-align:right;font-size:15px}
  .ym-pos dd{justify-content:flex-end}
  .ym-mail__row{flex-direction:column;gap:18px}
  .ym-mail__row button{margin:0;align-self:flex-start}
  .ym-seg{display:flex;align-self:stretch}.ym-seg label{flex:1;text-align:center}
  .ym-cta__k{flex-wrap:wrap}
  .ym-support__btn{align-self:stretch}
  .hero__copy{transform:translateY(-27vh)}
  .console{bottom:calc(20px + env(safe-area-inset-bottom));padding:16px 18px 14px}
  .console__head{margin-bottom:8px}
  .console__k{font-size:11px;letter-spacing:.14em;gap:9px}
  .console__k i{display:none}
  .console .ym-loc{font-size:10.5px;letter-spacing:.12em;gap:8px;padding:6px 0}
  .hx-disk{width:44px;height:44px}
  .console__read{gap:14px}
  .hx-more{padding:9px;font-size:0;gap:0}
  .hx-more svg{width:12px;height:12px}
  .ym-list li{flex-direction:column;gap:2px}.ym-opt__r{margin-left:0;text-align:left}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}

/* ===== neon accents (Nov 2026): accents, not floods ===== */
:root{--neon-b:#00E5FF;--neon-g:#39FF88;--neon-r:#FF3B5C;
  --glow-b:0 0 0 1px rgba(0,229,255,.55),0 0 18px rgba(0,229,255,.35);
  --glow-g:0 0 0 1px rgba(57,255,136,.55),0 0 18px rgba(57,255,136,.3);
  --glow-r:0 0 0 1px rgba(255,59,92,.6),0 0 18px rgba(255,59,92,.32)}
@keyframes neonPulse{0%,100%{opacity:1;box-shadow:0 0 6px currentColor,0 0 14px currentColor}50%{opacity:.55;box-shadow:0 0 2px currentColor}}
@keyframes edgeShift{0%{background-position:0% 50%}100%{background-position:200% 50%}}

/* section labels + live dots */
.label{color:var(--neon-b);text-shadow:0 0 12px rgba(0,229,255,.35)}
.signal .label{color:var(--neon-g);text-shadow:0 0 12px rgba(57,255,136,.3)}
.next .label{color:var(--neon-r);text-shadow:0 0 12px rgba(255,59,92,.3)}
.dot,.console__live,.ym-soon::before{background:var(--neon-b);color:var(--neon-b);box-shadow:0 0 10px var(--neon-b)}
.console__live{background:var(--neon-g);color:var(--neon-g);animation:neonPulse 2.4s ease-in-out infinite}
.photo__k .dot{background:var(--neon-r);color:var(--neon-r);box-shadow:0 0 10px var(--neon-r);animation:neonPulse 2.8s ease-in-out infinite}
.cities i::after{background:var(--neon-g);box-shadow:0 0 10px var(--neon-g)}
.hero__line{text-shadow:0 0 16px rgba(0,229,255,.4)}

/* hero glass panel: thin animated neon gradient edge */
.console::after{content:"";position:absolute;inset:-1px;pointer-events:none;padding:1px;
  background:linear-gradient(90deg,rgba(0,229,255,.75),rgba(57,255,136,.35) 30%,transparent 50%,rgba(255,59,92,.45) 80%,rgba(0,229,255,.75));
  background-size:200% 100%;animation:edgeShift 12s linear infinite;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.console__k b{text-shadow:none}

/* nav */
.nav__links a:hover,.nav__cta:hover{color:var(--neon-b);text-shadow:0 0 10px rgba(0,229,255,.55)}
.nav__cta span,.foot__links a span,.yt-sub span,.photo__btn span{color:var(--neon-b)}

/* buttons: glow on hover and keyboard focus */
.hx-more,.yt-sub,.ym-now,.photo__btn,.ym-mail__row button,.ym-seg label span{transition:border-color .3s,color .3s,box-shadow .3s,background .3s}
.console__read:hover .hx-more,.console__read:focus-visible .hx-more,.yt-sub:hover,.yt-sub:focus-visible,.ym-now:hover,.ym-now:focus-visible,
.photo__btn:hover,.photo__btn:focus-visible{color:#fff;border-color:var(--neon-b);box-shadow:var(--glow-b);background:rgba(0,229,255,.06)}
.ym-now[aria-pressed=true]{border-color:rgba(57,255,136,.6)}
.ym-now[aria-pressed=true] i{background:var(--neon-g);border-color:var(--neon-g);color:var(--neon-g);animation:neonPulse 2.4s ease-in-out infinite}
.ym-mail__row button:not(:disabled):hover,.ym-mail__row button:focus-visible{border-color:var(--neon-g);box-shadow:var(--glow-g)}
.ym-seg input:checked+span{box-shadow:inset 0 -2px 0 var(--neon-b)}
.ym-loc .dot{background:var(--neon-g);box-shadow:0 0 10px var(--neon-g)}
.ym-loc:hover,.ym-loc:focus-visible{color:var(--neon-g)}
.ym-combo input:focus{border-bottom-color:var(--neon-b);box-shadow:0 1px 0 var(--neon-b),0 8px 18px -12px rgba(0,229,255,.7)}
.ym-list li:hover,.ym-list li[aria-selected=true]{background:rgba(0,229,255,.08);border-left-color:var(--neon-b);box-shadow:inset 2px 0 12px -6px var(--neon-b)}
.card:hover .card__play,.card:focus-visible .card__play{box-shadow:var(--glow-r);border-color:var(--neon-r)}
.channel__links a:hover b{color:var(--neon-r)}
.photo{transition:border-color .4s,box-shadow .4s}
.photo:hover{border-color:rgba(57,255,136,.4);box-shadow:0 0 28px -12px rgba(57,255,136,.6)}
:focus-visible{outline-color:var(--neon-b)!important;box-shadow:0 0 14px rgba(0,229,255,.45)}

/* neon underlines on text links */
.doc a,.photo__p a,.ym-mail__note a{border-bottom:1px solid rgba(0,229,255,.6);transition:border-color .3s,color .3s,text-shadow .3s}
.doc a:hover,.photo__p a:hover,.ym-mail__note a:hover,.doc a:focus-visible{color:#fff;border-bottom-color:var(--neon-g);text-shadow:0 0 10px rgba(57,255,136,.5)}

/* lookup results */
#ym-illum,.ym-illum small{color:var(--neon-g);text-shadow:0 0 22px rgba(57,255,136,.35)}
#ym-rise,#hx-sub{color:var(--neon-b)}
#ym-rise{text-shadow:0 0 12px rgba(0,229,255,.35)}
.ym-pos.is-up dd::before{background:var(--neon-g);border-color:var(--neon-g);box-shadow:0 0 8px var(--neon-g)}
.ym-full .ym-k{color:var(--neon-r)}
.ym-full__n{color:var(--neon-r);text-shadow:0 0 18px rgba(255,59,92,.45)}
.ym-quarters li{transition:border-color .3s}
.ym-quarters li:hover{border-top-color:var(--neon-b)}

/* footer: colourful hovers + a thin tri-colour bar */
.foot{border-top-color:rgba(0,229,255,.18)}
.foot__links a{transition:color .3s,text-shadow .3s}
.foot__links a:nth-child(3n+1):hover,.foot__links a:nth-child(3n+1):focus-visible{color:var(--neon-b);text-shadow:0 0 10px rgba(0,229,255,.6)}
.foot__links a:nth-child(3n+2):hover,.foot__links a:nth-child(3n+2):focus-visible{color:var(--neon-g);text-shadow:0 0 10px rgba(57,255,136,.55)}
.foot__links a:nth-child(3n):hover,.foot__links a:nth-child(3n):focus-visible{color:var(--neon-r);text-shadow:0 0 10px rgba(255,59,92,.55)}
.foot__links a[aria-current=page]{color:var(--neon-b)}
.foot__org::before{content:"";display:block;width:72px;height:2px;margin-bottom:22px;background:linear-gradient(90deg,var(--neon-b),var(--neon-g),var(--neon-r));box-shadow:0 0 12px rgba(0,229,255,.45)}
.foot__org:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}

/* doc pages (About, Privacy): bolder, higher-contrast body text */
.doc p,.doc li{color:rgba(236,236,236,.9);font-weight:450}
.doc h2{display:flex;align-items:center;gap:12px}
.doc h2::before{content:"";flex:none;width:6px;height:6px;background:var(--neon-b);box-shadow:0 0 10px var(--neon-b)}
.about__facts dt{color:rgba(0,229,255,.85)}
.about__lead{text-shadow:0 0 22px rgba(0,229,255,.18)}
.about__note{border-left-color:var(--neon-r);box-shadow:-6px 0 18px -10px var(--neon-r)}

/* ===== neon v2: bolder (Nov 2026) ===== */
/* colored atmosphere: soft blurred light splashes */
body::before{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;
  background:radial-gradient(42vmax 42vmax at -6% -8%,rgba(0,229,255,.16),transparent 70%),radial-gradient(36vmax 36vmax at 108% 104%,rgba(255,59,92,.08),transparent 70%)}
.signal,.channel{position:relative;isolation:isolate;overflow-x:clip}
.signal::before{content:"";position:absolute;z-index:-1;left:-10%;top:4%;width:min(900px,90vw);height:min(900px,90vw);pointer-events:none;
  background:radial-gradient(closest-side,rgba(0,229,255,.14),transparent);filter:blur(30px)}
.channel::before{content:"";position:absolute;z-index:-1;right:-8%;top:10%;width:min(820px,85vw);height:min(820px,85vw);pointer-events:none;
  background:radial-gradient(closest-side,rgba(57,255,136,.08),rgba(0,229,255,.05) 55%,transparent);filter:blur(30px)}
.yours{isolation:isolate;overflow:hidden}
.yours::before{content:"";position:absolute;z-index:-1;left:50%;top:18%;width:min(1200px,120vw);height:min(1000px,120vw);transform:translateX(-30%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(57,255,136,.13),rgba(0,229,255,.05) 60%,transparent);filter:blur(40px)}
.ym-next{position:relative}
.ym-next::before{content:"";position:absolute;z-index:-1;left:-12%;bottom:-60%;width:min(900px,100vw);height:min(600px,90vw);pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,59,92,.16),transparent);filter:blur(36px)}

/* hero glass panel: thicker, brighter moving edge + outer glow */
.console{box-shadow:0 0 28px -4px rgba(0,229,255,.38),0 0 60px -10px rgba(57,255,136,.22),0 0 80px -20px rgba(255,59,92,.25);border-color:transparent}
.console::after{inset:-3px;padding:3px;
  background:linear-gradient(90deg,#00E5FF,#39FF88 25%,rgba(0,229,255,.35) 45%,#FF3B5C 70%,#00E5FF);background-size:200% 100%;
  filter:drop-shadow(0 0 6px rgba(0,229,255,.8))}
.console::before{z-index:1;height:3px;top:-3px;left:-3px}

/* section labels: neon text glow at rest */
.label{text-shadow:0 0 8px rgba(0,229,255,.75),0 0 22px rgba(0,229,255,.45)}
.signal .label{text-shadow:0 0 8px rgba(57,255,136,.75),0 0 22px rgba(57,255,136,.4)}
.next .label{text-shadow:0 0 8px rgba(255,59,92,.75),0 0 22px rgba(255,59,92,.4)}
.console__k b{filter:drop-shadow(0 0 6px rgba(255,190,60,.55))}
/* live dots bigger glow */
.dot,.console__live,.ym-soon::before,.ym-loc .dot{box-shadow:0 0 6px currentColor,0 0 16px currentColor,0 0 2px #fff}
.console__live{width:8px;height:8px}

/* buttons: visible neon outline + glow at rest; stronger + tinted on hover */
.hx-more,.yt-sub,.ym-now{color:#dffaff;border-color:rgba(0,229,255,.7);box-shadow:0 0 10px rgba(0,229,255,.32),inset 0 0 8px rgba(0,229,255,.12);text-shadow:0 0 8px rgba(0,229,255,.6)}
.ym-now[aria-pressed=true]{color:#e2ffee;border-color:rgba(57,255,136,.8);box-shadow:0 0 10px rgba(57,255,136,.35),inset 0 0 8px rgba(57,255,136,.12);text-shadow:0 0 8px rgba(57,255,136,.6)}
.console__read:hover .hx-more,.console__read:focus-visible .hx-more,.yt-sub:hover,.yt-sub:focus-visible,.ym-now:hover,.ym-now:focus-visible,
.photo__btn:hover,.photo__btn:focus-visible{color:#fff;border-color:#00E5FF;background:rgba(0,229,255,.16);
  box-shadow:0 0 0 1px #00E5FF,0 0 22px rgba(0,229,255,.7),0 0 44px rgba(0,229,255,.3),inset 0 0 14px rgba(0,229,255,.25)}
.photo__btn{border-color:rgba(0,229,255,.7);box-shadow:0 0 10px rgba(0,229,255,.3)}
.ym-mail__row button{border-color:rgba(57,255,136,.7);color:#e2ffee;box-shadow:0 0 10px rgba(57,255,136,.28);text-shadow:0 0 8px rgba(57,255,136,.55)}
.ym-mail__row button:not(:disabled):hover,.ym-mail__row button:focus-visible{background:rgba(57,255,136,.15);box-shadow:0 0 0 1px #39FF88,0 0 22px rgba(57,255,136,.65)}
.ym-support__btn{box-shadow:0 0 14px rgba(255,59,92,.45),0 0 0 1px rgba(255,59,92,.8)}
.ym-support__btn[aria-disabled=true]{color:#ffd0d8;border-color:rgba(255,59,92,.8);box-shadow:0 0 12px rgba(255,59,92,.4),inset 0 0 10px rgba(255,59,92,.14);text-shadow:0 0 8px rgba(255,59,92,.6)}
.ym-support__btn:not([aria-disabled=true]):hover,.ym-support__btn:focus-visible{background:rgba(255,59,92,.18);box-shadow:0 0 0 1px #FF3B5C,0 0 24px rgba(255,59,92,.7)}

/* nav: neon underline glow on hover / focus / current; WATCH glows green */
.nav__links a{position:relative}
.nav__links a::after{content:"";position:absolute;left:0;right:.3em;bottom:-8px;height:2px;background:var(--neon-b);box-shadow:0 0 8px var(--neon-b),0 0 16px rgba(0,229,255,.6);
  transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav__links a:hover::after,.nav__links a:focus-visible::after,.nav__links a[aria-current]::after{transform:scaleX(1)}
.nav__links a.nav__support::after{background:var(--neon-r);box-shadow:0 0 8px var(--neon-r),0 0 16px rgba(255,59,92,.6)}
.nav__cta{color:#7dffb3;text-shadow:0 0 8px rgba(57,255,136,.8),0 0 20px rgba(57,255,136,.45)}
.nav__cta span{color:var(--neon-g)}
.nav__cta:hover,.nav__cta:focus-visible{color:#b9ffd6;text-shadow:0 0 10px #39FF88,0 0 26px rgba(57,255,136,.7)}

/* city lookup */
#ym-illum,.ym-illum small{text-shadow:0 0 10px rgba(57,255,136,.8),0 0 30px rgba(57,255,136,.55),0 0 60px rgba(57,255,136,.3)}
#ym-illum{font-weight:300}
#ym-rise{text-shadow:0 0 8px rgba(0,229,255,.8),0 0 20px rgba(0,229,255,.45)}
#hx-sub{text-shadow:0 0 8px rgba(0,229,255,.55)}
.ym-full__n{text-shadow:0 0 8px rgba(255,59,92,.9),0 0 24px rgba(255,59,92,.6),0 0 48px rgba(255,59,92,.3)}
.ym-full .ym-k{text-shadow:0 0 8px rgba(255,59,92,.6)}
.ym-dl div,.ym-quarters li{border-top-color:rgba(0,229,255,.22)}

/* email + support cards: neon top borders */
.ym-cta{border-color:rgba(0,229,255,.22)}
.ym-cta::before{display:none}
.ym-mail,.ym-support{position:relative}
.ym-mail::before,.ym-support::before{content:"";position:absolute;left:0;right:0;top:-1px;height:3px}
.ym-mail::before{background:var(--neon-b);box-shadow:0 0 12px var(--neon-b),0 0 26px rgba(0,229,255,.5)}
.ym-support::before{background:var(--neon-r);box-shadow:0 0 12px var(--neon-r),0 0 26px rgba(255,59,92,.5)}

/* footer bar: thicker with glow */
.foot__org::before{width:120px;height:4px;box-shadow:0 0 10px rgba(0,229,255,.8),0 0 24px rgba(57,255,136,.5),0 0 36px rgba(255,59,92,.35)}
.foot__links a[aria-current=page]{text-shadow:0 0 8px rgba(0,229,255,.7)}

/* About / doc pages */
.doc h1{text-shadow:0 0 14px rgba(0,229,255,.45),0 0 40px rgba(0,229,255,.2)}
.doc h1::after{content:"";display:block;width:96px;height:3px;margin-top:22px;background:linear-gradient(90deg,var(--neon-b),var(--neon-g),var(--neon-r));box-shadow:0 0 12px rgba(0,229,255,.7)}
.doc h2{color:#fff;text-shadow:0 0 10px rgba(0,229,255,.55)}
.doc h2::before{width:8px;height:8px;box-shadow:0 0 8px var(--neon-b),0 0 18px var(--neon-b)}
.doc h2:nth-of-type(3n+2)::before{background:var(--neon-g);box-shadow:0 0 8px var(--neon-g),0 0 18px var(--neon-g)}
.doc h2:nth-of-type(3n)::before{background:var(--neon-r);box-shadow:0 0 8px var(--neon-r),0 0 18px var(--neon-r)}
.about__facts{border:1px solid rgba(0,229,255,.55);padding:4px 22px;background:rgba(0,229,255,.03);
  box-shadow:0 0 18px rgba(0,229,255,.28),inset 0 0 22px rgba(0,229,255,.06)}
.about__facts div:last-child{border-bottom:0}
.about__facts dt{text-shadow:0 0 8px rgba(0,229,255,.5)}
.about__note{border-color:rgba(255,59,92,.45);border-left:3px solid var(--neon-r);box-shadow:0 0 18px rgba(255,59,92,.25),-4px 0 18px -6px var(--neon-r)}

@media (prefers-reduced-motion:reduce){
  .console__live,.photo__k .dot,.ym-now[aria-pressed=true] i,.console::after{animation:none!important}
  .nav__links a::after{transition:none}
}

/* prism tagline */
.hero .hero__tagline{font-size:clamp(15px,1.45vw,21px);font-weight:700;font-style:italic;letter-spacing:.42em;margin-right:-.42em;
  background:linear-gradient(90deg,#ff3b5c 0%,#ffb347 8%,#ffe66d 15%,#39ff88 22%,#00e5ff 30%,#7a8cff 38%,#d36bff 45%,#ff3b5c 50%,#ffb347 58%,#ffe66d 65%,#39ff88 72%,#00e5ff 80%,#7a8cff 88%,#d36bff 95%,#ff3b5c 100%);
  background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  text-shadow:none;filter:drop-shadow(0 0 10px rgba(0,229,255,.35)) drop-shadow(0 0 18px rgba(211,107,255,.25));
  opacity:0;animation:fadeTag .8s .4s var(--ease) forwards, prism 8s linear infinite}
@keyframes prism{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes fadeTag{to{opacity:.88}}
@media (max-width:640px){.hero .hero__tagline{letter-spacing:.3em;margin-right:-.3em;font-size:14px}}
@media (prefers-reduced-motion:reduce){.hero .hero__tagline{animation:none;opacity:.88}}

/* ===== hero3 (Nov 2026): smaller wordmark, hero pulled up, new tagline face, bolder nav brand ===== */
.hero__copy{transform:translateY(-24vh)}
.wordmark{font-size:clamp(36px,8.6vw,142px)}
.hero__media{inset:-25vh 0 5vh}
.console{bottom:clamp(76px,11vh,104px)}
.hero .hero__line.hero__tagline{margin-top:clamp(16px,2vw,28px)}
@media (max-width:560px){
  .wordmark{font-size:11.6vw}
  .hero__copy{transform:translateY(-30vh)}
  .console{bottom:calc(32px + env(safe-area-inset-bottom))}
}
/* nav brand: larger moon mark + brighter wordmark with a soft neon glow */
.nav .nav__brand{gap:16px;font-size:15px;font-weight:600;letter-spacing:.48em;color:#fff;
  text-shadow:0 0 10px rgba(0,229,255,.55),0 0 22px rgba(0,229,255,.25);transition:text-shadow .4s}
.nav .mark{width:32px;height:32px;stroke:#eafcff;stroke-width:2.6;filter:drop-shadow(0 0 5px rgba(0,229,255,.75)) drop-shadow(0 0 12px rgba(57,255,136,.35))}
.nav .nav__brand:hover{text-shadow:0 0 12px rgba(0,229,255,.8),0 0 28px rgba(0,229,255,.4)}
@media (max-width:560px){.nav .nav__brand{font-size:12px}.nav .mark{width:28px;height:28px}}
/* tagline face (self-hosted, OFL) */
@font-face{font-family:"Exo 2";src:url("fonts/exo2-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
.hero .hero__tagline{font-family:"Exo 2","Jost",system-ui,sans-serif;font-weight:700;font-style:italic;letter-spacing:.38em;margin-right:-.38em}
@media (max-width:640px){.hero .hero__tagline{letter-spacing:.28em;margin-right:-.28em;font-size:14px}}

/* ===== hero4 (Nov 2026): no big wordmark; floating nebula city card in the upper-middle; report peeks below ===== */
.hero{height:auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  padding:calc(64px + clamp(64px,15vh,140px)) var(--pad) clamp(84px,12vh,120px);overflow:visible;overflow-x:clip}
.hero__media{inset:-20vh 0 0;overflow:hidden}
.hero__copy{transform:none;margin-bottom:clamp(18px,2.6vh,28px)}
.hero .hero__line.hero__tagline{margin-top:0}
.wordmark{display:none}

/* floating card wrapper: holds the nebula + gives perspective */
.console-wrap{position:relative;z-index:4;width:min(1080px,100%);perspective:1600px;
  opacity:0;animation:floatIn 1.2s .25s var(--ease) forwards}
@keyframes floatIn{from{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}
.console{position:relative;left:auto;bottom:auto;width:100%;opacity:1;animation:none;
  transform:rotateX(var(--rx,2.5deg)) rotateY(var(--ry,0deg)) translateZ(0);transform-style:preserve-3d;transition:transform .9s var(--ease);
  border:1px solid rgba(214,200,255,.12);border-radius:6px;
  background:linear-gradient(160deg,rgba(26,18,52,.42),rgba(8,10,24,.58) 45%,rgba(4,10,22,.66));
  backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 0 40px rgba(120,80,255,.06),
    0 24px 48px -12px rgba(0,0,0,.75),0 50px 110px -30px rgba(8,0,30,.9),0 0 70px -20px rgba(123,77,255,.28)}
.console::before{display:none}
/* very subtle translucent edge, brighter at the top-left like rim light */
.console::after{inset:-1px;padding:1px;border-radius:inherit;animation:none;filter:none;background-size:auto;
  background:linear-gradient(135deg,rgba(200,170,255,.42),rgba(255,255,255,.06) 32%,rgba(255,255,255,.02) 60%,rgba(90,190,255,.28))}
/* nebula: soft cosmic gas clouds behind the glass */
.nebula{position:absolute;inset:-14% -8%;z-index:-1;pointer-events:none;filter:blur(46px);opacity:.85}
.nebula i{position:absolute;border-radius:50%;mix-blend-mode:screen;will-change:transform,opacity}
.nebula i:nth-child(1){left:-2%;top:6%;width:52%;height:88%;
  background:radial-gradient(closest-side,rgba(138,63,252,.62),rgba(88,40,200,.28) 55%,transparent);animation:neb1 18s ease-in-out infinite alternate}
.nebula i:nth-child(2){right:-2%;top:0;width:50%;height:96%;
  background:radial-gradient(closest-side,rgba(214,51,180,.48),rgba(120,30,140,.22) 55%,transparent);animation:neb2 22s ease-in-out infinite alternate}
.nebula i:nth-child(3){left:26%;top:30%;width:50%;height:80%;
  background:radial-gradient(closest-side,rgba(20,120,220,.5),rgba(0,170,190,.2) 55%,transparent);animation:neb3 26s ease-in-out infinite alternate}
@keyframes neb1{from{transform:translate(0,0) scale(1);opacity:.85}to{transform:translate(6%,-6%) scale(1.12);opacity:1}}
@keyframes neb2{from{transform:translate(0,0) scale(1.05);opacity:.9}to{transform:translate(-7%,5%) scale(.94);opacity:.7}}
@keyframes neb3{from{transform:translate(0,0) scale(.95);opacity:.75}to{transform:translate(5%,4%) scale(1.1);opacity:1}}
/* city suggestions now open downward (card is near the top) */
.console .ym-list{top:calc(100% + 8px);bottom:auto;max-height:min(340px,46vh);background:rgba(8,8,20,.94)}

/* report starts right under the hero so it peeks into the first screen */
.yours{padding-top:clamp(18px,3vh,32px)}
.yours .ym-result{margin-top:clamp(22px,3vh,32px);padding-top:clamp(26px,4vh,40px)}
/* scroll cue */
.hero__cue{position:absolute;z-index:3;left:50%;bottom:clamp(26px,4vh,40px);transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;
  color:rgba(214,200,255,.7);font-size:10.5px;letter-spacing:.28em;white-space:nowrap;opacity:0;animation:fade .8s 1s forwards;transition:color .3s}
.hero__cue svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.4;animation:cueBob 2.4s ease-in-out infinite}
.hero__cue:hover,.hero__cue:focus-visible{color:#fff}
@keyframes cueBob{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
.hero__meta{bottom:clamp(28px,4vh,42px)}

@media (max-width:900px){.console{--rx:0deg}}
@media (max-width:560px){
  .hero{padding:calc(56px + clamp(40px,7vh,64px)) var(--pad) 72px}
  .hero__copy{margin-bottom:16px}
  .console{bottom:auto;border-radius:4px}
  .nebula{inset:-8% -14%;filter:blur(36px)}
  .hero__cue{bottom:26px;font-size:10px;letter-spacing:.2em}
}
@media (prefers-reduced-motion:reduce){
  .nebula i,.hero__cue svg,.console-wrap{animation:none!important}
  .console-wrap{opacity:1}
  .console{transition:none}
}
/* hero4 tuning: let the nebula gas spill further outside the card; tighter mobile stack so the report peeks in */
.nebula{inset:-42% -7% -46%;filter:blur(52px);opacity:1}
.nebula i:nth-child(1){background:radial-gradient(closest-side,rgba(146,70,255,.7),rgba(96,44,210,.34) 55%,transparent)}
.nebula i:nth-child(2){background:radial-gradient(closest-side,rgba(226,60,190,.56),rgba(130,32,150,.26) 55%,transparent)}
.nebula i:nth-child(3){background:radial-gradient(closest-side,rgba(30,130,235,.56),rgba(0,180,200,.24) 55%,transparent)}
.console{box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 0 40px rgba(120,80,255,.07),
  0 24px 48px -12px rgba(0,0,0,.75),0 50px 110px -30px rgba(8,0,30,.9),0 0 90px -16px rgba(123,77,255,.38),0 0 140px -40px rgba(214,51,180,.3)}
@media (max-width:560px){
  .hero{padding-top:calc(56px + 44px);padding-bottom:58px}
  .hero__cue{bottom:20px}
  .nebula{inset:-16% -14% -18%;filter:blur(34px)}
  .yours{padding-top:14px}
  .yours .ym-result{margin-top:16px;padding-top:22px}
}
.console .ym-list{background:#0b0a18;opacity:1}

/* ===== PWA install affordance (pwa1) ===== */
.pwa-toast{position:fixed;z-index:60;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translate(-50%,24px);opacity:0;
  width:min(440px,calc(100% - 24px));display:flex;align-items:center;gap:14px;padding:12px 12px 12px 14px;
  background:linear-gradient(160deg,rgba(26,18,52,.82),rgba(6,8,20,.9));border:1px solid rgba(214,200,255,.16);border-radius:14px;
  backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);
  box-shadow:0 18px 40px -10px rgba(0,0,0,.8),0 0 50px -14px rgba(123,77,255,.45);transition:opacity .4s var(--ease),transform .4s var(--ease)}
.pwa-toast.is-in{opacity:1;transform:translate(-50%,0)}
.pwa-toast img{width:40px;height:40px;border-radius:10px;flex:none}
.pwa-toast__t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.35}
.pwa-toast__t b{font-weight:500;letter-spacing:.04em}
.pwa-toast__t span{color:var(--dim);font-size:13px}
.pwa-toast__t svg{width:15px;height:15px;vertical-align:-2px;fill:none;stroke:#7fe9ff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pwa-toast__t em{font-style:normal;color:#fff}
.pwa-toast__go{flex:none;color:#dffaff;background:rgba(0,229,255,.08);border:1px solid rgba(0,229,255,.7);padding:10px 14px;cursor:pointer;font-size:11px;
  box-shadow:0 0 10px rgba(0,229,255,.3);text-shadow:0 0 8px rgba(0,229,255,.6)}
.pwa-toast__x{flex:none;width:34px;height:34px;background:none;border:0;color:var(--dim);font-size:22px;line-height:1;cursor:pointer}
.pwa-toast__x:hover,.pwa-toast__x:focus-visible{color:#fff}
@media (prefers-reduced-motion:reduce){.pwa-toast{transition:none}}

/* logo swap (Nov 2026): @moon.update globe replaces the crescent mark; circle + subtle neon glow ring */
.mark--logo{display:block;flex:none;width:22px;height:22px;border-radius:50%;object-fit:cover;stroke:none;
  box-shadow:0 0 0 1px rgba(234,252,255,.4),0 0 8px rgba(0,229,255,.35)}
.nav .mark--logo{width:34px;height:34px;filter:none;
  box-shadow:0 0 0 1.5px rgba(234,252,255,.55),0 0 7px rgba(0,229,255,.75),0 0 16px rgba(57,255,136,.3)}
@media (max-width:560px){.nav .mark--logo{width:30px;height:30px}}

/* ===== typo1 (Nov 2026): tagline higher, small text larger/bolder/higher-contrast, smaller report city name ===== */
:root{--dim:rgba(236,236,236,.86);--faint:rgba(236,236,236,.78)}
/* 1) tagline closer to the top (still clear of the 64px / 56px nav) */
.hero{padding-top:calc(64px + clamp(34px,6.5vh,68px))}
@media (max-width:560px){.hero{padding-top:calc(56px + 26px)}}
/* 2) small text: Space Mono ships one weight, so a hairline text-stroke gives it a "medium" weight without a new font file */
.mono{font-size:13px;letter-spacing:.17em;-webkit-text-stroke:.3px currentColor}
.hero__cue{font-size:12px;color:rgba(214,200,255,.9)}
.console .ym-status{font-size:12.5px;color:rgba(236,236,236,.85)}
.nav__links a,.nav__cta{font-size:13px;font-weight:600}
.ym-q__n{font-size:13.5px;font-weight:600}
.card__title{font-size:15px;font-weight:550}
.foot__name{font-size:14px;font-weight:600}
.credits{font-size:13.5px;font-weight:500}
.foot__desc,.yt-short{font-weight:500}
.ym-mail__note,.ym-support__legal,.photo__legal{font-size:15px;font-weight:500}
.hero__line{font-size:clamp(13px,1.05vw,15px);font-weight:600}
.ym-support__btn{font-size:13px}
.is-soon fieldset{opacity:.8}
.pwa-toast__t span{font-size:14px;font-weight:500}
.pwa-toast__go{font-size:12.5px}
/* keep the hero city card compact: its mono labels get the weight/contrast bump, a smaller size bump */
.console .mono{font-size:12px;letter-spacing:.14em}
.console .hx-more{padding:9px 11px}
/* 3) report city name ~half size, still the heading */
.ym-city{font-size:clamp(22px,3.1vw,48px);font-weight:400;letter-spacing:.2em;line-height:1.15}
@media (max-width:560px){
  .mono{font-size:12.5px;letter-spacing:.14em}
  .nav__links a,.nav__cta{font-size:12px;letter-spacing:.15em}
  .hero__cue{font-size:11.5px}
  .ym-city{font-size:clamp(20px,6.2vw,28px);letter-spacing:.12em}
  .console .mono{font-size:11.5px;letter-spacing:.1em}
  .console .hx-more{padding:9px;font-size:0;gap:0}
}

/* ===== logoF3c (Nov 2026): show "SKYLINE" next to the moon on phones too ===== */
@media (max-width:560px){
  .nav .nav__brand{gap:9px;font-size:12px;letter-spacing:.2em}
  .nav .nav__brand span{display:inline}
  .nav{padding:0 16px}
  .nav__links{gap:14px}
  .nav__links a,.nav__cta{font-size:11.5px;letter-spacing:.1em}
}
@media (max-width:380px){
  .nav .nav__brand{gap:7px;font-size:11px;letter-spacing:.14em}
  .nav .mark--logo{width:28px;height:28px}
  .nav__links{gap:11px}
  .nav__links a,.nav__cta{font-size:11px;letter-spacing:.07em}
}
