.elementor-1317 .elementor-element.elementor-element-fef8310{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--overlay-opacity:0.5;}.elementor-1317 .elementor-element.elementor-element-fef8310:not(.elementor-motion-effects-element-type-background), .elementor-1317 .elementor-element.elementor-element-fef8310 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F1E8;}.elementor-1317 .elementor-element.elementor-element-fef8310::before, .elementor-1317 .elementor-element.elementor-element-fef8310 > .elementor-background-video-container::before, .elementor-1317 .elementor-element.elementor-element-fef8310 > .e-con-inner > .elementor-background-video-container::before, .elementor-1317 .elementor-element.elementor-element-fef8310 > .elementor-background-slideshow::before, .elementor-1317 .elementor-element.elementor-element-fef8310 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1317 .elementor-element.elementor-element-fef8310 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1317 .elementor-element.elementor-element-de0cbbd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--flex-wrap:nowrap;}.elementor-1317 .elementor-element.elementor-element-de0cbbd.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1317 .elementor-element.elementor-element-92a6131{--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-1317 .elementor-element.elementor-element-92a6131.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1317 .elementor-element.elementor-element-66a8552{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:nowrap;--background-transition:0.3s;}.elementor-1317 .elementor-element.elementor-element-66a8552.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1317 .elementor-element.elementor-element-b6e7279 .elementor-menu-toggle{margin:0 auto;}.elementor-1317 .elementor-element.elementor-element-4709fa9{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--flex-wrap:nowrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-1317 .elementor-element.elementor-element-de0cbbd{--width:120px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--flex-wrap:nowrap;}.elementor-1317 .elementor-element.elementor-element-92a6131.e-con{--align-self:flex-end;}.elementor-1317 .elementor-element.elementor-element-66a8552.e-con{--align-self:flex-end;}.elementor-1317 .elementor-element.elementor-element-b6e7279{width:100%;max-width:100%;}.elementor-1317 .elementor-element.elementor-element-b6e7279.elementor-element{--align-self:flex-end;}}@media(min-width:768px){.elementor-1317 .elementor-element.elementor-element-de0cbbd{--width:20.66%;}.elementor-1317 .elementor-element.elementor-element-92a6131{--width:59.91%;}.elementor-1317 .elementor-element.elementor-element-66a8552{--width:98.512%;}.elementor-1317 .elementor-element.elementor-element-4709fa9{--width:20%;}}/* Start custom CSS for html, class: .elementor-element-71fa240 */@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');

.brand-logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    gap: 12px;
}

.brand-logo img {
    width: 70px;
    height: auto;
    display: block;
}

