/*
 * Small, deliberate overrides for the handful of vendor widgets whose full
 * behavior depends on JS initialization that only runs correctly inside a
 * full WordPress+Elementor page load (documented per-case below). These are
 * NOT part of the original site's CSS - they're minimal fixes so the static
 * markup degrades gracefully instead of breaking layout.
 */

/* Sticky footer: on short pages (like the 404 page) the footer must stay
   pinned to the bottom of the viewport instead of riding up under the
   content. #layout/.inner_layout have no height/flex rules of their own
   in the vendor CSS, so this chain (#root -> #layout -> .inner_layout ->
   content wrapper) makes the content wrapper the one flexible piece that
   grows to fill leftover viewport height, pushing the footer down. */
html,
body {
  height: 100%;
}

#root {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

#layout,
.inner_layout {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.airtech_page_content_wrap {
  flex: 1 0 auto;
}

/* WPForms "modern" theme is entirely CSS-custom-property driven - WordPress
   normally generates this :root block per-install (Settings > Forms styling).
   Captured verbatim from the live site; without it every field/button
   renders with no visible border/background at all. Used on the Contact page. */
:root {
  --wpforms-field-border-radius: 3px;
  --wpforms-field-border-style: solid;
  --wpforms-field-border-size: 1px;
  --wpforms-field-background-color: #ffffff;
  --wpforms-field-border-color: rgba(0, 0, 0, 0.25);
  --wpforms-field-border-color-spare: rgba(0, 0, 0, 0.25);
  --wpforms-field-text-color: rgba(0, 0, 0, 0.7);
  --wpforms-field-menu-color: #ffffff;
  --wpforms-label-color: rgba(0, 0, 0, 0.85);
  --wpforms-label-sublabel-color: rgba(0, 0, 0, 0.55);
  --wpforms-label-error-color: #d63637;
  --wpforms-button-border-radius: 3px;
  --wpforms-button-border-style: none;
  --wpforms-button-border-size: 1px;
  --wpforms-button-background-color: #066aab;
  --wpforms-button-border-color: #066aab;
  --wpforms-button-text-color: #ffffff;
  --wpforms-page-break-color: #066aab;
  --wpforms-background-image: none;
  --wpforms-background-position: center center;
  --wpforms-background-repeat: no-repeat;
  --wpforms-background-size: cover;
  --wpforms-background-width: 100px;
  --wpforms-background-height: 100px;
  --wpforms-background-color: rgba(0, 0, 0, 0);
  --wpforms-background-url: none;
  --wpforms-container-padding: 0px;
  --wpforms-container-border-style: none;
  --wpforms-container-border-width: 1px;
  --wpforms-container-border-color: #000000;
  --wpforms-container-border-radius: 3px;
  --wpforms-field-size-input-height: 43px;
  --wpforms-field-size-input-spacing: 15px;
  --wpforms-field-size-font-size: 16px;
  --wpforms-field-size-line-height: 19px;
  --wpforms-field-size-padding-h: 14px;
  --wpforms-field-size-checkbox-size: 16px;
  --wpforms-field-size-sublabel-spacing: 5px;
  --wpforms-field-size-icon-size: 1;
  --wpforms-label-size-font-size: 16px;
  --wpforms-label-size-line-height: 19px;
  --wpforms-label-size-sublabel-font-size: 14px;
  --wpforms-label-size-sublabel-line-height: 17px;
  --wpforms-button-size-font-size: 17px;
  --wpforms-button-size-height: 41px;
  --wpforms-button-size-padding-h: 15px;
  --wpforms-button-size-margin-top: 10px;
  --wpforms-container-shadow-size-box-shadow: none;
}

/* "See Airtech In Action" video widget on the Home page: a two-column
   media + content layout (text/tags on the left, video on the right),
   not a verbatim WordPress export, so it needs its own light styling
   rather than relying on post-specific Elementor CSS. */
.airtech_video_widget_section .elementor-container {
  align-items: center;
}

.airtech_video_widget_eyebrow {
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px 14px;
  border-radius: 999px;
  background: rgba(245, 103, 8, 0.1);
  color: #f56708;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.airtech_video_widget_chips {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.airtech_video_widget_chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 999px;
  background: #f5f5f5;
  color: #333333;
  font-size: 14px;
  font-weight: 600;
}

.airtech_video_widget_chip i {
  color: #f56708;
}

.airtech_video_widget_card {
  position: relative;
  max-width: 480px;
  margin: 0 auto;
  padding: 14px;
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.16);
}

.airtech_video_widget_card::before {
  content: '';
  position: absolute;
  top: 22px;
  right: -18px;
  bottom: -18px;
  left: 22px;
  z-index: -1;
  border-radius: 10px;
  background: #f56708;
  opacity: 0.15;
}

@media (max-width: 767px) {
  .airtech_video_widget_card {
    margin: 0 auto;
  }
}

.airtech_commitment_photo_row {
  align-items: center;
}

/* Photo + caption badge that replaced the video widget's old slot on the
   About page (see airtech_video_widget_card above for where the video went). */
.airtech_about_photo_caption {
  position: absolute;
  left: 20px;
  top: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  background: rgba(20, 20, 20, 0.72);
  color: #ffffff;
  border-radius: 4px;
  font-size: 17px;
  font-weight: 600;
}

.airtech_about_photo_caption_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #f56708;
  flex-shrink: 0;
}
