/* night background (same as the homepage): one still sky, lighter violet up top settling into deep night, plus a sparse starfield drawn by night.js that scrolls with the page */
.ambient{display:none!important}
html body{background:linear-gradient(180deg,#140f24 0,#120d21 700px,#100c1c 1600px,#0f0b1a 100%) no-repeat,#0f0b1a!important}
body{position:relative}
.night{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-2;pointer-events:none;overflow:hidden}
.night svg{position:absolute;top:0;left:0;display:block}
.night circle{fill:#e9e3ff}
@media (max-width:699px){.night{display:none}} /* phones: text fills the screen, stars only land in the gaps and read as dust */
.night .tw{animation:nightTw var(--d,5s) ease-in-out var(--dl,0s) infinite}
@keyframes nightTw{0%,100%{opacity:.25}50%{opacity:.95}}
@media (prefers-reduced-motion:reduce){.night .tw{animation:none}}
/* rooftops above the footer (drawn by night.js): the footer is the dark mass of the buildings, our cat sits on one roof */
footer.city{position:relative;border-top:0!important;background:#07050d;margin-top:150px}
.skyline{position:absolute;left:0;right:0;bottom:calc(100% - 1px);height:120px;pointer-events:none}
.skyline svg{display:block;width:100%;height:100%}
.skyline .b{fill:#07050d}
.skyline .w{fill:#ffc94d;opacity:.55}.skyline .w.p{fill:#ff8fb8;opacity:.4}.skyline .w.f{animation:winF 9s ease-in-out infinite}
.skyline .eye{fill:#ffc94d}
@keyframes winF{0%,62%,100%{opacity:.55}66%,90%{opacity:.08}}
@media (max-width:760px){footer.city{margin-top:110px}.skyline{height:90px}}
@media (prefers-reduced-motion:reduce){.skyline .w.f{animation:none}}
/* shooting star: one thin streak every half a minute or so, high in the sky, behind everything */
.sky-shoot{position:absolute;z-index:-1;width:190px;height:2px;border-radius:2px;pointer-events:none;background:linear-gradient(90deg,rgba(233,227,255,0),rgba(233,227,255,.55) 70%,#fff);box-shadow:0 0 6px rgba(233,227,255,.35);transform-origin:100% 50%}
