/* Small compatibility layer; original theme stylesheet is copied unchanged. */
:focus-visible { outline: 3px solid #f9b233; outline-offset: 4px; }
.main-navigation li:focus-within > .sub-menu { left: auto; }
.main-navigation .menu-open > .sub-menu { display: flex; }
.static-form-status { color: #11003b; font-size: 16px; }
.static-form-status[hidden] { display: none; }
.form-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%); pointer-events: none; }
.static-form input[type="submit"]:disabled { cursor: wait; opacity: .65; }
.static-form p { max-width: 100%; }
.static-form .wpcf7-form-control-wrap { display: block; }
.static-form input:not([type="submit"]), .static-form select, .static-form textarea { max-width: 100%; }
/* Contact-page fields follow the supplied form reference. */
.page-contact-us .contact-form .contact-page-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 320px;
  max-width: 100%;
}
.page-contact-us .contact-form .contact-page-form p { width: 100%; margin: 0; }
.page-contact-us .contact-form .contact-page-form .wpcf7-form-control-wrap { display: block; width: 100%; }
.page-contact-us .contact-form .contact-page-form .wpcf7-form-control {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 52px;
  margin: 0;
  padding: 0 20px;
}
.page-contact-us .contact-form .contact-page-form select { color: #333; }
.page-contact-us .contact-form .contact-page-form input[type="submit"] { background: #f4af4e; }
.page-contact-us .contact-form--desktop .static-form-status { color: #fff; }
.company-menu .sub-menu { gap: 12px; }
.company-menu .sub-menu li { padding-left: 0; height: auto; }
/* Preserve the original sweep effects without an external CSS dependency. */
[class*="hvr-sweep-to-"] { position: relative; transform: perspective(1px) translateZ(0); transition: color .3s; }
[class*="hvr-sweep-to-"]::before { content: ''; position: absolute; z-index: -1; inset: 0; background: #2098d1; transform: scaleX(0); transform-origin: 0 50%; transition: transform .3s ease-out; border-radius: inherit; }
[class*="hvr-sweep-to-"]:hover::before, [class*="hvr-sweep-to-"]:focus-visible::before { transform: scaleX(1); }
.hvr-sweep-to-top::before { transform: scaleY(0); transform-origin: 50% 100%; }
.hvr-sweep-to-top:hover::before, .hvr-sweep-to-top:focus-visible::before { transform: scaleY(1); }
@keyframes zoomIn { from { opacity: 0; transform: scale3d(.3,.3,.3); } 50% { opacity: 1; } }
.zoomIn { animation-name: zoomIn; animation-duration: 1s; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
