/* ASG front-end fixes (local preview). Each block maps to an issue from the audit. */

/* 1. Header + footer logo: Hello fallback header showed the 753px logo at full size,
      pushing the menu onto a second row. */
.site-header .header-inner { align-items: center; }
.site-header .site-logo img { width: 170px; height: auto; }
.site-footer .site-logo img { width: 140px; height: auto; }
@media (max-width: 1024px) { .site-header .site-logo img { width: 140px; } }
@media (max-width: 767px)  { .site-header .site-logo img { width: 120px; } .site-footer .site-logo img { width: 120px; } }

/* Bigger tap target for the mobile/tablet menu toggle */
.site-header .site-navigation-toggle { padding: 10px; font-size: 20px; }

/* 3. Empty template sections: blank gradient strip (home) + testimonials header with no testimonials */
.elementor-element-b9d00c,
.elementor-element-6feee8d2,
.elementor-element-c6c5bce { display: none !important; }

/* 5. Buttons were 10-11px on tablet/mobile */
@media (max-width: 1024px) {
  .elementor-button, .elementor-button-text { font-size: 13px !important; }
  .elementor-widget-text-editor a, .elementor-widget-heading a { font-size: max(1em, 13px); }
}

/* Services desktop: "Our Core Competency" intro squeezed into a narrow justified column */
.elementor-134 .elementor-element.elementor-element-1381c078 { text-align: start; }

/* Breadcrumb separator spacing now that the arrow icon renders */
.elementor-icon-list-items.elementor-inline-items .elementor-icon-list-icon i { font-size: .9em; }

/* Long words / fixed widths must not push past the viewport on phones */
@media (max-width: 767px) {
  .elementor-widget-icon-box .elementor-icon-box-wrapper,
  .elementor-widget-icon-box .elementor-icon-box-content { min-width: 0; max-width: 100%; }
}

/* fadeInLeft/fadeInRight entrance animations briefly push content past the screen edge,
   causing sideways scroll on phones/tablets. Clip it (clip, unlike hidden, keeps sticky working). */
html, body { overflow-x: clip; }

/* Small "Learn More" links in the ElementsKit info boxes (10-11px on tablet/mobile) */
@media (max-width: 1024px) { .elementskit-infobox .elementskit-btn { font-size: 13px !important; } }

/* Contact: the airmail-envelope border is an absolutely positioned image with a fixed height
   (637/480/924px) that didn't match the content, so it overlapped the footer on mobile and
   stretched on tablet. Make it track the box it decorates. */
.elementor-136 .elementor-element.elementor-element-255dd5fd,
.elementor-136 .elementor-element.elementor-element-51a8a5cd { inset: 0 !important; width: 100% !important; height: 100% !important; }
.elementor-136 .elementor-element.elementor-element-255dd5fd .elementor-widget-container,
.elementor-136 .elementor-element.elementor-element-51a8a5cd .elementor-widget-container { height: 100%; }
.elementor-136 .elementor-element.elementor-element-255dd5fd img,
.elementor-136 .elementor-element.elementor-element-51a8a5cd img { width: 100% !important; height: 100% !important; object-fit: fill; }

/* Contact cards: phone/email links keep the card text colour */
.elementskit-infobox .box-body p a { color: inherit; }
