/* Site chrome (20 Sep 2026): the logo, the full header menu and the four-column
   footer, shared by the homepage, /ciaas and the Next.js marketing pages. */
.brand{display:inline-flex;align-items:center;gap:13px;line-height:0}
.brand-logo{height:40px;width:auto;display:block}
.brand-mark{height:52px;width:auto;display:block;flex:none}
nav{gap:26px}
.nav-divider{width:1px;height:22px;background:#2b342e;display:block}
.nav-cta{padding:13px 16px}
.nav-cta span{margin-left:18px}
@media(max-width:1180px){
  .menu-toggle{display:flex;gap:18px;background:none;border:1px solid #44523f;color:var(--paper);padding:10px 14px;font-size:14px}
  nav{display:none;position:absolute;left:0;right:0;top:88px;background:var(--ink);padding:24px var(--gutter);border-bottom:1px solid #3a4a3c;align-items:stretch;flex-direction:column;gap:24px}
  nav.open{display:flex}
  .nav-divider{width:100%;height:1px}
}
@media(max-width:800px){nav{top:76px}.brand-logo{height:30px}.brand-mark{height:42px}.brand{gap:10px}}

/* Footer */
.site-footer{display:block;padding:64px var(--gutter) 34px;background:var(--ink);color:var(--paper);font-size:14px;border-top:1px solid #252e28}
.site-footer .footer-top{display:grid;grid-template-columns:1.4fr 3fr;gap:48px;align-items:start}
.site-footer .footer-brand p{margin:20px 0 0;max-width:320px;color:#adb8aa;line-height:1.6;flex-basis:auto}
.site-footer .footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;position:static;padding:0;border:0;background:none}
.site-footer .footer-columns>div{display:flex;flex-direction:column;gap:12px}
.site-footer .footer-columns h3{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--paper)}
.site-footer .footer-columns a{color:#adb8aa;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#3a4a3c}
.site-footer .footer-columns a:hover{color:var(--lime);text-decoration:none}
.site-footer .footer-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid #252e28;color:#adb8aa;font-size:13px}
.site-footer .footer-bottom>span{margin-left:0;color:#adb8aa}
.site-footer .footer-bottom a:hover{color:var(--lime)}
@media(max-width:900px){.site-footer .footer-top{grid-template-columns:1fr;gap:40px}.site-footer .footer-columns{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:700px){.site-footer{padding-top:48px;font-size:14px;gap:0}.site-footer .footer-columns{grid-template-columns:1fr 1fr}}
@media(min-width:1650px){.site-footer{padding-left:max(var(--gutter),calc((100vw - 1500px)/2));padding-right:max(var(--gutter),calc((100vw - 1500px)/2))}}

/* The mark where the page once drew an asterisk */
.stack-brand{gap:12px;justify-content:flex-start}
.stack-brand>span{margin-left:auto}
.scale-orbits b img{width:46px;height:46px;display:block;margin-top:-23px}
.scale-orbits b{left:calc(50% - 23px);top:50%}
.vision-symbol img{width:96px;height:96px;display:block}
@media(max-width:700px){.vision-symbol img{width:64px;height:64px}}

/* Signed-in only: revealed by the script in the page. `margin-left:auto`
   puts it at the right of the header on a desktop and immediately left of
   the Menu button on a phone, without either layout needing its own rule. */
.dash-link{display:none;align-items:center;margin:0 16px 0 auto;line-height:0}
.dash-link.is-on{display:inline-flex}
.dash-link img{height:30px;width:30px;display:block}
@media(max-width:800px){.dash-link{margin-right:12px}.dash-link img{height:28px;width:28px}}