.brand-logo span {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #4A4A4A;
    line-height: 1.2;
    white-space: nowrap;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-b6e7279 *//* ================================================
   ACCESSIBILITY PROS - COMPLETE HEADER CSS
   WCAG 2.1 AA Compliant
   Mobile menu opens BELOW the header 
   ================================================ */


/* ================================================
   DESKTOP STYLES
   ================================================ */

.elementor-nav-menu--main .elementor-nav-menu > li > a {
  color: #2B2A28 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  font-family: 'Poppins', sans-serif !important;
  padding: 8px 15px !important;
  text-decoration: none !important;
  position: relative !important;
  transition: color 0.2s ease !important;
}


/* Desktop nav hover */

.elementor-nav-menu--main .elementor-nav-menu > li > a:hover {
  color: #A33C2E !important;
}


/* Desktop nav focus */

.elementor-nav-menu--main .elementor-nav-menu > li > a:focus,
.elementor-nav-menu--main .elementor-nav-menu > li > a:focus-visible {
  outline: 3px solid #000000 !important;
  outline-offset: 3px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  border-bottom: none !important;
}


/* Remove Elementor animated underline on focus */

.e--pointer-underline .elementor-nav-menu > li > a:focus::before,
.e--pointer-underline .elementor-nav-menu > li > a:focus::after,
.e--animation-fade .elementor-nav-menu > li > a:focus::before,
.e--animation-fade .elementor-nav-menu > li > a:focus::after {
  display: none !important;
  width: 0 !important;
  opacity: 0 !important;
}


/* Current page indicator

.elementor-nav-menu--main .elementor-nav-menu > li.current-menu-item > a,
.elementor-nav-menu--main .elementor-nav-menu > li.current-menu-ancestor > a {
  color: #A63D2F !important;
  border-bottom: 2px solid #A63D2F !important;
} */


/* Each li position relative for dropdown */

.elementor-nav-menu--main .elementor-nav-menu > li {
  position: relative !important;
}


/* Desktop dropdown hidden by default */

.elementor-nav-menu--main .elementor-nav-menu--dropdown {
  display: none !important;
}


/* Desktop dropdown open via JS .open class only */

.elementor-nav-menu--main .menu-item-has-children.open > .elementor-nav-menu--dropdown {
  display: flex !important;
  flex-direction: column !important;
  width: 320px !important;
  background: #ffffff !important;
  border-top: 3px solid #2B2A28 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
  padding: 8px 0 !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 9999 !important;
}


/* Desktop dropdown links */

.elementor-nav-menu--main .elementor-nav-menu--dropdown li a {
  display: block !important;
  padding: 12px 20px !important;
  color: #2B2A28 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  border-bottom: 1px solid #eeeeee !important;
  background: #ffffff !important;
  transition: background-color 0.2s ease !important;
  font-family: 'Poppins', sans-serif !important;
}


/* Desktop dropdown hover */

.elementor-nav-menu--main .elementor-nav-menu--dropdown li a:hover {
  background-color: #F5B942 !important;
  color: #2B2A28 !important;
  text-decoration: underline !important;
}


/* Desktop dropdown focus */

.elementor-nav-menu--main .elementor-nav-menu--dropdown li a:focus,
.elementor-nav-menu--main .elementor-nav-menu--dropdown li a:focus-visible {
  outline: 3px solid #000000 !important;
  outline-offset: -3px !important;
  background-color: #F5B942 !important;
  color: #2B2A28 !important;
}


/* Dropdown arrow */

.elementor-nav-menu--main .menu-item-has-children > a .sub-arrow {
  margin-left: 5px !important;
  font-size: 11px !important;
  display: inline-block !important;
  transition: transform 0.2s ease !important;
}


/* Rotate arrow when open */

.elementor-nav-menu--main .menu-item-has-children.open > a .sub-arrow {
  transform: rotate(180deg) !important;
}


/* Remove active underline */

.elementor-nav-menu--main.e--pointer-underline .elementor-item-active::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
  width: 0 !important;
  background: none !important;
}


/* ================================================
   MOBILE STYLES
   ================================================ */

