/* Matches TWOFAMUS index navigation: fixed, compact after 40px, light/dark hero boundary. */
.site-header{position:fixed;inset:12px 24px auto;height:72px;padding:0 12px;z-index:80;pointer-events:none;color:#111a2c;background:transparent;border:0;backdrop-filter:none}
.navigation{position:relative;width:100%;min-height:72px;height:72px;padding:0;display:flex;flex-wrap:nowrap;gap:16px}
.navigation>a,.nav-links,.menu-toggle,.mobile-nav{pointer-events:auto}
.navigation .brand{color:inherit;font-size:26px;transition:color .3s}
.nav-links{position:absolute;left:50%;top:14px;transform:translateX(-50%);width:min(720px,calc(100% - 500px));min-width:450px;height:44px;display:flex;align-items:center;justify-content:space-between;gap:0;padding:0 18px;border-radius:999px;background:transparent;transition:width .5s cubic-bezier(.22,1,.36,1),background .3s,box-shadow .3s;color:inherit}
.nav-links a{padding:12px 10px;font-size:15px;font-weight:600;line-height:20px;white-space:nowrap;color:inherit}
.nav-links a:hover{color:#397ecf}
.navigation>.button-small{margin-left:auto;background:#111a2c;color:white;border-radius:999px;padding:12px 20px;font-size:13px;transition:background .3s,color .3s}
.site-header.nav-on-dark{color:white}.nav-on-dark .navigation>.button-small{background:white;color:#111a2c}
.nav-compact .nav-links{width:480px;min-width:0;background:white;color:#111a2c;box-shadow:0 0 0 1px #111a2c0a,0 4px 18px #111a2c08}
.site-header:before{content:'';position:absolute;inset:-12px -24px -4px;z-index:-1;pointer-events:none;background:linear-gradient(#f6f8fcfa,#f6f8fc00);opacity:0;transition:opacity .3s}
.nav-compact:not(.nav-on-dark):before{opacity:1}
.menu-toggle{display:none;width:43px;height:43px;align-content:center;gap:5px;border:1px solid #d5deec;border-radius:50%;background:#fff;padding:12px;cursor:pointer}
.menu-toggle span{display:block;width:17px;height:1px;background:#111a2c;transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
.mobile-nav{position:absolute;top:64px;right:0;width:min(330px,calc(100vw - 32px));padding:25px;background:white;color:#111a2c;border:1px solid #d5deec;border-radius:20px;box-shadow:0 20px 60px #0002;max-height:calc(100svh - 100px);overflow-y:auto}
.mobile-nav[hidden]{display:none}.mobile-nav a{display:flex;justify-content:space-between;gap:12px;font-size:23px;padding:12px;border-bottom:1px solid #111a2c22;line-height:1.5}.mobile-nav a:last-child{border:0;font-size:18px}.menu-toggle:focus-visible{outline:3px solid #70a5f4;outline-offset:5px}
@media(max-width:1100px){.nav-links{width:480px;min-width:0}.navigation .brand{font-size:22px}.navigation>.button-small{display:none}}
@media(max-width:700px){.site-header{inset:8px 16px auto;height:60px;padding:0 8px}.navigation{min-height:60px;height:60px;width:100%;padding:0}.nav-links{display:none}.menu-toggle{display:grid;margin-left:auto}.site-header:before{inset:-8px -16px -4px}.hero.container{padding-top:110px}.navigation .brand img{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.nav-links,.navigation .brand,.navigation>.button-small,.site-header:before,.menu-toggle span{transition:none}}
