/* Curved four-ray SVG sparkles, visible only on the mobile landing page. */
.star-field{position:relative;isolation:isolate;overflow:hidden}
.star-field>*:not(.tiny-star){position:relative;z-index:1}
.tiny-star{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);z-index:0;pointer-events:none;opacity:var(--star-opacity,.2);animation:site-sparkle var(--duration,5.5s) ease-in-out var(--delay) infinite}
.tiny-star::before{content:"";position:absolute;inset:0;background:var(--star-color,#78c6e6);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 94%,50% 72%,21% 94%,32% 57%,2% 35%,39% 35%);filter:drop-shadow(0 0 3px color-mix(in srgb,var(--star-color,#78c6e6) 55%,transparent))}
.tiny-star::after{display:none}

@keyframes site-sparkle{0%,100%{opacity:.2;transform:scale(.78)}48%{opacity:var(--star-opacity,.36);transform:scale(1.04)}72%{opacity:.27;transform:scale(.91)}}
@media(prefers-reduced-motion:reduce){.tiny-star{animation:none;opacity:.2}}

/* One uninterrupted star layer spanning the whole page. */
body{position:relative}
.star-field{isolation:auto;overflow:visible}
.star-field>*:not(.tiny-star){position:relative;z-index:6}
.star-field>.tiny-star{display:none}
.page-stars{display:none;position:absolute;inset:0;width:100%;height:100%;z-index:5;overflow:hidden;pointer-events:none}
.page-stars svg.tiny-star{display:block;position:absolute;max-width:none;max-height:none;color:var(--star-color);fill:currentColor;transform-origin:center;will-change:opacity,transform}
.page-stars svg.tiny-star path{fill:currentColor;filter:drop-shadow(0 0 1.5px currentColor)}

@media(max-width:560px){
  .page-stars{display:block}
  footer{padding:0}
  .footer{grid-template-columns:92px minmax(0,1fr);gap:8px 14px;align-items:center;padding:18px}
  .footer>img{grid-column:1;grid-row:1;width:92px;max-width:100%;margin:0}
  .footer>div{grid-column:2;align-items:flex-start;gap:2px;text-align:left;min-width:0;font-size:13px;line-height:1.3}
  .footer>div:first-of-type{display:none}
  .footer>div:nth-of-type(2){grid-row:1}
  .footer>div b{font-size:13px;margin-bottom:2px}
  .footer>div a{display:flex;align-items:center;justify-content:flex-start;min-height:26px;max-width:100%;overflow-wrap:anywhere}
  .footer>div p{margin:2px 0;max-width:100%;overflow-wrap:anywhere}
  .footer .copyright{grid-column:1/-1;grid-row:2;margin:4px 0 0;text-align:center;font-size:11px}
}

@media(max-width:340px){
  .footer{grid-template-columns:88px minmax(0,1fr);column-gap:12px;padding-left:14px;padding-right:14px}
  .footer>img{width:88px}
}
