/* Common Button */
.contact-popup .elementor-button-content-wrapper,
.common-btn .elementor-button-content-wrapper {
     align-items: center;
}

.contact-popup .elementor-button-icon,
.common-btn .elementor-button-icon {
     padding: 19px;
     background: #000;
     border-radius: 100px;
     position: relative;
     overflow: hidden;
}

.contact-popup .elementor-button-icon svg,
.common-btn .elementor-button-icon svg {
     width: 20px !important;
     height: 20px !important;
     z-index: 2;
}

.contact-popup .elementor-button-icon svg path,
.common-btn .elementor-button-icon svg path {
     stroke: #fff !important;
     fill: #fff !important;
     transition: all 0.3s linear 0.03s;
     -webkit-transition: all 0.3s linear 0.03s;
     -moz-transition: all 0.3s linear 0.03s;
     -ms-transition: all 0.3s linear 0.03s;
     -o-transition: all 0.3s linear 0.03s;
}

.contact-popup .elementor-button:hover .elementor-button-icon svg path,
.common-btn .elementor-button:hover .elementor-button-icon svg path {
     stroke: #000 !important;
     fill: #000 !important;
     transition: all 0.3s linear 0.4s;
     -webkit-transition: all 0.3s linear 0.4s;
     -moz-transition: all 0.3s linear 0.4s;
     -ms-transition: all 0.3s linear 0.4s;
     -o-transition: all 0.3s linear 0.4s;
}

.contact-popup .elementor-button-icon:after,
.common-btn .elementor-button-icon:after {
     position: absolute;
     content: "";
     background: #A08750;
     opacity: 1;
     left: -100%;
     height: 100%;
     width: 100%;
     top: 0;
     transition: all 0.1s linear 0.03s;
     -webkit-transition: all 0.1s linear 0.03s;
     -moz-transition: all 0.1s linear 0.03s;
     -ms-transition: all 0.1s linear 0.03s;
     -o-transition: all 0.1s linear 0.03s;
}


.contact-popup .elementor-button:hover .elementor-button-icon:after,
.common-btn .elementor-button:hover .elementor-button-icon:after {
     left: 0;
     transition: all 0.1s linear 0.4s;
     -webkit-transition: all 0.1s linear 0.4s;
     -moz-transition: all 0.1s linear 0.4s;
     -ms-transition: all 0.1s linear 0.4s;
     -o-transition: all 0.1s linear 0.4s;
}

.contact-popup .elementor-button,
.common-btn .elementor-button {
     position: relative;
     overflow: hidden;
}

.contact-popup .elementor-button .elementor-button-content-wrapper,
.common-btn .elementor-button .elementor-button-content-wrapper {
     position: relative;
     z-index: 2;
}

.contact-popup .elementor-button:after,
.common-btn .elementor-button:after {
     position: absolute;
     content: "";
     background: #fff !important;
     opacity: 1;
     left: -100%;
     height: 100%;
     width: 100%;
     top: 0;
     transition: all 0.5s linear;
     -webkit-transition: all 0.5s linear;
     -moz-transition: all 0.5s linear;
     -ms-transition: all 0.5s linear;
     -o-transition: all 0.5s linear;
}

.contact-popup .elementor-button:hover:after,
.common-btn .elementor-button:hover:after {
     left: 0;
}

/* common Button End */

/* Menu */
.header-menu .elementor-nav-menu {
     gap: 40px;
}

.header-menu .elementor-nav-menu .menu-item {
     position: relative;
     padding: 64px 0;
}

.header-menu .elementor-nav-menu .menu-item::before {
     position: absolute;
     content: "";
     background: #A08750;
     width: 100%;
     height: 2px;
     bottom: -1px;
     opacity: 0;
     left: 0;
     transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -moz-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
}

.header-menu .elementor-nav-menu .menu-item.current-menu-item:has(.elementor-item-active):before {
     opacity: 1;
}

/* Menu End */

/* Footer Start */

.contact-details-wrp .elementor-icon-box-content .elementor-icon-box-description a {
     color: #fff !important;
     word-break: break-all;
}

