/*
Theme Name: ge-framework-2023
Author: Devon Conn
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ge-framework-2023
Tags: ge-framework-2023

ge-framework-2023 is distributed under the terms of the GNU GPL.
*/
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
  font-size: 22px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item{
  font-size:18px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item
.wp-block-navigation__submenu-container .wp-block-navigation-item{
  font-size:14px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item
.wp-block-navigation__submenu-container .wp-block-navigation-item
.wp-block-navigation__submenu-container .wp-block-navigation-item{
  font-size:10px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{
  padding:0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{
  height:0 !important;
overflow:hidden !important;
transition: all .3s ease-in-out;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container li, .wp-block-navigation__responsive-container.is-menu-open li a, .wp-block-navigation__responsive-container.is-menu-open li span {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}
.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg{
fill:black !important;
   height:40px !important;
  width:40px !important;
}
.wp-block-navigation{
padding: 10px 10px;
}
p a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, main li a{
text-decoration:underline !important;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a{
font-family:inherit !important;
}
ol.has-background, ul.has-background {
padding: 0 !important;
}
.background-apply {
  margin: 0 auto 80px !important;
  /*box-shadow:0 20px 16px #0000003b; GE4 NEEDED*/
}

.background-apply h2 {
  position: relative
}

/*GE8 Bump Effects*/

@media only screen and (min-width:1920px){
.bump-up::before{
  width: 100vw !important;
  height: 4vw !important;
  transform: translateY(-3.7vw) !important;

}
.bump-down::after{
  width: 100vw !important;
  height: 4vw !important;
  transform: translateY(3.9vw) !important;
}
}
.bump-up, .bump-down{
position:relative;
}




/*
GE4 NEEDED
.background-apply h2::before {
  content:"";
  position:absolute;
  left:-40px;
  top:0;
  width:4px;
  height:170px;
  background-color:#0f577b;
  transform:translateY(-25%);
}
*/
.background-overlay>.wp-block-column>.wp-block-columns {
  position: relative
}
/* 

.banner-text {
  margin-bottom: 0;
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  width: 25%
} */


.banner-text {
  margin-bottom: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 25%;
}

.home .banner-text h2{
  color: white !important;
}

.box {
  padding: 20px 120px
}

.centered-columns {
  justify-content: center !important
}

.contact-info-center {
  justify-content: center
}

.custom-logo {
  min-width: 130px !important;
  object-fit: contain;
  width: 100%
}

.fixed-nav.shiftnav-toggle {
  display: none !important
}

.header-nav {
  background-color: #fff
}

.map-container {
  position: relative
}

.page main .wp-block-buttons {
  justify-content: center !important
}

.page main .wp-block-post-title,
.page main h1 {
  text-align: center !important
}

.section {
  padding: 80px 20px
}

.service-item {
  margin: 0 auto
}

.service-item:hover {
  cursor: pointer
}

.services-row>div {
  text-align: center
}

.home .wp-site-blocks > .wp-block-columns .wp-block-buttons {
  margin-top: 4rem !important
}

.wp-block-latest-posts li {
  margin: 0 0 1.25em !important
}
.has-modal-open .wp-block-navigation__submenu-icon{
display:none !important;
}
.wp-block-navigation__submenu-container > li:hover,
.wp-block-navigation__submenu-container > li:hover > a {
  background-color: #fff !important;
  color: #000 !important
}

.wp-block-post-title {
  display: none !important
}

.wp-block-template-part {
  margin-top: 0 !important
}

.wp-site-blocks iframe {
  width: 100%
}

.wp-site-blocks>.wp-block-template-part:nth-child(1) {
  margin: 0 auto !important
}

.yellow-border,
.yellow-border img {
  border: 2px solid #77848f;
  padding: 8px
}

//Makes sure inner pages links have an underline
body:not(.home) main a:hover {
  text-decoration: underline !important
}

:where(p.has-text-color:not(.has-link-color)) a {
  color: inherit !important
}

a {
  text-decoration-thickness: 1px;
  text-underline-offset: .25ch
}

a:active {
  text-decoration: none
}

a:hover,
a:focus {
  text-decoration-style: dashed
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased
}

body main .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 1000px !important
}

body:not(.home) .set-banner-height {
  opacity: 0
}

header .wp-block-buttons {
  margin-top: unset !important
}

header+.wp-block-cover__inner-container {
  margin-top: 0 !important
}

@media screen and (min-width:1361px) {
  .boxes {
      position: relative
  }

  .left-box {
      border: 4px solid #555557;
      content: "";
      height: 85%;
      left: -2%;
      position: absolute;
      top: -10%;
      width: 45%;
      z-index: -1
  }

  .right-box {
      border: 4px solid #555557;
      bottom: -5%;
      content: "";
      height: 40%;
      position: absolute;
      right: -2%;
      width: 20%;
      z-index: -1
  }
}
@media screen and (max-width:820px) {
.home .banner-text{
  position:unset !important;
  transform:unset !important;
}
}
@media screen and (max-width:700px) {
  .box {
      padding: 20px !important
  }
}

.background-overlay img {
  box-shadow: 0 0 8px #00000052
}

.background-overlay-parallax {
  background-color: #edf1f4;
  content: "";
  height: 120%;
  position: absolute;
  right: -3%;
  top: 50%;
  transform: translateY(-50%);
  width: 80%;
  z-index: -1
}

.background-overlay>.wp-block-column>.wp-block-columns {
  position: relative
}

.banner-btn {
  bottom: 0;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 28%)
}

.banner-caption {
  position: relative
}

.block-editor-block-list__block.map-details {
  background-color: #fff !important;
  padding: unset !important;
  right: unset !important;
  top: unset !important;
  transform: unset !important
}

.blog .wp-block-latest-posts__list {
  margin-top: 40px
}

.blog-preview {
  background-color: #dde6eb;
  box-shadow: -1px 7px 10px #0006;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 350px;
  text-align: center;
  width: 80%
}

.blog-preview .blog-preview-link {
  display: block;
  font-size: 14px;
  margin-top: auto;
  padding: 10px 20px;
  text-decoration: none
}

.blog-preview .wp-block-latest-posts__post-date {
  background-color: #2e546b;
  color: #fff
}

.blog-preview .wp-block-latest-posts__post-date,
.wp-block-latest-posts__post-title {
  padding: 20px;
  text-align: left;
  text-decoration: none
}

.blog-preview .wp-block-latest-posts__post-excerpt {
  font-size: 16px;
  padding: 20px;
  padding-top: 0;
  text-align: left
}

.blog-preview-link {
  background-color: #cde6c3;
  color: #000
}

.blue-right-border {
  border-right: 3px solid blue
}

.boxes-container img {
  margin: 0 auto !important;
  object-fit: contain !important;
  width: 80% !important
}

.center {
  margin: 0 auto !important
}

.footer-details {
  position: relative
}

.footer-details>div {
  flex: 1 1 0
}

.header-btn {
  background-color: #fff !important;
  border: 2px solid #fff;
  color: #000 !important
}

.header-cover {
  padding: 0 !important
}



.header-nav .wp-block-navigation-item:hover>a>span::after {
  width: 100%
}

.header-nav .wp-block-navigation-item>a>span::after {
  background-color: #505657;
  bottom: 0px;
  content: "";
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  transition: width .3s ease-in-out;
  width: 0
}

.hide {
  display: none !important
}

.home h1 {
  margin-top: 10px!important;
  margin-bottom: 35px!important;
}

.info-min-width-set {
  min-width: 330px
}

.map-area {
  overflow: hidden !important
}

.max-width-custom {
  margin: 80px auto !important;
  max-width: 1100px !important;
  width: 80% !important
}

.max-width-unset {
  max-width: unset !important
}

.no-left-padding {
  padding-left: 0 !important
}

.no-padding {
  padding: 0 !important
}

.no-right-padding {
  padding-right: 0 !important
}

.no-top-padding {
  padding-top: 0 !important
}

.our-gallery img {
  border: 4px solid #28578d;
  padding: 2px
}

.phone {
  padding: 10px 15px
}

.phone img {
  min-width: 40px
}

.remove-max-width {
  max-width: unset !important
}

.reverse .background-overlay-parallax {
  left: -3%;
  right: unset
}

.service {
  display: flex;
  flex-direction: column;
  height: 100%;
  /*border-radius: 100%; */
  justify-content: center;
  max-height: 180px;
  max-width: 180px;
  min-height: 180px;
  min-width: 180px;
  position: relative
}

.service .hover-image {
  display: none
}

.service .hover-image,
.service .main-image,
.service .main-text {
  text-align: center
}

.service .main-image {
  margin-top: 0 !important
}

.service .main-text {
  font-size: 16px !important
}

.service-container {
  max-width: unset !important
}

.service-item {
  align-items: center;
  border-radius: 50%;
  display: flex;
  height: 180px;
  width: 180px
}

.service-item .wp-block-group {
  width: 100%
}

.service-item figcaption,
.service figcaption {
  width: 100% !important
}

.service-item>figure {
  width: 100%
}

.service:hover {
  cursor: pointer
}

.service:hover .main-image,
.service-item:hover .main-image,
.service:hover .main-text {
  display: none
}

.service:hover img,
.service-item:hover img {
  display: none
}

.service:hover,
.service-item:hover {
  background-color: #dde6eb !important;
  background-image: url();
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  /*background-color: #004d73 !important;*/
}

.services-row {
  justify-content: center !important
}

/*GE8 REQUIRED*/
/*
GET RID OF CSS THTA HIDES SHIFTNAV-TOGGLE GE8

.shiftnav-toggle {
  background-color: transparent !important;
  color:white !important;
}
*/
.services-row figcaption {
  color: #fff !important
}

.shiftnav-toggle {
  background-color: #2e546b !important;
  width: 100%
}

.shiftnav-toggle>i {
  float: right
}

.standard-section-margin {
  margin: 0 auto 80px !important
}

.ti-rating-text>span,
.ti-rating-text strong {
  color: #fff !important
}

.top-header {
  position: relative;
  z-index: 2
}

.wp-block-button .wp-block-button__link {
  border: 2px solid #2e546b !important
}

.wp-block-button:hover .wp-block-button__link {
  background-color: transparent;
  color: #000 !important
}

.wp-block-latest-posts__list {
  margin: 0 auto;
  max-width: 1200px
}

.wp-block-navigation__submenu-container > li:hover,
.wp-block-navigation__submenu-container > li:hover > a {
  background-color: #fff !important;
  color: #000 !important
}

.wp-block-post-featured-image {
  display:none !important;
}
.wp-block-post-featured-image img{
width:fit-content !important;
  max-width:400px !important;
  object-fit:contain !important;
}
.wp-block-post-title {
  font-size: 36px !important;
  font-weight: 300 !important;
  line-height: .9 !important
}

.wp-site-blocks {
  padding-left: 0 !important;
  padding-right: 0 !important
}

.wp-site-blocks iframe {
  width: 100%
}

.wp-site-blocks>.wp-block-template-part:last-child {
  margin: 0 !important
}

.wp-site-blocks>div {
  overflow: hidden
}

a {
  text-decoration: none !important
}

body footer.wp-block-template-part h1 {
  margin-left: auto !important;
  margin-right: auto !important
}

body:not(.home) .banner-text {
  left: 50%;
  right: unset !important;
  transform: translate(-50%, -50%)
}

body:not(.home) main {
  margin: 80px auto;
  max-width: 1000px;
  width: 80%
}

h1 {
  font-size: var(--wp--preset--font-size--small) !important;
  margin-block-start: 18px !important
}

header .wp-block-navigation-item>a>span {
  line-height: 1.5
}

header .wp-block-navigation__submenu-container .wp-block-navigation-item:hover>a>span::after {
  width: 100% !important
}

header a,
footer a {
  text-decoration: none !important
}

/* HAMBURGER CSS */
.wp-block-navigation__responsive-container.has-modal-open.is-menu-open{
  z-index:999 !important;
}

.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content > ul > li{
  text-transform:uppercase;
}

.has-modal-open.is-menu-open .wp-block-navigation-submenu > a::after{
  content: "\003E";
  position:absolute;
  right:0;
  top:0%;
  display:inline-block;
  transform: translateX(300%);
  transition: rotate .3s ease-in-out;
}
.has-modal-open.is-menu-open .open > a::after{
  transform: rotate(90deg) translateY(-80%) !important;
}

.has-modal-open.is-menu-open .wp-block-navigation {
justify-content: right !important;
color: white;
padding: 10px 20px;
}
.has-modal-open.is-menu-open li a[aria-current="page"]{
  color:black !important;
}
.has-modal-open.is-menu-open .wp-block-navigation__responsive-close{
  overflow:auto !important;
  min-height:300px !important;
}
.is-menu-open.wp-block-navigation__responsive-container{
align-items: center !important;
justify-content: center !important;
background-color: #00000091 !important;
backdrop-filter: blur(5px);
-webkit-backdrop-filter: blur(5px);
}

.header-nav .has-modal-open.is-menu-open .wp-block-navigation-item > a::before{
  content:"";
  width:0%;
  height:3px;
  position:absolute;
  left:0;
  bottom:0;
  transition:width .3s ease-in-out;
}
.header-nav .has-modal-open.is-menu-open .wp-block-navigation-item:hover > a{
  position:relative !important;
}
.header-nav .has-modal-open.is-menu-open .wp-block-navigation-item:hover > a::before{
  width:100%;
}
/* HAMBURGER CSS */
.show-mobile{
display:none !important;
}
.show-desktop{
display:flex !important;
}
.header-nav nav > div.has-modal-open{
display:flex !important;
}
.header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{
color:white !important;
}

@media only screen and (max-width:1665px) {
  .background-apply:not(.reverse) h2::before {
      visibility: hidden
  }

  .background-apply:not(.reverse) h2::before {
      visibility: hidden
  }

  .banner-text a {
      font-size: 13px !important
  }

  .banner-text h2 {
      font-size: 19px !important
  }
}


@media only screen and (min-width:1100px) {
  .footer-details::after {
      background-color: #fff;
      content: "";
      height: 100%;
      left: 50%;
      position: absolute;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 3px
  }
}

@media only screen and (max-width:1100px) {
  .footer-details {
      flex-direction: column !important
  }
}

@media only screen and (min-width:981px) {
  .bordered-right {
      border-right: 3px solid #fff;
      padding-left: 60px;
      padding-right: 60px
  }

  .bordered-right+div {
      padding-right: 60px
  }

  .header-nav .phone {
      display: inline-block !important
  }

  .header-nav-btn {
      display: none !important
  }
}

@media only screen and (max-width: 980px) {
  .fixed-nav .ge4-header-mid-col, .fixed-nav .header-info{
      display:none !important;
  }
  .fixed-nav .ge4-header-col{
      display:none !important;
  }
  .ge4-logo-area{
      position:relative;
  }
  .ge4-logo-area nav{
      position: absolute;
      right: 0;
      top: 20%;
  }
  .header-contact {
      justify-content: center !important
  }
  .header-text {
      text-align: center !important
  }
  .header-ge4-row{
      flex-direction:column !important;
  }
  .wp-block-navigation {
      color: #fff;
      justify-content: right !important;
  }
  .header-nav nav > div{
      display:none !important;
  }
  .header-nav nav{
      float:right !important;
  }
  .header-nav nav button{
      display:flex !important;
  }
  .show-mobile{
      display:flex !important;
  }
  .show-desktop{
      display:none !important;
  }
  .background-apply {
      background-image: none !important
  }
  /* .banner-text {
      bottom: 0;
      left: 0 !important;
      right: unset !important;
      top: unset !important;
      transform: unset !important;
      width: 100% !important
  } */

  .large-width-desktop {
      max-width: 90% !important
  }

  .logo-area,
  .header-info {
      flex-basis: 100% !important
  }

  .map-container .wp-block-buttons {
      justify-content: center !important
  }

  .map-container iframe {
      height: unset !important
  }

  .map-details {
      box-shadow: unset !important;
      padding: unset !important;
      position: relative !important;
      right: unset !important;
      text-align: center;
      top: unset !important;
      transform: unset !important
  }

  .primary-text-area {
      max-width: 80% !important
  }
  
}

@media only screen and (max-width:870px) {
  .service {
      margin: 0 auto
  }

  .service-container {
      flex-wrap: wrap !important
  }

  .service-container>div {
      flex-basis: 40% !important
  }
}

@media only screen and (max-width: 781px) {
.center:not(.keep-mobo-padding) {
    padding-bottom: 0 !important;
    padding-top: 0 !important
  }

  .home .wp-block-buttons {
      justify-content: center !important
  }

  .home .wp-site-blocks > .wp-block-columns * {
      text-align: center !important
  }

  .home .wp-site-blocks>.wp-block-columns,
  .home .wp-site-blocks>.wp-block-columns :not(.wp-block-button__link) {
      padding-left: 0 !important;
      padding-right: 0 !important
  }

  .home>.wp-site-blocks>.wp-block-columns .wp-block-cover {
      padding-bottom: 20px !important;
      padding-top: 20px !important
  }

  .large-width-desktop, .large-width-desktop > * {
      margin: 0 auto !important;
      max-width: 90% !important
  }

  .large-width-mobile>div {
      max-width: 90% !important
  }

  .wp-block-columns.left-right-inner {
      max-width: 90% !important;
      flex-wrap: wrap !important;
  }

  .wp-block-columns.left-right-inner .large-width-desktop {
      width: 100% !important
  }

  .standard-section-margin {
      margin: unset !important
  }


  .wp-block-columns.left-right-inner>div {
      flex-basis: 100% !important
  }

  .mobile-center * {
      justify-content: center !important;
      text-align: center !important
  }

  .mobile-cover-padding-drop .wp-block-cover {
      padding-bottom: 0 !important;
      padding-top: 0 !important
  }

  .mobile-small img {
      max-height: 600px;
      object-fit: contain !important;
      padding-top: 60px !important
  }
  .footer-contacts>.wp-block-column>p {
      text-align: center
  }

  .footer-contacts>.wp-block-column>ul {
      justify-content: center !important
  }

  .wp-block-button__link {
      font-size: 16px !important
  }
}

@media only screen and (max-width: 660px) {
  .banner-text {
      bottom: 0 !important
  }

  .banner-text h2 {
      font-size: 20px !important
  }

  .header-main-row {
      padding-left: 0 !important;
      padding-right: 0 !important
  }
}

@media only screen and (min-width: 599px) {
  .shiftnav-toggle {
      display: none !important
  }
}

@media only screen and (max-width: 599px) {
  .header-main-container{
    gap:0 !important;
  }
  .full-width-mobile {
      border: none !important;
      max-width: 100% !important;
      padding: 0 !important
  }

  .wp-block-navigation__container li {
      display: block
  }

  header .custom-logo-link img {
      object-fit: contain;
      width: 100%
  }
}

@media only screen and (min-width: 481px) {
  .top-img {
      left: 50%;
      position: absolute;
      top: 0;
      transform: translate(-50%, -50%)
  }
}

@media only screen and (max-width: 480px) {
  .center:not(.keep-mobo-padding) {
      padding-bottom: 0 !important;
      padding-top: 0 !important
  }

  .home .wp-block-buttons {
      justify-content: center !important
  }

  .home .wp-site-blocks * {
      text-align: center !important
  }

  .home .wp-site-blocks>.wp-block-columns,
  .home .wp-site-blocks>.wp-block-columns :not(.wp-block-button__link) {
      padding-left: 0 !important;
      padding-right: 0 !important
  }

  .home>.wp-site-blocks>.wp-block-columns .wp-block-cover {
      padding-bottom: 20px !important;
      padding-top: 20px !important
  }

  .large-width-desktop {
      margin: 0 auto !important;
      max-width: 90% !important
  }

  .large-width-mobile>div {
      max-width: 90% !important
  }

  .wp-block-columns.left-right-inner {
      max-width: 90% !important
  }

  .wp-block-columns.left-right-inner .large-width-desktop {
      width: 100% !important
  }

  .standard-section-margin {
      margin: unset !important
  }

  h2 {
      font-size: 24px !important
  }
.footer-contact-col *{
  text-align:center !important;
}

footer .wp-block-navigation__container{
  gap:8px !important;
}
}


a{
transition: all 0.5s;
-ms-transition: all 0.5s;
-webkit-transition: all 0.5s;
}
p a:hover {
  color: #29bac0;
}
.wp-site-blocks .wp-block-heading{
  color: #505657!important;
  font-weight: 400!important;
}
.wp-site-blocks .has-x-large-font-size,
body h2,
body h2.wp-block-post-title{
  font-size: 40px!important;
}
.wp-site-blocks .has-large-font-size,
body h3{
  font-size: 34px!important;
}
.wp-site-blocks .has-medium-font-size,
body h4{
  font-size: 24px!important;
}
.wp-site-blocks .has-small-font-size {
  font-size: 16px!important;
}
.animated {
  -webkit-animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-duration: 1s;
  animation-fill-mode: both
}
@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}
.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}

@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}
.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}