@media (max-width: 1024px) {

  /* -----------------------------------------------
     MAIN HEADER ROW
     ----------------------------------------------- */

  .elementor-element-fef8310 > .e-con-inner {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;

    padding: 10px 10px !important;

    position: relative !important;
    z-index: 100001 !important;

    background: #ffffff !important;

    width: 100% !important;
    box-sizing: border-box !important;

    overflow: visible !important;
  }


  /* -----------------------------------------------
     LOGO CONTAINER
     ----------------------------------------------- */

  .elementor-element-de0cbbd {
    flex: 0 0 auto !important;
    width: auto !important;

    position: relative !important;
    z-index: 100001 !important;
  }


  /* Logo size */

  .elementor-element-de0cbbd img {
    width: 90px !important;
    height: auto !important;
  }


  /* -----------------------------------------------
     NAV CONTAINER
     ----------------------------------------------- */

  .elementor-element-92a6131 {
    flex: 0 0 auto !important;
    width: auto !important;

    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;

    position: relative !important;
    z-index: 100002 !important;

    min-width: 44px !important;
  }


  /* Hide desktop button on mobile */

  .elementor-element-4709fa9 {
    display: none !important;
  }


  /* -----------------------------------------------
     HIDE DESKTOP NAV
     ----------------------------------------------- */

  .elementor-element-a9b40c3 .elementor-nav-menu--main {
    display: none !important;
  }


  /* Nav widget container */

  .elementor-element-a9b40c3 .elementor-widget-container {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 0 !important;
  }


  /* -----------------------------------------------
     HAMBURGER / X BUTTON
     ----------------------------------------------- */

  .elementor-element-a9b40c3 .elementor-menu-toggle {
    position: relative !important;
    z-index: 100003 !important;

    margin: 0 5px !important;
    padding: 5px !important;

    color: #2B2A28 !important;
  }


  /* Hamburger / X focus */

  .elementor-element-a9b40c3 .elementor-menu-toggle:focus,
  .elementor-element-a9b40c3 .elementor-menu-toggle:focus-visible {
    outline: 3px solid #000000 !important;
    outline-offset: 3px !important;
    border-radius: 3px !important;
  }


  /* ===============================================
     MOBILE MENU
     
     IMPORTANT:
     Menu starts BELOW the header.
     =============================================== */

  .elementor-element-a9b40c3 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: fixed !important;

    /* Header height */
    top: 110px !important;

    left: 0 !important;
    right: 0 !important;

    width: 100vw !important;

    /* Fill screen below header */
    height: calc(100vh - 110px) !important;

    background: #ffffff !important;

    z-index: 99998 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    padding: 0 !important;
    margin: 0 !important;

    border-top: 1px solid #eeeeee !important;

    box-shadow: none !important;

    box-sizing: border-box !important;
  }


  /* -----------------------------------------------
     REMOVE "MENU" TEXT
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown.elementor-nav-menu__container::before {
    display: none !important;
    content: none !important;
  }


  /* -----------------------------------------------
     MOBILE MENU LIST
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown .elementor-nav-menu {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
  }


  /* -----------------------------------------------
     MOBILE MENU LINKS
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li > a {

    display: flex !important;

    justify-content: space-between !important;
    align-items: center !important;

    width: 100% !important;

    box-sizing: border-box !important;

    padding: 18px 25px !important;

    color: #2B2A28 !important;

    font-size: 16px !important;

    font-family: 'Poppins', sans-serif !important;

    font-weight: 500 !important;

    border-bottom: 1px solid #eeeeee !important;

    background: #ffffff !important;

    text-decoration: none !important;

    white-space: normal !important;
  }


  /* -----------------------------------------------
     MOBILE MENU HOVER
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li > a:hover {

    background-color: #F5B942 !important;

    color: #2B2A28 !important;

    text-decoration: underline !important;
  }


  /* -----------------------------------------------
     MOBILE MENU FOCUS
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li > a:focus,

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li > a:focus-visible {

    outline: 3px solid #000000 !important;

    outline-offset: -3px !important;

    background-color: #F5B942 !important;

    color: #2B2A28 !important;
  }


  /* -----------------------------------------------
     MOBILE SUBMENU ARROW
     ----------------------------------------------- */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .menu-item-has-children > a .sub-arrow {

    float: right !important;

    margin-left: auto !important;

    transition: transform 0.2s ease !important;
  }


  /* Rotate arrow when submenu opens */

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .menu-item-has-children.open > a .sub-arrow {

    transform: rotate(180deg) !important;
  }


  /* ===============================================
     MOBILE SUBMENU
     =============================================== */

  #menu-2-a9b40c3 .sub-menu {
    display: none !important;

    margin: 0 !important;
    padding: 0 !important;

    width: 100% !important;

    background: #ffffff !important;
  }


  /* Submenu open */

  #menu-2-a9b40c3
  .menu-item-has-children.open > .sub-menu {

    display: block !important;

    background: #ffffff !important;

    width: 100% !important;

    padding: 0 !important;

    margin: 0 !important;

    border-left: none !important;

    border-top: 3px solid #2B2A28 !important;
  }


  /* -----------------------------------------------
     MOBILE SUBMENU LINKS
     ----------------------------------------------- */

  #menu-2-a9b40c3
  .menu-item-has-children.open > .sub-menu li a {

    display: block !important;

    width: 100% !important;

    box-sizing: border-box !important;

    padding: 12px 45px !important;

    font-size: 14px !important;

    font-family: 'Poppins', sans-serif !important;

    font-weight: 400 !important;

    color: #2B2A28 !important;

    border-bottom: 1px solid #eeeeee !important;

    text-decoration: none !important;

    white-space: normal !important;

    word-wrap: break-word !important;

    background: #ffffff !important;

    transition: background-color 0.2s ease !important;
  }


  /* -----------------------------------------------
     MOBILE SUBMENU HOVER
     ----------------------------------------------- */

  #menu-2-a9b40c3
  .menu-item-has-children.open > .sub-menu li a:hover {

    background-color: #F5B942 !important;

    color: #2B2A28 !important;

    text-decoration: underline !important;
  }


  /* -----------------------------------------------
     MOBILE SUBMENU FOCUS
     ----------------------------------------------- */

  #menu-2-a9b40c3
  .menu-item-has-children.open > .sub-menu li a:focus,

  #menu-2-a9b40c3
  .menu-item-has-children.open > .sub-menu li a:focus-visible {

    outline: 3px solid #000000 !important;

    outline-offset: -3px !important;

    background-color: #F5B942 !important;

    color: #2B2A28 !important;
  }

}


