/* Global page settings. */
:root{--uncoder-container-width:1320px;--uncoder-button-border-radius:6px;--uncoder-form-field-border-radius:6px;--uncoder-btn-hover-color:#349AF4;}
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/* Standalone interaction and accessibility styles. */
html { scroll-behavior: smooth; }
#contact { scroll-margin-top: 24px; }
#contact .elementor-form .elementor-field-label {
  margin-bottom: 6px;
  padding-bottom: 0;
}
/* Keep the emblem and longer company name readable at each breakpoint. */
.elementor-9 .elementor-element.elementor-element-b7ed6ac img {
  width: 170px;
}
@media (max-width: 767px) {
  .elementor-9 .elementor-element.elementor-element-b7ed6ac img {
    width: 150px;
  }
}
a:focus-visible, button:focus-visible, [role="link"]:focus-visible {
  outline: 3px solid #349af4;
  outline-offset: 4px;
}
#form-status { margin-top: 20px; font-size: 14px; line-height: 1.5; color: #090b25; }
#backToTop.active { display: flex; }
/* Stretch service cards and let their content push each button to the bottom. */
.service-cards > .elementor-widget-uncoder-infobox,
.service-cards > .elementor-widget-uncoder-infobox > .elementor-widget-container {
  display: flex;
  align-self: stretch;
}
.service-cards .elementor-widget-container,
.service-cards .uncoder-infobox {
  flex: 1;
}
.service-cards .uncoder-infobox {
  flex-direction: column;
  flex-wrap: nowrap;
}
.service-cards .uncoder-infobox-media {
  flex-grow: 0;
}
.service-cards .uncoder-infobox-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.service-cards .uncoder-infobox-button-wrapper {
  margin-top: auto;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
