:root{--header-height:72px}
html{scroll-padding-top:calc(var(--header-height) + 16px)}
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
.site-header .header{height:var(--header-height);gap:20px}
.site-header .brand img{width:172px}
.site-header nav{display:flex;gap:18px;min-width:0;font-size:12px;line-height:1.25}
.site-header nav a{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:150px}
.site-header .compact{flex-shrink:0;min-height:44px}
.site-header .theme-switch{flex-shrink:0;width:44px;height:44px}
.menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:44px;height:44px;flex-shrink:0;background:none;border:1px solid var(--line);border-radius:50%;padding:11px}
.menu-toggle span{width:20px;height:1.5px;background:var(--ink);display:block}
.mobile-menu{position:fixed;inset:calc(var(--header-height) + 8px) 0 auto auto;margin:0 16px;width:360px;max-width:calc(100vw - 32px);max-height:calc(100dvh - var(--header-height) - 32px);padding:28px 24px 24px;overflow:auto}
.mobile-menu h2{font-size:28px;letter-spacing:-.04em;margin-bottom:22px}
.mobile-menu nav{display:grid}
.mobile-menu nav a{display:flex;align-items:center;min-height:52px;border-top:1px solid var(--line);font-size:18px;line-height:1.4;padding:10px 0;overflow-wrap:anywhere}
.mobile-menu .dialog-close{top:14px;right:16px;width:44px;height:44px}
.mobile-menu::backdrop{background:#15221966;backdrop-filter:blur(3px)}
html:has(.mobile-menu[open]){overflow:hidden}
.faq{display:block}
.faq .section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px}
.faq h2{font-size:clamp(34px,3.4vw,46px)}
.faq .section-intro>p{max-width:280px;font-size:14px;margin:0}
.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;align-items:start}
.faq summary{min-height:54px;padding:14px 0;font-size:15px;line-height:1.45;gap:18px;overflow-wrap:anywhere}
.faq summary>span{font-size:24px;flex-shrink:0}
.faq-answer p{font-size:14px;line-height:1.65;padding:0 28px 18px 0;overflow-wrap:anywhere}
.faq-more{margin-top:18px;min-height:44px;font-size:13px;gap:12px}
.site-footer{display:grid;grid-template-columns:auto auto minmax(0,1fr);padding-bottom:110px;gap:24px;align-items:center}
.footer-social-group{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.footer-social-label{font-size:12px;white-space:nowrap}
.footer-meta{min-width:0;display:grid;gap:4px}
.developer-footer{order:3;width:100%;display:flex;justify-content:flex-end;border-top:0;padding:0}
.bizion-credit{font-size:11px;font-weight:400;min-height:44px;color:var(--muted);gap:5px}
.bizion-credit:hover{text-decoration:underline;text-underline-offset:3px}
.footer-legal{order:2;width:100%;display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:8px 20px;border-top:0;padding-top:0}
.footer-legal small{font-size:10px}
@media(max-width:1100px){
 .site-footer{grid-template-columns:auto minmax(0,1fr);gap:20px 32px}
 .footer-social-group{justify-content:flex-end}
 .footer-meta{grid-column:1/-1}
 .site-header nav{display:none}
 .site-header .compact{margin-left:auto}
 .menu-toggle:not([hidden]){display:flex}
}
@media(max-width:760px){
 :root{--header-height:64px}
 .site-header .header{gap:8px}
 .site-header .brand img{width:116px}
 .site-header .compact{font-size:11px;padding:10px 12px;gap:8px}
 .site-header .theme-switch{width:32px}
 .faq .section-intro{display:block;margin-bottom:16px}
 .faq .section-intro>p{margin-top:12px;font-size:13px}
 .faq-list{grid-template-columns:minmax(0,1fr);gap:0}
 .faq summary{font-size:15px;padding:13px 0}
 .faq h2{font-size:36px}
 .developer-footer{justify-content:flex-start;padding:0}
 .site-footer{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:24px}
 .footer-social-group{justify-content:flex-start}
 .footer-social-group .footer-socials{width:auto}
 .footer-meta{gap:8px}
 .footer-legal{align-items:flex-start;justify-content:flex-start;gap:10px;padding-top:0}
 .footer-legal small{width:100%}
}
@media(max-width:360px){.site-header .brand img{width:98px}.site-header .header{gap:5px}.site-header .compact{padding:10px;gap:6px}.site-header .theme-switch{width:30px}}
@media(prefers-reduced-motion:no-preference){.mobile-menu[open]{animation:menu-enter .18s ease-out}@keyframes menu-enter{from{transform:translateY(-8px)}to{transform:none}}}