.contact-details-wrp.phone-block .elementor-icon-box-content .elementor-icon-box-description a {
     white-space: nowrap;
}

.contact-details-wrp .elementor-icon-box-content .elementor-icon-box-description a:hover {
     color: #A08750 !important;
}

/* Footer end */

/* Banner Section Start */
.banner-main-heading h1 {
     display: flex;
     align-items: center;
     gap: 25px;
}

.banner-main-heading h1 img {
     width: clamp(76px, -17.13px + 12.14vw, 216px);
     height: auto;
}

/* Banner Section End */

/* Cottonwood Delivers Start */
.background-text {
     white-space: nowrap;
}

/* Cottonwood Delivers End */

/* The Problem Start */
.solutions-block {
     background-position: top right, 0% 0%;
}

/* The Problem End */


/* Google Review Section Start */

.google-review-main-wrp .elementor-image-box-wrapper .elementor-image-box-title {
     margin: 0;
}

.google-review-main-wrp .elementor-image-box-wrapper {
     display: flex;
     align-items: center;
     justify-content: center;
}

.google-review-main-wrp .elementor-image-box-wrapper .elementor-image-box-img {
     flex-shrink: 0;
}

/* Google Review Section End */



/* ================== [ Common Slider Arrow Start ] ================== */
.common-arrow .elementor-swiper-button {
     --button-size: 50px;
     --inner-size: calc(var(--button-size) * 0.85);
     --arrow-size: calc(var(--button-size) * .44);
     --button-background: #A08750;
     --button-radius: 10px;
     --transition: all .3s ease-in-out;
     position: relative;
     height: var(--button-size);
     width: var(--button-size);
     background-color: var(--button-background);
     border-radius: var(--button-radius);
     -webkit-border-radius: var(--button-radius);
     -moz-border-radius: var(--button-radius);
     -ms-border-radius: var(--button-radius);
     -o-border-radius: var(--button-radius);
     display: flex;
     align-items: center;
     justify-content: center;
     transition: var(--transition);
     -webkit-transition: var(--transition);
     -moz-transition: var(--transition);
     -ms-transition: var(--transition);
     -o-transition: var(--transition);
}

.common-arrow .elementor-swiper-button:hover {
     --button-background: #FFFFFF;
}

.common-arrow .elementor-swiper-button::before {
     width: var(--arrow-size);
     height: auto;
     aspect-ratio: 22 / 14;
     content: "";
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.5));
     background-position: center;
     background-repeat: no-repeat;
     background-size: 100%;
     z-index: 2;
     -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
     -ms-transform: translate(-50%, -50%);
     -o-transform: translate(-50%, -50%);
     -webkit-filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.5));
     transition: var(--transition);
     -webkit-transition: var(--transition);
     -moz-transition: var(--transition);
     -ms-transition: var(--transition);
     -o-transition: var(--transition);
}

.common-arrow .elementor-swiper-button::after {
     content: "";
     background-color: var(--button-background);
     border-radius: var(--button-radius);
     -webkit-border-radius: var(--button-radius);
     -moz-border-radius: var(--button-radius);
     -ms-border-radius: var(--button-radius);
     -o-border-radius: var(--button-radius);
     width: var(--inner-size);
     height: var(--inner-size);
     box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.2);
     z-index: 1;
     transition: var(--transition);
     -webkit-transition: var(--transition);
     -moz-transition: var(--transition);
     -ms-transition: var(--transition);
     -o-transition: var(--transition);
}

.common-arrow .elementor-swiper-button::before {
     background-image: url('data:image/svg+xml,<svg width="22" height="14" viewBox="0 0 22 14" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M7.31055 0.75L1.06055 7L7.31055 13.25" stroke="white" stroke-width="1.5" stroke-linecap="round"/> <path d="M21.0605 7H1.06055" stroke="white" stroke-width="1.5" stroke-linecap="round"/> </svg> ');
}