@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}
.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}
body.search .wp-block-columns.banner{
  display: none;
}
.showMobile{
  display: none!important;
}
.ge-service-list{
  border-left: 3px solid #000;
  padding-left: 20px;
  padding-bottom: 0;    
}
.ge-service-list .wp-block-column {
  padding-left: 20px!important;
  border-left: 2px solid #000;
  margin-left: 30px;
  margin-bottom: 30px;
  padding-bottom: 0!important;
}
.ge-service-list h2{
  margin-bottom: 10px!important;
}
.ge-service-list h2 a{
  text-decoration: none!important;
}
.ge-service-list h2 a:hover{
  text-decoration: underline!important;
}
.margin-top-0{
  margin-top: 0!important;
}
.margin-top-5{
  margin-top: 5px!important;
}
.margin-top-10{
  margin-top: 10px!important;
}
.margin-top-15{
  margin-top: 15px!important;
}
.margin-top-20{
  margin-top: 20px!important;
}
.margin-top-30{
  margin-top: 30px!important;
}
.margin-bottom-0{
  margin-bottom: 0!important;
}
.margin-bottom-5{
  margin-bottom: 5px!important;
}
.margin-bottom-10{
  margin-bottom: 10px!important;
}
.margin-bottom-15{
  margin-bottom: 15px!important;
}
.margin-bottom-20{
  margin-bottom: 20px!important;
}
.margin-bottom-30{
  margin-bottom: 30px!important;
}
/**Header anim*/
.top-header.fixed-nav{
  opacity: 0;
  padding-bottom: 0!important;
  top: -100%!important;
  transition: top 0.4s, opacity 0.4s;
  transition-timing-function: ease-out;
}
.top-header.fixed-nav.onView {
  visibility: visible!important;
  z-index: 999!important;
  opacity: 1;
  top: 0!important;
  box-shadow: 0px 1px 7px #00000029;
}

