:root{--bg:#fff;--bg-soft:#f5f6f5;--bg-elev:#fff;--text:#202420;--text-2:#68716b;--text-3:#737c76;--accent:#087b55;--accent-strong:#087b55;--accent-2:#108d65;--border:rgba(25,50,36,.11);--radius:22px;--radius-sm:14px;--shadow:0 4px 24px rgba(20,45,30,.035);--shadow-lg:0 20px 70px rgba(20,45,30,.12)}
html.dark{--bg:#090c0b;--bg-soft:#101512;--bg-elev:#121815;--text:#edf3ef;--text-2:#a3afa7;--text-3:#91a096;--accent:#53dba8;--accent-strong:#53dba8;--accent-2:#35c38c;--border:rgba(215,244,225,.12);--shadow:0 4px 24px rgba(0,0,0,.15);--shadow-lg:0 20px 70px rgba(0,0,0,.35)}
html{overflow-x:clip}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
.site-header,.site-header *{box-sizing:border-box}
.site-header{position:sticky;top:0;z-index:200;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 97%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.site-header .nav-inner{width:100%;max-width:1144px;margin:0 auto;padding:16px 22px;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px}
.site-header .nav-left{display:flex;align-items:center;gap:40px;width:auto;margin:0;min-width:0}
.site-header .brand{font-size:17px;font-weight:650;letter-spacing:-.035em;white-space:nowrap;display:block;color:var(--text)}
.site-header .brand-h{color:var(--accent);text-shadow:none}
.site-header .nav-links{display:flex;align-items:center;gap:0}
.site-header .dropdown{position:static}
.site-header .nav-link{display:flex;align-items:center;gap:8px;font:inherit;font-size:13px;font-weight:500;letter-spacing:0;padding:6px 0;background:none;border:0;color:var(--text-2);cursor:pointer;white-space:nowrap}
.site-header .caret{width:12px;height:12px;transition:transform .2s}
.site-header .dropdown.open .caret{transform:rotate(180deg)}
.site-header .nav-actions{display:flex;align-items:center;gap:7px;margin:0;flex-shrink:0}
.site-header .pill{font:inherit;font-size:11px;font-weight:500;line-height:20px;border:1px solid var(--border);border-radius:999px;padding:4px 11px;background:transparent;color:var(--text-2);cursor:pointer;white-space:nowrap;min-width:52px}
.site-header .pill:hover,.site-header .nav-link:hover{color:var(--accent);border-color:var(--accent)}
.site-header .dropdown-menu{position:absolute;top:calc(100% + 8px);left:50%;right:auto;width:min(1100px,calc(100vw - 44px));max-width:none;min-width:0;max-height:calc(100dvh - 94px);overflow:auto;display:grid;grid-template-columns:1.15fr 1fr .8fr;gap:28px;padding:26px;border:1px solid var(--border);border-radius:18px;background:var(--bg-elev);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-6px);transform-origin:top;transition:opacity .16s,transform .16s,visibility .16s}
.site-header .dropdown-menu::before{display:none}
.site-header .dropdown.open .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.site-header .ch-menu-group{padding:0;min-width:0}
.site-header .ch-menu-group+.ch-menu-group{border-left:1px solid var(--border);padding-left:24px}
.site-header .ch-menu-label{font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--text-2);margin:0 0 10px;padding:0 10px}
.site-header .dropdown-menu a{display:flex;align-items:center;justify-content:space-between;gap:12px;opacity:1;transform:none;padding:10px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.5;color:var(--text);transition:background .15s,color .15s;white-space:normal;text-decoration:none}
.site-header .dropdown-menu a:hover,.site-header .dropdown-menu a[aria-current=page]{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
.site-header .ch-menu-arrow{font-size:15px;color:var(--accent);flex:none}
.site-header .ch-menu-note{font-size:12px;line-height:1.65;color:var(--text-2);padding:0 10px;margin:0 0 7px;max-width:220px}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
body:not(.home-page) .hero{padding-top:76px;padding-bottom:48px}
body:not(.home-page) h1.hero-title{font-size:clamp(34px,5.5vw,68px);letter-spacing:-.035em;line-height:1.18;text-wrap:balance}
body:not(.home-page) .hero-sub{line-height:1.65;text-wrap:pretty}
body:not(.home-page) footer{font-size:12px;line-height:1.8;color:var(--text-2)}
@media(max-width:700px){.site-header .nav-inner{padding:12px 20px;gap:16px;flex-wrap:wrap}.site-header .nav-left{display:contents}.site-header .brand{font-size:16px;order:0}.site-header .nav-actions{order:1;margin-left:auto}.site-header .nav-links{order:2;width:100%;border-top:1px solid var(--border);padding-top:8px;margin-top:-4px}.site-header .nav-link{font-size:12px;padding:0}.site-header .dropdown-menu{width:calc(100vw - 24px);top:calc(100% + 6px);grid-template-columns:1fr;gap:16px;padding:18px;max-height:calc(100dvh - 124px)}.site-header .ch-menu-group+.ch-menu-group{border-left:0;border-top:1px solid var(--border);padding:16px 0 0}.site-header .ch-menu-note{max-width:none}.site-header .dropdown-menu a{padding:8px 10px}.site-header .pill{padding:3px 8px;min-width:48px}body:not(.home-page) .hero{padding-top:48px;padding-bottom:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Shared frosted menu, with text-only destinations. */
.site-header .dropdown-menu{background:color-mix(in srgb,var(--bg-elev) 98%,transparent);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}
.site-header .dropdown-menu a{transition:background .2s,color .2s,box-shadow .2s}
.site-header .dropdown-menu a:hover{box-shadow:inset 0 1px 0 rgba(220,255,238,.14)}
@supports not (backdrop-filter:blur(1px)){.site-header .dropdown-menu{background:var(--bg-elev)}}

/* overflow:hidden on body creates a non-scrolling sticky ancestor. */
html,body{overflow-x:clip;overflow-y:visible}
nav.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97)}
html.dark nav.site-header{background:rgba(9,12,11,.97)}
.site-header .dropdown-menu{background:rgba(255,255,255,.98)}
html.dark .site-header .dropdown-menu{background:rgba(18,24,21,.98)}
.site-header .nav-link,.site-header .pill{color:var(--text)}
html{scroll-padding-top:110px}
