.elementor-10828 .elementor-element.elementor-element-ad8a2b1{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for container, class: .elementor-element-ad8a2b1 */.elementor-10828 .elementor-element.elementor-element-ad8a2b1{--bg:#ffffff;
  --page:#f4f6f3;
  --text:#404040;
  --muted:#71766d;
  --border:#e3e7df;
  --soft:#fbfaf8;
  --accent:#9ACA3D;
  --accent-dark:#6f9821;
  --accent-soft:#f1f7e6;
  --danger:#c84646;
  --shadow:0 20px 55px rgba(48,58,38,.12);}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 *{box-sizing:border-box}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{
  background:#fff;
  border-bottom:1px solid var(--border);
  position:relative;
  z-index:30;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header-inner{
  min-height:78px;
  padding:0 20px;
  display:flex;
  align-items:center;
  gap:10px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo{
  flex:0 0 auto;
  min-width:196px;
  display:flex;
  align-items:center;
  gap:10px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-mark{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--accent);
  color:#fff;
  font-size:16px;
  font-weight:900;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-copy{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-copy strong{
  font-size:13px;
  letter-spacing:.02em;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-copy span{
  margin-top:4px;
  color:var(--muted);
  font-size:9.5px;
  letter-spacing:.08em;
  text-transform:uppercase;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-nav{flex:1}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  align-items:center;
  gap:0;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li{position:relative}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>a,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>button{
  min-height:78px;
  padding:0 8px;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:11.5px;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li:hover>a,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li:hover>button,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>a:hover,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>button:hover{
  color:var(--accent-dark);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .chev{
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .emergency>a{color:var(--danger)!important}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .emergency>a:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d74747;
  box-shadow:0 0 0 4px rgba(215,71,71,.10);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book{margin-left:auto;flex:0 0 auto}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book a{
  min-height:46px;
  padding:0 15px;
  border-radius:10px;
  background:var(--accent);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11.5px;
  font-weight:900;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .dropdown{
  position:absolute;
  top:calc(100% - 7px);
  left:0;
  width:325px;
  padding:10px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:0 18px 46px rgba(48,58,38,.13);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:.18s ease;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li:hover>.dropdown,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li:focus-within>.dropdown{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .dropdown>a,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>a,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>.submenu-trigger{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 12px;
  border-radius:9px;
  font-size:12.5px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .dropdown>a:hover,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>a:hover,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>.submenu-trigger:hover{
  background:var(--soft);
  color:var(--accent-dark);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent{position:relative}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>a:after,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>.submenu-trigger:after{
  content:"›";
  font-size:18px;
  color:var(--muted);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .side-submenu{
  position:absolute;
  top:0;
  left:calc(100% + 10px);
  width:320px;
  padding:10px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:0 18px 46px rgba(48,58,38,.13);
  opacity:0;
  visibility:hidden;
  transform:translateX(-6px);
  transition:.18s ease;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .side-submenu.tech{width:350px;max-height:470px;overflow-y:auto}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent:hover>.side-submenu,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent:focus-within>.side-submenu{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .side-submenu a{
  display:block;
  padding:9px 10px;
  border-radius:8px;
  font-size:12.5px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .side-submenu a:hover{
  background:var(--soft);
  color:var(--accent-dark);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent>.submenu-trigger{
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:transparent;
  color:var(--text);
  text-align:left;
  font-family:inherit;
  cursor:pointer;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mega-parent{position:static!important}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mega{
  position:absolute;
  top:78px;
  left:50%;
  width:min(1480px,calc(100vw - 56px));
  padding:24px 26px 28px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:var(--shadow);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,12px);
  transition:.2s ease;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mega-parent:hover .mega,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mega-parent:focus-within .mega{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-row{
  display:grid;
  grid-template-columns:auto repeat(4,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
  padding-bottom:18px;
  margin-bottom:20px;
  border-bottom:1px solid var(--border);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-label{
  padding:11px 14px;
  border-radius:10px;
  background:var(--accent-soft);
  color:var(--accent-dark);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
  letter-spacing:.04em;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card{
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card:hover{
  border-color:#cbd9b0;
  background:var(--soft);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card strong{
  display:block;
  margin-bottom:3px;
  font-size:12px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card span{
  display:block;
  color:var(--muted);
  font-size:10.5px;
  line-height:1.35;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .services-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:28px 34px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .group-title{
  display:block;
  margin:0 0 10px;
  font-size:13px;
  font-weight:900;
  line-height:1.3;
  color:var(--text);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group ul{list-style:none;margin:0;padding:0}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group li a{
  display:block;
  padding:4.5px 0;
  color:#596157;
  font-size:11.8px;
  line-height:1.4;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group li a:hover{color:var(--accent-dark)}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .patient-menu{width:390px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .contact-menu{right:0;left:auto;width:370px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .area-menu{width:300px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .help-menu{width:310px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .section-label{
  margin:8px 10px 4px;
  color:var(--accent-dark);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .divider{
  height:1px;
  background:var(--border);
  margin:7px 8px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-body{padding:12px 14px 18px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-quick{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-bottom:8px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-quick a{
  min-height:44px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--soft);
  border:1px solid var(--border);
  font-size:12px;
  font-weight:900;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-quick a:first-child{
  background:var(--accent);
  color:#fff;
  border-color:var(--accent);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-btn,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-direct{
  width:100%;
  min-height:54px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--border);
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
  font-size:14px;
  font-weight:900;
  cursor:pointer;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-direct{color:var(--danger)}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .plus{
  width:24px;
  height:24px;
  position:relative;
  flex:0 0 24px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .plus:before,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .plus:after{
  content:"";
  position:absolute;
  background:var(--text);
  border-radius:2px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .plus:before{width:12px;height:1.5px;left:6px;top:11px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .plus:after{width:1.5px;height:12px;left:11px;top:6px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-btn[aria-expanded="true"] .plus:after{display:none}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-content{display:none;padding:8px 0 12px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-content.is-open{display:block}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card{
  background:var(--soft);
  border-radius:11px;
  padding:8px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card>a{
  display:block;
  padding:9px 10px;
  border-radius:8px;
  color:#515a4e;
  font-size:12.5px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card>a:hover{background:#fff}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card details{
  margin-top:4px;
  border-top:1px solid var(--border);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card summary{
  padding:10px;
  cursor:pointer;
  font-size:12.5px;
  font-weight:900;
  color:#4d5649;
  list-style:none;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card summary::-webkit-details-marker{display:none}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card summary:after{
  content:"+";
  float:right;
  font-size:16px;
  font-weight:400;
  color:var(--muted);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card details[open] summary:after{content:"−"}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card details a{
  display:block;
  padding:8px 14px;
  font-size:12px;
  color:#5b6557;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree{display:grid;gap:7px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree details{
  border-radius:10px;
  background:var(--soft);
  overflow:hidden;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree summary{
  min-height:48px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  font-size:12.5px;
  font-weight:900;
  list-style:none;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree summary::-webkit-details-marker{display:none}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree summary:after{
  content:"+";
  font-size:17px;
  font-weight:400;
  color:var(--muted);
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree details[open] summary:after{content:"−"}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-links{
  padding:2px 10px 9px;
  border-top:1px solid var(--border);
  background:#fff;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-links a{
  display:block;
  padding:8px 7px;
  border-bottom:1px solid #eef1ea;
  color:#596157;
  font-size:12px;
}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-links a:last-child{border-bottom:0}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-book{
  display:block;
  margin-top:16px;
  padding:14px 18px;
  border-radius:11px;
  background:var(--accent);
  color:#fff;
  text-align:center;
  font-size:13px;
  font-weight:900;
}

.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-list{
  display:grid;
  gap:8px;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-label{
  padding:2px 4px 0;
  color:var(--accent-dark)!important;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.mobile-need-btn{
  width:100%;
  min-height:50px;
  margin:0;
  padding:10px 12px;
  border:1px solid #dfe9ca;
  border-radius:10px;
  background:var(--accent-soft);
  color:var(--text)!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font:inherit;
  font-size:13px;
  font-weight:900;
  line-height:1.3;
  text-align:left;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  box-shadow:none;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.mobile-need-btn:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.mobile-need-btn:focus-visible,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.mobile-need-btn[aria-expanded="true"]{
  border-color:var(--accent);
  background:#fff;
  color:var(--accent-dark)!important;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-btn[aria-expanded="true"] .plus:after{display:none}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-panel{
  display:none;
  padding:0 0 4px 10px;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-panel.is-open{display:block}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-panel .service-tree{
  padding-left:8px;
  border-left:2px solid var(--accent);
}

@media(max-width:1380px){.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header-inner{gap:6px;padding:0 12px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>a,.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu>li>button{padding:0 5px;font-size:10.4px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book a{padding:0 10px;font-size:10.5px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo{min-width:168px}.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-copy strong{font-size:11.5px}
}
@media(max-width:1120px){.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

.elementor-10828 .elementor-element.elementor-element-ad8a2b1,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 *{box-sizing:border-box}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-height:78px;
  padding:0 clamp(24px,4vw,64px);
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header *{color:var(--text)!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a{text-decoration:none}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button{font:inherit}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button{-webkit-tap-highlight-color:transparent}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo img{display:block;width:auto;height:52px;max-width:230px;object-fit:contain}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-panel{display:none;background:#fff;border-top:1px solid var(--border)}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-panel.is-open{display:block}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-panel[hidden],
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-content[hidden],
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-need-panel[hidden]{display:none!important}

.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle{
  display:none;
  position:relative!important;
  flex:0 0 44px!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  margin:0 0 0 auto!important;
  border:1px solid var(--border)!important;
  border-radius:10px!important;
  background:#fff!important;
  line-height:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  box-shadow:none!important;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle > span{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  display:block!important;
  width:19px!important;
  height:2px!important;
  padding:0!important;
  margin:0!important;
  background:var(--text)!important;
  border-radius:4px!important;
  transform:translate(-50%,-50%)!important;
  transition:.2s!important;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle > span::before,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle > span::after{
  content:"";
  position:absolute;
  left:0;
  width:19px;
  height:2px;
  margin:0;
  background:var(--text);
  border-radius:4px;
  transform-origin:center;
  transition:.2s;
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle > span::before{top:-6px}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle > span::after{top:6px}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle.is-open > span{background:transparent!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle.is-open > span::before{top:0;transform:rotate(45deg)}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle.is-open > span::after{top:0;transform:rotate(-45deg)}

.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a:focus-visible,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button:focus-visible,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .acc-btn{appearance:none;-webkit-appearance:none;box-shadow:none}

.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu > li:hover > a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu > li:hover > button,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu > li:focus-within > a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-menu > li:focus-within > button,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .dropdown > a:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent > a:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .submenu-parent > .submenu-trigger:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .side-submenu a:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group li a:hover{color:var(--accent-dark)!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .emergency > a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-direct{color:var(--danger)!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo-copy span,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card span,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card summary::after,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree summary::after{color:var(--muted)!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-label,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .section-label{color:var(--accent-dark)!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group li a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card > a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-card details a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-links a{color:#596157!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-tree summary .summary-link{
  flex:1;
  color:inherit!important;
  text-decoration:none!important
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book a:visited,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book a:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-book,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-book:visited,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-book:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-quick a:first-child,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-quick a:first-child:visited{color:#fff!important}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-row > *{min-width:0}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .quick-card{white-space:normal;overflow-wrap:break-word}

@media(min-width:1121px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo{
    width:fit-content;
    max-width:230px;
    min-width:0;
    flex:none;
    justify-self:start;
    justify-content:flex-start
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-nav{flex:0 0 auto;display:flex;align-items:center;justify-content:center}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book{min-width:196px;margin-left:0;display:flex;justify-self:end;justify-content:flex-end}
}
@media(max-width:1380px) and (min-width:1121px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book{min-width:168px}
}

@media(max-width:1120px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{min-height:68px;padding:0 clamp(16px,4vw,32px)}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-nav,
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .book{display:none}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-mobile-toggle{display:flex!important;align-items:center!important;justify-content:center!important}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo{min-width:200px}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo img{max-width:100%}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-body{padding:12px 16px 22px}
}
@media(max-width:480px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{padding:0 14px}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo{min-width:160px}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-logo img{height:46px}
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .mobile-body{padding-left:14px;padding-right:14px}
}

/* Interactive Browse-by-Need controls */
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.quick-card{
  width:100%;
  min-width:0;
  margin:0;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
  color:var(--text)!important;
  font:inherit;
  text-align:left;
  white-space:normal;
  overflow-wrap:break-word;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  box-shadow:none
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.quick-card:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.quick-card:focus-visible,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header button.quick-card.is-active{
  border-color:var(--accent);
  background:var(--soft);
  color:var(--accent-dark)!important
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .service-group[hidden]{display:none!important}

/* Emergency stays red in every interactive state */
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-menu > li.emergency > a,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-menu > li.emergency > a:visited,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-menu > li.emergency > a:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-menu > li.emergency > a:focus,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-menu > li.emergency > a:focus-visible,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct:visited,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct:hover,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct:focus,
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct:focus-visible{
  color:var(--danger)!important
}

/* Contact submenu: four actions in a 2 by 2 grid */
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .contact-menu{
  right:0;
  left:auto;
  width:430px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .contact-menu > a{
  min-width:0;
  min-height:64px;
  padding:11px 12px;
  border:1px solid var(--border);
  border-radius:9px;
  background:#fff;
  align-items:center;
  overflow-wrap:anywhere
}
.elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .contact-menu > a:hover{
  border-color:var(--accent);
  background:var(--soft)
}

@media(max-width:1120px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header #ewdAccordion6 .mobile-card{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    padding:8px 0
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header #ewdAccordion6 .mobile-card > a{
    min-width:0;
    min-height:48px;
    padding:10px;
    border:1px solid var(--border);
    border-radius:9px;
    display:flex;
    align-items:center;
    overflow-wrap:anywhere
  }
}

/* Final mobile and tablet layout */
@media(max-width:1120px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{
    width:100%;
    min-height:72px;
    padding:0 clamp(18px,4vw,32px);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:0;
    overflow:visible
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-logo{
    flex:0 1 auto;
    width:fit-content;
    min-width:0;
    max-width:calc(100% - 60px);
    min-height:72px;
    display:flex;
    align-items:center
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-logo img{
    display:block;
    width:auto!important;
    height:auto!important;
    max-width:220px!important;
    max-height:54px!important;
    object-fit:contain
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-mobile-toggle{
    flex:0 0 44px!important;
    margin-left:16px!important
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-mobile-panel{
    flex:0 0 100%;
    width:100%;
    min-width:100%;
    max-width:100%;
    min-height:0;
    max-height:calc(100vh - 72px);
    max-height:calc(100dvh - 72px);
    margin:0;
    padding:14px 2px 26px;
    border-top:1px solid var(--border);
    background:#fff;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-quick{
    width:100%;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
    margin:0 0 10px
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-quick a{
    min-width:0;
    min-height:48px;
    padding:10px 12px;
    font-size:13px;
    line-height:1.25;
    text-align:center
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .acc-btn,
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct{
    min-height:56px;
    padding:0 4px!important;
    border-bottom:1px solid var(--border)!important;
    border-radius:0!important;
    background:transparent!important;
    font-size:15px;
    line-height:1.35;
    text-align:left!important
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header a.mobile-direct{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    color:var(--danger)!important
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .acc-content{
    width:100%;
    padding:8px 0 14px
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-card > a,
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-card summary,
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .service-tree summary{
    font-size:14px
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .service-links a,
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-card details a{
    min-height:42px;
    padding:10px 8px;
    font-size:13px
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .mobile-book{
    width:100%;
    min-height:50px;
    margin-top:16px;
    padding:14px 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    color:#fff!important
  }
}

@media(max-width:480px){
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header{
    min-height:68px;
    padding:0 15px
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-logo{
    min-height:68px;
    max-width:calc(100% - 56px)
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-logo img{
    max-width:175px!important;
    max-height:48px!important
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-mobile-toggle{
    margin-left:12px!important
  }
  .elementor-10828 .elementor-element.elementor-element-ad8a2b1 .ewd-header .ewd-mobile-panel{
    max-height:calc(100vh - 68px);
    max-height:calc(100dvh - 68px);
    padding:12px 0 24px
  }
}/* End custom CSS */