.top-header .wp-block-site-logo a,
.top-header .wp-block-site-logo a img{
  vertical-align: top;
}
.header-nav .wp-block-site-logo a img{
  height: 113px;
  width: initial!important;
  transition: height 0.4s ease-out;
}
body .top-header.fixed-nav .wp-block-site-logo a img{
  height: 70px;
}
body .top-header.fixed-nav nav{
  margin-top: 0;
}
/** Header nav*/
.header-address{}
.header-nav{}

/**
Buttons
*/
.wp-block-button .wp-block-button__link {
  border: 0!important;
  background: #76cbc9;
  background: linear-gradient(180deg,#76cbc9 0%,#2abac0 100%);
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px!important;
  padding-left: 30px;
  padding-right: 30px;
}
.home .imgTextBox-section .imgText-text-block a.wp-block-button__link:hover{
  color: #000!important;
}
.wp-block-button.ge-button-style-1:hover .wp-block-button__link{
  color: #fff!important;
}
.ge-button-style-1 > a:hover{
  background-color: #000!important;
  color: #fff!important;
}
.wp-block-button.ge-button-style-2 .wp-block-button__link{
  border: 2px solid #fff!important;
}
.td-button-style-2 > a:hover{
  background-color: #fff!important;
  color: #000!important;
}
.wp-block-social-links.is-style-logos-only .wp-social-link svg {
  height: 42px;
  width: 42px;
}

/** Home banner*/
.home .wp-block-columns.banner .set-banner-height {
  max-height: 580px!important;
  min-height: 580px!important;
}
/*.home .banner-text {
  border-radius: 1px;
  background-color: #fffc;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 60px!important;
  padding-right: 20px!important;
  padding-bottom: 60px!important;
  padding-left: 20px!important;
  display: block;
  width: 38%!important;
}
*/
.home .banner .banner-text{
  max-width: 900px!important;
  width: 100%!important;
  /* left: 8%!important; */
  /* right: initial!important; */
}
.home .banner .banner-text .banner-caption {
  flex-basis: 100%!important;
}
.home .banner .banner-text h2 {
  font-size: 50px!important;
  line-height: 62px!important;
  margin-bottom: 30px!important;
  margin-top: 0!important;
}
.home .banner .banner-text .banner-btn{
  transform: translate(-50%,0);
}

body:not(.home) .banner .banner-text {
  display: block;
  max-width: 900px;
  width: 100%;
}
body:not(.home) .banner .banner-text h2 {
  font-size: 50px!important;
  line-height: 62px!important;
  color: #505657;
  width: 100%;
  text-transform: uppercase;
}
body:not(.home) .banner .banner-text h1 {
  margin-top: 5px!important;
  margin-bottom: 10px!important;
}
body:not(.home) .banner .banner-text h2{}
body:not(.home) .banner .banner-text .banner-caption{
  padding: 0!important;
  padding-top: 30px!important;
}
body:not(.home) .banner .banner-text .banner-btn {
  display: block;
  position: static;
  transform: initial;
}
body:not(.home) .banner .banner-text .banner-btn .wp-block-button{
  display: flex;
  justify-content: center;    
}

.home .wp-site-blocks > .wp-block-columns .wp-block-buttons {
  margin-top: 3rem !important
}

.imgTextBox-section > .wp-block-column{
  max-width: 1200px!important;
}
.imgTextBox-section .left-imgText .imgText-image-block{
  margin-left: -3%!important;
}
.imgTextBox-section .right-imgText .imgText-image-block{
  margin-right: -3%!important;
}
.imgTextBox-section .left-imgText .imgText-text-block{
  padding-right: 20px;
}
.imgTextBox-section .right-imgText .imgText-text-block{
  padding-left: 20px;
}

/*xs-header*/
.header-nav nav .wp-block-navigation__responsive-container-content > ul.wp-block-navigation__container > li > a{
  padding-left: 2px;
  padding-right: 2px;
  padding-bottom: 2px;
}
.header-nav nav .wp-block-navigation__responsive-container-content > ul.wp-block-navigation__container > li > ul{}
.header-nav nav .wp-block-navigation__responsive-container-content > ul.wp-block-navigation__container > li > ul > li{}
.header-nav nav .wp-block-navigation__responsive-container-content > ul.wp-block-navigation__container > li > ul > li > ul{}
.wp-block-navigation__responsive-container-close svg,
.top-header .wp-block-navigation__responsive-container-close svg, 
.top-header .wp-block-navigation__responsive-container-open svg {
  fill: #fff!important;
}
.header-nav.fixed-nav .wp-block-navigation__responsive-container-open,
.top-header .wp-block-navigation .wp-block-navigation__responsive-container-open {
  position: relative;
}
.header-nav.fixed-nav .wp-block-navigation__responsive-container-open svg ,
.top-header .wp-block-navigation .wp-block-navigation__responsive-container-open svg {
  display: none;
}
.header-nav.fixed-nav .wp-block-navigation__responsive-container-open::before,
.header-nav.fixed-nav .wp-block-navigation__responsive-container-open::after,
.top-header .wp-block-navigation .wp-block-navigation__responsive-container-open::before, 
.top-header .wp-block-navigation .wp-block-navigation__responsive-container-open::after {
  content: '';
  width: 30px;
  height: 4px;
  background: #000;
  border-radius: 3px;
  display: block;
}
.header-nav.fixed-nav .wp-block-navigation__responsive-container-open::after,
.top-header .wp-block-navigation .wp-block-navigation__responsive-container-open::after {
  margin-top: 24px;
}
.has-modal-open.is-menu-open li a[aria-current=page] {
  color: #2fbbc0!important;
}
.header-nav .wp-block-navigation-item>a>span::after {
  background-color: #505657;
}
.top-header .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
  font-size: 18px;
}
.top-header .wp-block-site-logo a{
  display: inline-block;
}
.header-address > .wp-block-column > .wp-block-columns{
  gap: initial;
}
.wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation__submenu-container {
  padding-top: 0!important;
  display: block;
  opacity: 1!important;
  visibility: visible!important;
  height: initial!important;
}
.top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation__submenu-container li a{
  font-size: 16px!important;
}

