/*
Theme Name: UDesign Child
Theme URI: https://d-themes.com/wordpress/udesign/envato-market/
Author: Andon
Author URI: https://1.envato.market/OdObz
Description: A slick, powerful and clean theme UDesign provides an intuitive set of options to help you setup your WordPress site quickly and effectively. Flexibility is key and it has been optimized for SEO and speed. It is also responsive & mobile ready should you choose that option. The UDesign theme features include: unlimited colors, widgetized home page, over 600 fonts to choose from, WooCommerce Integration, it is also translation and multilingual ready, step by step documentation, exclusive UDesign support forum and a helpful community. Always up-to-date security and many new features are constantly added as the theme evolves.
Version: 1.0
Template: u-design
License: GNU General Public License v2 and ThemeForest license
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, responsive, one-column, two-columns, three-columns, four-columns, full-width-template, left-sidebar, right-sidebar, custom-menu, custom-background, custom-colors, custom-header, custom-logo, featured-images, flexible-header, microformats, post-formats, rtl-language-support, theme-options, translation-ready, accessibility-ready

*/

/*--------------------------
*           Index          *
----------------------------
* 1. Global                *
*    1.1 Custom Properties *
*    1.2 Universal         *
*    1.3 Header            *
*    1.4 Footer            *
*    1.5 Sidebar           *
* 2. Home-page             *
* 3. Sub-page              *
* 4. Responsive            *
* 5. Keyframes             *
--------------------------*/

/*--------------------------
*        1. Global         *
--------------------------*/

/* 1.1 Custom Properties */
:root {
    --color-brand: #DF1F23;
    --color-brand-rgba: 203, 0, 30;
    --color-black: #1a1a1a;
    --color-white: #fff;
}

/* 1.2 Universal */
/* Don't let phone number links wrap */
a[href^="tel:"],
a[href^="tel+"] {
    white-space: nowrap;
}

/* Hidden Links */
a.hide-link,
a.hide-link:hover {
    color: inherit;
    text-decoration: none !important;
    cursor: default;
    font-weight: inherit !important;
}

/* Remove default appearance for iOS/Safari forms */
input:matches([type="button"],
[type="submit"],
[type="reset"]) {
    -webkit-appearance: none !important;
}
.page-content > .container {
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}

html body .mfp-wrap {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}
html body h2 {
    line-height: 120% !important;
}
html body .banner.banner-fixed {
    border-radius: 20px;
}
html body .elementor-element-c2d7370.mx-auto {
    margin-left: 0 !important;
}

html body .inner-text ,
html body .inner-text p,
html body .inner-text ul li {
    line-height: 168%;
    font-size: 20px;
    font-weight: 400;
}
html body .inner-text ul {
  text-align: left;
}
html body .inner-text.dark p,
html body .inner-text.dark,
html body .inner-text.dark h2,
html body .inner-text.dark h3,
html body .inner-text.dark h4,
html body .inner-text.dark ul li {
    color: #fff;
}

.dark.red.inner-text h2 {
    color: #fff;
}

html body .inner-text.lp h2 {
    margin-top: 60px;
}
html body .inner-text.lp h2:first-child {
    margin-top: 0;
}

html body .inner-text.lp h3,
html body .inner-text.lp h4 {
    margin-top: 48px;
}

.inner-text.lp img  {
    margin: 0 0 60px 0;
}

.mw-500 {
    max-width: 520px;
}
.mw-970 {
    max-width: 970px;
    margin: auto;
}
.mw-1030 {
    max-width: 1030px;
    margin: auto;
}
.mw-1360 {
    max-width: 1360px;
    margin: auto;
}
.mw-1200 {
    max-width: 1200px;
    margin: auto;
}

.mw-1280 {
    max-width: 1280px;
    margin: auto;
}
.mw-1400 {
    max-width: 1400px;
    margin: auto;
}
.mw-1460 {
    max-width: 1460px;
    margin: auto;
}
.lg.inner-text h2 {
color: #fff;
    font-size: 68px;
}
.lg.inner-text p {
    color: #fff;
}
.dark.inner-text a {
    font-weight: 700;
    color: #fff;
}
.dark.inner-text a:not(.btn):hover {
   text-decoration: underline;
}
.inner-text a:not(.btn):hover {
    text-decoration: underline;
}
.inner-text a {
    font-weight: 700;
}

.service-text {
    min-height: 122px;
    padding-right: 20px;
}
html body .heading-bg .elementor-widget-text-editor h3 {
    margin-bottom: 12px !important;
}

