/*
 Theme Name:   Metro Air Refresh (MiCar Child)
 Theme URI:    https://metroair.biz
 Description:  Polished, conservative refresh of the MiCar theme for Metro Air — fonts, accessible CTAs, sticky mobile click-to-call. Child of micar1.4.
 Author:       WestShore Web
 Template:     micar1.4
 Version:      1.3.0
 Text Domain:  micar-refresh
*/

/* =========================================================
   Design tokens
   ========================================================= */
:root{
  --ma-blue:#0B3C5D;    --ma-blue-mid:#1F6FA5;
  --ma-orange:#F4791F;  --ma-orange-deep:#D9650E;
  --ma-ink:#1A2227;     --ma-mist:#D7E2EA;
  --ma-font-head:"Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --ma-font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --ma-radius:8px;      --ma-shadow:0 6px 20px rgba(11,60,93,.12);
  --ma-callbar-h:58px;
}

/* =========================================================
   Typography — font family ONLY. No global color or size
   overrides (those broke headings on colored sections).
   ========================================================= */
body{ font-family:var(--ma-font-body); -webkit-font-smoothing:antialiased; }
h1,h2,h3,h4,h5,h6{ font-family:var(--ma-font-head); }
a:hover{ color:var(--ma-orange-deep); }

/* =========================================================
   "Now Hiring" announcement bar — tidy the text size/spacing.
   It is an <h3> inside the top yellow WPBakery row.
   ========================================================= */
.vc_custom_1641518207631{ padding:10px 16px !important; }
.vc_custom_1641518207631 h3{
  font-size:16px; line-height:1.45; font-weight:500; margin:0;
}
.vc_custom_1641518207631 h3 strong{ font-weight:700; }
.vc_custom_1641518207631 a{ text-decoration:underline; }
@media (min-width:1025px){
  .vc_custom_1641518207631 h3{ font-size:17px; }
}

/* =========================================================
   Hide ONLY the dead WooCommerce shop button (Woo removed)
   ========================================================= */
.shop-button{ display:none !important; }

/* =========================================================
   City landing pages: drop the theme's duplicate page-title H2
   (the content already provides a keyword-rich H1)
   ========================================================= */
.ma-landing .titlte-page-default{ display:none; }
.ma-landing .entry-content, .ma-landing .page-content{ max-width:920px; }
.ma-landing .entry-content h2{ margin-top:1.4em; }

/* =========================================================
   CTA styling — scoped to the estimate form submit + explicit
   .ma-btn helpers ONLY. We do NOT recolor theme/WPBakery buttons.
   ========================================================= */
.wpcf7-submit, a.ma-btn, .ma-btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px; padding:14px 28px;
  font-family:var(--ma-font-head); font-size:17px; font-weight:600; line-height:1;
  background:var(--ma-orange); color:var(--ma-ink);
  border:0; border-radius:var(--ma-radius); text-decoration:none;
  box-shadow:var(--ma-shadow); transition:transform .18s ease, background .18s ease; cursor:pointer;
}
.wpcf7-submit:hover, .ma-btn:hover{
  background:var(--ma-orange-deep); color:#fff; transform:translateY(-2px);
}

/* Estimate form fields: cleaner, consistent inputs */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"],
.wpcf7 textarea, .wpcf7 select{
  border:1px solid var(--ma-mist); border-radius:var(--ma-radius);
  padding:12px 14px; font-family:var(--ma-font-body); font-size:16px;
}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus{
  outline:2px solid var(--ma-blue-mid); outline-offset:1px;
}

/* =========================================================
   Sticky mobile click-to-call bar (<=768 only)
   ========================================================= */
