/*
Theme Name: Fleet SmartOps
Theme URI: https://smartops.fleet
Description: Child theme for SmartOps Fleet marketing site — Elementor + Header Footer Elementor.
Author: SmartOps
Template: hello-elementor
Version: 1.0.122
Text Domain: fleet-smartops
*/

:root {
  --fleet-font: "Montserrat", system-ui, sans-serif;
  --fleet-teal: #3ec2cd;
  --fleet-teal-light: #14b8a6;
  --fleet-teal-dark: #0f766e;
  --fleet-navy: #0f172a;
  --fleet-gray-50: #f8fafc;
  --fleet-gray-600: #475569;
  --fleet-white: #ffffff;
}

body {
  font-family: var(--fleet-font);
  color: var(--fleet-navy);
}

/* Prevent off-canvas transforms (drawer, carousel side phones, chat widgets) from causing H-scroll.
   IMPORTANT: overflow-x:clip on ANY header ancestor forces overflow-y to clip too (CSS overflow
   pairing). That was clipping .fleet-header-nav__sub below the sticky bar — users saw an empty
   white box flash under Our Services / More, then mouseleave hid it. Keep clip on page content
   only; the entire sticky header tree must stay overflow:visible. */
html {
  overflow-x: clip;
  max-width: 100%;
}

body {
  overflow-x: clip;
  max-width: 100%;
  position: relative;
}

.fleet-page,
.elementor,
.elementor-location-footer {
  overflow-x: clip;
  max-width: 100%;
}

/* Beat the .elementor { overflow-x: clip } rule inside the HFE / Elementor header */
.elementor-location-header,
#masthead,
header#masthead,
.hfe-site-header,
header.ehf-header,
#masthead .elementor,
header#masthead .elementor,
.hfe-site-header .elementor,
header.ehf-header .elementor,
.elementor-location-header .elementor,
#masthead .elementor-section,
#masthead .elementor-container,
#masthead .elementor-column,
#masthead .elementor-widget-wrap,
#masthead .elementor-element,
#masthead .elementor-widget-html,
.hfe-site-header .elementor-section,
.hfe-site-header .elementor-container,
.hfe-site-header .elementor-column,
.hfe-site-header .elementor-widget-wrap,
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap,
.fleet-hfe-header {
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  contain: none !important;
  max-width: 100%;
}

@supports not (overflow-x: clip) {
  html,
  body,
  .fleet-page,
  .elementor,
  .elementor-location-footer {
    overflow-x: hidden;
  }
}

h1, h2, h3, h4, h5, h6,
.fleet-h1, .fleet-h2, .fleet-h3, .fleet-kicker,
.fleet-btn, .fleet-header-nav {
  font-family: var(--fleet-font);
}

.fleet-fallback-header,
.fleet-fallback-footer {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem 1.5rem;
}

.fleet-fallback-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e2e8f0;
}

.fleet-fallback-header .site-title a {
  color: var(--fleet-teal);
  font-weight: 700;
  text-decoration: none;
  font-size: 1.25rem;
}

.fleet-fallback-header nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.fleet-fallback-header nav a {
  color: var(--fleet-gray-600);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.9375rem;
}

.fleet-fallback-header nav a:hover,
.fleet-fallback-header nav a:focus-visible {
  color: var(--fleet-teal);
}

.fleet-fallback-header nav a:focus-visible {
  outline: 2px solid var(--fleet-teal);
  outline-offset: 2px;
}

.fleet-fallback-footer {
  background: var(--fleet-navy);
  color: var(--fleet-gray-50);
  margin-top: 3rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.fleet-fallback-footer a {
  color: var(--fleet-teal-light);
}

.fleet-fallback-footer .footer-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}

.fleet-fallback-footer nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