html body .heading-bg .elementor-widget-text-editor .btn {
    margin-top: 26px !important;
    margin-bottom: 26px;
}

/*.elementor-2 .elementor-element.elementor-element-abc5a6e,*/
.cta-banner {
    border-radius: 20px;
    overflow: hidden;
    margin: 0 auto;
    max-width: 1760px;
}

html body .mfp-wrap button.mfp-close {
    top: -40px;
    right: 0;
    bottom: auto;
    left: auto;
    width: 24px;
    height: 24px;
    -webkit-transform: rotateZ(0deg);
    -ms-transform: rotate(0deg);
    transform: rotateZ(0deg);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    line-height: 0;
}

html body .mfp-wrap button.mfp-close:hover {
    -webkit-transform: rotateZ(0deg) scale(1.05);
    -ms-transform: rotate(0deg) scale(1.05);
    transform: rotateZ(0deg) scale(1.05);
}

html body .mfp-wrap.mfp-gallery button.mfp-close {
    width: 48px;
    height: 48px;
    position: fixed;
    top: 0;
    right: 0;
    color: #fff;
    font-size: 48px;
}

html body .mfp-wrap button.mfp-close:before,
html body .mfp-wrap button.mfp-close:after {
    display: none;
}

html body .mfp-wrap .mfp-iframe-scaler {
    overflow: visible;
}

html body.mfp-zoom-out-cur,
html body.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: default;
}

html body.testimonials:has(section.elementor-element.elementor-hidden-desktop.elementor-hidden-laptop.elementor-hidden-tablet_extra.elementor-hidden-tablet.elementor-hidden-mobile) section.wtp_about-intro.wtp_text-testimonials {
    margin-top: -70px;
}

html body .wtp_testimonials .elementor-widget-image a,
html body .wtp_services .elementor-widget-image a {
    display: block;
}

html body .wtp_testimonials .elementor-inner-column .elementor-widget-wrap.elementor-element-populated {
    padding: 0;
    overflow: hidden;
    margin: .5em;
}

html body .wtp_testimonials .elementor-inner-column .elementor-element.elementor-widget-text-editor {
    width: calc(100% - 40px);
    position: absolute;
    bottom: 20px;
    left: calc(100% - 61.5px);
    background-color: rgb(255 255 255 / 90%);
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    opacity: 1;
    pointer-events: none;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

html body .wtp_testimonials .elementor-inner-column:hover .elementor-element.elementor-widget-text-editor {
    left: 20px;
    opacity: 1;
}

html body .wtp_testimonials .elementor-inner-column .elementor-element.elementor-widget-text-editor:before {
    content: '';
    display: block;
    width: 48px;
    height: 48px;
    background-image: url(/wp-content/uploads/2024/05/play-icon.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 7px;
    left: 7px;
    z-index: 9;
    pointer-events: none;
    -webkit-filter: invert(1);
    filter: invert(1);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

html body .wtp_testimonials .elementor-inner-column .elementor-element.elementor-widget-text-editor p {
    margin-bottom: 0;
    padding-left: 56px;
    text-align: right;
}

/*html body .wtp_testimonials a:before {*/
/*    content: '';*/
/*    display: block;*/
/*    width: 48px;*/
/*    height: 48px;*/
/*    background-image: url(/wp-content/uploads/2024/05/play-icon.png);*/
/*    background-position: center center;*/
/*    background-repeat: no-repeat;*/
/*    background-size: contain;*/
/*    position: absolute;*/
/*    bottom: 16px;*/
/*    left: 18px;*/
/*    z-index: 9;*/
/*    pointer-events: none;*/
/*    transition: all 0.3s;*/
/*}*/

/*html body .wtp_testimonials .elementor-inner-column:hover a:before {*/
/*    filter: invert(1);*/
/*}*/

html body .wtp_testimonials a:after {
    content: '';
    display: block;
    position: absolute;
    top: 66%;
    right: 0;
    bottom: 0;
    left: 0;
    background: -o-linear-gradient(bottom, rgb(0 0 0 / 20%), rgb(0 0 0 / 0%));
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(0 0 0 / 20%)), to(rgb(0 0 0 / 0%)));
    background: linear-gradient(to top, rgb(0 0 0 / 20%), rgb(0 0 0 / 0%));
    z-index: 0;
    pointer-events: none;
}

html body .testimonial-boxed {
    -webkit-box-shadow: 0 5px 20px rgba(0,0,0,0.15);
    box-shadow: 0 5px 20px rgba(0,0,0,0.15);
    border-radius: 3px;
}
html body .btn-icon-right>i,
html body .btn-icon-right>svg {
    display: none;
}

html body main#main .btn-underline {
    display: table;
    position: relative;
    padding: 20px 42px 14px 42px;
    background: #1a1a1a;
    border-radius: 10px;
    color: #fff;
}
html body .wtp-btn-alt .btn-underline {
    background: #404040 !important;
}

