/* Shared interaction safeguards; page-specific cinematic design stays intact. */
:where(a,button,summary,input,select,textarea):focus-visible{outline:2px solid #d0fb78;outline-offset:4px}
.nav .menu-button{min-width:44px;min-height:44px}.nav .services-submenu a{min-height:44px}
.about-reveal:not(.in-view),.svc-reveal:not(.in-view),.pricing-reveal:not(.in-view),.contact-enter:not(.in-view){opacity:1;transform:none}
.about-reveal.in-view,.svc-reveal.in-view,.pricing-reveal.in-view,.contact-enter.in-view{animation:performance-enter .55s ease-out both}
@keyframes performance-enter{from{opacity:.65;transform:translateY(12px)}to{opacity:1;transform:none}}
.project-inquiry [aria-invalid=true]{border-color:#f2b7a1}.project-inquiry input,.project-inquiry select,.project-inquiry textarea{scroll-margin-top:110px}
#inquiry-status{min-height:3em}.inquiry-fields input{min-height:48px}
@media(max-width:700px){.nav.menu-open nav{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}.nav nav>a{min-height:44px;display:flex;align-items:center}.button,.nav-cta,.text-link,.film-toggle,.film-replay,.sg-play{min-height:44px}.menu-button,.film-toggle,.film-replay,.sg-play{touch-action:manipulation}.project-inquiry input,.project-inquiry select,.project-inquiry textarea{font-size:16px}.inquiry-send{padding-bottom:55px}.footer-links a{display:flex;align-items:center;min-height:44px}.sg-small,.local-note{line-height:1.7}.about-reveal,.svc-reveal,.pricing-reveal,.contact-enter{transition-duration:.25s;animation-duration:.3s}.lead-dots{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.about-reveal,.svc-reveal,.pricing-reveal,.contact-enter{opacity:1!important;transform:none!important}}