.common-arrow .elementor-swiper-button:hover::before {
     background-image: url('data:image/svg+xml,<svg width="22" height="14" viewBox="0 0 22 14" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M7.31055 0.75L1.06055 7L7.31055 13.25" stroke="black" stroke-width="1.5" stroke-linecap="round"/> <path d="M21.0605 7H1.06055" stroke="black" stroke-width="1.5" stroke-linecap="round"/> </svg> ');
}

.common-arrow .elementor-swiper-button-next::before {
     transform: translate(-50%, -50%) scaleX(-1);
     -webkit-transform: translate(-50%, -50%) scaleX(-1);
     -moz-transform: translate(-50%, -50%) scaleX(-1);
     -ms-transform: translate(-50%, -50%) scaleX(-1);
     -o-transform: translate(-50%, -50%) scaleX(-1);
}

/* ================== [ Common Slider Arrow End ] ================== */


/* ================== [ Our Services Start ] ================== */
.our-services-main-wrp {
     overflow-x: clip;
}

.our-services-main-wrp .swiper {
     clip-path: inset(0 0 -20px -100dvw);
     overflow: visible;
}

.our-services-main-wrp .elementor-swiper-button {
     --prev-left: calc(100% + 488px);
     --next-left: calc(100% + 550px);
     --top: 216px;
     transform: none !important;
     -webkit-transform: none !important;
     -moz-transform: none !important;
     -ms-transform: none !important;
     -o-transform: none !important;
     left: auto !important;
     right: auto !important;
}

.our-services-main-wrp .elementor-swiper-button-prev {
     left: var(--prev-left) !important;
     top: var(--top) !important;
}

.our-services-main-wrp .elementor-swiper-button-next {
     left: var(--next-left) !important;
     top: var(--top) !important;
}

/* ================== [ Our Services End ] ================== */


/* ================== [ Google Reviews Start ] ================== */
.google-review-main-wrp {
     overflow-x: clip !important;
}

.google-review-main-wrp .swiper {
     overflow: visible;
}

.google-review-main-wrp .swiper-slide {
     opacity: .5;
     transition: opacity .3s ease-in-out;
     -webkit-transition: opacity .3s ease-in-out;
     -moz-transition: opacity .3s ease-in-out;
     -ms-transition: opacity .3s ease-in-out;
     -o-transition: opacity .3s ease-in-out;
}

.google-review-main-wrp .swiper-slide.swiper-slide-active {
     opacity: 1;
}

.google-review-main-wrp .elementor-swiper-button {
     --prev-left: calc(100% + clamp(135px, -519.62px + 47.89vw, 237px));
     --next-left: calc(100% + clamp(197px, -464.04px + 48.36vw, 300px));
     --top: -145px;
     transform: none !important;
     -webkit-transform: none !important;
     -moz-transform: none !important;
     -ms-transform: none !important;
     -o-transform: none !important;
     left: auto !important;
     right: auto !important;
}

/* 300px to 197px , 237px to 135px (1580 to 1367) */
.google-review-main-wrp .elementor-swiper-button-prev {
     left: var(--prev-left) !important;
     top: var(--top) !important;
}

.google-review-main-wrp .elementor-swiper-button-next {
     left: var(--next-left) !important;
     top: var(--top) !important;
}

/* ================== [ Google Reviews End ] ================== */

/* ================== [ After Before Slider Start ] ================== */
.before-after-slider-wrp .swiper {
     overflow: visible;
}

.before-after-slider-wrp {
     overflow-x: clip !important;
}

/* ================== [ After Before Slider End ] ================== */

/* Popup start */
.contact-popup .dialog-close-button {
     font-size: 18px;
     padding: 10px !important;
     border-radius: 100px;
}

.contact-popup .dialog-widget-content {
     max-width: calc(100% - 40px) !important;
}

.contact-popup .dialog-widget-content .dialog-message.dialog-lightbox-message {
     max-width: calc(100% - 40px) !important;
     margin: 0 auto;
}

/* Popup end */

.common-list ul {
     padding-left: 24px !important;
}

.common-list ul li::marker {
     font-size: 12px;
     vertical-align: middle;
     text-align: center !important;
}