html body .wtp-btn-alt .btn-underline:hover {
    background: #4c4c4c !important;
}

html body .wtp-btn-alt img,
html body .wtp-img-wrap img {
  border-radius: 20px;
}

.wtp_intro h2 span {
    font-size: 2em;
    line-height: 100%;
    display: block;
}

html body main#main .btn-underline:after {
    border-bottom-width: 2px;
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
    margin-left: 2px;
    width: calc(100% - 32px);
}

html body .wtp_white p a:not(.btn-underline),
html body .wtp_banner-section:first-child p a:not(.btn-underline) {
    color: var(--color-white);
    font-weight: 700;
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

html body .wtp_white p a:not(.btn-underline):hover,
html body .wtp_banner-section:first-child p a:not(.btn-underline):hover {
    -webkit-text-decoration-color: inherit;
    text-decoration-color: inherit;
}

html body .mobile-menu .toggle-btn:before {
    font-size: 2rem;
}

.header .sticky-content-wrapper .sticky-content.fixed {
    background-color: #1a1a1af5 !important;
    max-width: 98%;
    margin: auto;
    border-radius: 20px;
    top: 20px;
}
.header .sticky-content-wrapper .sticky-content.fixed .logo .site-logo {
    max-width: 164px !important;
    width: 100% !important;
    margin-bottom: -46px;
    margin-top: -30px;
    margin-left: 1em;
}

/*.header .sticky-content-wrapper .sticky-content > .elementor-container {*/
/*    width: 100% ;*/
/*    padding: 0 16px 0 6px;*/
/*}*/
.header .sticky-content-wrapper .sticky-content.fixed > .elementor-container {
    max-width: 1800px ;
    width: 100% ;
    padding: 0 20px 0 0;
}

html body header#header a.logo img,
html body footer#footer a.logo img {
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}


html body header#header nav > ul > li > ul > li  a {
    padding-right: 60px !important;
    text-transform: none;
    font-weight: 600;
    color: #2a2a2a;
}
html body header#header nav > ul > li > ul > li  a:hover {
    color: var(--color-brand);
}
html body header#header .menu-item-has-children>a:after {
    font-weight: 900;
    font-size: .8em;
}

/*html body header#header a.logo:hover img,*/
/*html body footer#footer a.logo:hover img {*/
/*    -webkit-transform: scale(1.05);*/
/*    -ms-transform: scale(1.05);*/
/*    transform: scale(1.05);*/
/*}*/

html body main#main .duplex-wrap span {
    width: 90vw;
    white-space:nowrap;
}

html body.gallery {
    margin-top: 0;
}

html body:not(.home) .page-wrapper {
    width: 100%;
}

html body .wtp_highlight {
    padding: 1.2em;
    border-radius: 3px;
    background-color: #f2f2f2;
    margin: 1em 0;
}


.gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: var(--color-brand);
}

.gform-page-footer .gform-theme-button {
    border-radius: 10px !important;
    padding: 20px 42px 20px 42px !important;
    font-size: 18px;
}

html body .gform_wrapper.gravity-theme .gfield input,
html body .gform_wrapper.gravity-theme .gfield select,
html body .gform_wrapper.gravity-theme .gfield textarea {
    background-color: #fff;
    border-radius: 3px;
}

html body .gform_wrapper.gravity-theme input[type=submit] {
    border-radius: 10px;
    border: transparent;
    padding: 24px 42px 24px 42px !important;
    font-size: 18px;
}

html body .gform_wrapper.gravity-theme input[type=submit]:hover,
html body .gform_wrapper.gravity-theme input[type=submit]:active,
html body .gform_wrapper.gravity-theme input[type=submit]:focus {
    background-color: var( --e-global-color-secondary );
    border: transparent;
}

html body .gform_ajax_spinner {
    max-width: 1em;
    height: 1em;
    width: 1em;
}

