.elementor-2301 .elementor-element.elementor-element-adf92f0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-2301 .elementor-element.elementor-element-adf92f0:not(.elementor-motion-effects-element-type-background), .elementor-2301 .elementor-element.elementor-element-adf92f0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-2301 .elementor-element.elementor-element-cb62ca4{--display:flex;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-2301 .elementor-element.elementor-element-58be593{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2301 .elementor-element.elementor-element-58be593:not(.elementor-motion-effects-element-type-background), .elementor-2301 .elementor-element.elementor-element-58be593 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-2301 .elementor-element.elementor-element-e486115 > .elementor-widget-container{background-color:#FFFFFF;}@media(max-width:767px){.elementor-2301 .elementor-element.elementor-element-58be593{--padding-top:3px;--padding-bottom:3px;--padding-left:4px;--padding-right:4px;}}/* Start custom CSS for html, class: .elementor-element-e486115 *//* Base Reset */
.mobile-navbar,
.mobile-menu,
.mobile-menu-overlay { display: none; }

@media screen and (max-width: 768px) {
  body.no-scroll { overflow: hidden; }

  .mobile-navbar {
    display:block;
    background:#fff;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
    position:relative;
    z-index:1000;
  }

  .navbar-container {
    display:flex;
    justify-content:space-between;
    align-items:center; /* fixed */
    padding:10px 16px;
  }

  .mobile-logo img { height:32px; width:auto; }

  .menu-toggle { font-size:24px; cursor:pointer; }

  /* Overlay */
  .mobile-menu-overlay {
    display:block;
    position:fixed; inset:0;
    background:rgba(0,0,0,.45);
    opacity:0; pointer-events:none;
    transition:opacity .3s ease;
    z-index:998;
  }
  .mobile-menu-overlay.active {
    opacity:1; pointer-events:auto;
  }

  /* Slide-in menu */
  .mobile-menu {
    display:block;
    position:fixed; top:0; left:0;
    width:80%; max-width:320px; height:100vh;
    background:#fff;
    box-shadow:4px 0 10px rgba(0,0,0,.1);
    transform:translateX(-100%);
    transition:transform .3s ease;
    z-index:999;
    padding:20px 16px;

    display:flex;
    flex-direction:column;
    justify-content:flex-start;  /* changed */
    gap:24px;                    /* spacing between blocks */
    overflow-y:auto;
  }
  .mobile-menu.active { transform:translateX(0); }

  .menu-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  .menu-logo img { height:32px; }
  .close-btn {
    background:none; border:none;
    font-size:24px; cursor:pointer; line-height:1;
  }

  /* Nav list */
  .mobile-nav {
    list-style:none;
    margin:0; padding:0;
    width:100%;
  }
  .mobile-nav li { margin:0; }
  .mobile-nav a {
    display:block;
    width:100%;
    padding:14px 0;
    text-decoration:none;
    color:#000;
    font-size:17px;
    font-weight:500;
    border-bottom:1px solid #e5e5e5; /* underline */
  }
  .mobile-nav li:last-child a {
    border-bottom:none;
  }

  /* CTA button just under nav */
  .quote-btn {
    display:block;
    text-align:center;
    background:#002e6d;
    color:#fff;
    padding:12px;
    border-radius:6px;
    text-decoration:none;
    font-weight:600;
    margin-top:0; /* ensure it's right below nav */
  }
}/* End custom CSS */