/* Scoped to the actual Engitech/Elementor components used by INGEPAS. */
body.elementor-kit-8 {
  --e-global-color-primary: #17658a;
  --e-global-color-a37bd59: #17658a;
  --e-global-color-text: #595959;
  --e-global-color-accent: #a83d18;
}
/* Explicit overrides: the theme uses literal colors instead of kit variables. */
body .ot-heading > span { color: #a83d18 !important; }
body .ot-testimonials .t-head span { color: #595959 !important; }
body .elementor-2274 .elementor-element-f51dec4 .ot-heading > span {
  color: #fff !important;
  background: #0f1e3a;
  padding: 4px 8px;
}
body .octf-btn, body .elementor-button,
body input[type="submit"], body button.search-submit {
  background: #17658a !important;
  color: #fff !important;
}
body .octf-btn:hover, body .octf-btn:focus,
body .elementor-button:hover, body .elementor-button:focus,
body input[type="submit"]:hover, body button.search-submit:hover {
  background: #104865 !important;
  color: #fff !important;
}
body .elementor-2856 .elementor-icon-box-title,
body .elementor-2856 .elementor-icon-box-title a,
body .elementor-2856 .elementor-icon {
  color: #17658a !important;
  fill: #17658a !important;
}
/* This heading and the service numbers sit on the dark #0f1e3a section. */
body .elementor-2274 .elementor-element-8e77825 .ot-heading > span,
body .elementor-2274 .elementor-element-9a4c200 .serv-box-2 .big-number,
body .elementor-2274 .elementor-element-9a4c200 .serv-box-2 a,
body .projects-box .portfolio-info .portfolio-cates,
body .projects-box .portfolio-info .portfolio-cates a {
  color: #79d0fa !important;
}
body .projects-box .portfolio-info { background-color: #0f1e3a; }
body .elementor-2274 .elementor-element-9a4c200 .serv-box-2:hover a,
body .elementor-2274 .elementor-element-9a4c200 .serv-box-2:hover .big-number {
  color: #17658a !important;
}
body .btn-details, body .btn-details:visited,
body .main-navigation > ul > li > a:hover,
body .icon-box-s2 .content-box h5 a:hover { color: #17658a; }
body #panel-btn, body #back-to-top {
  color: #fff !important; background-color: #17658a !important;
}
body #panel-btn svg { fill: #fff !important; }
/* Give text over photographs its own solid contrast surface. */
body .elementor-2274 :is(.elementor-element-60959ce, .elementor-element-726795a)
  :is(.elementor-widget-heading, .elementor-widget-text-editor, .elementor-widget-icounter) > .elementor-widget-container {
  background-color: #0f1e3a;
  color: #fff;
  padding: 8px 12px;
}
body .project_filters li a { color: #17658a; }
body .project_filters li a.selected, body .project_filters li a:hover {
  color: #fff; background-color: #17658a;
}
body input::placeholder, body textarea::placeholder { color: #595959; opacity: 1; }
body .wpcf7-form input:not([type="submit"]), body .wpcf7-form textarea {
  color: #242424; background-color: #fff; border-color: #767676;
}
body .wpcf7-not-valid-tip { color: #a21b1b; }
body .cmplz-cookiebanner .cmplz-btn {
  color: #fff !important; background: #17658a !important; border-color: #17658a !important;
}
body .cmplz-cookiebanner .cmplz-link { color: #17658a !important; text-decoration: underline; }
body :is(a, button, input, textarea, select, [tabindex]):focus-visible {
  outline: 3px solid #17658a !important;
  outline-offset: 3px;
  box-shadow: 0 0 0 6px #fff !important;
}
body .mmenu-wrapper [role="button"]:focus-visible { outline-color: #79d0fa !important; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
}