html body .gform_confirmation_message {
    text-align: center;
    color: #fff;
    border-radius: 3px;
    background-color: green;
    margin: 1em;
    padding: 1em;
}

.gform_required_legend {
    display: none;
}

html body .elementor-element.pmax_anchor-element.elementor-widget.elementor-widget-html {
    width: 0;
    height: 0;
    overflow: hidden;
    position: relative;
    top: -200px;
}

html body .elementor-element.elementor-widget-text-editor ul li,
html body .elementor-element.elementor-widget-text-editor ol li {
    margin-bottom: .5em;
}

html body .elementor-element.elementor-widget-text-editor h4 {
    font-size: 24px;
    line-height: 1.2;
}

html body .elementor-widget-text-editor a.pmax_btn {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0px;
    background-color: var(--e-global-color-primary);
    border-radius: 10px;
    padding: 20px 41px 20px 41px;
    color: #fff;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

html body .elementor-widget-text-editor a.pmax_btn:hover {
    background-color: #323334;
}

.heading-bg .duplex-text {
    -webkit-text-stroke-color: #df1f23 !important;
    -webkit-text-fill-color: #df1f23 !important;
    -webkit-text-stroke-width: 3px !important;
    opacity: 0.6 !important;
}

/* 1.3 Header */
html body header#header nav > ul > li.menu-item-has-children > ul > li > a {
    padding-right: 2.5rem;
}

html body header#header nav > ul > li.menu-item-has-children > ul > li.menu-item-has-children > ul {
    top: -21px;
}

html body header#header nav.main-menu > ul > li.current-menu-ancestor:not(:hover) > a,
html body header#header nav.main-menu > ul > li.current-menu-item:not(:hover) > a {
    color: #fff;
}

/* 1.4 Footer */
html body footer#footer {
    background-color: #2C2C2C;
}

html body footer#footer iframe {
    border-radius: 10px;
}

.footer-map iframe[title="map"] {
    filter: grayscale(100%) invert(5%) contrast(1.2);
}

.wtp-copyright {
    text-align: center;
}

/* 1.5 Sidebar */

.button-large .btn-primary {
    border-radius: 10px !important;
    padding: 24px 42px 24px 42px !important;
    color: #fff;
}


/*------------------------
*      2. Home-page      *
-------------------------*/
html body main#main {
    padding-top: 0;
    padding-bottom: 0;
    /*background-color: var(--color-brand);*/
    background-color: #1a1a1a;
}
header .main-menu ul li ul {
    border-radius: 8px;
}
header .menu li>ul li {
    padding: 0 1rem;
    font-weight: 500;
}
.header-5 {
    z-index: 2;
}
/*.elementor-2 .elementor-element.elementor-element-3afcf31,*/
.wtp_banner-section {
    border-radius: 24px;

}

.elementor-element-61e81eb .logo .site-logo {
    max-width: 174px !important;
    width: 100% !important;
    margin-bottom: -72px;
    margin-top: 0;
}
header .ch-contact .contact>a {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}
header .ch-contact .a-icon-call:before {
    font-weight: 900;
}

.hero-right .elementor-widget-wrap {
    align-content: center !important;
    text-wrap: pretty;
}

.hero-right .btn {
   border-radius: 10px !important;
}

.z-one {
    z-index: 1;
    text-wrap: pretty;
}

html body .wtp_banner-section {
    width: 94vw;
    max-width: 1920px;
    margin-right: auto;
    margin-left: auto;
    overflow: hidden;
}

html body .wtp_banner-section > .elementor-container {
    z-index: 1;
}

html body .wtp_banner-section .duplex-wrap.t-c {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
}

html body .wtp_hero-col * {
    height: 100%;
}

html body .wtp_hero-col video {
    -o-object-fit: cover;
    object-fit: cover;
}

