@media (max-width: 760px) {
  .site-header { height: 68px; padding: 0 22px; }
  .logo { position: relative; z-index: 12; gap: 7px; font-size: 22px; }
  .logo img { width: 27px; height: 27px; }
  .menu-toggle { position: relative; z-index: 12; display: flex; flex-direction: column; align-items: flex-end; gap: 5px; border: 0; background: none; color: #fff; cursor: pointer; }
  .menu-toggle span { display: block; width: 24px; height: 1px; background: currentColor; }
  .menu-toggle b { margin-top: 2px; font: 500 8px Outfit, sans-serif; letter-spacing: .1em; }
  .site-header.is-scrolled .menu-toggle { color: var(--ink); }
  .site-header.is-menu-open .menu-toggle { color: #fff; }
  .site-header.is-scrolled.is-menu-open .menu-toggle { color: var(--ink); }
  .main-nav { position: fixed; z-index: 11; top: 0; right: 0; left: 0; box-sizing: border-box; height: fit-content; max-height: 100dvh; flex-direction: column; align-items: flex-start; gap: 28px; padding: max(110px, calc(env(safe-area-inset-top) + 82px)) 36px max(36px, env(safe-area-inset-bottom)); overflow-y: auto; overscroll-behavior: contain; background: var(--ink); font-size: 20px; opacity: 0; visibility: hidden; transition: .25s; }
  .site-header.is-scrolled .main-nav { background: #fff; color: var(--ink); }
  .main-nav.is-open { opacity: 1; visibility: visible; }
  .nav-pages { width: 100%; padding-left: 0; border-left: 0; }
  .nav-pages summary { width: fit-content; }
  .nav-pages-list { position: static; min-width: 0; margin-top: 12px; padding: 0 0 0 16px; border: 0; border-left: 1px solid currentColor; background: transparent; box-shadow: none; color: inherit; }
  .nav-pages-list a { color: inherit !important; font-size: 16px; }
  .nav-pages-list a + a { border-top-color: currentColor; }
  .nav-contact { margin-top: 10px; }
  .hero { min-height: 640px; height: 88vh; max-height: none; }
  .hero-content { right: 7vw; left: 7vw; transform: translateY(-35%); }
  .hero-eyebrow { font-size: 11px; }
  .hero h1 { font-size: 40px; }
  .hero-text { font-size: 16px; line-height: 1.85; }
  .button-hero { margin-top: 34px; }
  .hero-scroll { right: 7vw; bottom: 22px; }
  .section { padding: 80px 7vw; }
  .section h2, .footer h2 { font-size: 34px; }
  .intro-layout, .profile-layout { display: block; }
  .intro-layout > div { margin-top: 30px; }
  .intro-layout p, .safety-text { font-size: 15px; }
  .about-media { margin-top: 42px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 0; padding: 24px; border-left: 1px solid var(--line); }
  .service-card { min-height: 0; }
  .service-card-title { margin-top: 34px; }
  .service-card h3 { margin-top: 7px; }
  .service-card ul { margin-top: 22px; }
  .strength-grid { grid-template-columns: 1fr; gap: 28px; margin-top: 36px; }
  .profile-layout > div > p { margin-top: 24px; }
  .profile-visual { max-width: none; margin-top: 24px; }
  .profile-visual--portrait { max-width: 360px; margin-right: auto; margin-left: auto; }
  .profile-details { margin-top: 38px; }
  .profile-details > div { grid-template-columns: 1fr; gap: 5px; padding: 16px 0; }
  .profile-details dd { font-size: 15px; }
  .section-heading { display: block; }
  .section-heading > p { margin-top: 18px; font-size: 13px; }
  .works-grid { gap: 10px; margin-top: 32px; }
  .work-info { padding: 16px 18px 18px; }
  .work-info h3 { margin-top: 22px; font-size: 19px; }
  .flow-list { grid-template-columns: 1fr; gap: 22px; margin-top: 36px; }
  .flow-list h3 { font-size: 16px; }
  .footer { display: block; min-height: 510px; padding: 85px 7vw 70px; }
  .footer small { bottom: 25px; }
  .section-kicker { font-size: 14px; }
  .footer-pages { margin-top: 38px; padding: 19px 0 0; border-top: 1px solid rgba(255,255,255,.24); border-left: 0; }
  .footer-pages p { font-size: 14px; }
  .footer-page-list { gap: 12px 18px; }
  .footer-page-list a, .footer-page-list span { font-size: 14px; }
  .chat-launcher { right: 16px; bottom: 16px; padding: 13px 16px; }
  .chat-panel { right: 16px; bottom: 16px; }
  .chat-backdrop.is-open { position: fixed; z-index: 35; inset: 0; display: block; background: rgba(0,0,0,.32); }
}
