/* Shared layout, header and footer for the home, team and download pages. */
:root{--site-content-max:1440px;--site-gutter:clamp(22px,5vw,88px);--header-h:72px}
.site-v2 .section-shell,.download-page .shell{width:min(var(--site-content-max),calc(100% - var(--site-gutter)*2));margin-inline:auto}
.shared-header.site-header{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:0;width:100%;height:var(--header-h);padding:0 var(--site-gutter);transform:none;border:0;border-bottom:1px solid #202c43;border-radius:0;background:#060918;box-shadow:none;backdrop-filter:none}
.shared-header .brand,.shared-footer .brand{display:inline-flex;align-items:center;flex-shrink:0;gap:10px;margin:0;color:#eff4ff;font:550 16px/1.65 var(--sans);letter-spacing:-.04em;text-decoration:none;white-space:nowrap}
.shared-header .brand{margin-right:auto}
.shared-header .brand-logo,.shared-footer .brand-logo{display:block;width:30px;height:30px;padding:2px;border:0;border-radius:50%;background:#e6edff;object-fit:contain;box-shadow:none}
.shared-header .header-actions{display:flex;align-items:center;flex-shrink:0;gap:20px;order:3}
.shared-header .nav{display:flex;align-items:center;gap:28px;margin:0 25px 0 30px;padding:0}
.shared-header .nav a{padding:10px 0;border:0;background:none;color:#a7b6d4;font:400 12px/1.5 var(--sans);letter-spacing:0;text-decoration:none;white-space:nowrap}
.shared-header .nav a:hover,.shared-header .nav a[aria-current],.shared-header .nav a.is-current{color:#e0f3e8}
.shared-header .nav a::after{display:none}
.shared-header .nav .nav-cta,.shared-header .nav .nav-home{display:inline-flex;align-items:center;margin:0;padding:10px 0;border:0;border-radius:0;background:none;color:#eff4ff;font-size:12px}
.shared-header .nav .nav-cta:hover{background:none;border:0;text-decoration:underline;text-underline-offset:5px}
.shared-header .language-toggle{min-width:38px;padding:7px 8px;border:1px solid #35435b;border-radius:4px;background:none;color:#a7b6d4;font:10px/1 var(--mono);cursor:pointer}
.shared-header .language-toggle:hover{background:#b4edcf;color:#10281e;border-color:#b4edcf}
.shared-header .menu-toggle{display:none;padding:0;border:0;background:none;color:#a7b6d4;font:500 11px/1.5 var(--sans);cursor:pointer}
.shared-header :focus-visible,.shared-footer :focus-visible{outline:2px solid #b4edcf;outline-offset:5px}
.shared-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(var(--site-content-max),calc(100% - var(--site-gutter)*2));margin:0 auto;padding:30px 0;border-top:1px solid #283752;background:none;font-family:var(--sans)}
.footer-identity{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;min-width:0}
.footer-identity p{margin:0;color:#92a4bd;font-size:11px;line-height:1.7}
.shared-footer .footer-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px 22px}
.footer-links a{display:inline-flex;align-items:center;gap:7px;color:#a7b6d4;font-size:11px;line-height:1.7;text-decoration:none;white-space:nowrap}
.footer-links a:hover{color:#b4edcf;text-decoration:underline;text-underline-offset:4px}
.footer-links img{display:block;width:16px;height:16px;object-fit:contain}
.footer-links a[href*="github.com"] img{border-radius:50%;filter:invert(1);mix-blend-mode:screen;opacity:.85}
.footer-links a[href*="github.com"]:hover img{opacity:1}

/* Shared partner strip. Logos keep their original transparent artwork. */
.global-partners{width:min(var(--site-content-max),calc(100% - var(--site-gutter)*2));margin:0 auto;padding:64px 0 52px;border-top:1px solid #283752;font-family:var(--sans);color:#eff4ff}
.partners-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
.global-partners .partners-kicker{margin:0 0 12px;color:#b4edcf;font:10px/1.6 var(--mono);letter-spacing:.14em}
.global-partners h2{margin:0;color:#eff4ff;font:450 clamp(28px,3.2vw,40px)/1.2 var(--sans);letter-spacing:-.035em}
.partners-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;gap:9px;min-height:40px;padding:9px 13px;border:1px solid #35435b;border-radius:4px;background:transparent;color:#a7b6d4;font:11px/1.5 var(--sans);cursor:pointer}
.partners-toggle[hidden]{display:none}
.partners-toggle:hover{color:#eff4ff;border-color:#b4edcf}
.partners-toggle:focus-visible,.partners-viewport:focus-visible{outline:2px solid #b4edcf;outline-offset:4px}
.partners-toggle svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5}
.partners-toggle .partners-play{display:none}
.partners-toggle[aria-pressed="true"] .partners-pause{display:none}
.partners-toggle[aria-pressed="true"] .partners-play{display:block}
.partners-row+.partners-row{margin-top:24px}
.global-partners .partners-row-heading{display:flex;align-items:center;gap:12px;margin:0 0 12px;color:#92a4bd;font:400 11px/1.5 var(--sans)}
.partners-row-heading::after{content:'';height:1px;flex:1;background:#202c43}
.partners-row-heading small{color:#667d9b;font:9px/1.5 var(--mono);letter-spacing:.08em}
.partners-viewport{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#35435b #060918}
.partners-track{display:flex;width:max-content}
.global-partners .partners-list{display:flex;flex:none;gap:16px;width:max-content;margin:0;padding:0 16px 0 0;list-style:none}
.global-partners .partner-card{display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:240px;height:148px;padding:12px 16px 14px;border:1px solid #233149;border-radius:4px;background:#0b1020}
.partner-logo{display:flex;align-items:center;justify-content:center;flex:none;width:208px;height:84px;overflow:hidden}
.global-partners .partner-logo img{display:block;flex:none;width:128px;height:128px;max-width:none;object-fit:contain;opacity:.9}
.global-partners .partner-logo-wide img{width:198px;height:198px}
.global-partners .partner-logo-industry img{width:176px;height:176px}
.global-partners .partner-card>span:last-child{display:flex;align-items:center;justify-content:center;min-height:32px;max-width:208px;color:#a7b6d4;text-align:center;font:11px/1.45 var(--sans)}
.partners-ready .partners-viewport{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 28px,#000 calc(100% - 28px),transparent)}
.partners-ready .partners-track{animation:partners-scroll 56s linear infinite;animation-play-state:paused}
.partners-ready .partners-row-industry .partners-track{animation-duration:72s;animation-direction:reverse}
.partners-visible:not(.partners-paused) .partners-track{animation-play-state:running}
.partners-ready .partners-viewport:hover .partners-track,.partners-ready .partners-viewport:focus-within .partners-track{animation-play-state:paused}
@keyframes partners-scroll{to{transform:translateX(-50%)}}
@media(max-width:600px){
 .global-partners{padding:42px 0 36px}.partners-heading{gap:16px;margin-bottom:27px;align-items:center}
 .global-partners .partners-kicker{font-size:8px;letter-spacing:.09em}.global-partners h2{font-size:27px}
 .partners-toggle{padding:9px 10px;font-size:10px;gap:7px}
 .global-partners .partner-card{width:210px}.partner-logo{width:178px}.global-partners .partner-logo-wide img{width:178px;height:178px}
 .global-partners .partner-card>span:last-child{max-width:178px;font-size:10px}
 .partners-ready .partners-viewport{mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent)}
}
@media(prefers-reduced-motion:reduce){
 .partners-ready .partners-viewport{overflow-x:auto;mask-image:none}
 .partners-ready .partners-track{animation:none}
 .partners-list[aria-hidden="true"],.partners-list [data-partner-repeat]{display:none}
}

@media(max-width:1100px){
 :root{--site-gutter:32px;--header-h:64px}
 .shared-header .nav{gap:20px;margin-right:20px;margin-left:20px}
 .shared-header .nav a,.shared-header .nav .nav-cta,.shared-header .nav .nav-home{font-size:11px}
 .shared-footer{align-items:flex-start}.footer-identity{flex-direction:column;align-items:flex-start;gap:10px}
}
@media(max-width:800px){
 :root{--site-gutter:24px;--header-h:60px}
 .shared-header .menu-toggle{display:block}
 .shared-header .nav{display:none;position:absolute;top:calc(var(--header-h) - 1px);left:16px;right:16px;min-width:0;width:auto;margin:0;padding:16px;border:1px solid #435577;border-radius:6px;background:#0b1028;box-shadow:0 16px 35px #0007;align-items:stretch;gap:4px}
 .shared-header .nav.is-open{display:flex;flex-direction:column}
 .shared-header .nav a,.shared-header .nav .nav-cta,.shared-header .nav .nav-home{display:block;padding:12px;font-size:13px}
 .shared-footer{flex-direction:column;gap:22px;padding:26px 0}
 .footer-identity{flex-direction:row;align-items:center;width:100%;justify-content:space-between;gap:14px}
 .shared-footer .footer-links{justify-content:flex-start;width:100%;padding-top:19px;border-top:1px solid #202d43;gap:12px 22px}
}
@media(max-width:480px){:root{--site-gutter:20px}.footer-identity p{font-size:10px}.shared-footer .footer-links{gap:12px 19px}}