.bg-text-transform {
     transform: translate3d(-50%, 0px, 0px) !important;
}

.contact-popup .elementor-form-fields-wrapper {
     align-items: flex-start;
}

.contact-popup .elementor-field-group {
     position: relative;
}

.contact-popup .elementor-field-group::after {
     position: absolute;
     content: "";
     bottom: 0;
     left: 30px;
     width: 56px;
     height: 1px;
     background-color: #A08750;
}

.contact-popup .elementor-field-group.elementor-field-type-submit::after  {
     display: none;
}

.contact-popup .elementor-form-help-inline.elementor-message-danger {
     text-align: left;
     position: absolute;
     top: 100%;
}

.contact-popup .elementor-message-danger {
     text-align: center;
}



@media (min-width:1921px) {
     .background-text {
          text-align: center;
     }
}

@media (min-width:1367px) and (max-width:1780px) {
     .footer-main-wrp {
          padding-inline-start: 20px !important;
     }
}

@media (max-width: 1366px) {

     /* Our Services */
     .our-services-main-wrp .elementor-swiper-button {
          --top: 170px;
          --next-left: calc(100% + 390px);
          --prev-left: calc(100% + 330px);
     }

     /* Google Reviews */
     .google-review-main-wrp .elementor-swiper-button {
          --top: -135px;
          --prev-left: calc(100% + clamp(-37px, -554.01px + 50.44vw, 135px));
          --next-left: calc(100% + clamp(25px, -492.01px + 50.44vw, 197px));
     }

     /* 197px to 25px , 135px to -37px (1366 to 1025) */
}

@media (max-width:1200px) {
     .header-menu .elementor-nav-menu .menu-item {
          padding: 45px 0;
     }

     .contact-popup .elementor-button-icon,
     .common-btn .elementor-button-icon {
          padding: 15px;
     }

     .contact-popup .elementor-button-icon svg,
     .common-btn .elementor-button-icon svg {
          width: 16px !important;
          height: 16px !important;
     }

     /* Our Services */
     .our-services-main-wrp .elementor-swiper-button {
          --top: 150px;
          --next-left: calc(100% + 290px);
          --prev-left: calc(100% + 230px);
     }

     /* Google Reviews */
     .google-review-main-wrp .elementor-swiper-button {
          --top: -125px;
     }
}

@media (max-width:1024px) {

     /* Common Slider Arrow */
     .common-arrow .elementor-swiper-button {
          --button-size: 40px;
     }

     /* Our Services */
     .our-services-main-wrp .elementor-swiper-button {
          --top: -80px;
          --next-left: 70px;
          --prev-left: 20px;
     }

     /* Google Reviews */
     .google-review-main-wrp .elementor-swiper-button {
          --top: -85px;
          --prev-left: calc(94% - 50px);
          --next-left: 94%;
     }
}


@media (max-width:880px) {

     .contact-popup .elementor-button-icon svg,
     .common-btn .elementor-button-icon svg {
          width: 14px !important;
          height: 14px !important;
     }

     .contact-popup .elementor-button-icon,
     .common-btn .elementor-button-icon {
          padding: 11px;
     }
}

@media (max-width:767px) {
     .footer-menu ul {
          flex-direction: column;
          gap: 20px;
     }

     .banner-main-heading h1 {
          flex-direction: column;
          text-align: center;
          justify-content: center;
          gap: 2px;
     }

     .footer-menu ul li a {
          justify-content: center;
     }

     /* Google Reviews */
     .google-review-main-wrp .elementor-swiper-button {
          --top: -60px;
          --prev-left: calc(50% - 40px - 5px);
          --next-left: calc(50% + 5px);
     }

     .contact-popup .dialog-widget-content .dialog-message.dialog-lightbox-message {
          max-width: calc(100% - 40px) !important;
     }

     .our-services-bg-text {
          transform: translate3d(-50%, 0px, 0px) !important;
     }

}

@media (max-width:575px) {
     .contact-popup .elementor-field-group:has(.elementor-message) {
          margin-bottom: 46px !important;
     }
}