header .wp-block-navigation-submenu .wp-block-navigation-item:hover>a>span::after{
  width: 90%!important;
}
.wp-block-navigation .wp-block-navigation > li > .wp-block-navigation__submenu-icon {
  margin-top: -6px;
}
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation__submenu-icon {
  margin-top: -2px;
}
nav.wp-block-navigation.show-mobile ul.wp-block-navigation li.has-child li.has-child ul.wp-block-navigation-submenu{
  padding-top: 10px!important;    
}

.button-font-size .wp-block-button .wp-block-button__link {
  font-size: 16px!important;
}


/*
footer
*/
.footer-map{
  position: relative;
}
.footer-map .map-details {
  position: absolute!important;
  right: 10%!important;
  top: 65px!important;
}
.footer-map .map-details {
  position: absolute;
  right: 10%;
  top: 65px;
  padding: 90px 160px 90px 120px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px!important;
}
.footer-map .map-details h1{
  color: #000!important;
  font-size: 18px!important;
  margin-bottom: 0!important;
}
.footer-map iframe {
  min-height: initial!important;
  height: 830px!important;
  vertical-align: top;
}
.footer-btm nav.wp-block-navigation {
  padding: 6px 10px 0;
}
.footer-btm nav>ul.wp-block-navigation__container {
  gap: initial!important;
  margin: 0 -8px;
  justify-content: center!important;
  align-items: center
}

