.eael-infobox .infobox-icon { height: 220px !important; overflow: hidden !important; display: block !important; }
.eael-infobox .infobox-icon img { width: 100% !important; height: 220px !important; object-fit: cover !important; object-position: center !important; display: block !important; }
.eael-infobox { text-align: left !important; }
.elementor-element-79fdf241 .elementor-background-overlay { background: rgba(10,20,50,0.72) !important; opacity: 1 !important; }
.elementor-element-675f44fa .elementor-heading-title { font-size: clamp(26px,3.2vw,44px) !important; font-weight: 800 !important; color: #fff !important; text-align: left !important; line-height: 1.15 !important; }
.elementor-element-6c7cccc0 .elementor-heading-title { font-size: 16px !important; color: rgba(255,255,255,0.9) !important; text-align: left !important; }
.elementor-button { background-color: #E85D26 !important; border-color: #E85D26 !important; color: #fff !important; font-weight: 600 !important; border-radius: 4px !important; }
.elementor-icon-list-icon i, .elementor-icon-list-icon svg { color: #E85D26 !important; fill: #E85D26 !important; }
#contact-section { scroll-margin-top: 80px; }
@media (max-width: 768px) { .eael-infobox .infobox-icon, .eael-infobox .infobox-icon img { height: 160px !important; } }

/* Fix: mobile nav menu text invisible (white text on white background) */
.elementor-2156 .elementor-element.elementor-element-8e44168 nav.hfe-dropdown .menu-item a.hfe-menu-item,
.elementor-2156 .elementor-element.elementor-element-8e44168 nav.hfe-dropdown .menu-item a.hfe-sub-menu-item,
.elementor-2156 .elementor-element.elementor-element-8e44168 nav.hfe-dropdown-expandible li a.hfe-menu-item,
.elementor-2156 .elementor-element.elementor-element-8e44168 nav.hfe-dropdown-expandible li a.hfe-sub-menu-item {
  color: #1a3c5e !important;
}

/* =====================================================
   HOMEPAGE SPACING POLISH — July 2026
   ===================================================== */

/* --- Section breathing room --- */
/* Capabilities content block - was 0/0 padding */
.elementor-element-28d2ab15 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

/* Services section bottom - was 30/0 */
.elementor-element-6536ad42 {
  padding-bottom: 60px !important;
}

/* Services continuation - was 0/50 */
.elementor-element-cd8b05c {
  padding-top: 50px !important;
}

/* --- Eyebrow label (H6 like "OUR CAPABILITIES") to H2 spacing --- */
.elementor-widget-heading .elementor-heading-title[class*="elementor-size-small"] + *,
h6.elementor-heading-title {
  letter-spacing: 2px;
}

/* Widget-level vertical spacing - breathing room between stacked widgets */
.elementor-widget:not(:last-child) {
  margin-bottom: 12px;
}

/* Heading widgets get more breathing on the bottom */
.elementor-widget-heading:not(:last-child) {
  margin-bottom: 16px !important;
}

/* Text editor widgets need a little top air when following headings */
.elementor-widget-heading + .elementor-widget-text-editor,
.elementor-widget-heading + .elementor-widget-button {
  margin-top: 8px !important;
}

/* --- Eyebrow + main heading pair: space between them --- */
.elementor-widget:has(h6.elementor-heading-title) {
  margin-bottom: 8px !important;
}
.elementor-widget:has(h6.elementor-heading-title) + .elementor-widget-heading {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

/* --- Section headings need clear air below before body copy --- */
h2.elementor-heading-title {
  margin-bottom: 16px;
}

h3.elementor-heading-title {
  margin-bottom: 12px;
}

/* --- Icon list items spacing --- */
.elementor-icon-list-items .elementor-icon-list-item {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

/* --- Info boxes: more air between icon and title --- */
.eael-infobox .eael-infobox-title {
  margin-top: 16px !important;
  margin-bottom: 8px !important;
}
.eael-infobox .eael-infobox-text {
  margin-top: 8px !important;
}

/* --- Footer section breathing --- */
.elementor-element-0408230 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

/* --- Divider / separator widgets --- */
.elementor-widget-divider {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

/* --- Button margin from text above --- */
.elementor-widget-button {
  margin-top: 12px !important;
}