/****************************************
 *  HOME HEADER – DESKTOP + MEGA MENU
 *  (duplicated for Residential Solar — page ID 1700)
 ****************************************/

/* Sticky pill wrapper on the page only */
body.page-id-1700 .site-header-mw.floating-nav-outer-mw {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: transparent;
}

/* Kill any height/overflow limits that create a scrollbar */
body.page-id-1700 .site-header-mw,
body.page-id-1700 .floating-nav-outer-mw,
body.page-id-1700 .floating-nav-desktop-mw,
body.page-id-1700 .floating-nav-inner-mw {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

/* Desktop vs mobile visibility for the two header groups */
@media (min-width: 961px) {
    body.page-id-1700 .floating-nav-desktop-mw { display: block; }
    body.page-id-1700 .floating-nav-mobile-mw  { display: none; }
}

@media (max-width: 960px) {
    body.page-id-1700 .floating-nav-desktop-mw { display: none; }
    body.page-id-1700 .floating-nav-mobile-mw  { display: block; }

    /* simple sticky bar for mobile */
    body.page-id-1700 .floating-nav-mobile-mw {
        position: sticky;
        top: 0;
        z-index: 9999;
        background: #ffffff;
    }
}

/* The pill itself */
body.page-id-1700 .floating-nav-inner-mw {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;

    max-width: 1100px;
    margin: 16px auto;
    padding: 16px 32px;          /* <— tweak this for more/less top & bottom padding */
    background: #ffffff;
    border-radius: 999px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
}

/* Logo */
body.page-id-1700 .floating-nav-inner-mw img.wp-image-10 {
    height: auto;
    max-height: 44px;
    width: auto;
}

/****************************************
 *  NAV LAYOUT INSIDE PILL
 ****************************************/

body.page-id-1700 .services-mega-wrapper-mw {
    /* positioning context for the mega menu */
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 auto;
    gap: 24px;
}

/* Top-level nav */
body.page-id-1700 .services-mega-wrapper-mw .wp-block-navigation__container {
    display: flex;
    align-items: center;
    gap: 32px;
}

body.page-id-1700 .services-mega-wrapper-mw .wp-block-navigation-item__content {
    font-weight: 900;
    text-decoration: none;
}

/****************************************
 *  MEGA MENU PANEL
 ****************************************/

/* Columns */
body.page-id-1700 .services-menu__col-mw {
    flex: 1 1 0;
    padding: 0 12px;
}

body.page-id-1700 .services-menu__heading-mw {
    font-weight: 900;
    font-size: 16px;
    letter-spacing: 0.08em;
    margin: 0 0 4px;
}

body.page-id-1700 .services-menu__separator-mw {
    border: none;
    border-top: 2.5px solid #D2D2D2;
    margin: 0 0 12px;
}

/* Items */
body.page-id-1700 .services-menu-item-mw {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

body.page-id-1700 .services-icon-mw {
    width: 27px;
    height: auto;
    flex-shrink: 0;
}

body.page-id-1700 .services-menu-item-label-mw {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
}

/****************************************
 *  CTA BUTTON
 ****************************************/

body.page-id-1700 .header-cta-btn-mw.wp-block-buttons {
    margin-left: 24px;
}

body.page-id-1700 .header-cta-btn-mw .wp-block-button__link {
    border-radius: 999px;
    padding: 10px 32px;
    font-weight: 900;
}

/****************************************
 * Centre mega menu to pill
 ****************************************/

/* Make the pill the positioning context */
body.page-id-1700 .floating-nav-inner-mw {
    position: relative !important;
}

/****************************************
 * Final hover logic (Services only)
 ****************************************/

/* Let the nav wrapper be normal so centring stays correct */
body.page-id-1700 .services-mega-wrapper-mw {
  position: static !important;
}

/* Make the “Services” item the hover anchor */
body.page-id-1700 .services-trigger-mw {
  position: relative; /* anchor for the pseudo bridge */
}

/* Optional: safety—prevent the whole nav wrapper from opening anything by hover */
body.page-id-1700 .services-mega-wrapper-mw:hover .services-menu-mw { /* no-op */ }

/* Positioning context: the pill */
body.page-id-1700 .floating-nav-inner-mw { position: relative !important; }

/* Mega menu: hidden by default but laid out (no display:none) */
body.page-id-1700 .services-menu-mw {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
  margin-top: 0;

  /* layout + visual styles from your earlier block */
  display: flex;                 /* keep columns usable even when hidden */
  padding: 24px 32px;
  width: min(1100px, 90vw);
  background: #ffffff;
  border-radius: 0;
  border: 0;
  box-shadow: 0 18px 40px rgba(0,0,0,.12);

  /* visibility model */
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .08s ease;
  z-index: 10000;
}

/* Open state */
body.page-id-1700 .services-menu-mw.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

/* Services LI must be the positioning + stacking anchor */
body.page-id-1700 .services-trigger-mw{
  position: relative;
  z-index: 10002;            /* sits above page content */
}

/* Transparent hover corridor between Services and the mega menu */
body.page-id-1700 .hover-bridge-mw{
  position: fixed;          /* follows viewport on scroll */
  pointer-events: auto;     /* must be hoverable */
  background: transparent;  /* keep it invisible */
  z-index: 10003;           /* above content, below menu if you like */
}
/* (debug) uncomment to see the corridor
body.page-id-1700 .hover-bridge-mw{ background: rgba(255,0,0,.1); outline: 1px dashed red; }
*/


/* ==== make the pill overlap the hero ==== */

/* 1) Define how much overlap you want */
body.page-id-1700 .floating-nav-inner-mw{
  --overlap: 80px; /* tweak 60–110px */
  position: relative;
  z-index: 1002;   /* keep pill above hero */
}

/* 2) Ensure the outer wrappers are transparent & don’t clip */
body.page-id-1700 .site-header-mw,
body.page-id-1700 .floating-nav-outer-mw{
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* 3) Pull the hero up under the pill (negative margin on the header block) */
body.page-id-1700 .floating-nav-outer-mw{
  margin-bottom: calc(-1 * var(--overlap));
}

/* 4) Give the first section the same padding so content isn’t hidden */
body.page-id-1700 .floating-nav-outer-mw + .wp-block-cover,
body.page-id-1700 .floating-nav-outer-mw + .wp-block-group{
  padding-top: var(--overlap);
  margin-top: 0 !important;         /* kill theme gap */
  border-top: 0 !important;         /* if any */
}

/* (Optional) 1px seam guard */
body.page-id-1700 .floating-nav-outer-mw + .wp-block-cover,
body.page-id-1700 .floating-nav-outer-mw + .wp-block-group{
  margin-top: -1px !important;
}

/* how far the pill overlaps */
body.page-id-1700 .floating-nav-inner-mw { --nav-overlap: 90px; } /* tweak 70–120 */

/* make the first hero rise under the pill and reserve space for content */
body.page-id-1700 .hero-overlap-mw{
  position: relative;
  z-index: 1;
  margin-top: calc(-1 * var(--nav-overlap, 90px));
  padding-top: var(--nav-overlap, 90px);
}

/* keep the header wrappers transparent and unclipped */
body.page-id-1700 header.wp-block-template-part,
body.page-id-1700 .site-header-mw,
body.page-id-1700 .floating-nav-outer-mw{
  background: transparent !important;
  box-shadow: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
}

/* tiny seam guard if you see a hairline */
body.page-id-1700 .hero-overlap-mw{ margin-top: calc(-1 * var(--nav-overlap, 90px) - 1px); }

/* Remove margin/padding seam under floating nav on this page */
body.page-id-1700 .floating-nav-inner-mw + * {
    margin-top: -4px !important;   /* adjust between -2 and -6 */
    padding-top: 0 !important;
}
body.page-id-1700 .floating-nav-outer-mw {
    position: sticky !important;
    top: 20px !important;
    z-index: 9999;
}

/* keep wrappers transparent */
body.page-id-1700 header.wp-block-template-part,
body.page-id-1700 .site-header-mw,
body.page-id-1700 .floating-nav-outer-mw,
body.page-id-1700 .floating-nav-desktop-mw{
  background: transparent !important;
  box-shadow: none !important;
}

/* sticky offset for the outer wrapper */
body.page-id-1700 .floating-nav-outer-mw{
  position: sticky !important;
  top: 20px !important;       /* move pill down 20px */
  z-index: 9999;
}

/* put the vertical padding on the pill itself */
body.page-id-1700 .floating-nav-inner-mw{
  padding-block: 25px !important;   /* your 25px top/bottom */
  padding-inline: 32px;             /* keep side padding */
}

/* overlap hero under the pill to kill the white seam */
body.page-id-1700 .site-header-mw{
  --overlap: 110px;                          /* ↑ bump if any sliver remains */
  margin-bottom: calc(-1 * var(--overlap) - 2px) !important;
}
body.page-id-1700 .site-header-mw + *{
  padding-top: var(--overlap) !important;
  margin-top: -1px !important;               /* anti-alias seam guard */
  border-top: 0 !important;
}
body.page-id-1700 .services-menu-mw {
    box-shadow: 0 18px 40px rgba(0,0,0,0.10);
}

/* COLUMN BACKGROUND COLOURS (exact values you provided) */
body.page-id-1700 .services-menu__col--residential-mw { background: #2E3459 !important; }
body.page-id-1700 .services-menu__col--ci-mw         { background: #44BA7B !important; }
body.page-id-1700 .services-menu__col--government-mw { background: #E2E2E2 !important; }
body.page-id-1700 .services-menu__col--other-mw      { background: #27383C !important; }

/* 1) Kill the wrapper padding and set the top pad value we want to reuse */
body.page-id-1700 .services-menu-mw{
  --col-pad-top: 24px;      /* this matches your old top padding; change if needed */
  padding: 0 !important;    /* remove parent padding */
}

/* 2) Base padding for every column */
body.page-id-1700 .services-menu__col-mw{
  padding-top: var(--col-pad-top);
  padding-bottom: 20px;
}

/* 3) Per-column left/right padding (exact values you specified) */
body.page-id-1700 .services-menu__col--residential-mw{ padding-left: 25px; padding-right: 20px; }
body.page-id-1700 .services-menu__col--ci-mw        { padding-left: 20px; padding-right: 20px; }
body.page-id-1700 .services-menu__col--government-mw{ padding-left: 20px; padding-right: 20px; }
body.page-id-1700 .services-menu__col--other-mw     { padding-left: 20px; padding-right: 25px; }

/* RESIDENTIAL heading text */
body.page-id-1700 .services-menu__col--residential-mw .services-menu__heading-mw { color: #FFFFFF !important; }
/* RESIDENTIAL submenu labels */
body.page-id-1700 .services-menu__col--residential-mw .services-menu-item-label-mw { color: #FFFFFF !important; }
/* OTHER SOLAR heading text */
body.page-id-1700 .services-menu__col--other-mw .services-menu__heading-mw { color: #FFFFFF !important; }
/* OTHER SOLAR submenu labels */
body.page-id-1700 .services-menu__col--other-mw .services-menu-item-label-mw { color: #FFFFFF !important; }
/* C&I heading + labels */
body.page-id-1700 .services-menu__col--ci-mw .services-menu__heading-mw { color: #FFFFFF !important; }
body.page-id-1700 .services-menu__col--ci-mw .services-menu-item-label-mw { color: #FFFFFF !important; }
body.page-id-1700 .services-menu__col--government-mw .services-menu-item-label-mw {
    color: #000000 !important;
    font-weight: 600 !important;
}
/* GOVERNMENT column – divider colour override */
body.page-id-1700 .services-menu__col--government-mw .services-menu__separator-mw {
    border-top-color: #989898 !important;
}
/* Add bottom padding to ALL mega-menu headings */
body.page-id-1700 .services-menu__heading-mw { padding-bottom: 6px; }

/* Column widths */
body.page-id-1700 .services-menu__col--residential-mw { width: 241px !important; flex: 0 0 241px !important; }
body.page-id-1700 .services-menu__col--ci-mw         { width: 358px !important; flex: 0 0 358px !important; }
body.page-id-1700 .services-menu__col--government-mw { width: 241px !important; flex: 0 0 241px !important; }
body.page-id-1700 .services-menu__col--other-mw      { width: 193px !important; flex: 0 0 193px !important; }

body.page-id-1700 .services-menu-mw { width: auto !important; max-width: none !important; }

/* (these two were global in your CSS; OK to keep as-is since this file only loads on this page) */
.services-menu__col--residential-mw { position: relative !important; }
.services-menu__col--residential-mw::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 230px;     /* adjust to fit */
    height: 160px;    /* adjust to fit */
    background-image: url("https://tspenergy.com.au/wp-content/uploads/2025/11/White_leaf_from_logo.webp");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left bottom;
    pointer-events: none; /* do not break hovering */
    z-index: 0;
}

/* mobile overlap for the pill */
@media (max-width: 960px){
  /* tune this to taste: 16–28px usually looks right */
  body.page-id-1700 .floating-nav-mobile-mw{ --m-overlap: 24px; }

  /* pull the next block up by the same amount */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: sticky;            /* keep your sticky behaviour */
    top: 12px;                   
    z-index: 9999;
    margin-bottom: calc(-1 * var(--m-overlap));
  }
  body.page-id-1700 .floating-nav-mobile-mw + *{
    padding-top: var(--m-overlap);
    margin-top: 0 !important;
  }
}

/* keep CTA on one line, don’t shrink */
@media (max-width: 960px){
  body.page-id-1700 .floating-nav-mobile-mw .floating-nav-inner-mw{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;                 
    flex-wrap: nowrap;        
  }

  body.page-id-1700 .header-cta-btn-mw{ flex: 0 0 auto; }
  body.page-id-1700 .header-cta-btn-mw .wp-block-button__link{
    white-space: nowrap;      
    line-height: 1;           
    padding: 10px 16px;       
    font-size: clamp(14px, 3.3vw, 16px);
  }

  /* optional: constrain logo so the row has room */
  body.page-id-1700 .floating-nav-mobile-mw img.wp-image-10{
    max-width: 150px;         
    height: auto;
    flex: 0 0 auto;
  }
}

/* MOBILE (≤960px): make wrapper transparent + sticky, keep pill white */
@media (max-width: 960px){

  /* kill any white parent background behind the pill */
  body.page-id-1700 header.wp-block-template-part,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-mobile-mw{
    background: transparent !important;
    box-shadow: none !important;
  }

  /* the OUTER group (class on your outer Group): be the sticky anchor */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: sticky !important;
    top: 12px !important;
    z-index: 10010;
    margin-bottom: -22px;              /* overlap hero */
    --m-overlap: 22px;
    overflow: visible !important;      /* don't clip the pill */
  }

  /* compensate hero so text isn’t hidden under the pill */
  body.page-id-1700 .floating-nav-mobile-mw + *{
    padding-top: var(--m-overlap);
    margin-top: 0 !important;
  }

  /* the INNER row (your pill) stays white */
  body.page-id-1700 .floating-nav-inner-mw{
    background: #fff;
    border-radius: 9999px;
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
  }

  /* ensure no ancestor breaks sticky (overflow/transform kill it) */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    overflow: visible !important;
  }
  body.page-id-1700 .floating-nav-mobile-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    transform: none !important;
    filter: none !important;
  }
}

/* Make the OUTER mobile nav wrapper sticky */
body.page-id-1700 .floating-nav-mobile-mw {
    position: sticky !important;
    top: 20px !important;
    z-index: 99999 !important;
    background: transparent !important;
    overflow: visible !important;
}

/* Ensure the inner pill stays clickable and clean */
body.page-id-1700 .floating-nav-inner-mw {
    background: #fff !important;
    border-radius: 100px !important;
    overflow: visible !important;
    z-index: 999999 !important;
}

/* MOBILE ONLY */
@media (max-width: 960px){
  /* The element that must be sticky */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: -webkit-sticky !important; /* iOS Safari */
    position: sticky !important;
    top: 20px !important;
    z-index: 99999 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  /* Common Gutenberg wrappers that often break sticky by clipping */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .entry-content,
  body.page-id-1700 .is-layout-constrained,
  body.page-id-1700 .is-layout-flow,
  body.page-id-1700 .is-layout-flex,
  body.page-id-1700 .wp-block-group{
    overflow: visible !important;
  }

  /* The pill row */
  body.page-id-1700 .floating-nav-inner-mw{
    background: #fff !important;
    border-radius: 100px !important;
    overflow: visible !important;
    z-index: 999999 !important;
  }
}

@media (max-width: 960px){
  body.page-id-1700 .floating-nav-mobile-mw.mw-stuck{
    position: fixed !important;
    top: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(680px, calc(100% - 24px)); /* keep it centred & responsive */
  }
}

/* Bring the pill closer to the top on mobile */
body.page-id-1700 .floating-nav-mobile-mw{
  top: 4px !important;            /* was 20px – try 6–12px */
}

/* Logged-in toolbar safety (mobile) */
@media (max-width: 782px){
  body.page-id-1700.admin-bar .floating-nav-mobile-mw{
    top: 54px !important;         /* toolbar height + your gap */
  }
}

/* Make sure no stray margins/padding push the pill down */
body.page-id-1700 .floating-nav-mobile-mw,
body.page-id-1700 .floating-nav-mobile-mw > .floating-nav-inner-mw{
  margin: 0 !important;
}

/* Some themes add margin to the first block – neutralise it */
body.page-id-1700 .floating-nav-mobile-mw:first-child{
  margin-top: 0 !important;
}

@media (max-width: 960px){
  /* Approx. pill height + breathing room */
  body.page-id-1700 { --pill-clearance-m: 92px; }

  body.page-id-1700 .hero-first-mw{
    padding-top: var(--pill-clearance-m) !important;
    margin-top: 0 !important;
  }
}

/* MOBILE — full-screen overlay for WP Navigation responsive container */
@media (max-width:960px){

  /* Catch every open state WordPress uses */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-container[aria-hidden="false"],
  body.page-id-1700.has-modal-open .wp-block-navigation__responsive-container,
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open {
    position: fixed !important;
    inset: 0 !important;                /* top/right/bottom/left: 0 */
    width: 100% !important;
    height: 100dvh !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 24px !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    z-index: 10060 !important;          /* above the pill */
    overflow: auto !important;
  }

  /* Hide it completely when closed (prevents it sitting inside the pill) */
  body.page-id-1700 .wp-block-navigation__responsive-container[aria-hidden="true"]{
    display: none !important;
  }

  /* Make the inner menu layout behave like a stacked sheet */
  body.page-id-1700 .wp-block-navigation__responsive-container .wp-block-navigation__container{
    display: block !important;
    row-gap: 16px !important;
  }

  /* Keep the close button visible */
  body.page-id-1700 .wp-block-navigation__responsive-container
  .wp-block-navigation__responsive-container-close{
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 10070 !important;
  }
}

/* MOBILE — overlay menu tweaks */
@media (max-width:960px){
  /* 1) Overlay padding left/right = 20px and leave space at bottom for CTA */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open{
    padding: 20px 20px 96px !important;    /* bottom space reserved for CTA */
  }

  /* 2) Left-align the menu items */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    text-align: left !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 14px !important;                 /* comfy vertical rhythm */
  }

  /* 3) Font size: +4px vs your current ~16px → use 20px */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  a.wp-block-navigation-item__content{
    font-size: 20px !important;
    line-height: 1.35 !important;
    font-weight: 900;                     /* matches your desktop weight */
  }
}

/* 4) CTA at the bottom of the overlay (only for a CTA placed INSIDE the overlay) */
@media (max-width:960px){
  /* Give the CTA you add inside the overlay this extra class: .menu-cta-mw */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw{
    position: fixed !important;
    left: 20px !important;
    right: 20px !important;
    bottom: 20px !important;
    z-index: 10070 !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw .wp-block-button__link{
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 14px 18px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
  }
}

/********  MOBILE OVERLAY MENU CTA  ********/

/* 0) Never show the CTA inside the desktop pill */
body.page-id-1700 .floating-nav-inner-mw .menu-cta-mw{
    display:none !important;
}

/* 1) Default: hide the menu CTA everywhere */
body.page-id-1700 .menu-cta-mw{
    display:none;
}

/* 2) Mobile overlay only */
@media (max-width:960px){

    /* Add the 20px side padding to the overlay container */
    body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open{
        padding-bottom: 100px !important; /* room for the CTA */
    }

    body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
        padding-inline: 20px !important; /* ← only padding, no alignment */
    }

    /* Show the CTA only in the mobile overlay and fix it to the bottom */
    body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw{
        display: flex !important;
        position: fixed !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        bottom: 16px !important;
        width: calc(100% - 40px) !important; /* 20px padding each side */
        justify-content: center !important;
        z-index: 10070 !important;
    }

    /* Make the CTA button span nicely */
    body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw .wp-block-button__link{
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }
}

/* 3) Desktop guard */
@media (min-width:961px){
    body.page-id-1700 .menu-cta-mw{
        display:none !important;
    }
}

/* reposition CTA reliably inside the overlay */
@media (max-width:960px){

  /* Target the CTA inside the overlay */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw{
    position: absolute !important;  
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: 40px !important;   
    margin: 0 !important;
    z-index: 10050 !important;
  }

  /* Give the overlay enough bottom space so links don’t collide */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open{
    padding-bottom: 140px !important;
  }
}

/* Make sure CTA never shows on desktop */
@media (min-width:961px){
  body.page-id-1700 .menu-cta-mw{
    display: none !important;
  }
}

/* overlay CTA anchored to the bottom (inside overlay) */
@media (max-width:960px){
  /* ensure the overlay itself is the positioning context */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open{
    position: fixed !important;      /* WP already does this, we re-assert */
    inset: 0 !important;
  }

  /* CTA button inside the overlay */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .menu-cta-mw{
    position: absolute !important;   /* ← not fixed (avoids iOS transform bug) */
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
    margin: 0 !important;
    z-index: 10070 !important;
  }

  /* leave breathing room for the CTA so links don’t collide */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container{
    padding-bottom: 130px !important;
  }
}

/* never show this CTA in the desktop pill */
@media (min-width:961px){
  body.page-id-1700 .menu-cta-mw{ display:none !important; }
}

/* overlay — arrow on “Services” + extra spacing */
@media (max-width:960px){
  /* space the overlay links a touch more */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container > li{
    margin: 0 0 14px 0;      /* tweak 10–20px */
  }

  /* add a down arrow to the first item (Services) */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container > li:first-child
  > a.wp-block-navigation-item__content::after{
    content: "▾";            /* simple, crisp down arrow */
    font-weight: 700;
    margin-left: 2px;        /* gap between text and arrow */
    line-height: 1;
    position: relative;
    top: 1px;
  }
}

/* overlay — remove dotted underline from links */
@media (max-width:960px){
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  a.wp-block-navigation-item__content{
    text-decoration: none !important; /* kill dotted underline */
  }
}

/* ===========================
   MOBILE (≤960px) — Services overlay accordion
   =========================== */
@media (max-width:960px){

  /* Variables for icon size + gap (tweak if needed) */
  body.page-id-1700 {
    --mw-icon-size: 26px;     /* universal icon height */
    --mw-icon-gap: 8px;       /* space between icon and label */
    --mw-indent-1: 16px;      /* indent for sub-menu (categories) */
    --mw-indent-2: 40px;      /* indent for sub-sub-menu items */
  }

  /* Container we inject under Services */
  body.page-id-1700 .mw-services-accordion{
    list-style: none;
    margin: 10px 0 0 0;         /* slight gap under “Services” label */
    padding: 0 0 0 var(--mw-indent-1);
  }

  /* Category (Residential / C&I / Government / Other) */
  body.page-id-1700 .mw-acc-item{ margin: 0 0 10px 0; }
  body.page-id-1700 .mw-acc-toggle{
    appearance: none;
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    font: inherit;
    text-align: left;
    cursor: pointer;
    /* match the overlay link styling (size=20px, weight=900) */
    font-size: 20px !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
  }

  /* Arrow on category toggles — match Services arrow exactly */
  body.page-id-1700 .mw-acc-toggle::after{
    content: "▾";
    font-weight: 700;
    margin-left: 2px;     /* keep identical spacing as Services */
    line-height: 1;
    position: relative;
    top: 1px;             /* same nudge as Services */
  }

  /* Sub-sub-menu list (icons + labels) */
  body.page-id-1700 .mw-acc-panel{
    display: none;        /* collapsed by default */
    margin: 8px 0 0 0;
    padding: 0 0 0 var(--mw-indent-2);
    list-style: none;
  }
  body.page-id-1700 .mw-acc-panel.is-open{ display: block; }

  /* Each sub-sub-menu row */
  body.page-id-1700 .mw-acc-link{
    display: flex;
    align-items: center;
    gap: var(--mw-icon-gap);
    text-decoration: none !important;
    margin: 10px 0;
  }
  body.page-id-1700 .mw-acc-icon{
    height: var(--mw-icon-size);
    width: auto;
    flex: 0 0 var(--mw-icon-size);
    display: block;
  }
  /* Sub-sub-menu label: same size as overlay links but REGULAR weight */
  body.page-id-1700 .mw-acc-text{
    font-size: 20px !important;   /* same as overlay */
    font-weight: 400 !important;  /* regular weight per your spec */
    line-height: 1.35 !important;
  }

  /* Services (top-level) — make the label clickable to open/close the whole accordion */
  body.page-id-1700 .mw-services-toggle{
    /* we attach to the existing Services anchor to keep look & spacing identical */
    cursor: pointer;
  }

  /* When all is open, we may need a touch more bottom padding so CTA never overlaps */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open{
    padding-bottom: 160px !important; /* was ~140px in your CSS, +20 for expanded content */
  }
}

/* Show the injected list only when the overlay is open AND the accordion is opened */
body.page-id-1700 .mw-services-accordion{ display:none; }
@media (max-width:960px){
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .mw-services-accordion{ display:none; }
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .mw-services-accordion.is-open{ display:block; }
}

/* overlay — colour + icon box normalisation */
@media (max-width:960px){
  /* Force headings (Residential, C&I, Government, Other) to black */
  body.page-id-1700 .mw-acc-toggle{ color: #000 !important; }
  /* Also force the Services label to black */
  body.page-id-1700 .mw-services-toggle{ color: #000 !important; }

  /* Normalise icons to a consistent square box to fix the C&I “Service & Maintenance” line */
  body.page-id-1700 .mw-acc-icon{
    height: var(--mw-icon-size);
    width: var(--mw-icon-size);        /* give a square box */
    object-fit: contain;               /* no distortion */
    display: block;
  }
}

/* rotate the ▼ arrows when expanded */
@media (max-width:960px){
  /* SERVICES arrow rotation */
  body.page-id-1700 .mw-services-toggle[aria-expanded="true"]::after{
    transform: rotate(180deg);
  }

  /* CATEGORY headings arrow rotation */
  body.page-id-1700 .mw-acc-toggle[aria-expanded="true"]::after{
    transform: rotate(180deg);
  }

  /* Smooth animation for all arrows */
  body.page-id-1700 .mw-services-toggle::after,
  body.page-id-1700 .mw-acc-toggle::after{
    transition: transform 0.15s ease;
    display: inline-block;  /* required for rotation */
  }
}

@media (max-width:960px){
  body.page-id-1700 .mw-acc-link .mw-acc-icon{ pointer-events:none; }
}

/* Desktop mega menu: keep link styling identical to the old divs */
@media (min-width:961px){
  body.page-id-1700 .services-menu-mw a.services-menu-item-mw{
    text-decoration: none !important;
    color: inherit !important;
  }
}
/* ===== Residential Solar (page-id-1700) — MOBILE pill gaps + sticky ===== */
@media (max-width:960px){
  /* keep wrappers from clipping sticky */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    overflow: visible !important;
    background: transparent !important;
  }

  /* outer wrapper is the sticky anchor */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: sticky !important;
    top: 12px !important;             /* same feel as home */
    z-index: 10010 !important;
    margin: 10px 10px 0 !important;   /* 10px top + 10px left/right gap */
  }

  /* keep the pill itself white + shadowed */
  body.page-id-1700 .floating-nav-inner-mw{
    background: #fff !important;
    border-radius: 9999px !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.08) !important;
    overflow: visible !important;
  }

  /* fixed fallback when JS adds .mw-stuck (iOS reliability) */
  body.page-id-1700 .floating-nav-mobile-mw.mw-stuck{
    position: fixed !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(680px, calc(100% - 20px)); /* keeps the 10px side gaps */
  }
}
/* ===== Residential Solar (page-id-1700) — DESKTOP pill sticky ===== */
@media (min-width:961px){
  body.page-id-1700 .site-header-mw.floating-nav-outer-mw{
    position: sticky !important;
    top: 20px !important;
    z-index: 9999 !important;
    background: transparent !important;
  }

  /* ensure nothing clips the pill */
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-desktop-mw,
  body.page-id-1700 .floating-nav-inner-mw{
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  /* pill styling (same as home) */
  body.page-id-1700 .floating-nav-inner-mw{
    max-width: 1100px;
    margin: 16px auto;
    padding: 16px 32px;
    background: #ffffff;
    border-radius: 999px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.08);
  }
}
/************  PAGE 1700 — DESKTOP PILL STICKY  ************/
@media (min-width:961px){
  /* never let ancestors clip the sticky */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    overflow: visible !important;
  }

  /* the outer group is the sticky anchor (same as Home) */
  body.page-id-1700 .floating-nav-outer-mw{
    position: sticky !important;
    top: 20px !important;
    z-index: 9999 !important;
    background: transparent !important;
  }

  /* pill visuals — unchanged, but re-assert just in case */
  body.page-id-1700 .floating-nav-inner-mw{
    background: #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 18px 40px rgba(0,0,0,.08) !important;
  }
}

/************  PAGE 1700 — MOBILE PILL GAP + STICKY  ************/
@media (max-width:960px){
  /* keep wrappers transparent and unclipped */
  body.page-id-1700 header.wp-block-template-part,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-mobile-mw{
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  /* OUTER mobile group: sticky + the 10px “air” around it */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: sticky !important;
    top: 10px !important;                  /* top gap */
    z-index: 10010 !important;
    margin-inline: 10px !important;        /* left/right gap */
  }

  /* When it switches to the fixed “stuck” mode, keep it centred & gapped */
  body.page-id-1700 .floating-nav-mobile-mw.mw-stuck{
    position: fixed !important;
    top: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: calc(100% - 20px) !important;   /* 10px + 10px */
    max-width: 680px !important;           /* same guard you used */
  }

  /* the pill row itself */
  body.page-id-1700 .floating-nav-inner-mw{
    background: #fff !important;
    border-radius: 100px !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.08) !important;
  }
}

/************  PAGE 1700 — MOBILE OVERLAY = FULL-BLEED (no gaps) ************/
@media (max-width:960px){
  /* the overlay must cover the whole viewport */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-container[aria-hidden="false"],
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open{
    position: fixed !important;
    inset: 0 !important;                  /* top/right/bottom/left = 0 */
    width: 100% !important;
    height: 100dvh !important;
    max-width: none !important;
    margin: 0 !important;                 /* kill any offsets */
    transform: none !important;
    z-index: 10060 !important;
    background: #fff !important;
    overflow: auto !important;
    /* inside padding — keeps the nice breathing room */
    padding: 24px !important;
    padding-bottom: 140px !important;     /* space for CTA if you use it */
  }

  /* keep the close button visible */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-close{
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 10070 !important;
  }
}
/********  RESIDENTIAL (page-id-1700) — DESKTOP STICKY PILL  ********/
@media (min-width:961px){
  /* The outer header group acts as the sticky anchor */
  body.page-id-1700 .site-header-mw.floating-nav-outer-mw{
    position: sticky !important;   /* use sticky first */
    top: 20px !important;
    z-index: 9999 !important;
    background: transparent !important;
  }

  /* Make sure no ancestor breaks sticky by clipping/height limits */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-desktop-mw,
  body.page-id-1700 .floating-nav-inner-mw{
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;    /* guard: transforms can kill sticky */
  }
}

/* Optional desktop fallback (if a theme script overrides sticky) */
@media (min-width:961px){
  body.page-id-1700 .site-header-mw.floating-nav-outer-mw.is-fixed-fallback{
    position: fixed !important;
    top: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(1100px, calc(100% - 40px));
  }
}
/********  RESIDENTIAL (page-id-1700) — MOBILE PILL GAP + CENTRING  ********/
@media (max-width:960px){
  /* The sticky anchor wrapper: add equal 10px padding left/right and 10px top gap */
  body.page-id-1700 .floating-nav-mobile-mw{
    position: sticky !important;
    top: 10px !important;                 /* 10px top gap */
    z-index: 10010 !important;
    padding-inline: 10px !important;      /* 10px left & right */
    margin: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  /* Keep the pill centred and full-width inside that 10px padding */
  body.page-id-1700 .floating-nav-inner-mw{
    width: 100% !important;               /* fills the padded wrapper */
    border-radius: 9999px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
  }

  /* When it flips to “stuck”, stay perfectly centred */
  body.page-id-1700 .floating-nav-mobile-mw.mw-stuck{
    position: fixed !important;
    left: 0 !important; right: 0 !important; /* use the 10px padding for edges */
    transform: none !important;
    width: auto !important;                  /* stretch edge to edge within padding */
  }
}
/***** RESIDENTIAL (1700) — DESKTOP STICKY, ROBUST SELECTORS *****/
@media (min-width:961px){
  /* Try sticky on each likely wrapper the pill sits inside */
  body.page-id-1700 header.wp-block-template-part.floating-nav-outer-mw,
  body.page-id-1700 header.wp-block-template-part .floating-nav-outer-mw,
  body.page-id-1700 .site-header-mw.floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-desktop-mw{
    position: sticky !important;
    top: 20px !important;
    z-index: 9999 !important;
    background: transparent !important;
  }

  /* Make sure NO ancestor clips or transforms (these break sticky) */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 main,
  body.page-id-1700 .entry-content,
  body.page-id-1700 .is-layout-constrained,
  body.page-id-1700 .is-layout-flow,
  body.page-id-1700 .is-layout-flex,
  body.page-id-1700 .wp-block-group{
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
    transform: none !important;
  }
}

/* Hard fallback: force FIXED if your theme keeps overriding sticky */
@media (min-width:961px){
  body.page-id-1700 .floating-nav-desktop-mw.is-fixed,
  body.page-id-1700 header.wp-block-template-part.floating-nav-outer-mw.is-fixed{
    position: fixed !important;
    top: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(1100px, calc(100% - 40px));
    z-index: 9999 !important;
  }
}
/***** RESIDENTIAL (1700) — MOBILE OVERLAY: TRUE FULL-SCREEN *****/
@media (max-width:960px){
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-container[aria-hidden="false"]{
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100dvh !important;          /* dynamic viewport height */
    min-height: 100svh !important;      /* small viewport (iOS) */
    max-height: 100lvh !important;      /* large viewport */
    transform: none !important;
    margin: 0 !important;
    background: #eee !important;
    z-index: 10060 !important;
    padding: 20px 20px 140px !important; /* room for CTA */
    overflow: auto !important;
  }
}
/* RESIDENTIAL (1700) — desktop fixed fallback */
@media (min-width:961px){
  /* Apply to whichever element we end up fixing */
  body.page-id-1700 .floating-nav-outer-mw.is-fixed,
  body.page-id-1700 .floating-nav-desktop-mw.is-fixed,
  body.page-id-1700 .floating-nav-inner-mw.is-fixed{
    position: fixed !important;
    top: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(1100px, calc(100% - 40px));
    z-index: 9999 !important;
  }

  /* Don’t let any ancestor kill sticky/fixed behaviour */
  body.page-id-1700 header.wp-block-template-part,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    overflow: visible !important;
    transform: none !important;
    contain: none !important;
  }
}
/* RESIDENTIAL (1700) — make header wrappers transparent & remove stray spacing */
@media (min-width:961px){
  /* kill any white sheet behind the pill */
  body.page-id-1700 header.wp-block-template-part,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw{
    background: transparent !important;
    box-shadow: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
  }

  /* reserve space for the pill so content isn’t hidden */
  body.page-id-1700 .floating-nav-outer-mw{ --pill-clearance: 110px; } /* tweak 90–130 */
  body.page-id-1700 .floating-nav-outer-mw + *{
    padding-top: var(--pill-clearance) !important;
    margin-top: -1px !important;     /* seam guard */
    border-top: 0 !important;
  }
}
/* RESIDENTIAL (1700) — Desktop: remove any white sheet behind the fixed pill */
@media (min-width:961px){

  /* Header wrappers (template-part + your header groups) */
  body.page-id-1700 .wp-site-blocks > header.wp-block-template-part,
  body.page-id-1700 .wp-site-blocks > header.wp-block-template-part *[class*="floating-nav-outer-mw"],
  body.page-id-1700 .wp-site-blocks > header.wp-block-template-part *[class*="floating-nav-desktop-mw"]{
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
  }

  /* In case Gutenberg added a block background */
  body.page-id-1700 .wp-site-blocks > header.wp-block-template-part [class*="has-background"]{
    background: transparent !important;
  }

  /* Our spacer must be invisible (it only reserves height) */
  body.page-id-1700 .mw-sticky-spacer{
    height: var(--pill-clearance, 112px) !important; /* tweak 100–130 */
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
}
/* RESIDENTIAL (1700) — Desktop: kill any white/rounded wrapper behind the pill */
@media (min-width:961px){

  /* Template part itself */
  body.page-id-1700 header.wp-block-template-part{
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  /* Any Groups inside the header that may carry a background/radius */
  body.page-id-1700 header.wp-block-template-part .wp-block-group,
  body.page-id-1700 header.wp-block-template-part [class*="floating-nav-outer-mw"],
  body.page-id-1700 header.wp-block-template-part [class*="floating-nav-desktop-mw"],
  body.page-id-1700 header.wp-block-template-part [class*="has-background"],
  body.page-id-1700 header.wp-block-template-part [style*="background"]{
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Spacer (sits after the header). Purely invisible height. */
  body.page-id-1700 .mw-sticky-spacer{
    height: var(--pill-clearance, 112px) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}
/* RS (page-id-1700) — kill the theme's auto spacer above the header (desktop only) */
@media (min-width:961px){
  /* The anonymous spacer the theme drops right before the header */
  body.page-id-1700 .wp-site-blocks > div[style*="display: block"][style*="height"]{
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Keep our desktop pill sticky */
  body.page-id-1700 .floating-nav-desktop-mw{
    position: sticky !important;
    top: 20px !important;
    z-index: 10010 !important;
  }

  /* Make sure no ancestor kills sticky by clipping */
  body.page-id-1700 .wp-site-blocks,
  body.page-id-1700 .entry-content,
  body.page-id-1700 .is-layout-constrained,
  body.page-id-1700 .is-layout-group,
  body.page-id-1700 .is-layout-flow{
    overflow: visible !important;
  }

  /* Guard: no stray spacing on the header itself */
  body.page-id-1700 header.site-header-mw{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* Safety: if the JS spacer ever remains, hide it too */
body.page-id-1700 .mw-sticky-spacer{ display:none !important; height:0 !important; }










/* ===== RESIDENTIAL SOLAR (page-id-1700) — TABLET 600–960 ===== */
@media (min-width:600px) and (max-width:960px){

  /* 0) Force “mobile pill” variant on tablet; kill any desktop group */
  body.page-id-1700 .floating-nav-desktop-mw,
  body.page-id-1700 .services-mega-wrapper-mw{
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
  body.page-id-1700 .floating-nav-mobile-mw{
    display: block !important;
    position: sticky !important;
    top: 12px !important;
    z-index: 10010 !important;
    margin-bottom: -22px !important; /* keep the hero overlap */
    --m-overlap: 22px;
  }

  /* 1) Hide the inline list INSIDE the pill; leave the hamburger */
  body.page-id-1700 .floating-nav-mobile-mw nav.wp-block-navigation > .wp-block-navigation__container{
    display: none !important;
  }
  body.page-id-1700 .floating-nav-mobile-mw .wp-block-navigation__responsive-container-open{
    display: inline-flex !important;
  }

  /* 2) When the overlay is open, make it a true full-screen sheet */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open,
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open{
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100dvh !important;
    padding: 20px 20px 140px !important;   /* bottom space for CTA */
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: auto !important;
    z-index: 10060 !important;
  }

  /* 3) Neutralise themes that add “hidden-by-default” */
  body.page-id-1700 .wp-block-navigation__responsive-container[aria-hidden="false"],
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open{
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* 4) Ensure the inner list actually renders */
  body.page-id-1700 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
  body.page-id-1700 .wp-block-navigation__responsive-dialog.is-menu-open .wp-block-navigation__container{
    display: block !important;
  }

  /* 5) Keep the close button visible */
  body.page-id-1700 .wp-block-navigation__responsive-container
  .wp-block-navigation__responsive-container-close{
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 10070 !important;
  }
}

/* Mobile wrapper safety: no clipping behind the pill (≤960px) */
@media (max-width:960px){
  body.page-id-1700 header.wp-block-template-part,
  body.page-id-1700 .site-header-mw,
  body.page-id-1700 .floating-nav-outer-mw,
  body.page-id-1700 .floating-nav-mobile-mw{
    background: transparent !important;
    overflow: visible !important;
  }
}
