html { scroll-behavior: smooth; }
body { margin: 0; }
.custom-header a:focus-visible, .custom-header button:focus-visible { outline: 2px solid #ad252e; outline-offset: -2px; }
body #about-us, body #about-hcm, body #service-detail, body #news, body #blog, body #seminar-event { scroll-margin-top: 30px; }
@media (min-width: 1051px) {
  body .custom-header .menu-toggle { display: none !important; }
  body .custom-header #mobile-menu { display: flex !important; transform: none !important; opacity: 1 !important; visibility: visible !important; }
}
@media (max-width: 1050px) {
  body .custom-header { position: relative; z-index: 1000; }
  body .custom-header .inner { position: relative; }
  body .custom-header .sdl-menu-toggle { display: flex !important; position: relative; z-index: 1002; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; flex-direction: column; gap: 5px; background: transparent; border: 0; margin: 0 0 0 auto; padding: 10px; cursor: pointer; }
  body .custom-header .sdl-menu-toggle .menu-toggle-bar { display: block; position: static; width: 22px; height: 2px; background: #272d25; margin: 0; transform: none; }
  body .custom-header .sdl-menu-toggle[aria-expanded="true"] .menu-toggle-bar:first-child { transform: translateY(7px) rotate(45deg); }
  body .custom-header .sdl-menu-toggle[aria-expanded="true"] .menu-toggle-bar:nth-child(2) { opacity: 0; }
  body .custom-header .sdl-menu-toggle[aria-expanded="true"] .menu-toggle-bar:last-child { transform: translateY(-7px) rotate(-45deg); }
  body .custom-header #mobile-menu { position: absolute !important; inset: 100% 0 auto !important; width: 100% !important; max-width: none !important; height: auto !important; max-height: calc(100dvh - 120px); padding: 18px 25px 26px !important; background: #fff; box-shadow: 0 16px 22px rgb(0 0 0 / 8%); overflow: auto; display: none !important; opacity: 1 !important; transform: none !important; visibility: visible !important; transition: none !important; box-sizing: border-box; }
  body .custom-header #mobile-menu.preview-menu-open { display: flex !important; flex-direction: column; }
  body .custom-header #mobile-menu .menu-panel-brand { display: none; }
  body .custom-header #mobile-menu .menu-row { display: flex; flex-direction: column; width: 100%; gap: 0; margin: 0; padding: 0; }
  body .custom-header #mobile-menu .menu-row li { width: 100%; border-bottom: 1px solid #ebede7; }
  body .custom-header #mobile-menu .menu-row a { min-height: 44px; padding: 12px 6px; font-size: 13px; box-sizing: border-box; color: #2a3026; }
  body .custom-header #mobile-menu .menu-overlay { display: none; }
  body .custom-header #mobile-menu .menu-text { transform: none; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
