/* A single stable navigation surface on touch-sized layouts. */
@media screen and (max-width:1024px){
 :root{--mobile-header-height:72px;--header:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px))}
 html{scroll-padding-top:calc(var(--header) + 16px)}
 body{padding-top:var(--header)}
 .mobile-contact,.mobile-contact:not([hidden]){display:none!important}
 .site-header{position:fixed;inset:0 0 auto;height:var(--header);padding-top:env(safe-area-inset-top,0px);z-index:100;background:#fff;transform:none;transition:none;border-bottom:1px solid #dbe1e7;backdrop-filter:none}
 .site-header .header-inner{height:var(--mobile-header-height);min-height:0;gap:12px}
 .site-header .brand{min-height:44px;gap:9px}
 .site-header .brand-symbol{width:40px;height:40px}
 .site-header .brand-name{display:block;font-size:11px;line-height:1.35}
 .site-header .brand-sub{font-size:8px;line-height:1.4;margin-top:3px}
 .site-header .header-cta{margin-left:auto;min-height:44px;font-size:13px;padding:10px 14px;gap:10px}
 .site-header .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:0 0 44px;width:44px;height:44px;padding:10px;border:1px solid #dbe1e7;border-radius:3px}
 .site-header .menu-toggle span{width:22px;height:1.5px;margin:0;transition:transform 140ms ease}
 .site-header.menu-open .menu-toggle span:first-child{transform:translateY(3.75px) rotate(45deg)}
 .site-header.menu-open .menu-toggle span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
 .site-header .main-nav{display:none;position:fixed;inset:var(--header) 0 auto;margin:0;width:100%;height:calc(100vh - var(--header));height:calc(100dvh - var(--header));max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:10px max(var(--gutter),env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(var(--gutter),env(safe-area-inset-left,0px));background:#fff;border:0;box-shadow:none;transform:none}
 .site-header.menu-open .main-nav,.site-header .main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .site-header .main-nav>a,.site-header .nav-dropdown>summary{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:14px 0;font-size:16px;line-height:1.5;border-bottom:1px solid #e0e6eb}
 .site-header .nav-dropdown{flex:none}
 .site-header .nav-panel,.site-header .nav-dropdown[open]>.nav-panel{position:static;width:100%;padding:4px 14px 8px;background:#f4f7fa;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;pointer-events:auto}
 .site-header .nav-panel a{display:flex;align-items:center;min-height:48px;padding:12px 0;font-size:15px;line-height:1.5}
 .site-header .nav-dropdown>summary .ui-icon{transition:transform 140ms ease}
 .site-header .nav-dropdown[open]>summary .ui-icon{transform:rotate(180deg)}
}
@media screen and (max-width:760px){
 :root{--mobile-header-height:64px}
 .site-header .header-inner{width:calc(100% - 32px);gap:8px}
 .site-header .brand{gap:8px}
 .site-header .brand-symbol{width:36px;height:36px}
 .site-header .brand-name{font-size:10px;letter-spacing:.06em}
 .site-header .brand-sub{font-size:7px;letter-spacing:.13em}
 .site-header .header-cta{font-size:12px;min-height:44px;padding:10px 12px;gap:0}
 .site-header .header-cta .ui-icon{display:none}
}
@media screen and (prefers-reduced-motion:reduce){
 .site-header .menu-toggle span,.site-header .nav-dropdown>summary .ui-icon{transition:none}
}
