/* Shared responsive/performance guardrails. Keep this layer small and late so
 * imported builder styles cannot reintroduce horizontal overflow or undersized
 * controls on phones and tablets. */
html{overflow-x:clip}
body{min-width:320px;overflow-x:clip}
img,video,iframe,svg{max-width:100%}
iframe,video{display:block}
table{max-width:100%;overflow-x:auto}
button,a,input,select,textarea{touch-action:manipulation}
button,a{min-height:44px}
input,select,textarea{max-width:100%;font:inherit}
.da-wrap{width:min(calc(100% - 40px),var(--wrap,1240px))}
.da-entry,.elementor,.elementor-section,.elementor-container,.elementor-widget-wrap{max-width:100%}
.elementor-widget-video iframe,.elementor-video{width:100%;aspect-ratio:16/9;height:auto}
.da-chat{min-height:54px}
@media (max-width:1150px){
  .da-wrap{width:min(calc(100% - 36px),1240px)}
  .da-header,.da-header-row,.da-nav,.da-mobile-drawer{max-width:100vw}
  .da-nav,.da-mobile-drawer{overflow-x:hidden}
  .da-nav a,.da-nav button{white-space:normal}
}
@media (max-width:700px){
  .da-wrap{width:min(calc(100% - 28px),1240px)}
  .da-wrap > *{min-width:0}
  .da-actions,.da-hero-actions,.da-service-lead__actions{align-items:stretch}
  .da-actions>a,.da-hero-actions>a,.da-service-lead__actions>a{width:100%;text-align:center}
  .da-footer-bottom{gap:10px;overflow-wrap:anywhere}
  .da-chat{right:14px;bottom:14px}
}
@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}
}