html body .yt--popper .btn,
html body .yt--popper .btn i {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

html body .yt--popper .btn:hover {
    -webkit-transform: scale(1.01);
    -ms-transform: scale(1.01);
    transform: scale(1.01);
}

html body .yt--popper .btn:hover i {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

html body .wtp_banner-section p.caption {
    font-size: 21px;
    text-transform: uppercase;
    margin-bottom: 0;
}

html body .wtp_banner-section h1 {
    color: var(--color-white);
    margin-top: 0;
    margin-bottom: 22px;
    letter-spacing: .05em;
    font-size: clamp(56px, 3.25vw, 72px);
    text-wrap: balance;
}
html body .wtp_banner-section h1 span {
    color: var(--color-white);
    margin-top: 0;
    margin-bottom: 22px;
    letter-spacing: .05em;
    font-size: clamp(90px, 7.25vw, 140px);
    display: block;
    width: 100%;
}
html body h2,
html body h3 {
    /*color: var(--color-white);*/
    /*margin-top: 0;*/
    /*margin-bottom: 22px;*/
    /*letter-spacing: .05em;*/
    letter-spacing: .3rem;
    /*font-size: clamp(56px, 3.25vw, 72px);*/
    text-wrap: balance ;
}

.wtp_hero-col {
    min-height: 340px;
}
.hero-right .btn {
        padding: 24px 42px 24px 42px !important;
    /*border-radius: 8px !important;*/
}

.hero-right .btn-large-border .btn {
    border-color: #1A1A1A;
}
.hero-right .btn-large-border .btn:hover {
    border-color: #2d2d2d;
}

html body .elementor-widget-udesign_widget_posts .post-cats,
html body .elementor-widget-udesign_widget_posts .post-meta,
html body .elementor-widget-udesign_widget_posts .post-date {
    display: none;
}

html body .elementor-widget-udesign_widget_posts .post-title {
    font-family: var(--alpha-heading-font-family), var(--alpha-body-font-family), sans-serif;
    font-weight: var(--alpha-heading-font-weight, 600);
    line-height: var(--alpha-heading-line-height, var(--alpha-body-line-height));
    letter-spacing: var(--alpha-heading-letter-spacing, var(--alpha-body-letter-spacing));
    text-transform: var(--alpha-heading-text-transform, var(--alpha-body-text-transform));
    font-size: var(--alpha-h3-font-size, 2.8rem);
    margin-top: .45em;
}

html body .elementor-widget-udesign_widget_posts article {
    height: 100%;
    border-radius: 20px;
}

html body .elementor-widget-udesign_widget_posts .post-content p {
    line-height: 160%;
}


/*------------------------
*      3. Sub-page       *
------------------------*/
html body:not(.home) .wtp_banner-section:not(.city-page) h1 {
    font-size: clamp(40px, 3.25vw, 72px);
}

html body:not(.home) .wtp_banner-section:not(:has(a.btn)) h1,
html body:not(.home):not(.about-us) .wtp_banner-section:not(.city-page) h1 {
    /*text-align: center;*/
    margin-bottom: 0;
}

html body:not(.home).about-us .wtp_banner-section h1 {
    font-size: clamp(72px, 5vw, 176px);
}

html body .wtp_contact-phone i {
    position: relative;
    top: 6px;
}

html body .wtp_img-cover .elementor-widget-image > .elementor-widget-container {
    position: relative;
}

html body .wtp_img-cover .elementor-widget-image > .elementor-widget-container img {
    position: absolute;
    left: 0;
}

html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1em 1fr 1em 1fr 1em 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1em;
}

html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap .elementor-widget-button {
    margin: 0 !important;
}

html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap .elementor-widget-button .elementor-widget-container {
    padding: 0 !important;
}

html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap .elementor-widget-button .elementor-widget-container a {
    width: 100%;
}

html body.contact i {
    font-size: initial;
    vertical-align: initial;
    padding-right: initial;
    -webkit-transition: initial;
    -o-transition: initial;
    transition: initial;
}

.contact-wrapper p,
.contact-wrapper a {
    font-size: 20px;
}
.contact-wrapper h2 {
    margin-bottom: 20px;
}

html body .wtp_no-pad,
html body .wtp_no-pad .elementor-widget-wrap,
html body #wtp_no-pad.wtp_no-pad,
html body #wtp_no-pad.wtp_no-pad .elementor-widget-wrap {
    padding: 0;
}

html body section.elementor-section-full_width > .elementor-container.elementor-column-gap-default {
    max-width: 100%;
}

html body.single main#main {
    /*background-color: #fff;*/
}

html body:not(.home).single .wtp_banner-section h1 {
    font-size: clamp(42px, 3vw, 56px);
}

html body .elementor-widget-udesign_widget_posts h3.post-title {
    -webkit-line-clamp: 99;
    font-size: 40px;
    line-height: 1.2;
    letter-spacing: .03em;
}

html body.blog .wtp_section > .elementor-container {
    width: 95vw;
}


/*------------------------
*      4. Responsive     *
------------------------*/
@media (min-width: 1921px) {
    html body main#main .elementor-section.elementor-element.elementor-top-section.cs6-half-banner {
        background-size: 66% auto;
    }
}