/* ================================================
   MOBILE HEADER Z-INDEX
   ================================================ */

@media (max-width: 1024px) {

  /* Header always stays above menu */

  .elementor-element-fef8310 > .e-con-inner {
    position: relative !important;
    z-index: 100001 !important;

    background: #ffffff !important;

    overflow: visible !important;
  }


  /* Logo above menu */

  .elementor-element-de0cbbd {
    position: relative !important;
    z-index: 100002 !important;
  }


  /* Hamburger / X above menu */

  .elementor-element-92a6131 {
    position: relative !important;
    z-index: 100003 !important;
  }


  /* Nav widget and toggle above menu */

  .elementor-element-a9b40c3 {
    position: relative !important;
    z-index: 100003 !important;
  }

}


/* ================================================
   PREVENT HORIZONTAL OVERFLOW
   ================================================ */

@media (max-width: 1024px) {

  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .elementor-element-fef8310 {
    max-width: 100% !important;
    overflow: visible !important;
  }

  .elementor-element-fef8310 > .e-con-inner {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

}


/* ================================================
   VERY SMALL MOBILE SCREENS
   ================================================ */

@media (max-width: 480px) {

  .elementor-element-fef8310 > .e-con-inner {
    padding: 10px 8px !important;
  }

  .elementor-element-de0cbbd img {
    width: 90px !important;
    height: auto !important;
  }

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown.elementor-nav-menu__container {

    top: 110px !important;

    height: calc(100vh - 110px) !important;
  }

  .elementor-element-a9b40c3
  .elementor-nav-menu--dropdown
  .elementor-nav-menu > li > a {

    padding: 18px 20px !important;

    font-size: 16px !important;
  }

}



/* =========================================================
   ACCESSIBILITY PROS
   MOBILE MENU - STICKY HEADER + TOGGLE OPEN/CLOSE
   Elementor Nav Menu: b6e7279
   ========================================================= */

@media (max-width: 1024px) {

  /* -------------------------------------------------------
     HEADER
     ------------------------------------------------------- */

  body .elementor-element-fef8310 > .e-con-inner {
    position: relative !important;
    z-index: 100000 !important;
    overflow: visible !important;
  }

  body .elementor-element-de0cbbd {
    position: relative !important;
    z-index: 100001 !important;
  }

  body .elementor-element-92a6131 {
    position: relative !important;
    z-index: 100003 !important;
  }

  body .elementor-element-b6e7279 {
    position: relative !important;
    z-index: 100003 !important;
  }


  /* -------------------------------------------------------
     HAMBURGER / X BUTTON
     ------------------------------------------------------- */

  body .elementor-element-b6e7279 .elementor-menu-toggle {
    position: relative !important;
    z-index: 100005 !important;
  }


  /* =======================================================
     IMPORTANT:
     MENU IS HIDDEN WHEN CLOSED
     ======================================================= */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container.elementor-nav-menu--dropdown {
    display: none !important;
  }


  /* =======================================================
     MENU OPENS ONLY WHEN ELEMENTOR TOGGLE IS ACTIVE
     
     Elementor adds .elementor-active to the hamburger/X
     when the mobile menu is opened.
     ======================================================= */

  body .elementor-element-b6e7279
  .elementor-menu-toggle.elementor-active
  + .elementor-nav-menu__container.elementor-nav-menu--dropdown {

    display: block !important;

    position: fixed !important;

    top: 110px !important;

    left: 0 !important;
    right: 0 !important;

    width: 100vw !important;
    max-width: 100vw !important;

    height: calc(100vh - 110px) !important;
    max-height: calc(100vh - 110px) !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;

    border: none !important;
    border-top: 1px solid #eeeeee !important;

    box-shadow: none !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    transform: none !important;

    z-index: 99999 !important;

    box-sizing: border-box !important;
  }


  /* -------------------------------------------------------
     MENU LIST
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-menu-toggle.elementor-active
  + .elementor-nav-menu__container
  .elementor-nav-menu {

    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
  }


  /* -------------------------------------------------------
     MENU ITEMS
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .elementor-nav-menu > li {

    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  /* -------------------------------------------------------
     MENU LINKS
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .elementor-nav-menu > li > a {

    display: flex !important;

    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;

    min-height: 58px !important;

    padding: 18px 25px !important;

    box-sizing: border-box !important;

    background: #ffffff !important;

    color: #2B2A28 !important;

    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;

    border-bottom: 1px solid #eeeeee !important;

    text-decoration: none !important;
  }


  /* -------------------------------------------------------
     HOVER
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .elementor-nav-menu > li > a:hover {

    background-color: #F5B942 !important;

    color: #2B2A28 !important;

    text-decoration: underline !important;
  }


  /* -------------------------------------------------------
     KEYBOARD FOCUS
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .elementor-nav-menu > li > a:focus,

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .elementor-nav-menu > li > a:focus-visible {

    outline: 3px solid #000000 !important;

    outline-offset: -3px !important;

    background-color: #F5B942 !important;

    color: #2B2A28 !important;
  }


  /* -------------------------------------------------------
     SERVICES ARROW
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .menu-item-has-children > a .sub-arrow {

    margin-left: auto !important;

    transition: transform 0.2s ease !important;
  }


  /* -------------------------------------------------------
     MOBILE SUBMENU
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .sub-menu {

    display: none !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
  }


  /* Submenu opens when Services is opened */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children.elementor-active
  > .sub-menu {

    display: block !important;
  }


  /* -------------------------------------------------------
     SUBMENU LINKS
     ------------------------------------------------------- */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .sub-menu li a {

    display: block !important;

    width: 100% !important;

    padding: 14px 45px !important;

    box-sizing: border-box !important;

    background: #ffffff !important;

    color: #2B2A28 !important;

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    border-bottom: 1px solid #eeeeee !important;

    text-decoration: none !important;
  }


  /* Submenu hover */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .sub-menu li a:hover {

    background-color: #F5B942 !important;

    color: #2B2A28 !important;

    text-decoration: underline !important;
  }


  /* Submenu focus */

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .sub-menu li a:focus,

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .sub-menu li a:focus-visible {

    outline: 3px solid #000000 !important;

    outline-offset: -3px !important;

    background-color: #F5B942 !important;

    color: #2B2A28 !important;
  }

}
  
   /* =========================================================
   MOBILE SERVICES SUBMENU - FINAL FIX
   ========================================================= */

@media (max-width: 1024px) {

  /* Keep submenu hidden initially */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > .sub-menu {
    display: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
  }


  /* OPEN SUBMENU
     Elementor changes aria-expanded to true
     when Services is activated */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > a[aria-expanded="true"]
  + .sub-menu {

    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;

    border-top: 3px solid #2B2A28 !important;
  }


  /* Submenu links */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > a[aria-expanded="true"]
  + .sub-menu li a {

    display: block !important;

    width: 100% !important;

    box-sizing: border-box !important;

    padding: 14px 45px !important;

    background: #ffffff !important;

    color: #2B2A28 !important;

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    font-weight: 400 !important;

    border-bottom: 1px solid #eeeeee !important;

    text-decoration: none !important;
  }


  /* Submenu hover */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > a[aria-expanded="true"]
  + .sub-menu li a:hover {

    background-color: #F5B942 !important;

    color: #2B2A28 !important;

    text-decoration: underline !important;
  }


  /* Submenu keyboard focus */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > a[aria-expanded="true"]
  + .sub-menu li a:focus,

  body .elementor-element-b6e7279
  .elementor-nav-menu__container
  .menu-item-has-children > a[aria-expanded="true"]
  + .sub-menu li a:focus-visible {

    outline: 3px solid #000000 !important;

    outline-offset: -3px !important;

    background-color: #F5B942 !important;

    color: #2B2A28 !important;
  }


  /* Services arrow */
  body .elementor-element-b6e7279
  .menu-item-has-children > a .sub-arrow {

    margin-left: auto !important;

    transition: transform 0.2s ease !important;
  }


  /* Rotate arrow when Services is open */
  body .elementor-element-b6e7279
  .menu-item-has-children > a[aria-expanded="true"]
  .sub-arrow {

    transform: rotate(180deg) !important;
  }

}

/* =========================================================
   MOBILE MENU - LOCK BACKGROUND PAGE SCROLL
   ========================================================= */

@media (max-width: 1024px) {

  /* When mobile menu is open, prevent the page behind it
     from scrolling */
  body.mobile-menu-open {
    overflow: hidden !important;
    height: 100vh !important;
  }

  html.mobile-menu-open {
    overflow: hidden !important;
    height: 100% !important;
  }

  /* The mobile menu itself can scroll */
  body .elementor-element-b6e7279
  .elementor-nav-menu__container.elementor-nav-menu--dropdown {

    overflow-y: auto !important;
    overflow-x: hidden !important;

    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7135506 *//* Contact button - WCAG AA compliant, matches Request a Demo style */
a.elementor-button[href*="https://accessibilitypros.in/request-an-audit/"] {
  background-color: #A63D2F !important;
  color: #ffffff !important;
  border: 2px solid #A63D2F !important;
  border-radius: 25px !important;
  padding: 12px 24px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
  font-family: 'Poppins', Arial, sans-serif !important;
}

/* Hover and focus - same black background, same trigger */
a.elementor-button[href*="contact-us"]:hover,
a.elementor-button[href*="contact-us"]:focus-visible {
  background-color: #2B2A28 !important;
  color: #ffffff !important;
  border: 2px solid #2B2A28 !important;
}

/* Focus indicator - red outline ring, keyboard only */
a.elementor-button[href*="contact-us"]:focus-visible {
  outline: 3px solid #A63D2F !important;
  outline-offset: 3px !important;
}

@media (max-width: 1024px) {
  /* Hide the button COLUMN on mobile, not just the button */
  .elementor-widget-button {
    display: none !important;
  }
  /* Hide the container holding the button on mobile */
  .elementor-widget-button .elementor-widget-container,
  .elementor-widget-button closest container {
    display: none !important;
  }
}/* End custom CSS */