:root{color-scheme:light;--color-page:#f7f7f4;--color-page-raised:#fbfbf9;--color-surface:#ffffff;--color-surface-strong:#f0f1ed;--color-surface-soft:#e9ebe6;--color-surface-inverse:#171915;--color-text:#171915;--color-text-muted:#565b54;--color-text-quiet:#666c64;--color-line:#e2e4de;--color-line-strong:#cdd1c8;--color-accent:#2f57d3;--color-accent-hover:#2446b2;--color-accent-text:#284dc0;--color-accent-soft:#edf1ff;--color-on-accent:#ffffff;--color-success:#16734a;--color-warning:#925400;--color-error:#bd352f;--color-focus-gap:#f7f7f4;--color-scrim:rgb(22 24 20/30%);--color-image-scrim:rgb(22 24 20/12%);--font-sans:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",sans-serif;--font-data:ui-monospace,"SFMono-Regular","Cascadia Code",Consolas,monospace;--step--1:0.75rem;--step-0:0.875rem;--step-1:1rem;--step-2:1.125rem;--step-3:1.375rem;--step-4:clamp(1.75rem,3vw,2.5rem);--step-5:clamp(2.5rem,5vw,4.5rem);--step-6:clamp(3.25rem,7.5vw,6rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--radius-tag:0.25rem;--radius-control:0.75rem;--radius-panel:1rem;--page-gutter:clamp(1rem,3.2vw,3.5rem);--page-max:92rem;--reading-max:70ch;--nav-height:4.75rem;--touch-target:2.75rem;--z-content:0;--z-sticky:20;--z-drawer:40;--z-scrim:50;--z-dialog:60;--duration-fast:150ms;--duration-ui:260ms;--duration-scene:620ms;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in:cubic-bezier(0.7,0,0.84,1);--shadow-raised:none;--shadow-dialog:none}*,:after,:before{box-sizing:border-box}html{min-width:0;scroll-behavior:smooth;text-size-adjust:100%}body,html{background:var(--color-page)}body{min-height:100dvh;margin:0;overflow-x:clip;color:var(--color-text);font-family:var(--font-sans);font-size:var(--step-1);line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body,button,input,select,textarea{font:inherit}button,input,select,textarea{color:inherit}a,button,select,summary{touch-action:manipulation}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}button,select,summary{cursor:pointer}button:disabled{cursor:not-allowed}img,svg{display:block;max-width:100%}::selection{background:var(--color-accent);color:var(--color-on-accent)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:calc(var(--z-dialog) + 1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-on-accent);font-weight:750;transform:translateY(-180%);transition:transform var(--duration-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.page-shell{width:min(100%,var(--page-max));margin-inline:auto;padding-inline:var(--page-gutter)}.site-main{min-height:calc(100dvh - var(--nav-height))}body:has(.admin-shell) .site-footer,body:has(.admin-shell) .site-header{display:none}body:has(.admin-shell) .site-main{min-height:100dvh}.global-error{display:grid;min-height:100dvh;place-items:center;padding-block:var(--space-8)}.global-error>div{max-width:42rem;padding-block:var(--space-7);border-block:1px solid var(--color-line-strong)}.global-error h1{margin:0;font-size:clamp(2.5rem,7vw,5.25rem);font-weight:600;letter-spacing:-.04em;line-height:1}.global-error p{margin:var(--space-5) 0 0;color:var(--color-text-muted);font-size:var(--step-1);line-height:1.7}.global-error nav{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.global-error a,.global-error button{display:inline-flex;min-height:var(--touch-target);align-items:center;justify-content:center;gap:var(--space-2);padding-inline:var(--space-4);border:1px solid var(--color-line-strong);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:700;text-decoration:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-page-raised)}.site-header__bar{display:grid;min-height:var(--nav-height);grid-template-columns:minmax(11rem,1fr) auto;gap:clamp(1rem,2.5vw,2.5rem);align-items:center}.wordmark{display:inline-flex;width:fit-content;min-height:var(--touch-target);flex-direction:column;justify-content:center;color:var(--color-text);text-decoration:none}.wordmark__logo{width:9.5rem;height:auto}.wordmark__logo--footer{width:15rem}.wordmark__name{font-size:1.125rem;font-weight:720;letter-spacing:-.035em;line-height:1.05}.wordmark__name strong{color:var(--color-accent);font-weight:760}.wordmark__tagline{margin-top:.3rem;color:var(--color-text-quiet);font-size:.6875rem;letter-spacing:.04em}.primary-nav{display:flex;align-items:center;gap:var(--space-1);white-space:nowrap}.primary-nav a{display:inline-flex;min-height:var(--touch-target);align-items:center;padding-inline:var(--space-3);border-radius:var(--radius-control);color:var(--color-text-muted);font-size:var(--step-0);font-weight:650;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.primary-nav a:hover,.primary-nav a[aria-current=page]{background:var(--color-surface);color:var(--color-text)}.mobile-nav{display:none;position:relative;justify-self:end}.mobile-nav summary{display:grid;width:var(--touch-target);height:var(--touch-target);place-items:center;border:1px solid var(--color-line-strong);border-radius:var(--radius-control);list-style:none;background:var(--color-page-raised)}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav__panel{position:absolute;top:calc(100% + var(--space-3));right:0;display:grid;width:min(18rem,calc(100vw - 2rem));gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-line-strong);border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:none}.mobile-nav:not([open]) .mobile-nav__panel{display:none}.mobile-nav__panel a{display:flex;min-height:48px;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-control);color:var(--color-text);font-weight:650;text-decoration:none}.mobile-nav__panel a:hover,.mobile-nav__panel a[aria-current=page]{background:var(--color-surface-strong)}.data-notice{border-block:1px solid var(--color-line);background:var(--color-page)}.data-notice__inner{display:flex;min-height:2.25rem;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--step--1);text-align:center}.data-notice strong{color:var(--color-accent-text)}body:has(.home-hero) .data-notice{display:none}.site-footer{border-top:1px solid var(--color-line-strong);background:var(--color-page)}.site-footer__grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(10rem,.55fr));gap:var(--space-7);padding-block:var(--space-8) var(--space-6)}.site-footer__brand{max-width:38rem}.site-footer__brand p{max-width:36rem;margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:var(--step-0)}.site-footer__column h2{margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--step-0)}.site-footer__column nav{display:grid}.site-footer__column a{display:inline-flex;width:fit-content;min-width:44px;min-height:44px;align-items:center;color:var(--color-text-muted);font-size:var(--step-0);text-decoration:none}.site-footer__column a:hover{color:var(--color-accent)}.site-footer__legal{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-4) var(--space-6);border-top:1px solid var(--color-line);color:var(--color-text-quiet);font-size:var(--step--1)}.site-footer__legal-links,.site-footer__legal-notices{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.site-footer__legal-links{justify-content:flex-end}.site-footer__legal-links a{display:inline-flex;min-width:var(--touch-target);min-height:var(--touch-target);align-items:center;color:inherit;text-decoration:underline;text-decoration-color:var(--color-line-strong);text-underline-offset:.22em}.site-footer__legal-links a:hover{color:var(--color-accent);text-decoration-color:currentColor}@media (max-width:64rem){.site-header__bar{grid-template-columns:minmax(10rem,1fr) auto;gap:var(--space-4)}.wordmark__tagline{display:none}}@media (max-width:47.99rem){.site-header__bar{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-4);padding-block:var(--space-2)}.site-header .wordmark__logo{width:8.625rem}.primary-nav{display:none}.mobile-nav{display:block;grid-column:2;grid-row:1}.data-notice__inner{align-items:flex-start;flex-direction:column;gap:0;padding-block:var(--space-2);text-align:left}.site-footer__grid{grid-template-columns:1fr;gap:var(--space-6);padding-block:var(--space-7) var(--space-5)}.site-footer__legal{align-items:flex-start;flex-direction:column}.site-footer__legal-links,.site-footer__legal-notices{align-items:flex-start;flex-direction:column;gap:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}:not([data-motion-reduced=false],[data-motion-reduced=false] *),:not([data-motion-reduced=false],[data-motion-reduced=false] *):after,:not([data-motion-reduced=false],[data-motion-reduced=false] *):before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (prefers-reduced-transparency:reduce){:root{--color-scrim:#62665f;--color-image-scrim:#d2d4cf}.data-notice{background:var(--color-page-raised)}}