@media (max-width: 1920px) {
    html body main#main .wtp_intro {
        background-size: 75vw auto;
    }
}

@media (max-width: 1699px) {
    html body .wtp_banner-section h1 {
        font-size: clamp(42px, 2.5vw, 64px);
    }
}

@media (max-width: 1548px) {
   .header-right-button {
       display: none;
   }
}
@media (max-width: 1500px) {

    .hero-right.lp .btn {
        min-width: 242px;
    }
}

@media (max-width: 1499px) {
    html body main#main .wtp_intro .wtp_intro {
        width: 54%;
    }

    html body main#main .wtp_intro .banner {
        min-height: 600px;
    }
}


@media (max-width: 1439px) {

    html body main#main .elementor-section.elementor-element.elementor-top-section.cs6-half-banner {
        background-image: none;
    }

    html body main#main .wtp_intro .wtp_intro {
        width: 100%;
    }

    html body main#main .wtp_image-cover .elementor-element.elementor-widget-image,
    html body main#main .wtp_image-cover .elementor-element.elementor-widget-image .elementor-widget-container {
        height: 100%;
    }

    html body main#main .wtp_image-cover .elementor-element.elementor-widget-image .elementor-widget-container img {
        -o-object-position: 73% top;
        object-position: 73% top;
    }

    html body.home .wtp_intro .banner .banner-content.t-mc,
    html body .wtp_intro.city-page .banner .banner-content.t-mc {
        top: 0;
        left: 0;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        position: relative;
        padding: 30px 10%;
        width: 100%;
        max-width: 100%;
    }
}
@media (min-width: 1200px) {
    .contact .d-flex {
        display: none !important;
    }
    .elementor-2 .elementor-element.elementor-element-3afcf31 {
        border-radius: 24px;
        height: calc(50vw - 150px);
        max-height: 780px;
    }
}
@media (max-width: 1200px) {
    nav.main-menu .menu > li > a {
        font-size: 14px;
    }

}
@media (max-width: 1410px) {

    .header .container-fluid {
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /*.header .sticky-content-wrapper .sticky-content > .elementor-container{*/
    /*    max-width: 100% !important;*/
    /*    width: 100% !important;*/
    /*    padding: 0 20px 0 20px;*/
    /*}*/
    /*.header .sticky-content-wrapper .sticky-content > .elementor-container > .elementor-column {*/
    /*      max-width: 100% !important;*/
    /*      width: 100% !important;*/
    /*      !*padding: 0 20px 0 20px;*!*/
    /*  }*/

}
@media (max-width: 1329px) {
    html body header#header .elementor-widget-udesign_widget_contact > .elementor-widget-container {
        padding-left: 0;
    }
}