.ma-callbar{ display:none; }
@media (max-width:768px){
  .ma-callbar{
    display:flex; position:fixed; left:0; right:0; bottom:0; z-index:1000;
    height:var(--ma-callbar-h); padding-bottom:env(safe-area-inset-bottom);
    box-shadow:0 -2px 12px rgba(0,0,0,.18);
  }
  .ma-callbar a{
    flex:1; display:flex; align-items:center; justify-content:center; gap:8px;
    font-family:var(--ma-font-head); font-weight:700; font-size:16px; text-decoration:none;
  }
  .ma-callbar__call{ background:var(--ma-orange); color:var(--ma-ink); }
  .ma-callbar__req{ background:var(--ma-blue); color:#fff; }
  body{ padding-bottom:calc(var(--ma-callbar-h) + env(safe-area-inset-bottom)); }
}

/* =========================================================
   MOBILE ROUND 1 — kill horizontal overflow, fit header,
   clamp heading sizes (≤768px)
   ========================================================= */
@media (max-width:768px){
  html, body{ overflow-x:hidden; max-width:100vw; }
  img{ max-width:100%; height:auto; }
  .logo img{ max-width:220px; }
  /* header call-to-action phone block */
  .main-header .vc_cta3-content-header h2{ font-size:20px !important; line-height:1.25; }
  .main-header .vc_cta3 p{ font-size:13px !important; line-height:1.45; margin-bottom:0; }
  .main-header .vc_cta3{ padding:8px 12px !important; }
  /* heading clamps so nothing exceeds the viewport */
  h1{ font-size:26px !important; line-height:1.22; }
  h2{ font-size:21px !important; line-height:1.25; }
  h3{ font-size:18px !important; }
  /* landing pages: comfortable side padding on mobile */
  .ma-landing .entry-content, .ma-landing .page-content{ padding-left:16px; padding-right:16px; }
  /* Now Hiring bar wraps cleanly */
  .vc_custom_1641518207631 h3{ white-space:normal; word-break:break-word; font-size:14px; line-height:1.4; }
  /* generic guard: no child forces width beyond screen */
  .container, .vc_row, .wpb_row, .vc_column-inner, .wpb_wrapper{ max-width:100%; }
}

/* =========================================================
   MOBILE ROUND 2 — Now Hiring bar wrap, sticky-bar fit,
   tap targets, content spacing (≤768px)
   ========================================================= */
@media (max-width:768px){
  /* "Now Hiring" bar: always wrap, never clip */
  .vc_custom_1641518207631{ padding:8px 14px !important; overflow:visible; }
  .vc_custom_1641518207631 h3,
  .vc_custom_1641518207631 h3 *{ white-space:normal !important; word-break:break-word; font-size:13px !important; line-height:1.4 !important; }
  /* Sticky call bar: fit both labels comfortably */
  .ma-callbar{ height:60px; }
  .ma-callbar a{ font-size:15px; padding:0 6px; letter-spacing:0; }
  body{ padding-bottom:calc(60px + env(safe-area-inset-bottom)); }
  /* Bigger tap targets */
  .toggle-mobile-menu{ min-width:48px; min-height:48px; }
  .dropdown-link, .dropdown-list a, .menu-footer a, #footer a{ padding-top:9px; padding-bottom:9px; display:inline-block; }
  /* Landing-page content breathing room */
  .ma-landing .entry-content h2{ margin-top:1.5em; }
  .ma-landing .entry-content ul{ padding-left:1.1em; }
  .ma-landing .entry-content li{ margin-bottom:.45em; line-height:1.55; }
}

/* =========================================================
   MOBILE ROUND 3 — force heading wrap (no clipped titles),
   tame long service H1s (≤768px)
   ========================================================= */
@media (max-width:768px){
  h1, h2, h3, h4,
  .entry-content h1, .entry-content h2, .entry-content h3,
  .vc_custom_heading, .wpb_heading{
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:break-word !important;
    hyphens:auto;
  }
  .ma-landing .entry-content h1, .entry-content h1, h1{ font-size:24px !important; line-height:1.25 !important; }
  .ma-header-phone{ white-space:nowrap; }
}

/* =========================================================
   MOBILE ROUND 3c — fix content overflow on default-template
   pages (box-sizing + Bootstrap row margins) (≤768px)
   ========================================================= */
@media (max-width:768px){
  #main-content, #main-content *{ box-sizing:border-box; }
  #main-content .container,
  #main-content .row,
  #main-content [class*="col-"],
  #main-content article,
  #main-content .entry-content{ max-width:100% !important; }
  #main-content .row{ margin-left:0 !important; margin-right:0 !important; }
  #main-content [class*="col-"]{ padding-left:0 !important; padding-right:0 !important; }
}

/* =========================================================
   MOBILE ROUND 3d — DECISIVE: tie content width to viewport
   so nothing can overflow regardless of ancestor widths (≤768)
   ========================================================= */
@media (max-width:768px){
  html,body{ overflow-x:hidden !important; }
  #main-content{ width:100% !important; max-width:100vw !important; overflow-x:hidden !important; }
  #main-content > .container{ width:100% !important; max-width:100% !important; margin:0 auto !important; }
  #main-content .row{ width:100% !important; max-width:100% !important; margin:0 !important; }
  #main-content [class*="col-"]{ width:100% !important; max-width:100% !important; float:none !important; padding:0 !important; }
  #main-content article{ width:100% !important; max-width:100% !important; }
  #main-content .entry-content{ width:100% !important; max-width:100% !important; margin:0 !important; padding:0 16px !important; box-sizing:border-box !important; }
  #main-content .entry-content *{ max-width:100% !important; overflow-wrap:break-word; }
}

/* =========================================================
   TRUST BAR (injected after header) — verified facts only
   ========================================================= */
.ma-trust{
  display:flex; flex-wrap:wrap; gap:8px 22px; justify-content:center; align-items:center;
  background:#E8F1F8; color:#0B3C5D; border-bottom:1px solid #D7E2EA;
  padding:10px 14px; font-family:var(--ma-font-head); font-weight:600; font-size:14px;
}
.ma-trust span{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.ma-trust span::before{ content:"\2714"; color:#2E7D52; font-size:12px; }
.ma-trust .ma-trust__finance{ color:#2E7D52; }
@media (max-width:768px){ .ma-trust{ font-size:12px; gap:6px 14px; padding:8px 10px; } }

/* =========================================================
   VISUAL POLISH ROUND — finishing details (2026-06-23)
   ========================================================= */

/* 1) Navigation: readable white on the dark-blue nav bar, orange active/hover */
.main-nav.main-nav1 .menu-link.main-menu-link,
ul#menu-menu-1 .menu-link,
.main-nav1 > ul > li > a{ color:#ffffff !important; font-weight:600; }
.main-nav.main-nav1 .current-menu-item > .menu-link,
.main-nav.main-nav1 .current_page_item > .menu-link,
.main-nav.main-nav1 .menu-link:hover,
.main-nav1 > ul > li > a:hover{ color:#F4791F !important; }

/* 2) "Now Hiring" announcement: high-contrast, professional (navy on the bar) */
.vc_custom_1641518207631 h3,
.vc_custom_1641518207631 h3 *,
.vc_custom_1641518207631 strong{ color:#0B3C5D !important; }
.vc_custom_1641518207631 a{ color:#0B3C5D !important; font-weight:700; text-decoration:underline; }
.vc_custom_1641518207631 a:hover{ color:#D9650E !important; }

/* 3) Blue site frame / side gutters — protect content + header so text stays readable */
html, body{ background-color:#0B3C5D !important; }
.top-header{ background-color:#0B3C5D !important; }
.main-header, .main-header-light{ background-color:#ffffff !important; }
#main-content, #main-content.content-pages{ background-color:#ffffff; }

/* 4) Header/footer dropdown panels: solid navy panel, readable light text */
.open-store.dropdown-box .dropdown-list{
  background:#0B3C5D; padding:14px 16px; border-radius:10px;
  box-shadow:0 12px 30px rgba(0,0,0,.28); min-width:230px;
}
.open-store.dropdown-box .dropdown-list,
.open-store.dropdown-box .dropdown-list *{ color:#ffffff !important; }
.dropdown-box .dropdown-link{ color:#ffffff !important; }
.dropdown-box .dropdown-list a:hover{ color:#F4791F !important; }

/* 5) Content images: finished, consistent — soft radius + subtle shadow (exclude logo/badges/slider) */
.entry-content img,
.wpb_single_image img,
.vc_single_image-img img{ border-radius:10px; box-shadow:0 6px 18px rgba(11,60,93,.16); }
.logo img, .ma-trust img, .rev_slider img, #footer .wpb_single_image img{ border-radius:0 !important; box-shadow:none !important; }

/* 6) Estimate form (Contact Form 7): industry-standard, finished */
.entry-content .wpcf7, .wpcf7{
  background:#ffffff; border:1px solid #D7E2EA; border-radius:12px;
  padding:24px 22px; box-shadow:0 8px 26px rgba(11,60,93,.10);
}
.wpcf7-form p{ margin:0 0 16px; }
.wpcf7-form label{ display:block; font-family:var(--ma-font-head); font-weight:600; color:#0B3C5D; margin-bottom:5px; font-size:14px; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"],
.wpcf7 input[type="date"], .wpcf7 textarea, .wpcf7 select{
  width:100%; border:1px solid #C7D5DF; border-radius:8px; padding:12px 14px;
  font-size:16px; background:#fff; transition:border-color .15s ease, box-shadow .15s ease;
}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus{
  border-color:#1F6FA5; box-shadow:0 0 0 3px rgba(31,111,165,.18); outline:none;
}
.wpcf7 textarea{ min-height:120px; }
.wpcf7 .wpcf7-list-item{ margin:0 16px 6px 0; }
.wpcf7-submit{ width:100%; margin-top:6px; font-size:18px; }
@media (min-width:769px){ .wpcf7-submit{ width:auto; min-width:240px; } }

/* =========================================================
   Footer dropdown panels (.currency-language) — broadened so
   header AND footer dropdowns get a solid readable panel
   ========================================================= */
.dropdown-box .dropdown-list{
  background:#0B3C5D !important; padding:12px 14px; border-radius:10px;
  box-shadow:0 12px 30px rgba(0,0,0,.30); min-width:220px; list-style:none; margin-top:6px;
}
.dropdown-box .dropdown-list,
.dropdown-box .dropdown-list li,
.dropdown-box .dropdown-list p,
.dropdown-box .dropdown-list a,
.dropdown-box .dropdown-link,
.dropdown-box .dropdown-link.white{ color:#ffffff !important; }
.dropdown-box .dropdown-list a{ display:block; padding:4px 0; }
.dropdown-box .dropdown-list a:hover{ color:#F4791F !important; }

/* =========================================================
   Reviews CTA strip (injected above footer)
   ========================================================= */
.ma-reviews-cta{ background:#1F6FA5; color:#fff; padding:22px 16px; text-align:center; }
.ma-reviews-cta__inner{ max-width:1100px; margin:0 auto; display:flex; gap:14px 20px; align-items:center; justify-content:center; flex-wrap:wrap; }
.ma-reviews-cta__txt{ font-family:var(--ma-font-head); font-weight:600; font-size:18px; color:#fff; }
.ma-reviews-btn{ display:inline-flex; align-items:center; gap:8px; background:#F4791F; color:#1A2227 !important; font-family:var(--ma-font-head); font-weight:700; font-size:16px; padding:12px 24px; border-radius:8px; text-decoration:none; box-shadow:0 6px 18px rgba(0,0,0,.18); transition:background .15s ease, transform .15s ease; }
.ma-reviews-btn:hover{ background:#D9650E; color:#fff !important; transform:translateY(-2px); }
@media (max-width:768px){ .ma-reviews-cta__txt{ font-size:16px; } .ma-reviews-cta{ padding:18px 14px; } }

/* =========================================================
   HOMEPAGE HERO (real van still poster + subtle motion loop)
   ========================================================= */
body:has(.ma-hero) #rev_slider_19_1_wrapper, body:has(.ma-hero) .rev_slider_wrapper{ display:none !important; }
.ma-hero{ position:relative; min-height:560px; display:flex; align-items:center; overflow:hidden; background:#0B3C5D; }
.ma-hero__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.ma-hero__overlay{ position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg, rgba(11,60,93,.85) 0%, rgba(11,60,93,.6) 45%, rgba(11,60,93,.25) 100%); }
.ma-hero__inner{ position:relative; z-index:2; width:100%; max-width:1180px; margin:0 auto; padding:56px 24px; color:#fff; }
.ma-hero__eyebrow{ font-family:var(--ma-font-head); font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:#E8F1F8; font-size:14px; margin:0 0 10px; }
.ma-hero__title{ font-family:var(--ma-font-head); font-weight:700; color:#fff !important; font-size:48px; line-height:1.08; margin:0 0 14px; max-width:18ch; }
.ma-hero__sub{ font-size:19px; line-height:1.5; color:#fff; max-width:48ch; margin:0 0 26px; }
.ma-hero__cta{ display:flex; gap:14px; flex-wrap:wrap; }
.ma-hero__btn{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ma-font-head); font-weight:700; font-size:17px; padding:15px 28px; border-radius:8px; text-decoration:none; transition:background .15s ease, transform .15s ease; }
.ma-hero__btn--call{ background:#F4791F; color:#1A2227 !important; box-shadow:0 6px 18px rgba(0,0,0,.2); }
.ma-hero__btn--call:hover{ background:#D9650E; color:#fff !important; transform:translateY(-2px); }
.ma-hero__btn--est{ background:transparent; color:#fff !important; border:2px solid #fff; }
.ma-hero__btn--est:hover{ background:#fff; color:#0B3C5D !important; }
@media (max-width:768px){
  .ma-hero{ min-height:430px; background:#0B3C5D url('https://metroair.biz/wp-content/uploads/2018/03/hf_20260624_042449_54c753de-2107-40cf-a6fb-4c7e2656dd91.png') center/cover no-repeat; }
  .ma-hero__bg{ display:none; }                 /* mobile: poster still only, skip the video for speed */
  .ma-hero__overlay{ background:linear-gradient(180deg, rgba(11,60,93,.78), rgba(11,60,93,.55)); }
  .ma-hero__inner{ padding:40px 18px; }
  .ma-hero__title{ font-size:30px; }
  .ma-hero__sub{ font-size:16px; }
}

/* =========================================================
   Scroll-play cinemagraphs (real content photos in motion)
   ========================================================= */
.ma-motion-wrap{ position:relative; display:inline-block; max-width:100%; line-height:0; }
.ma-motion-wrap img{ display:block; max-width:100%; height:auto; }
.ma-motion{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .8s ease; border-radius:10px; pointer-events:none; }
.ma-motion.is-playing{ opacity:1; }

/* =========================================================
   AUDIT ROUND 1 — quick wins (contrast, focus, hero, prose,
   sticky-bar safe-area, reclaim top bar)  2026-06-24
   ========================================================= */

/* P0 — accessible CTA color: darkened accent + WHITE text on all money buttons (>=4.5:1) */
.ma-hero__btn--call, .ma-callbar__call, .ma-callbar__req, .ma-reviews-btn,
.wpcf7-submit, a.ma-btn, .ma-btn, .wpcf7 input[type="submit"]{
  background:#C24E00 !important; color:#ffffff !important;
}
.ma-hero__btn--call:hover, .ma-callbar__call:hover, .ma-callbar__req:hover,
.ma-reviews-btn:hover, .wpcf7-submit:hover, .ma-btn:hover, .wpcf7 input[type="submit"]:hover{
  background:#A23F00 !important; color:#ffffff !important;
}

/* P0 — sticky call/estimate bar: real tap height + iOS safe-area inset */
@media (max-width:768px){
  .ma-callbar{ height:auto !important; padding-bottom:env(safe-area-inset-bottom) !important; box-shadow:0 -2px 14px rgba(0,0,0,.22); }
  .ma-callbar a{ min-height:54px !important; font-size:16px !important; }
  body{ padding-bottom:calc(54px + env(safe-area-inset-bottom)) !important; }
}

/* P1 — visible keyboard focus everywhere */
:where(a,button,input,textarea,select,[tabindex]):focus-visible{
  outline:3px solid #1363A0 !important; outline-offset:2px; border-radius:2px;
}

/* P1 — body readability: cap measure, darken text, comfortable leading */
#main-content .entry-content p, #main-content .entry-content li,
.wpb_text_column p, .wpb_text_column li{ line-height:1.65; }
#main-content .entry-content p, .wpb_text_column p{ max-width:70ch; }
#main-content .entry-content{ color:#222; }

/* P1 — hero: constrain H1 (stop orphan 'Years'), responsive scale, vertical center */
.ma-hero{ min-height:clamp(440px,46vw,620px) !important; align-items:center; }
.ma-hero__title{ max-width:15ch; font-size:clamp(1.9rem,5vw,3rem) !important; line-height:1.08 !important; }
.ma-hero__overlay{ background:linear-gradient(90deg, rgba(11,60,93,.88) 0%, rgba(11,60,93,.6) 48%, rgba(11,60,93,.22) 100%) !important; }

/* P2 — trust strip min legible size */
.ma-trust{ font-size:14px !important; }
@media (max-width:768px){ .ma-trust{ font-size:13px !important; } }

/* P0 — reclaim the #1 conversion pixel: hide the loud yellow "Now Hiring" top bar
   (REVERSIBLE — careers still at /apply; relocate to footer in round 2). FLAG FOR MATTHEW. */
.vc_custom_1641518207631{ display:none !important; }

/* =========================================================
   AUDIT ROUND 2 — estimate form hardening (labels/fieldsets/CTA)
   ========================================================= */
.wpcf7 .form-req-note{ font-size:.85rem; color:#555; margin:0 0 14px; }
.wpcf7 .req{ color:#c0392b; }
.wpcf7 label[for]{ display:block; font-family:var(--ma-font-head); font-weight:600; color:#0B3C5D; font-size:14px; margin-bottom:5px; }
.wpcf7 fieldset{ border:1px solid #D7E2EA; border-radius:8px; padding:12px 14px; margin:0 0 16px; }
.wpcf7 legend{ font-family:var(--ma-font-head); font-weight:600; color:#0B3C5D; font-size:14px; padding:0 6px; }
.wpcf7 .wpcf7-radio .wpcf7-list-item{ display:block; min-height:44px; display:flex; align-items:center; gap:10px; margin:0 0 4px; }
.wpcf7 .wpcf7-radio .wpcf7-list-item-label{ font-weight:500; }
.wpcf7 .form-reassure{ font-size:.85rem; color:#555; margin:10px 0 0; }
@media (min-width:769px){
  .wpcf7 .wpcf7-radio .wpcf7-list-item{ display:inline-flex; min-height:0; margin:0 18px 6px 0; }
}

/* =========================================================
   AUDIT ROUND 3 — form-first on mobile, map cap, type ramp
   ========================================================= */
/* rank 12: estimate page — form before the map on mobile/tablet, cap map height */
@media (max-width:1024px){
  .wpb_row:has(.contact-form){ display:flex !important; flex-direction:column; }
  .contact-form{ order:-1; }
  .wpb_row:has(.contact-form) .wpb_single_image img{ max-height:280px; width:100%; object-fit:cover; border-radius:10px; }
}
/* rank 13: clearer typographic hierarchy on content pages */
#main-content .entry-content h2, .wpb_text_column h2{
  font-family:var(--ma-font-head); font-weight:700; color:#0B3C5D;
  font-size:clamp(1.5rem,2.2vw,1.95rem); line-height:1.2; margin-top:2.2rem; margin-bottom:.5rem;
}
#main-content .entry-content h3, .wpb_text_column h3{ font-weight:600; color:#0B3C5D; }
#main-content .entry-content{ font-size:17px; }
#main-content .entry-content li{ margin-bottom:.4rem; }

/* =========================================================
   AUDIT ROUND 4 — hero availability line + reduced-motion a11y
   ========================================================= */
.ma-hero__avail{ margin:16px 0 0; color:#fff; font-family:var(--ma-font-head); font-weight:600; font-size:14px; opacity:.96; }
.ma-hero__avail::first-letter{ font-size:1.05em; }
@media (prefers-reduced-motion: reduce){
  .ma-hero__bg{ display:none !important; }   /* show the poster still instead of autoplaying video */
}

/* =========================================================
   NAV + HEADER CLEANUP (navy palette, dropdowns, restore hiring bar)
   ========================================================= */
/* Restore the Now Hiring bar (per Matthew) but slimmer + calmer */
.vc_custom_1641518207631{ display:block !important; padding:7px 16px !important; }
.vc_custom_1641518207631 h3{ font-size:13px !important; line-height:1.4 !important; }

/* Navy nav bar (drop purple) */
.header-nav, .header-nav.bg-color, .vc_row.header-nav, .vc_section.header1 .header-nav{ background-color:#0B3C5D !important; }
.main-nav.main-nav1 .menu-link.main-menu-link, ul#menu-menu-1 .menu-link{ color:#ffffff !important; font-weight:600; }
.main-nav.main-nav1 .current-menu-item > .menu-link,
.main-nav.main-nav1 .current_page_item > .menu-link,
.main-nav.main-nav1 .menu-link:hover{ color:#F4791F !important; }

/* Dropdown submenus */
.main-nav1 .menu, .main-nav1 .main-menu-item{ position:relative; }
.main-nav1 .menu-item-has-children > .menu-link::after{ content:" \25BE"; font-size:.72em; opacity:.85; }
.main-nav1 .sub-menu{
  position:absolute; top:100%; left:0; min-width:248px; margin:0; padding:8px 0; list-style:none;
  background:#0B3C5D; border-top:3px solid #F4791F; box-shadow:0 14px 34px rgba(0,0,0,.30);
  z-index:980; opacity:0; visibility:hidden; transform:translateY(6px); transition:opacity .16s ease, transform .16s ease;
}
.main-nav1 .main-menu-item:hover > .sub-menu,
.main-nav1 .menu-item-has-children:focus-within > .sub-menu{ opacity:1; visibility:visible; transform:none; }
.main-nav1 .sub-menu li{ display:block; float:none; width:auto; }
.main-nav1 .sub-menu .menu-link, .main-nav1 .sub-menu a{
  display:block; padding:9px 18px; color:#fff !important; white-space:nowrap; font-weight:500; line-height:1.3;
}
.main-nav1 .sub-menu .menu-link:hover, .main-nav1 .sub-menu a:hover{ background:rgba(255,255,255,.10); color:#F4791F !important; }

/* Mobile: show nested items indented inside the drawer */
@media (max-width:768px){
  .main-nav1 .sub-menu{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border-top:0; background:rgba(0,0,0,.18); padding:0; min-width:0; }
  .main-nav1 .sub-menu .menu-link{ padding-left:34px; font-weight:500; }
  .main-nav1 .menu-item-has-children > .menu-link::after{ content:""; }
}

/* =========================================================
   NAV POLISH — clean active state (remove white box)
   ========================================================= */
.main-nav1 .menu-link.main-menu-link{ background:transparent !important; border:0 !important; border-radius:0 !important; }
.main-nav1 .current-menu-item > .menu-link, .main-nav1 .current_page_item > .menu-link{
  color:#F4791F !important; box-shadow:inset 0 -3px 0 #F4791F;
}
@media (max-width:768px){
  .main-nav1 .current-menu-item > .menu-link, .main-nav1 .current_page_item > .menu-link{ box-shadow:none; }
}

/* =========================================================
   HEADER CONDENSE — drop the dated marketing paragraph
   (keep the "Call us at (727)..." phone CTA)
   ========================================================= */
.main-header .vc_cta3 .vc_cta3-content > p,
.main-header .vc_cta3_content-container > .vc_cta3-content > p{ display:none !important; }
.main-header .vc_cta3{ padding-top:14px !important; padding-bottom:14px !important; }
@media (min-width:769px){ .main-header .vc_cta3-content-header h2{ font-size:26px; } }
