/* Elementor Site Kit: viewport_md = 768, viewport_lg = 1025. */
/* Phase 15-R-R2: theme-controlled telephone links after iOS intent detection is disabled. */
.partner-tel,
.partner-tel:link,
.partner-tel:visited,
.partner-tel:hover,
.partner-tel:active,
.partner-tel:focus {
  color: inherit;
  font: inherit;
  text-decoration: none;
  text-decoration-line: none;
  -webkit-text-decoration: none;
  border-bottom: 0;
  box-shadow: none;
  background-image: none;
}
.partner-tel:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
@media (max-width: 1024px) {
  .site-header__desktop-actions { display: none; }
  .site-header__inner { justify-content: center; }
  .site-branding, .menu-toggle { width: 50%; }
  .site-branding__logo { width: 80%; }
  .menu-toggle { display: inline-flex; }
  .site-footer { padding-top: 7%; }
  .site-footer__inner { flex-wrap: wrap; padding-bottom: 0; }
  .site-footer__company { width: 50%; margin-bottom: 6%; padding-left: 4%; padding-right: 0; }
  .site-footer__navigation-column { width: 25%; padding-left: 40px; }
  .site-footer__external { width: 25%; padding-right: 3%; }
  .site-footer__logo-link { width: 35%; }
  .site-footer__name { padding: 3px 0 20px; font-size: 11px; }
  .site-footer__address { font-size: 13px; line-height: 17px; }
  .site-footer__telephone { padding-top: 20px; font-size: 20px; }
  .site-footer__hours { font-size: 13px; line-height: 17px; }
  .footer-navigation { padding-bottom: 15px; }
  .footer-navigation__menu { gap: 10px; }
  .footer-navigation a { font-size: 14px; }
  .owner-link--footer { padding: 10px 15px; font-size: 11px; }
  .site-footer__external .brand-link { width: 50%; }
  .social-link svg { width: 26px; height: 26px; }
  .site-info { padding: 0 0 3%; font-size: 11px; }
  .mobile-navigation__nav { padding-top: 60px; }
  .owner-link--mobile { font-size: 13px; }
  .mobile-navigation__social { padding: 50px 0 0 45px; }
  .brand-link--mobile { width: 65px; }
  .mobile-navigation__social .social-link { padding: 7px; }
  .mobile-navigation__social .social-link svg { width: 35px; height: 35px; }
  .mobile-navigation__identity { padding: 30px 0 0 50px; }
  .mobile-navigation__logo { width: 26%; }
}
@media (max-width: 767px) {
  /* Retain authored desktop rhythm while allowing requested SP copy to wrap naturally. */
  .recruit-intro__copy br,
  .company-intro__copy br,
  .owner-lead > p br,
  .owner-sell-lead > p br { display: none; }
  .site-header, .site-header__inner { min-height: 60px; }
  .site-footer { padding: 20% 5% 0; }
  .site-footer__company { width: 100%; margin-bottom: 10%; padding: 0; }
  .site-footer__navigation-column { width: 50%; padding-left: 0; }
  .site-footer__external { width: 100%; flex-direction: row; gap: 0; align-items: center; justify-content: space-between; padding: 7% 0 0; }
  .site-footer__logo-link { width: 40%; }
  .site-footer__name { padding: 3px 0 15px; font-size: 10px; }
  .site-footer__telephone { padding: 10px 0; }
  .footer-navigation a { line-height: 18px; }
  .owner-link--footer { padding: 10px; font-size: 13px; }
  .site-footer__external .brand-link { width: 20%; }
  .social-links { padding: 0 0 0 15px; }
  .social-link svg { width: 32px; height: 32px; }
  .site-info { padding: 15% 0 5%; font-size: 10px; }
  .mobile-navigation__menu a { padding: 10px 30px; }
  .owner-link--mobile { margin-left: 20px; }
  .mobile-navigation__social { padding: 60px 0 0 25px; }
  .brand-link--mobile { width: 60px; }
  .mobile-navigation__social .social-link { padding: 5px; }
  .mobile-navigation__identity { padding: 30px 0 0 30px; }
  .mobile-navigation__logo { width: 85%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}