@media (max-width: 1279px) {
    html body header#header nav > ul > li {
        margin: 0;
    }

    html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap {
        -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
    }

    @media (min-width: 768px) {
        html body section.elementor-section.wtp_services > .elementor-container {
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        }

        html body section.elementor-section.wtp_services > .elementor-container > .elementor-column {
            width: 50%;
        }
    }
}
@media only screen and (min-width: 400px) and (max-width: 991px)  {
    .contact .d-flex {
        display: none !important;
    }
}
@media (min-width: 992px) {
    .menu-hide {
        display: none
    }
    .inner-text.lp img  {
        float: right;
        width: 50%;
        margin: 0 0 30px 60px;
        padding-top: 0;
    }
    .wtp_banner-section {
        min-height: 480px;
    }
    .mh-596 {
        min-height: 596px;
    }
}
@media (max-width: 991px) {

    html body .inner-text p, html body .inner-text ul li {
        font-size: 18px;
    }

    .inner-text.lp ul {
        background: #f5f5f5;
        padding: 40px;
        border-radius: 20px;
    }

    .elementor-element-61e81eb .logo .site-logo {
        max-width: 156px !important;
        width: 100% !important;
        margin-bottom: -70px;
        margin-top: -16px;
    }
    .mobile-menu li li a {
        padding-left: 8px !important;
        font-size: 16px !important;
    }
    .mobile-menu li a {
        padding-right: 30px !important;
    }
    .mobile-menu-container {
        background: var(--color-black) !important;
    }
    .menu-hide {
       margin-bottom: 40px;
    }
    .elementor-5 .elementor-element.elementor-element-a5d70e7 > .elementor-container {
    padding-left: 6px !important;
}
    html body header#header .elementor-element.wtp_mobile-toggle.elementor-widget-udesign_header_mmenu_toggle {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }

    html body header#header .elementor-element.wtp_mobile-toggle.elementor-widget-udesign_header_mmenu_toggle .elementor-widget-container {
        margin-right: 0;
    }

    html body header#header .elementor-element.wtp_header-phone.elementor-widget-udesign_widget_contact {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        margin-right: 1.5em;
    }

    html body header#header .elementor-element.wtp_header-phone.elementor-widget-udesign_widget_contact .telephone {
        display: inline-block;
        margin-left: .5em;
        position: relative;
        top: 0;
        font-size: 20px;
        font-weight: 700;
    }

    html body .mobile-menu-wrapper .search-wrapper {
        display: none;
    }

    html body .mobile-menu-wrapper .nav-wrapper a {
        font-size: 20px !important;
        font-family: 'Montserrat', sans-serif;
    }

    html body.mmenu-active .mobile-menu-overlay {
        -webkit-backdrop-filter: blur(25px);
        backdrop-filter: blur(25px);
        opacity: 1;
        background-color: rgb(0 0 0 / 50%);
    }

    html body:not(.home) .wtp_banner-section h1 {
        font-size: clamp(48px, 5vw, 72px);
    }

    html body .wtp_banner-section:not(:first-of-type) .wtp_img-cover .elementor-widget-image > .elementor-widget-container img {
        position: relative;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%;
        height: 100%;
        left: 0;
    }

    html body .wtp_fullwidth a {
        width: 100%;
    }

    html body .wtp_banner-section.wtp_reverse-mobile > .elementor-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    html body .wtp_about-intro > .elementor-container {
        max-width: 100vw;
    }

    html body:not(.home) .wtp_banner-section:not(:first-child)  .elementor-column.wtp_hero-col.wtp_img-cover {
        aspect-ratio: 3/2;
        overflow: hidden;
    }

    @media (min-width: 768px) {
        html body .wtp_intro h2 {
            font-size: 32px;
        }
    }
}

@media (max-width: 849px) {
    html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap {
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    }
}
@media (min-width: 768px) {
.desktop-hide {
    display: none;
}
}
@media (max-width: 767px) {
    .site-logo:not(:last-child) {
        display: block !important;
    }
    html body.home .wtp_intro .banner .banner-content.t-mc,
    html body .wtp_intro.city-page .banner .banner-content.t-mc {
        padding: 30px 0 !important;
    }
    .banner-item h2 span {
        width: 100%;
        display: block;
    }
    .wtp_image-cover .elementor-widget-image img {
        display: inline-block;
        vertical-align: middle;
        border-radius: 20px;
    }

    html body .heading-bg .elementor-widget-text-editor h3 {
        font-size: 42px;
    }
    html body .service-text {
        min-height: auto;
        padding-right: 0;
    }

    .lg.inner-text h2 {
        font-size: 48px;
    }
    .mobile-hide {
        display: none;
    }
    .wtp_hero-col {
        min-height: 42vw;
        max-height: 100%;
    }

    .hero-right {
        /*margin-top: 14%;*/
    }

    html body .wtp_banner-section h1 {
        max-width: 360px;
        margin: 0 auto 12px auto;
    }

    html body .wtp_banner-section h1 {
        margin-bottom: 12px;

    }

    html body .wtp_banner-section h1 span  {
    line-height: 100%;
        margin-bottom: 0;
}

    html body header#header .wtp_header-social {
        display: inline-block;
    }

    html body .wtp_banner-section,
    html body .wtp_banner-section > .elementor-container {
        width: 100%;
        max-width: 100vw;
        overflow: hidden;
    }

    html body:not(.home) .wtp_banner-section:first-of-type .wtp_hero-col.wtp_img-cover {
        aspect-ratio: 16/9;
    }

    html body .wtp_hero-col .video-foreground {
        aspect-ratio: 16 / 9;
        position: absolute;
        padding-bottom: 56.6%;
    }

    html body main#main .wtp_intro .banner {
        min-height: 0;
        padding: 30px 20px;
    }

    html body main#main .wtp_intro .banner .banner-content {
        position: relative;
        top: 0;
        left: 0;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
    }

    html body main#main .elementor-element.wtp_intro.elementor-widget-udesign_widget_banner > .elementor-widget-container {
        padding-bottom: 0;
    }

    html body main#main .duplex-wrap {
        top: auto;
        bottom: 0;
    }

    html body main#main .duplex-wrap span {
        font-size: clamp(72px, 20vw, 120px);
    }

    html body .wtp_testimonials .elementor-inner-column .elementor-element.elementor-widget-text-editor {
        left: 20px;
        opacity: 1;
    }
}

