/* Things Avada's JavaScript used to do, done in CSS instead. */

/* Entrance animations: content started hidden until a script revealed it. */
.fusion-animated, [data-animationtype] { visibility: visible !important; opacity: 1 !important; animation: none !important; }

/* Mobile menu (Avada cloned the desktop menu into this holder with JS). */
.fusion-mobile-nav-holder > ul { display: none; }
.fusion-mobile-nav-holder.fusion-mobile-menu-expanded { display: block !important; }
.fusion-mobile-nav-holder.fusion-mobile-menu-expanded > ul { display: block; }
.fusion-mobile-nav-holder .mobile-nav-heading > span { display: block; padding: 0 20px; font-family: Montserrat, Arial, Helvetica, sans-serif; color: #333; }

/* Static first slide in place of Revolution Slider. */
.static-hero { background-size: cover; background-position: center center; min-height: 380px; display: flex; align-items: center; width: 100%; max-width: 100%; box-sizing: border-box; }
/* width is explicit so aspect-ratio + min-height can't widen the hero past the screen on phones */
.static-hero-inner { min-width: 0; box-sizing: border-box; max-width: 1170px; margin: 0 auto; padding: 0 30px; width: 100%; }
.static-hero-inner > p { max-width: 560px; color: #fff; font-family: Montserrat, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 30px; background: rgba(3, 83, 160, .85); padding: 20px 25px; margin: 0; }

/* Lead form honeypot: off-screen, never seen by people. */
.lead-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.wpcf7-response-output[hidden] { display: none; }
form.sent .wpcf7-response-output { border: 2px solid #46b450; }
form.failed .wpcf7-response-output, form.invalid .wpcf7-response-output { border: 2px solid #dc3232; }

/* Mobile menu items (Avada 7 styles these when its JS builds the menu). */
.fusion-mobile-nav-holder .fusion-mobile-menu { margin: 0; padding: 0; list-style: none; border-top: 1px solid #e5e5e5; }
.fusion-mobile-nav-holder .fusion-mobile-nav-item a { display: block; padding: 0 20px; line-height: 42px; border-bottom: 1px solid #e5e5e5; color: #333; font-family: Montserrat, Arial, Helvetica, sans-serif; font-size: 14px; }
.fusion-mobile-nav-holder .fusion-mobile-sub-item a { padding-left: 36px; }
.fusion-mobile-nav-holder .fusion-mobile-current-nav-item > a, .fusion-mobile-nav-holder .fusion-mobile-current-nav-item > a .menu-text { color: #fff; }

/* Lazy-load placeholders are gone; never hide images waiting for a script. */
img.lazyload, img.lazyloading, .lazyload { opacity: 1 !important; visibility: visible !important; }

/* Font Awesome 4.7 icon font, self-hosted (the old sites loaded it from use.fontawesome.com). */
@font-face { font-family: 'FontAwesome'; src: url('/fonts/fa4/fontawesome-webfont.woff2') format('woff2'), url('/fonts/fa4/fontawesome-webfont.woff') format('woff'); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: 'fontawesome'; src: url('/fonts/fa4/fontawesome-webfont.woff2') format('woff2'), url('/fonts/fa4/fontawesome-webfont.woff') format('woff'); font-weight: normal; font-style: normal; font-display: block; }

/* Avada "100% height" containers: its JS set them to the window height minus the header, growing with the content.
   Without that JS they fall back to a fixed height and taller content spills under the header. */
.fullwidth-box.hundred-percent-height { height: auto !important; min-height: calc(100vh - 160px); }
.fullwidth-box.hundred-percent-height > .fusion-fullwidth-center-content { height: auto !important; min-height: inherit; }

/* WordPress theme page preloaders: their hide-on-load script is not carried over, so they would cover the page forever. */
#ct-loadding,.ct-loader,#preloader,.preloader,#page-preloader,.page-loader,#loader-wrapper,.site-loader{display:none!important}

/* Hero with the quote form on it (the old Revolution Slider carried the form as a layer).
   Copy on the left, form on the right; stacked on phones. Nothing is absolutely positioned,
   so the form can never hang off the hero onto the trust badges below. */
.hero-row { width: 100%; }
.static-hero.hero-split { position: relative; min-height: 520px; }
.static-hero.hero-split::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.5) 55%, rgba(0,0,0,.25) 100%); z-index: 0; }
.hero-split .static-hero-inner { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 48px 30px; }
.hero-copy { flex: 1 1 auto; max-width: 620px; }
.hero-copy p { color: #fff; font-family: Montserrat, Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.6; margin: 0 0 16px; text-shadow: 0 1px 3px rgba(0,0,0,.6); }
.hero-copy .hero-title { font-size: 34px; line-height: 1.2; font-weight: 700; text-transform: uppercase; margin-bottom: 20px; }
.hero-form { flex: 0 0 355px; position: static !important; padding: 0 !important; }
.hero-form .form-slider-new { float: none; width: auto !important; margin: 0; border-radius: 6px; background: rgba(30, 30, 30, .88); }
.hero-form .form-slider-new p { margin: 0 0 6px; }
.hero-form .wpcf7 input:not([type=submit]), .hero-form .wpcf7 textarea { width: 100%; box-sizing: border-box; font-size: 16px; }
.hero-form .wpcf7-submit { min-height: 44px; font-size: 16px; }
@media (max-width: 800px) {
  .static-hero.hero-split { min-height: 0; }
  .static-hero.hero-split::after { background: rgba(0,0,0,.6); }
  .hero-split .static-hero-inner { flex-direction: column; align-items: stretch; gap: 20px; padding: 28px 16px; }
  .hero-copy { max-width: none; }
  .hero-copy .hero-title { font-size: 24px; }
  .hero-copy p { font-size: 16px; }
  .hero-form { flex: none; width: 100%; }
}

/* Mobile menu button: a 44x44 tap target (it was the 21px icon glyph alone). */
.fusion-mobile-menu-icons a.awb-icon-bars { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; box-sizing: border-box; }
/* The mobile search toggle had no script behind it; don't show a button that does nothing. */
.fusion-mobile-menu-icons a.awb-icon-search { display: none !important; }

/* Contact page: the lead form's submit button. */
.lead-submit { min-height: 44px; padding: 10px 28px; font-size: 16px; background: #00ad17 !important; color: #fff !important; border: 0; cursor: pointer; }

/* Contrast: page title and breadcrumb on the dark title bar; footer text. */
.fusion-page-title-bar h1.entry-title { color: #ff4d4d !important; text-shadow: 0 1px 3px rgba(0,0,0,.8); }
.fusion-page-title-bar .fusion-breadcrumbs a, .fusion-page-title-bar .fusion-breadcrumbs a span { color: #fff !important; }
.fusion-page-title-bar .fusion-breadcrumbs .breadcrumb_last { color: #ff7070 !important; }
.fusion-footer .fusion-li-item-content { color: #bdbdbd !important; }
.fusion-footer a[href*="websiteness.com"] { color: #e0e0e0 !important; }
/* Lead forms contain their floated columns (the contact form measured 0px tall at desktop). */
form[data-lead-form] { display: flow-root; }
