.footer-15{--footer-bg:transparent;--footer-text:color-mix(in srgb, var(--default-color) 62%, var(--background-color));--footer-border-color:color-mix(in srgb, var(--default-color) 14%, var(--background-color));--footer-border-width:1px;--footer-dot:var(--accent-color);--footer-mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;background:var(--footer-bg);border-top:var(--footer-border-width) solid var(--footer-border-color);padding-block:var(--footer-pad-y,28px)}.footer-15 .container.is-full{max-width:none}.footer-15 .container.is-narrow{max-width:calc(var(--container-max,1180px) * .84)}.footer-15 .container.is-compact{max-width:calc(var(--container-max,1180px) * .68)}.footer-15 .footer-bar{flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem;display:flex}.footer-15 .footer-start{align-items:center;gap:1rem;min-width:0;display:flex}.footer-15 .footer-logo{align-items:center;gap:.45rem;min-width:0;text-decoration:none;display:inline-flex}.footer-15 .footer-logo img{max-height:calc(1.5rem * var(--logo-scale,1));border-radius:var(--logo-radius,0);width:auto;display:block}.footer-15 .footer-logo .sitename{font-family:var(--font-heading), sans-serif;font-size:calc(.92rem * var(--body-font-scale,1) * var(--brand-text-scale,1));font-weight:var(--brand-text-weight,600);letter-spacing:calc(.005em + var(--brand-text-letter-spacing,0px));color:var(--brand-text-color,var(--heading-color));white-space:nowrap;transition:color .18s}.footer-15 .footer-logo:hover .sitename{color:var(--accent-color)}.footer-15.is-brand-uppercase .footer-logo .sitename{text-transform:uppercase;letter-spacing:calc(.14em + var(--brand-text-letter-spacing,0px));font-size:calc(.76rem * var(--body-font-scale,1) * var(--brand-text-scale,1))}.footer-15 .footer-nav{flex:auto;justify-content:center;min-width:0;display:flex}.footer-15 .footer-nav-list{flex-wrap:wrap;justify-content:center;gap:.35rem 1.3rem;margin:0;padding:0;list-style:none;display:flex}.footer-15 .footer-nav-list a{font-family:var(--font-nav), system-ui, sans-serif;font-size:calc(.82rem * var(--body-font-scale,1));color:var(--nav-color,var(--heading-color));text-decoration:none;transition:color .18s}.footer-15 .footer-nav-list a:hover,.footer-15 .footer-nav-list a.active{color:var(--nav-hover-color,var(--accent-color))}.footer-15.is-nav-uppercase .footer-nav-list a{font-size:calc(.7rem * var(--body-font-scale,1));letter-spacing:.14em;text-transform:uppercase}.footer-15 .footer-end{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-left:auto;display:flex}.footer-15 .footer-status{font-family:var(--footer-mono);font-size:calc(.68rem * var(--body-font-scale,1));letter-spacing:.05em;color:var(--footer-text);white-space:nowrap;align-items:center;gap:.5rem;display:inline-flex}.footer-15 .footer-status-dot{background:var(--footer-dot);width:.5rem;height:.5rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--footer-dot) 20%, transparent);border-radius:50%}.footer-15 .footer-status-dot.is-pulsing{animation:2.2s ease-in-out infinite footer-15-pulse}.footer-15 .footer-readout{border:1px solid var(--footer-border-color);border-radius:var(--radius-button,8px);font-family:var(--footer-mono);font-size:calc(.66rem * var(--body-font-scale,1));letter-spacing:.06em;color:var(--footer-text);white-space:nowrap;padding:.15rem .5rem}.footer-15 .social-links{align-items:center;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.footer-15 .social-links a{width:1.6rem;height:1.6rem;color:var(--footer-text);font-size:calc(.9rem * var(--body-font-scale,1));justify-content:center;align-items:center;transition:color .18s;display:inline-flex}.footer-15 .social-links a:hover{color:var(--accent-color)}.footer-15 .copyright,.footer-15 .powered-by{font-family:var(--footer-mono);font-size:calc(.66rem * var(--body-font-scale,1));letter-spacing:.04em;color:var(--footer-text);white-space:nowrap;margin:0}.footer-15 .powered-by a{color:var(--footer-text);text-underline-offset:.2em;text-decoration:underline;transition:color .12s}.footer-15 .powered-by a:hover{color:var(--accent-color)}@media (width<=767.98px){.footer-15 .footer-bar{flex-direction:column;align-items:flex-start;gap:.9rem}.footer-15 .footer-start{flex-wrap:wrap}.footer-15 .footer-nav{justify-content:flex-start;width:100%}.footer-15 .footer-nav-list{justify-content:flex-start;gap:.4rem 1.1rem}.footer-15 .footer-end{margin-left:0}}@keyframes footer-15-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb, var(--footer-dot) 20%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--footer-dot) 6%, transparent)}}@media (prefers-reduced-motion:reduce){.footer-15 .footer-status-dot.is-pulsing{animation:none}}