@media (max-width: 599px) {
    .elementor-element-61e81eb .logo .site-logo {
        max-width: 136px !important;
        width: 100% !important;
        margin-bottom: -44px;
        margin-top: -16px;
    }

    .header .sticky-content-wrapper .sticky-content.fixed .logo .site-logo{
    max-width: 136px !important;
    width: 100% !important;
        margin-bottom: -34px;
        margin-top: -30px;
}
    html body .wtp_area-buttons .elementor-column > .elementor-widget-wrap {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}

@media (min-width: 549px) {
    .list-two-col ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
        padding-bottom: 0.5rem;
    }
}
.list-two-col ul {
    padding: 40px 60px;
    border-radius: 20px;
    background-color: #1a1a1a20;
    margin-top: 30px;
    margin-bottom: 0;
}
.gform_page_fields h2 {
    font-size: 40px;
    margin-bottom: 8px;
    display: inline-block;
}
.gform_page_fields p,
.gform_page_fields .inner-text {
    font-size: 14px !important;
    margin-bottom: 8px;
    display: inline-block;
}
.gform_wrapper.gravity-theme .gform_previous_button.button, .gform_wrapper.gravity-theme .gform_save_link.button {
    color: #1a1a1a;
}


@media (max-width: 549px) {

    html body .inner-text.lp h2 {
        font-size: 36px;
    }
    .hero-right .m-auto {
        margin: auto;

    }
    .hero-right .m-auto .elementor-widget-container {
        margin-right: 0 !important;
    }
    html body .wtp_banner-section h1 {

        max-width: 360px;
        margin: 0 auto 12px auto;
    }
    /*html body header#header .elementor-element.wtp_header-phone.elementor-widget-udesign_widget_contact .telephone {*/
    /*    display: none;*/
    /*}*/

    html body .wtp_services h3 {
        font-size: 2.7rem;
    }

    html body h1,
    html body h2,
    html body h3,
    html body h4,
    html body h5,
    html body h6 {
        letter-spacing: .3rem ;
    }
}

@media (max-width: 399px) {
    html body header#header .logo img {
        width: 45vw;
        max-width: 175px;
    }

    html body main#main .duplex-wrap {
        display: none;
    }
    html body header#header .elementor-element.wtp_header-phone.elementor-widget-udesign_widget_contact .telephone {
        display: none;
    }
}

@media (min-width: 768px) {
    html body .wtp_about-intro .elementor-section.elementor-inner-section.elementor-section-height-default .elementor-container.elementor-column-gap-wider > .elementor-column:nth-child(2) {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

@media (min-width: 1440px) {
    html body.home .wtp_intro h2,
    html body .wtp_intro.city-page h2 {
        /*white-space: nowrap;*/
    }
}

@media (min-width: 1700px) {
    html body .wtp_about-intro .elementor-container.elementor-column-gap-wider {
        width: 1680px;
        max-width: calc(100vw - 12% - 24px);
        -webkit-column-gap: 5%;
        -moz-column-gap: 5%;
        column-gap: 5%;
    }
}


/*------------------------
*      5. Keyframes      *
-------------------------*/
/* Fade In */
@-webkit-keyframes fade-in {
    0% {
        opacity: 0;
    }

    33% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fade-in {
    0% {
        opacity: 0;
    }

    33% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

/* Zoom In */
@-webkit-keyframes zoom-in {
    0% {
        -webkit-transform: scale(0) translate(0, 0);
        -ms-transform: scale(0) translate(0, 0);
        transform: scale(0) translate(0, 0);
        opacity: 0;
    }

    100% {
        -webkit-transform: scale(1) translate(0, 0);
        -ms-transform: scale(1) translate(0, 0);
        transform: scale(1) translate(0, 0);
        opacity: 1;
    }
}

@keyframes zoom-in {
    0% {
        -webkit-transform: scale(0) translate(0, 0);
        -ms-transform: scale(0) translate(0, 0);
        transform: scale(0) translate(0, 0);
        opacity: 0;
    }

    100% {
        -webkit-transform: scale(1) translate(0, 0);
        -ms-transform: scale(1) translate(0, 0);
        transform: scale(1) translate(0, 0);
        opacity: 1;
    }
}