/* Shared navigation, gallery controls and contact alternative. Existing styles stay intact. */
.impact-controls{display:flex;justify-content:flex-end;width:calc(100% - var(--pad) * 2);max-width:var(--max);margin:24px auto 0}
.impact-controls[hidden]{display:none}
.impact-controls:not([hidden]) + .impact-gallery{margin-top:8px}
.impact-motion-toggle{min-height:44px;max-width:100%;padding:10px 18px;border:1px solid #111;border-radius:999px;background:var(--paper);color:#111;font:inherit;font-size:12px;font-weight:800;line-height:1.6;cursor:pointer}
.impact-motion-toggle:hover{background:#ffdfaa}
.impact-motion-toggle:focus-visible,.contact-email-fallback a:focus-visible{outline:3px solid #1d3e71;outline-offset:4px}
.impact-motion-toggle:disabled{cursor:default;background:#f0eee8;color:#555}
.impact-gallery.is-motion-paused .impact-phone__art{animation-play-state:paused}
.contact-email-fallback{margin:30px auto 0;padding:24px;border:1px solid rgba(17,17,17,.25);border-radius:12px;background:#fff;max-width:680px}
.contact-email-fallback h2{margin:0 0 8px;font-size:18px;line-height:1.6}
.contact-email-fallback p{margin:0 0 12px;font-size:13px;line-height:1.9}
.contact-email-fallback a{display:inline-flex;align-items:center;gap:16px;min-height:44px;max-width:100%;color:#07163f;font-size:16px;font-weight:800;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
@media(max-width:620px){.impact-controls{width:calc(100% - 40px);margin-top:20px}.contact-email-fallback{padding:20px}.contact-email-fallback h2{font-size:17px}}

/* Closed off-screen navigation must not receive keyboard focus on small screens. */
.global-nav .mobile-nav-link{display:none}
.global-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
.menu-button{position:relative;z-index:4}
.menu-button:focus-visible,.global-nav a:focus-visible{outline:3px solid #e09d28;outline-offset:4px}
@media(max-width:900px){
  .global-nav{transition-property:transform,opacity}
  .global-nav:not(.is-open){visibility:hidden;pointer-events:none}
  .global-nav.is-open{visibility:visible;pointer-events:auto;max-height:calc(100dvh - 16px);overflow-y:auto}
  .global-nav .mobile-nav-link{display:block}
}

/* Use a visible close icon over the dark open panel. */
.menu-button[aria-expanded="true"] i{position:absolute;left:7px;top:50%;background:#fff}
.menu-button[aria-expanded="true"] i:first-child{transform:rotate(45deg)}
.menu-button[aria-expanded="true"] i:nth-child(2){opacity:0}
.menu-button[aria-expanded="true"] i:last-child{transform:rotate(-45deg)}