.footer-btm nav>ul.wp-block-navigation__container>li {
  padding: 0 8px;
  position: relative
}

.footer-btm nav>ul.wp-block-navigation__container>li:not(:last-child):after {
  content: "";
  position: absolute;
  height: 18px;
  width: 2px;
  background: #fff;
  right: 0;
  top: 50%;
  transform: translate(50%,-50%);
  -webkit-transform: translate(50%,-50%);
  -ms-transform: translate(50%,-50%)
}
.footer-btm nav>ul.wp-block-navigation__container>li a{
  font-size: 18px;
}
.ftr-img-block  .wp-block-image a{
  display: inline-block;
}
.ftr-img-block .wp-block-image img{
  width: auto!important;
  height: auto!important;
}

/*
blog-post
*/
ul.wp-block-latest-posts__list li {
  padding: 0 13px;
  box-sizing: border-box;
}
ul.wp-block-latest-posts__list li .blog-preview {
  background-color: #e5e5e5;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.blog-preview .wp-block-latest-posts__post-date {
  background: linear-gradient(180deg,#75cbc9 39%,#2dbbc0 100%);
  font-size: 19.5px;
  line-height: 1;
  padding: 15.5px 26px;
}
.blog-preview .wp-block-latest-posts__post-title{
  padding: 28px 26px 24px;
  line-height: 1;
  font-size: 21.5px;
  color: #000;
}
.blog-preview .wp-block-latest-posts__post-excerpt {
  font-size: 15px;
  padding: 0 26px 38px;
  margin: 0;
}

/**
Design
*/
.background-overlay-parallax{
  background-color: #505657;
  width: 93%;
}
.background-overlay img{
  box-shadow: initial;
}
.home .imgTextBox-section .imgText-text-box .wp-block-buttons {
  margin-top: 35px!important;
}
.home .imgTextBox-section .imgText-text-block *{
  color: #fff!important;
}
.hasXXLTitle h2{
  font-size:45px!important;
}
.wp-site-blocks .hasXXLTitle h2{
  color:#fff!important;
}
.wp-site-blocks .hasXXLTitle h3 {
  font-size: 25px!important;
  margin-top: 5px!important;
  line-height: 1.4;
  color:#fff!important;
}
.geSectionUsp .geContainer{
  flex-basis: 70%!important;
}
.geSectionUsp figure.wp-block-image a {
  height: 115px;
  width: 115px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.geSectionUsp figure.wp-block-image a img {
  max-width: 65px;
  max-height: initial;
  height: auto!important;
}
.geSectionUsp figure.wp-block-image a:hover {
  box-shadow: 0 7px 12px -7px #000;
  transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
}
.geSectionUsp p {
  font-size: 20px;
  line-height: 1.2!important;
  margin-top: 17px;
}
.geSectionUsp a {
  text-decoration: none!important;
}
.geSectionUsp{
  padding: 50px 20px 35px!important;
}

.geSectionUsp + .imgTextBox-section .background-overlay-parallax{
  height: 140%;
  top: 40%;
}

.section-gallery .wp-block-image{
  width: 25%!important;
  margin: 0!important;
  padding: 0 35px;
}
.section-gallery figure.wp-block-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: initial!important;
  margin: 0 -35px;
}
.testimonial-block-sec .wp-block-group {
  max-width: 920px;
  width: 100%;
}
.sp-testimonial-free-section .sp-testimonial-client-testimonial {
  position: relative;
  padding: 10px 100px 20px;
}
.sp-testimonial-free-section .sp-testimonial-client-testimonial:before {
  content: '“';
  position: absolute;
  left: 0;
  top: 0;
  font-size: 121px;
  font-family: var(--wp--preset--font-family--montserratregular);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: 70px;
  line-height: 45px;
  transition: opacity .4s;
  color: #505657;
  opacity: 0;
}
.sp-testimonial-free-section .sp-testimonial-client-testimonial:after {
  content: '“';
  position: absolute;
  right: 0;
  bottom: 10px;
  font-size: 121px;
  font-family: var(--wp--preset--font-family--montserratregular);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: 70px;
  line-height: 25px;
  opacity: 0;
  transition: opacity .4s;
  color: #505657;
  transform: scaleX(-1);
}
.sp-testimonial-free-section .swiper-slide-active .sp-testimonial-client-testimonial:before,
.sp-testimonial-free-section .swiper-slide-active .sp-testimonial-client-testimonial:after{
  transition-delay: 0.4s;
  opacity: 1;
}

.wp-site-blocks .section-gallery h1,
.wp-site-blocks .testimonial-block-sec h1,
.wp-site-blocks .TextBox-section h1{
  color: #000!important;
}

footer nav.wp-block-navigation ul li a:hover, 
.a-hover a:hover {
  color: #29bac0!important;
}
.wp-site-blocks>.wp-block-template-part .header-nav{
  padding-bottom:0!important;
}
/**Utility classes*/
.home .wp-site-blocks .textLeft,
.home .wp-site-blocks .textLeft *{
  text-align: left!important;
}

/*header css*/
.wp-block-navigation .has-child:hover>.wp-block-navigation__submenu-container{
  width:280px!important
}
.wp-block-navigation > li.wp-block-navigation-submenu > ul.wp-block-navigation__submenu-container > li > a{
  font-size: 16px!important;
}
.wp-block-navigation > li.wp-block-navigation-submenu > ul.wp-block-navigation__submenu-container > li > ul > li > a{
  font-size: 15px!important;
  text-transform: capitalize;
} 
.home .wp-block-columns.banner .set-banner-height img{
  object-position: 65% 100%;
}
.top-header .header-nav .wp-block-navigation,
.top-header .header-nav{
  margin-top:10px;
}

.wp-block-navigation__container {
  gap: 2px 25px;
}

/**404/Search/Blog fixes*/
.error404 .banner{
  display: none!important;
}
.error404 main{
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 900px!important;
}
.error404 main > .wp-block-group{
  width: 100%;
  padding-left: 20px;
  padding-right: 20px; 
}

.search-results .wp-block-post-title,
.archive .wp-block-post-title,
body.single-post .wp-block-post-title{
  display: block!important;
  font-weight: normal!important;
}
.search-results .wp-block-post-title a,
.archive .wp-block-post-title a,
body.single-post .wp-block-post-title a{
  line-height: 1.2!important;
  text-decoration: none!important;
}
.search-results .wp-block-post-title a:hover,
.archive .wp-block-post-title a:hover,
body.single-post .wp-block-post-title a:hover{
  text-decoration: underline!important;
}
.search-results .geSearchForm{
  margin-top: 80px!important;
  padding-left: 20px;
  padding-right: 20px;    
}
.wp-block-query-pagination-numbers .page-numbers {
  padding: 5px;
  width: 16px;
  display: inline-block;
  line-height: 1;
  height: 16px;
  text-align: center;
}
.wp-block-query-pagination-numbers .page-numbers.current {
  background: #29bac0!important;
  color: #fff;
}
.wp-block-query-pagination .wp-block-query-pagination-previous:hover,
.wp-block-query-pagination .wp-block-query-pagination-next:hover{
  color: #29bac0!important;
}

/* @media(max-width:1399px){
  .home .banner .banner-text {
      max-width: 550px!important;
      left: 0%!important;
      top: 50%!important;
      transform: translateY(-50%)!important;
  }
} */
@media(max-width:1299px){
  .geSectionUsp .geContainer{
      flex-basis: 90%!important;
  }    
}
@media(max-width:1199px){
  .top-header .header-nav .wp-block-site-logo a img {
      height: 100px!important;
  }
  .top-header .header-nav .wp-block-navigation,
  .top-header .header-nav{
      margin-top:10px;
  }
  .wp-site-blocks .has-x-large-font-size,
  body h2,
  body h2.wp-block-post-title{
      font-size: 32px!important;
  }
  .wp-site-blocks .has-large-font-size,
  body h3{
      font-size: 26px!important;
  }
  .wp-site-blocks .has-medium-font-size,
  body h4{
      font-size: 20px!important;
  }
  
  .home .banner .banner-text h2 ,
  body:not(.home) .banner .banner-text h2{
      font-size: 40px!important;
      line-height: 50px!important;
  }
  /* .home .banner .banner-text {
      max-width: 400px!important;
      left: 0%!important;
      top: 50%!important;
      transform: translateY(-50%)!important;
  } */
  .home .banner .banner-text .banner-caption {
      padding-left: 20px!important;
      padding-right: 20px!important;
  }
  .home .banner .banner-text .banner-caption{
      padding-top: 0!important;
  }
  .home .wp-block-columns.banner .set-banner-height {
      max-height: 480px!important;
      min-height: 480px!important;
  }
  .home .wp-block-columns.banner .set-banner-height img{
      object-position: 65% 100%;
  }
  
  body:not(.home) .wp-block-columns.banner .set-banner-height {
      min-height: 320px!important;
      max-height: 320px!important;
  }
  
  .geSectionUsp p{
      font-size: 18px!important;
  }
  
  .imgTextBox-section .right-imgText,
  .imgTextBox-section .left-imgText{
      flex-basis: 95%!important;
  }
  
  .wp-site-blocks .hasXXLTitle h2{
      font-size: 35px!important;
  }
  .wp-site-blocks .hasXXLTitle h3 {
      font-size: 20px!important;
  }
  
  .sp-testimonial-free-section .sp-testimonial-client-testimonial {
      padding: 10px 70px 20px;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:before ,
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:after{
      font-size: 110px;
  }
  
  .section-gallery .wp-block-image {
      padding: 0 28px;
  }
  .section-gallery figure.wp-block-gallery{
      margin:0 -28px;
  }
  .section-gallery figure.wp-block-gallery:not(:last-of-type){
      margin-bottom:65px!important;
  }
  
  .blog-preview .wp-block-latest-posts__post-date{
      font-size: 16px!important;
  }
  .blog-preview .wp-block-latest-posts__post-title{
      font-size: 20px!important;
  }
  
  .footer-map .map-details {
      right: 8%!important;
      top: 50px!important;
      padding: 60px 120px 60px 70px!important;
  }
  .ftr-post-wrap{
      padding-top: 70px!important;
      padding-bottom: 70px!important;
  }
  .footer-map iframe {
      height: 760px!important;
  }
  .ftr-img-block .wp-block-image img{
      max-width: 180px!important;
      width:100%!important;
  }
}
@media only screen and (max-width:980px) {
  header .wp-block-navigation-submenu .wp-block-navigation-item:hover>a>span::after {
      width: 0%!important;
  }
  .showMobile {
      display: inline-block!important;
      vertical-align: top;
  }
  .hideMobile {
      display: none!important;
  }
  .home .mobileImgText h1{
      margin-bottom: 0!important;
  }
  .header-nav.fixed-nav .wp-block-navigation .wp-block-navigation__responsive-container-open,
  .top-header .wp-block-navigation .wp-block-navigation__responsive-container-open{
      display: block!important;
  }
  .top-header .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
      font-size: 22px;
  }
  .top-header .wp-block-group.header-nav{
      margin-top: 0;
  }
  .header-nav.fixed-nav > .wp-block-columns > .wp-block-column,
  .top-header .wp-block-group.header-nav > .wp-block-columns > .wp-block-column {
      padding: 10px 20px!important;
  }
  .top-header .header-nav .wp-block-site-logo a img {
      height: 90px!important;
  }
  .header-nav.fixed-nav .wp-block-column .wp-block-navigation,
  .top-header .wp-block-group.header-nav .wp-block-navigation {
      padding-right: 0;
  }
  header nav.wp-block-navigation .wp-block-navigation__responsive-container-content > ul > li,
  .header-nav nav.wp-block-navigation .wp-block-navigation__responsive-container-content > ul > li{
      width: 100%;
  }
  footer nav.wp-block-navigation ul.wp-block-navigation__container{}
  .top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
      padding-top: 10px!important;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item {
      font-size: 18px!important;
  }
  .top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item {
      padding-bottom: 10px;
  }
  .wp-block-group.header-nav > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column:first-child{
      display: none;
  }
  .wp-block-group.header-nav > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column.hdr-logo-col{
      flex-basis: 80%!important;
  }
  .wp-block-group.header-nav > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column.hdr-menu-col{
      flex-basis: 20%!important;
  }
  .wp-block-group.header-nav>.wp-block-columns>.wp-block-column>.wp-block-columns>.wp-block-column{
      
  }
  .wp-block-group.header-nav .wp-block-site-logo{
      text-align: left;
  }
  .has-modal-open.is-menu-open .wp-block-navigation{
      padding: 10px 20px!important;
  }
  .top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container li a {
      font-size: 18px!important;
  }
  .top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation__submenu-container{
      padding-top: 0!important;
  }
  .top-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container li a::after{
      content: none!important;
  }
  .top-header .header-nav .wp-block-navigation, 
  .top-header .header-nav {
      margin-top: 0px;
  }
  
  .geSectionUsp .geContainer{
      flex-basis: 100%!important;
  }
  .geSectionUsp figure.wp-block-image a {
      height: 85px;
      width: 85px;
  }
  .geSectionUsp figure.wp-block-image a img {
      max-width: 45px;
      max-height: 45px;
  }
  .geSectionUsp p {
      font-size: 16px!important;
      margin-top: 10px;
  }
  
  .home .wp-block-columns.banner .set-banner-height {
      max-height: 420px!important;
      min-height: 420px!important;
  }
  .home .banner .banner-text h2 ,
  body:not(.home) .banner .banner-text h2{
      font-size: 34px!important;
      line-height: 42px!important;
  }
  body:not(.home) .banner .banner-text {
      transform: translate(-50%,-50%)!important;
      top: 50%!important;
      left: 50%!important;
      min-height: 160px;
  }
  body:not(.home) .wp-block-columns.banner .set-banner-height {
      min-height: 300px!important;
      max-height: 300px!important;
  }

  
  .sp-testimonial-free-section .sp-testimonial-client-testimonial {
      padding: 10px 50px 20px;
      /*margin-bottom: 0;*/
  }
  .sp-testimonial-free-section{
      margin: 0 20px!important;
  }
  .testimonial-block-sec .large-width-desktop {
      max-width: 100%!important;
  }
  
  .section-gallery .wp-block-image {
      padding: 0 20px;
  }
   .section-gallery figure.wp-block-gallery{
      margin:0 -20px;
  }
  .section-gallery figure.wp-block-gallery:not(:last-of-type){
      margin-bottom:50px!important;
  }
  
  .footer-map .map-details {
      right: 5%!important;
      top: 50px!important;
      padding: 50px 70px 50px 70px!important;
      text-align: left;
  }
  .footer-map iframe {
      height: 690px!important;
  }
  .ftr-post-wrap {
      padding-top: 50px!important;
      padding-bottom: 50px!important;
  }
  .blog-preview .wp-block-latest-posts__post-excerpt {
      padding: 0 20px 30px;
  }
  .blog-preview .wp-block-latest-posts__post-title {
      padding: 20px 20px 20px;
  }
  .blog-preview .wp-block-latest-posts__post-date {
      line-height: 1;
      padding: 15.5px 20px;
  }
  ul.wp-block-latest-posts__list li {
      padding: 0 10px;
  }
  .map-details .wp-block-spacer,
  .footer-post-block .wp-block-spacer{
      height: 20px!important;
  }
}
@media(max-width: 820px){
  .wp-site-blocks .has-x-large-font-size,
  body h2,
  body h2.wp-block-post-title{
      font-size: 28px!important;
  }
  .wp-site-blocks .has-large-font-size,
  body h3{
      font-size: 24px!important;
  }
  
  .home .wp-block-columns.banner .set-banner-height {
      max-height: 350px!important;
      min-height: 350px!important;
  }
  .home .wp-block-columns.banner .set-banner-height img{
      object-position: 80% 100%;
  }
  .home .wp-block-cover__inner-container .banner-text{
      justify-content: center;
  }
  .home .wp-block-cover__inner-container .banner-text .banner-caption,
  .home .wp-site-blocks > .wp-block-columns.testimonial-block-sec .wp-block-cover,
  .home .wp-site-blocks > .wp-block-columns.section-gallery{
      padding-left: 20px!important;
      padding-right: 20px!important;
  }
  .home .wp-block-cover__inner-container .banner-text .banner-btn{
      position: initial;
      transform: initial!important;
  }
  .home .wp-block-cover__inner-container .banner-text .banner-btn .wp-block-button{
      width: initial;
  }
  .home .banner-text h2 ,
  body:not(.home) .banner .banner-text h2{
      font-size: 34px!important;
      line-height: 42px!important;
  }
  body:not(.home) .wp-block-columns.banner .set-banner-height {
      min-height: 260px!important;
      max-height: 260px!important;
  }
  
  .wp-block-latest-posts__list.wp-block-latest-posts.columns-3 li,
  .wp-block-latest-posts__list li {
      padding: 0;
      width: 100%!important;
      margin-bottom: 30px!important;
      
  }
  .wp-block-latest-posts__list {
      margin: 0 auto;
      max-width: 400px;
  }
  
  .home .wp-site-blocks .sp-testimonial-free-section .sp-testimonial-client-testimonial {
      padding-left:40px!important;
      padding-right:40px!important;
  }
  .home .wp-site-blocks > .wp-block-columns.testimonial-block-sec .wp-block-cover{
      padding-top:50px!important;
      padding-bottom:50px!important;
  }
  .home .wp-site-blocks > .wp-block-columns.testimonial-block-sec .wp-block-cover .keep-mobo-padding{
      padding-top:50px!important;
      padding-bottom:50px!important;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:before, 
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:after {
      font-size: 100px;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:before {
      height: 65px;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:after {
      bottom: 15px;
  }
  
  .section-gallery .wp-block-image {
      padding: 0 15px;
  }
  .section-gallery figure.wp-block-gallery{
      margin:0 -15px;
  }
  .section-gallery figure.wp-block-gallery:not(:last-of-type){
      margin-bottom:40px!important;
  }
  
  .footer-map .map-details {
      position: static!important;
      margin: 20px;
  }
  .footer-map iframe {
      height: 500px!important;
  }
  .map-details .wp-block-buttons {
      justify-content: flex-start!important;
      padding-top: 20px;
  }
  .ftr-img-block .wp-block-image img{
      max-width: 160px!important;
      width:100%!important;
  }

  .home .wp-block-columns.banner .set-banner-height {
      max-height: initial!important;
      min-height: initial!important;
      display: block;
  }
  .home .wp-block-columns.banner .set-banner-height span.has-background-dim{
      display: none;
  }
  .home .wp-block-columns.banner .set-banner-height img {
      object-position: 80% 100%;
      position: static!important;
      height: 350px!important;
  }
  .home .wp-block-cover__inner-container .banner-text {
      position: static!important;
      transform: initial!important;
      width: 100%!important;
      max-width: 100%!important;
  }
  .home .wp-block-cover__inner-container .banner-text .banner-caption {
      padding-top: 40px!important;
  }

}
@media(max-width: 781px){
  .top-header .header-nav .wp-block-site-logo a img {
      height: 80px!important;
  }
  
  .wp-site-blocks .has-x-large-font-size,
  body h2,
  body h2.wp-block-post-title{
      font-size: 26px!important;
  }
  .wp-site-blocks .has-large-font-size,
  body h3{
      font-size: 22px!important;
  }
  .wp-site-blocks .has-medium-font-size,
  body h4{
      font-size: 18px!important;
  }
  
  .home .banner .banner-text h2,
  body:not(.home) .banner .banner-text h2{
      font-size: 28px!important;
      line-height: 38px!important;
  }
  .home .banner-text h2 br{
      display: none;
  }
  
  .footer-btm-wrap p,
  .footer-btm-wrap a,
  .footer-btm-wrap p a,
  .header-address p,
  .header-address a,
  .header-address p a,
  .footer-map .map-details h1,
  .footer-map .map-details p,
  .footer-map .map-details p a,
  .footer-map .map-details a{
      font-size: 16px!important;
  }

  .home .wp-site-blocks > .wp-block-columns.geSectionUsp,
  .home .wp-site-blocks > .wp-block-columns.TextBox-section .wp-block-cover{
      padding-left: 20px!important;
      padding-right: 20px!important;
  }
  .geSectionUsp .geContainer .geColWrap {
      flex-wrap: wrap!important;
      display: flex;
      gap: 30px 30px;
      justify-content: center;
  }
  .geSectionUsp .geContainer .geColWrap .usp-grid {
      width: calc(33.33% - 30px);
      flex-basis: initial;
      flex-grow: initial;
  }
  
  .home .wp-site-blocks > .wp-block-columns.TextBox-section .wp-block-cover{
      padding-top: 60px!important;
      padding-bottom: 60px!important;
  }
  
  .wp-site-blocks .hasXXLTitle h2 {
      font-size: 28px!important;
  }
  .wp-site-blocks .hasXXLTitle h3 {
      font-size: 18px!important;
  }
  
  .home .wp-site-blocks > .wp-block-columns.section-gallery .wp-block-image {
      padding-left:13px!important;
      padding-right:13px!important;
  }
  .home .wp-site-blocks > .wp-block-columns.section-gallery figure.wp-block-gallery{
      margin-left:13px!important;
      margin-right:13px!important;
      margin-bottom:35px!important;
  }
  .home .wp-site-blocks > .wp-block-columns.section-gallery{
      padding-top: 60px!important;
      padding-bottom: 60px!important;
  }
  
  .footer-map iframe {
      height: 450px!important;
  }
  .ftr-img-block .wp-block-image img{
      max-width: 150px!important;
      width:100%!important;
  }
  body .wp-site-blocks .wp-block-columns.apply-mobile-padding,
  body .wp-site-blocks .wp-block-columns .wp-block-column.apply-mobile-padding{
      padding-left: 20px!important;
      padding-right: 20px!important;
  }

  .search-results .geSearchForm{
      padding-bottom: 30px!important;
  }
  .error404 main .wp-block-search__inside-wrapper{
      width: 100%!important;
  }

}

@media(max-width: 575px){
  .top-header .header-nav .wp-block-site-logo a img {
      height: 70px!important;
  }
  .wp-block-button .wp-block-button__link{
      height: 50px;
      padding-left: 20px;
      padding-right: 20px;
  }
  .button-font-size .wp-block-button .wp-block-button__link,
  .wp-block-buttons .wp-block-button .wp-block-button__link{
      font-size: 14px!important;
  }

  .header-nav.fixed-nav .wp-block-navigation__responsive-container-open::after,
  .top-header .wp-block-navigation .wp-block-navigation__responsive-container-open::after {
      margin-top: 16px;
  }
  
  .home .wp-site-blocks > .wp-block-columns.section-gallery .wp-block-image {
      padding-left:13px!important;
      padding-right:13px!important;
      margin-bottom:26px!important;
      width:50%!important;
  }
  .home .wp-site-blocks > .wp-block-columns.section-gallery figure.wp-block-gallery{
      margin-left:-13px!important;
      margin-right:-13px!important;
      margin-bottom:0px!important;
  }
  .home .wp-site-blocks>.wp-block-columns.section-gallery .wp-block-social-links{
      margin-top:0!important;
  }
  
  .footer-map .map-details {
      padding: 50px 50px!important;
  }
  .footer-map iframe {
      height: 400px!important;
  }
  .ftr-post-wrap {
      padding-top: 50px!important;
      padding-bottom: 36px!important;
  }
  .footer-btm nav.wp-block-navigation {
      padding: 10px 0 0;
  }
  .ftr-img-block .wp-block-image img{
      max-width: 140px!important;
      width:100%!important;
  }
  
  .home .TextBox-section h2 br,
  .home .wp-site-blocks .wp-block-columns.hasXXLTitle h2 br,
  .home .wp-site-blocks .wp-block-columns.hasXXLTitle h3 br{
      display: none;
  }
}
@media(max-width: 480px){
  .home2 .wp-block-columns.banner .set-banner-height {
      max-height: 280px!important;
      min-height: 280px!important;
  }
  .home .wp-block-columns.banner .set-banner-height img{
      height: 280px!important;
  }

  .sp-testimonial-free-section {
      margin: 0 0px!important;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:before, 
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:after {
      font-size: 80px;
  }
  .home .wp-site-blocks .sp-testimonial-free-section .sp-testimonial-client-testimonial {
      padding-left: 30px!important;
      padding-right: 30px!important;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:before {
      height: 62px;
  }
  .sp-testimonial-free-section .sp-testimonial-client-testimonial:after {
      bottom: 20px;
  }
  
  .footer-map iframe {
      height: 300px!important;
  }
  .has-modal-open.is-menu-open .wp-block-navigation-submenu>a::after {
      transform: translateX(20%);
  }
  .has-modal-open.is-menu-open .open>a::after {
      transform: rotate(90deg)translateY(-20%)!important;
  }
  .top-header .header-nav .wp-block-site-logo a img {
      height: 60px!important;
  }
  .wp-block-group.header-nav>.wp-block-columns>.wp-block-column>.wp-block-columns>.wp-block-column.hdr-logo-col .wp-block-site-logo{
      text-align: left!important;
  }
  .footer-map .map-details {
      padding: 40px 30px!important;
  }
  .map-details .wp-block-buttons {
      justify-content: center!important;
  }
  .map-details .wp-block-buttons .wp-block-button a{
      width: 100%!important;
  }
  .footer-btm-wrap{
      padding-right: 20px!important;
      padding-left: 20px!important;
  }
  .footer-post-block .wp-block-spacer {
      height: 15px!important;
  }
  .footer-map iframe {
      height: 400px!important;
  }
  .footer-btm > p,
  .footer-btm nav>ul.wp-block-navigation__container>li a {
      font-size: 16px!important;
  }
  .footer-map .map-details {
      padding: 40px 10px!important;
  }
  
  .geSectionUsp .geContainer .geColWrap {
      gap: 30px 20px;
  }
  .geSectionUsp .geContainer .geColWrap .usp-grid {
      width: calc(50% - 20px);
  }
  .wp-site-blocks .has-x-large-font-size,
  body h2,
  body h2.wp-block-post-title{
      font-size: 22px!important;
  }
  .wp-site-blocks .has-large-font-size,
  body h3{
      font-size: 18px!important;
  }
  .wp-site-blocks .has-medium-font-size,
  body h4{
      font-size: 16px!important;
  }

  .home .banner .banner-text h2,
  body:not(.home) .banner .banner-text h2{
      font-size: 22px!important;
      line-height: 32px!important;
  }
  
  .home .wp-site-blocks > .wp-block-columns.section-gallery .wp-block-image {
      padding-left:10px!important;
      padding-right:10px!important;
      margin-bottom:20px!important;
      width:50%!important;
  }
  .home .wp-site-blocks > .wp-block-columns.section-gallery figure.wp-block-gallery{
      margin-left:-10px!important;
      margin-right:-10px!important;
      margin-bottom:0px!important;
  }
  
  .has-modal-open.is-menu-open .wp-block-navigation {
      padding: 10px 0px!important;
  }
  .wp-block-navigation .has-child:hover>.wp-block-navigation__submenu-container{
      width:initial!important
  }
  .wp-block-navigation__responsive-container.is-menu-open {
      padding: 10px;
  }
}

@media(max-width: 380px){
  .home .wp-block-columns h2,
  .home .wp-block-columns .has-x-large-font-size{
      font-size: 20px!important
  }
  .home .banner .banner-text h2{
      font-size: 22px!important;
  }
  .home .wp-site-blocks .wp-block-columns.hasXXLTitle h2 {
      font-size: 26px!important;
  }
  .home .wp-site-blocks .wp-block-columns.hasXXLTitle h3 {
      font-size: 18px!important;
  }
}

.home .banner .banner-text{
  max-width: 1400px!important;
}

.home .banner-text h2.hero-banner-text strong{
  color: black!important;
  text-shadow: 2px 2px 8px #FFFFFF!important;
}