/* Shared usability fixes, loaded after each page's legacy styles. */
.menu-open-btn { display:flex;align-items:center;justify-content:center;padding:0;min-width:44px;min-height:44px;background:transparent;border:0;cursor:pointer; }
.menu-overlay[inert] { pointer-events:none; }
.menu-overlay a:focus-visible,.menu-open-btn:focus-visible,.gallery-cell:focus-visible,.gallery-project-img:focus-visible,form.contact-form input:focus-visible,form.contact-form textarea:focus-visible,form.contact-form button:focus-visible { outline:2px solid #777 !important;outline-offset:5px; }
.sr-only { position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip-path:inset(50%) !important;white-space:nowrap !important;border:0 !important; }
form.contact-form .contact-card .btnnn::after { content:none !important; }
form.contact-form .contact-card .btnnn { min-height:44px;justify-content:flex-start; }
form.contact-form .contact-card .btnnn:disabled { opacity:.55;cursor:wait; }
form.contact-form .contact-form-status { margin:0;font-family:"Poppins-Regular",sans-serif;font-size:14px !important;line-height:1.6 !important;text-align:left; }
form.contact-form .contact-form-status:empty { display:none; }
form.contact-form .contact-form-status[data-state="error"] { color:#8d2c20; }
form.contact-form .contact-form-status[data-state="success"] { color:#275436; }
form.contact-form input,form.contact-form textarea { user-select:text;-webkit-user-select:text; }
.contact-copy-main .contact-primary-link a,.contact-info .menu-info a { display:inline;color:inherit;font:inherit;letter-spacing:inherit;text-transform:none;text-decoration:none;overflow-wrap:anywhere; }
.contact-primary-link a:hover,.menu-info a:hover { text-decoration:underline; }
.slider .img,.imgg { position:relative; }
.video-toggle { position:absolute;z-index:3;top:100px;right:32px;min-height:44px;padding:8px 14px;border:1px solid #ffffff80;border-radius:3px;background:#0009;color:#fff;font:12px "Poppins-Regular",sans-serif;cursor:pointer; }
.video-toggle:focus-visible { outline:2px solid #fff;outline-offset:4px; }
@media (max-width:1100px),(max-height:700px) {
  body.about-page { scroll-snap-type:none; }
  .about-snap-panel:not(.about-panel-video) { height:auto;min-height:100svh;overflow:visible; }
  .about-panel,.about-panel-clients,.about-panel-numbers { grid-template-rows:auto auto;padding:6rem clamp(24px,5vw,60px) 3rem; }
  .about-panel .panel-copy { min-height:0;height:auto;overflow:visible; }
  .about-panel-team .panel-media { height:50svh; }
  .about-panel-numbers .panel-media { height:30svh; }
  .about-panel-clients .clients-logo-grid { min-height:40svh; }
  .stat-value { flex-shrink:0; }
}
@media (max-width:700px) {
  #contact-form.contact-form .contact-copy-main p,#about-contact-form.contact-form .contact-copy-main p { font-size:1rem !important;line-height:1.6 !important; }
  #contact-form.contact-form .contact-detail-group { gap:.65rem; }
  #contact-form.contact-form .contact-card input,#contact-form.contact-form .contact-card textarea { font-size:16px !important; }
  .video-toggle { right:20px;top:84px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important;transition-duration:.01ms !important;animation-duration:.01ms !important; } }
