/* One shared footer stylesheet for server pages and the authenticated app. */
.site-head { background:#072a45; border-bottom:1px solid #144464; box-shadow:none; }
.site-head .head-inner { max-width:1180px; min-height:66px; padding-inline:28px; }
.site-head .brand-mark { filter:none; }
.site-head nav a { color:#e3f1fc; font-size:.85rem; }
.site-head .brand-name { color:#fff; }
.site-head .btn { background:#0073df; border-color:#2691f5; border-radius:7px; }
.site-head .lang-select,.site-head .theme-toggle { background:#0b3655; border-color:#376480; color:#e4f3ff; }
/* Static page titles repeat the horizon treatment without moving their content. */
.band { background:#072a45 url('/static/electric-horizon.png') center 30%/cover no-repeat; }
footer.site-foot.site-foot { background:#072a45; color:#f4f9ff; border-top:1px solid #215171; margin-top:3rem; padding:34px 0 42px; }
footer.site-foot .foot-inner { display:grid; grid-template-columns:1.8fr 1fr 1fr 1.2fr; gap:32px; max-width:1180px; margin:0 auto; padding:0 28px; }
footer.site-foot .foot-brand { display:flex; align-items:center; gap:9px; margin-bottom:12px; }
footer.site-foot .foot-brand strong { color:#fff; font-size:1rem; letter-spacing:-.025em; }
footer.site-foot .foot-brand img { width:28px; height:auto; }
footer.site-foot .foot-brand .on-light { display:block; }
footer.site-foot .foot-brand .on-dark { display:none; }
footer.site-foot p.muted { margin:0; color:#bdd6e9; font-size:.8rem; line-height:1.65; }
footer.site-foot .foot-title { color:#f4f9ff; margin:0 0 .7rem; font-size:.84rem; line-height:1.4; font-weight:650; }
footer.site-foot ul { list-style:none; padding:0; margin:0; }
footer.site-foot li { margin:0 0 .4rem; font-size:.8rem; line-height:1.45; }
footer.site-foot a { color:#b9ddf5; text-decoration:none; }
footer.site-foot a:hover { color:#fff; text-decoration:underline; }
footer.site-foot a:focus-visible { outline:2px solid #67ccff; outline-offset:4px; }
footer.site-foot .foot-icons { display:flex; gap:16px; margin-top:15px; }
footer.site-foot .foot-icon { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; padding:2px; border:0; border-radius:5px; background:none; color:#63baff; }
footer.site-foot .foot-icon svg { width:25px; height:23px; }
.product-landing footer.site-foot { margin-top:0; }
@media(max-width:900px) { .site-head .head-inner { padding-inline:24px; }.site-head nav { gap:.45rem .75rem; } }
@media(min-width:701px) and (max-width:900px) { .site-head .head-inner { min-height:48px; padding-inline:40px; }.site-head nav a { font-size:.65rem; }.site-head .brand-name { font-size:.88rem; }.site-head .brand-mark { width:24px; }.site-head .lang-select,.site-head .btn { font-size:.65rem; }.site-head .theme-toggle { width:28px; height:28px; } }
@media(max-width:700px) { footer.site-foot .foot-inner { grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 18px; padding-inline:20px; }footer.site-foot .foot-inner>div:first-child { grid-column:1/-1; }.site-head .head-inner { padding-inline:20px; } }
@media(max-width:440px) { footer.site-foot .foot-inner { grid-template-columns:repeat(2,minmax(0,1fr)); padding-inline:16px; }footer.site-foot .foot-inner>div:last-child { grid-column:1/-1; }.site-head .head-inner { padding-inline:16px; } }
@media(min-width:701px) and (max-width:900px) { footer.site-foot.site-foot { padding-block:26px; }footer.site-foot .foot-inner { padding-inline:40px; gap:24px; }footer.site-foot p.muted,footer.site-foot li { font-size:.68rem; }footer.site-foot .foot-title { font-size:.73rem; }footer.site-foot .foot-brand strong { font-size:.84rem; } }
