/* Responsive Hero Styling */

@media only screen and (max-width: 767px) {
    div.blockWrap_e8140994f88746fc817677e0dc04d98a {
        padding-top: 50px;
        padding-bottom: 450px;
    }
    
    .blockWrap_e8140994f88746fc817677e0dc04d98a .contentTitle {
        font-size: 40px; 
    }
}

/* Custom Mobile Background Image */

@media only screen and (max-width: 768px) {
    div.blockWrap_e8140994f88746fc817677e0dc04d98a {
        background-image: url(https://static.mywebsites360.com/e8972a1839574175a0521814c22900ae/i/e6ae594670fb486c8959042592a166b6/1/5feFb8zhrk/mobile%20with%20curve.2.png);
    }
}


/* Responsive Image Swap */

@media only screen and (max-width: 767px) {
    .blockWrap_b113b30bf2f140279355b63d2fc591e1 img {
        content: url(https://static.mywebsites360.com/e8972a1839574175a0521814c22900ae/i/b2df5d4c6da9432e860cfc286915ac90/1/5feFb8zhrk/white%20bg%202.jpg);
    }
}


/* ===== VSA - mobile header + accordion menu (Oct 2026) ===== */
@media only screen and (max-width: 767px) {
  /* Header: logo left, menu toggle right */
  .headerContent { padding: 0 16px !important; }
  .headerContent h1.logo, .headerContent h1.logo a { margin: 0 !important; max-width: 72px !important; }
  .headerContent h1.logo img { margin: 0 !important; }
  .headerContent #navTrigger { right: 8px !important; }

  /* Menu overlay: list starts under the close button and scrolls */
  .mobileFullNav #navTopLevel { top: 76px !important; bottom: 0 !important; transform: none !important; max-height: none !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; padding: 0 24px 48px !important; text-align: left !important; }
  .mobileFullNavOpen .mobileFullNav #navTopLevel > li { transition-delay: .2s !important; }
  .mobileFullNav #navTopLevel > li { border-bottom: 1px solid #e4e4e4; }
  .mobileFullNav #navTopLevel > li > a,
  .mobileFullNav #navTopLevel > li > .navLabel { display: flex !important; align-items: center; justify-content: space-between; padding: 15px 0 !important; font-size: 18px !important; line-height: 1.3 !important; }
  .mobileFullNav #navTopLevel > li > .navLabel { cursor: pointer; color: #171717; -webkit-tap-highlight-color: transparent; }
  .mobileFullNav #navTopLevel .currArrow { display: none !important; }
  .mobileFullNav #navTopLevel > li > a .dropArrow,
  .mobileFullNav #navTopLevel > li > .navLabel .dropArrow { display: inline-flex !important; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; margin: -12px -12px -12px 8px; font-size: 0 !important; color: #273574; transition: transform .25s ease; }
  .mobileFullNav #navTopLevel > li > a .dropArrow::before,
  .mobileFullNav #navTopLevel > li > .navLabel .dropArrow::before { content: ""; width: 9px; height: 9px; margin-top: -5px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
  .mobileFullNav #navTopLevel > li.vsa-open > a .dropArrow,
  .mobileFullNav #navTopLevel > li.vsa-open > .navLabel .dropArrow { transform: rotate(180deg); }

  /* Sub-menus stay collapsed until their group is tapped */
  .mobileFullNav #navTopLevel > li > ul.subNav { display: none !important; margin: 0 !important; padding: 0 0 12px 14px !important; }
  .mobileFullNav #navTopLevel > li.vsa-open > ul.subNav { display: block !important; }
  .mobileFullNav #navTopLevel ul.subNav li a { padding: 9px 0 !important; font-family: proximanova, Arial, Verdana, sans-serif !important; font-weight: 400 !important; font-size: 16px !important; line-height: 1.35 !important; color: #3d3d3d !important; }

  /* Online Store / Call Us buttons */
  .mobileFullNav #navTopLevel > li:has(> a.navButton) { border-bottom: 0; }
  .mobileFullNav #navTopLevel > li > a.navButton { justify-content: center; margin: 18px 0 0 !important; padding: 14px 20px !important; border-radius: 100px !important; font-size: 17px !important; text-align: center; }

  /* Keep the "Pay over time" pill from covering the open menu */
  html.mobileFullNavOpen #widget-floatingEstimator-mount { display: none !important; }

  /* Close button: draw an X instead of the hamburger */
  .mobileFullNav .navClose { margin: 14px 10px !important; }
  .mobileFullNav .navClose .navIcon { position: relative; display: block; width: 44px; height: 44px; padding: 0 !important; }
  .mobileFullNav .navClose .navIcon svg { display: none !important; }
  .mobileFullNav .navClose .navIcon::before,
  .mobileFullNav .navClose .navIcon::after { content: ""; position: absolute; left: 10px; top: 21px; width: 24px; height: 3px; border-radius: 2px; background: #171717; }
  .mobileFullNav .navClose .navIcon::before { transform: rotate(45deg); }
  .mobileFullNav .navClose .navIcon::after { transform: rotate(-45deg); }
}

/* ===== VSA - homepage hero Call button (Oct 2026) ===== */
.blockWrap_e8140994f88746fc817677e0dc04d98a .blockInnerContent p:has(> a.button) { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.blockWrap_e8140994f88746fc817677e0dc04d98a .blockInnerContent a.button { margin: 0; }
.blockWrap_e8140994f88746fc817677e0dc04d98a a.button[href^="tel:"] { background-color: #C72026; border-color: #C72026; color: #fff; }
.blockWrap_e8140994f88746fc817677e0dc04d98a a.button[href^="tel:"]:hover,
.blockWrap_e8140994f88746fc817677e0dc04d98a a.button[href^="tel:"]:focus { background-color: #171717; border-color: #171717; color: #fff; }
@media only screen and (max-width: 480px) {
  .blockWrap_e8140994f88746fc817677e0dc04d98a .blockInnerContent p:has(> a.button) { flex-direction: column; align-items: stretch; max-width: 300px; }
  .blockWrap_e8140994f88746fc817677e0dc04d98a .blockInnerContent a.button { text-align: center; }
}

/* ===== VSA - keep the "Pay over time" pill above the mobile/tablet Call-Appointments bar (Oct 2026) ===== */
html.mobile #widget-floatingEstimator-mount [class*="floatingEstimator-floatingContainer"],
html.tablet #widget-floatingEstimator-mount [class*="floatingEstimator-floatingContainer"] { bottom: 96px !important; }