/*
Theme Name:  Hello Elementor Child
Theme URL:   https://elementor.com
Description: Write here theme description.
Author:      Oded Talmon
Author URL:  https://odedta.com
Template:    hello-elementor
Version:     1.0.0
*/

/*
 * General
 */
pre {
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
    color: #333333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #cccccc;
    border-radius: 4px;
    direction: ltr;
    text-align: left;
    overflow: auto;
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    font-size: 170%;
    padding: 7px;
}

[data-elementor-type="header"] {
    position: fixed !important;
    top: 0;
    right: 0;
    z-index: 1000;
    width: 120px;
}

body.logged-in:not(.elementor-editor-active) [data-elementor-type="header"] {
    top: 32px;
}

main,
footer,
#content {
    padding-right: 120px;
}

.main-menu-nav ul:not(.sub-menu) > li > a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 10px;
    text-align: center;
}

.main-menu-nav ul li a {
    display: block;
    padding: 10px !important;
    text-align: center;
}

.main-menu-nav ul.elementor-nav-menu > li > a::before {
    display: block;
    opacity: 1 !important;
    content: "";
    position: relative;
    width: 70px;
    height: 70px;
    margin: 0 auto 5px auto;
    background-color: transparent !important;
    background-size: 70%;
    background-position: center;
    background-repeat: no-repeat;
}

.main-menu-nav ul.elementor-nav-menu > li {
    border-bottom: 1px solid #333333;
}

.main-menu-nav ul.elementor-nav-menu > li.menu-item-57.current-menu-item {
    background-color: #0080bb;
}

.main-menu-nav ul.elementor-nav-menu > li.menu-item-2596.current-menu-item > a {
    color: #333333 !important;
}


.main-menu-nav ul.elementor-nav-menu > li.menu-item-58 > a:hover {
    color: #56bd7e !important;
}

.main-menu-nav ul li ul.sub-menu {
    top: 0 !important;
    right: 101%;
    min-width: 18em !important;
    margin-left: 0 !important;
}

.main-menu-nav ul.sub-menu li.menu-item-73,
.main-menu-nav ul.sub-menu li.menu-item-74 {
    background-color: #0080bb;
}

.main-menu-nav ul.sub-menu li.menu-item-73 a,
.main-menu-nav ul.sub-menu li.menu-item-74 a {
    color: white !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

.main-menu-nav ul.sub-menu li.menu-item-73 a:hover,
.main-menu-nav ul.sub-menu li.menu-item-74 a:hover {
    color: inherit !important;
}

.main-menu-nav ul.sub-menu li.menu-item-73 a.elementor-item-active,
.main-menu-nav ul.sub-menu li.menu-item-74 a.elementor-item-active {
    background-color: #0080bb !important;
    color: #333333 !important;
}

/*
.main-menu-nav ul.sub-menu li.menu-item-73 > a,
.main-menu-nav ul.sub-menu li.menu-item-74 > a {
    color: white !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}
*/

#form_contact_float input[type="text"],
#form_contact_float input[type="tel"],
#form_contact_float input[type="email"] {
    box-shadow: inset 0px 2px 5px rgba(0, 0, 0, 0.15);
}

#form_contact .elementor-form-fields-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-group-contact_full_name {
    grid-row: 1;
    grid-column: 1 / 2;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-group-contact_email {
    grid-row: 1;
    grid-column: 2 / 3;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-group-contact_phone {
    grid-row: 2;
    grid-column: 1 / 2;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-group-contact_subject {
    grid-row: 2;
    grid-column: 2 / 3;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-group-contact_newsletter {
    grid-row: 3;
    grid-column: 1 / 3;
}

#form_contact .elementor-field-type-text {
    grid-row: 4;
}

#form_contact .elementor-form-fields-wrapper .elementor-field-type-submit {
    grid-row: 1 / 3;
    grid-column: 3 / 4;
}

#form_contact button[type="submit"] {
    height: 100%;
    padding: 10px 30px;
    text-align: right;
}

#form_contact button[type="submit"] svg {
    position: relative;
    top: 4px;
    font-size: 74px;
}

#form_contact_single_project .elementor-field-group-contact_newsletter input[type="checkbox"],
#form_contact .elementor-field-group-contact_newsletter input[type="checkbox"] {
    position: relative;
    top: 5px;
    width: 20px;
    height: 20px;
    margin-left: 5px;
    border-radius: 0;
}

#form_contact_single_project .elementor-field-group-contact_newsletter input[type="checkbox"] + label {
    font-size: 17px;
}

#form_contact_single_project .elementor-button > span {
    justify-content: space-between;
    align-items: center;
}

#form_contact_single_project .elementor-button span.elementor-button-text {
    text-align: right;
}

#form_contact_single_project button[type="submit"] svg {
    position: relative;
    top: 4px;
    font-size: 68px;
}

footer[data-elementor-type="footer"] p a {
    color: white;
    font-size: inherit;
    font-weight: 300;
}

footer[data-elementor-type="footer"] p a:hover {
    color: white;
}

#homepage-main-swiper,
#renewal-main-swiper {
    height: 824px;
}

#single-project-main-swiper {
    height: 640px;
}

#projects-category-swiper {
    height: 545px;
}

.image-carousel,
.image-carousel .elementor-image-carousel-wrapper,
.image-carousel .elementor-image-carousel {
    height: 100%;
}

.image-carousel .swiper-slide a,
.image-carousel .swiper-slide figure,
.image-carousel .swiper-slide img {
    display: block;
    height: 100%;
}

.image-carousel .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper.template-1 .swiper-slide {
    background-size: cover;
}

.swiper.template-2 .swiper-slide {
    background-size: cover;
    background-position: center center;
}

.swiper.template-2 .background-video,
.swiper.template-1 .background-video {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 100%;
}

.swiper.template-2 .background-video iframe,
.swiper.template-1 .background-video iframe {
    width: 100%;
    height: 100%;
}

.swiper.template-2 .background-video-overlay,
.swiper.template-1 .background-video-overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.0);
}

.projects-carousel .elementor-swiper-button-next::after,
.projects-carousel .elementor-swiper-button-prev::after,
.swiper.template-2 .swiper-button-next::after,
.swiper.template-2 .swiper-button-prev::after,
.swiper.template-1 .swiper-button-next::after,
.swiper.template-1 .swiper-button-prev::after {
    content: "";
}

.swiper.template-2 .slide-image,
.swiper.template-1 .slide-image {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 15;
    display: flex;
    max-width: 100%;
    height: 100%;
}

.swiper.template-2 .slide-content,
.swiper.template-1 .slide-content {
    position: absolute;
    width: 50%;
    height: 100%;
    z-index: 50;
}

.swiper.template-2 .slide-content {
    left: 0;
}

.swiper.template-1 .slide-content-background {
    position: absolute;
    z-index: 55;
    width: 50%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-transform: perspective(100px) rotateX(-6deg);
    -o-transform: perspective(100px) rotateX(-6deg);
    -moz-transform: perspective(100px) rotateX(-6deg);
    -webkit-transform-origin: 100% 100%;
    -moz-transform-origin: 100% 100%;
    -o-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
}

.swiper.template-2 .slide-content-background {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 16px 0 rgb(0, 0, 0, 0.38);
    background-color: white;
    transform: translateX(-40%) skew(35deg);
    z-index: 5;
}

.swiper.template-1 .slide-content-inner {
    position: relative;
    z-index: 60;
    width: 100%;
    height: 100%;
    padding: 10% 10% 10% 40%;
}

.swiper.template-2 .slide-content-inner {
    position: relative;
    z-index: 30;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 20%;
}

.swiper.template-2 .slide-content-inner img {
    width: 100%;
    max-width: 175px;
}

.swiper.template-2 .slide-content-inner .company-logo,
.swiper.template-1 .slide-content-inner .company-logo {
    width: 100%;
    max-width: 400px;
    height: 100%;
    max-height: 154px;
    margin-bottom: 30px;
}

.swiper.template-1 .slide-content-inner h2 {
    color: #333333;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.1;
}

.swiper.template-1 .slide-content-inner p {
    margin: 0 0 20px 0;
    color: #333333;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.1;
}

.swiper.template-1 .slide-content-inner p:last-child {
    margin-bottom: 0;
}

.projects-carousel .elementor-swiper-button-next,
.projects-carousel .elementor-swiper-button-prev,
.image-carousel .elementor-swiper-button-next,
.image-carousel .elementor-swiper-button-prev,
.swiper.template-2 .swiper-button-next,
.swiper.template-2 .swiper-button-prev,
.swiper.template-1 .swiper-button-next,
.swiper.template-1 .swiper-button-prev {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    background-color: #0080bb;
    background-image: none;
    color: white;
}

.projects-carousel .elementor-swiper-button-next i,
.projects-carousel .elementor-swiper-button-prev i,
.image-carousel .elementor-swiper-button-next i,
.image-carousel .elementor-swiper-button-prev i,
.swiper.template-2 .swiper-button-next i,
.swiper.template-2 .swiper-button-prev i,
.swiper.template-1 .swiper-button-next i,
.swiper.template-1 .swiper-button-prev i {
    color: white;
    font-size: 33px;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.image-carousel .elementor-swiper-button-prev,
.swiper.template-2 .swiper-button-next,
.swiper.template-1 .swiper-button-next {
    right: auto;
    left: 0;
}

.image-carousel .elementor-swiper-button-next,
.swiper.template-2 .swiper-button-prev,
.swiper.template-1 .swiper-button-prev {
    right: 0;
    left: auto;
}

.projects-carousel .elementor-swiper-button-next::after,
.projects-carousel .elementor-swiper-button-prev::after,
.image-carousel .elementor-swiper-button-next::after,
.image-carousel .elementor-swiper-button-prev::after,
.swiper.template-2 .swiper-button-next::after,
.swiper.template-2 .swiper-button-prev::after,
.swiper.template-1 .swiper-button-next::after,
.swiper.template-1 .swiper-button-prev::after {
    font-size: 26px;
}

.pagination-layout .swiper-pagination,
.image-carousel .swiper-pagination,
.swiper.template-2 .swiper-pagination,
.swiper.template-1 .swiper-pagination {
    right: 0;
    bottom: -3px;
    left: 0;
    line-height: 1;
}

.image-carousel .swiper-pagination {
    bottom: -35px;
}

.pagination-layout .swiper-pagination .swiper-pagination-bullet,
.image-carousel .swiper-pagination .swiper-pagination-bullet,
.swiper.template-2 .swiper-pagination .swiper-pagination-bullet,
.swiper.template-1 .swiper-pagination .swiper-pagination-bullet {
    opacity: 1;
    width: 30px;
    height: 16px;
    margin: 0 5px;
    border: 2px solid #0080bb;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.6);
}

.swiper.template-2 .swiper-pagination {
    text-align: left;
    padding-left: 6%;
}

.pagination-layout .swiper-pagination .swiper-pagination-bullet,
.image-carousel .swiper-pagination .swiper-pagination-bullet {
    width: 30px;
}

.pagination-layout .swiper-pagination .swiper-pagination-bullet-active,
.image-carousel .swiper-pagination .swiper-pagination-bullet-active,
.swiper.template-2 .swiper-pagination .swiper-pagination-bullet-active,
.swiper.template-1 .swiper-pagination .swiper-pagination-bullet-active {
    background-color: white;
}

.swiper-projects {
    height: 313px;
}

.swiper-projects .elementor-loop-container {
    display: flex;
    flex-wrap: nowrap;
}

.renewal-tabs .project-type-btn {
    cursor: pointer;
}

#project-type-1,
#project-type-2,
#project-type-3 {
    display: none;
}

#project-type-1.active,
#project-type-2.active,
#project-type-3.active {
    display: block;
}

.projects-carousel .swiper-wrapper {
    padding-bottom: 20px;
}

.projects-carousel .e-loop-item .elementor-element.e-con-boxed.e-con:first-child {
    order: 2;
}

.projects-carousel .e-loop-item .elementor-element.e-con-boxed.e-con:last-child {
    order: 1;
}

.projects-swiper-loop-item-title {
    min-height: 60px;
}

.projects-swiper-loop-item-title p {
    margin-bottom: 0 !important;
}

.projects-swiper-loop-item-excerpt {
    min-height: 87px;
}

.projects-swiper-loop-item-link a {
    direction: rtl !important;
    display: flex;
    justify-content: center;
}

.projects-swiper-loop-item-image {
    min-height: 75px;
}

.projects-grid .e-loop-item .elementor-button-link {
    display: block;
}

.single-project-description {
    max-height: 540px;
    overflow-y: auto;
}

/*.new-projects-swiper-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    width: 100px;
    height: 100%;
    box-shadow: -65px 0px 40px 0px rgba(255, 255, 255, 1) inset;
}*/

.thank-you-letters-grid article {
    border: 1px solid black;
}

.thank-you-letters-grid article .elementor-post__excerpt {
    padding: 0 20px;
}

.single-thank-you-letters .project-image {
    padding: 10px;
    border: 1px solid black;
}

.single-thank-you-letters .project-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-thank-you-letters .elementor-post-navigation .post-navigation__arrow-wrapper.post-navigation__arrow-next,
.single-thank-you-letters .elementor-post-navigation .post-navigation__arrow-wrapper.post-navigation__arrow-prev {
    font-size: 18px;
    line-height: 1;
}

body .btn {
    display: inline-block;
    padding: 8px 20px;
    border: 1px solid #0080bb;
    border-radius: 0;
    background: #0080bb;
    transition: all 0.3s ease;
}

body .btn a,
body .btn a:hover {
    color: white;
    font-size: 18px;
    font-weight: 700;
}

body .btn.btn-primary {
    background: #0080bb;
    color: white;
}

.sokolov {
    display: none;
}

.postid-4959 .sokolov {
    display: block;
}

.postid-4959 .form-lead-title,
.postid-4959 .form-lead,
.postid-4959 .form-lead-desc {
    display: none;
}

.projects-sidebar .e-con-inner {
    max-height: 100vh;
}


@media (min-width: 1366px) and (max-width: 1800px) {
    .projects-grid .elementor-loop-container.elementor-grid {
        grid-template-columns: 1fr 1fr;
    }

    .single-project-description {
        max-height: 410px;
    }

    #project-type-1 .elementor-loop-container.elementor-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .main-menu-nav ul li a {
        padding: 4px 10px !important;
        font-size: 16px;
    }
}

@media (max-width: 1600px) {
    .swiper.template-1 .slide-content-inner .company-logo {
        margin-bottom: 10px;
    }

    .swiper.template-1 .slide-content-inner h2 {
        font-size: 44px;
    }

    .swiper.template-1 .slide-content-inner p {
        font-size: 34px;
    }

    .swiper.template-1 .slide-content-inner {
        padding: 10% 10% 10% 40%;
    }

    .main-menu-nav ul.elementor-nav-menu > li > a::before {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 1600px) {
    #homepage-swiper-wrapper,
    #homepage-main-swiper,
    #renewal-main-swiper {
        height: 535px;
        max-height: 535px;
        min-height: 535px;
    }

    .swiper.template-1 .slide-content-inner h2 {
        font-size: 36px;
    }

    .swiper.template-1 .slide-content-inner p {
        font-size: 28px;
    }

    .swiper.template-1 .slide-content-inner {
        padding: 10% 10% 10% 35%;
    }

    .swiper.template-1 .slide-content-background {
        width: 60%;
    }

    .swiper.template-1 .slide-content-inner .company-logo {
        margin-bottom: 0;
    }
}

@media (max-width: 1366px) {
    #renewal-main-swiper,
    #homepage-main-swiper {
        height: 535px;
    }

    .swiper.template-1 .slide-content-inner h2 {
        font-size: 36px;
    }

    .swiper.template-1 .slide-content-inner p {
        font-size: 28px;
    }

    .swiper.template-1 .slide-content-inner {
        padding: 10% 10% 10% 35%;
    }

    .swiper.template-1 .slide-content-background {
        width: 60%;
    }

    .swiper.template-1 .slide-content-inner .company-logo {
        margin-bottom: 0;
    }

    .image-carousel {
        height: 450px;
    }

    .image-carousel .swiper {
        height: 100%;
    }

    .single-project-description {
        max-height: 100%;
    }

    .main-menu-nav ul.elementor-nav-menu > li > a::before {
        width: 50px;
        height: 50px;
    }
}

@media (max-width: 1280px) {
    .swiper.template-1 .slide-content-background {
        width: 67%;
    }

    .swiper.template-1 .slide-content-inner {
        padding: 10% 15% 10% 25%;
    }

    .main-menu-nav ul.elementor-nav-menu > li > a::before {
        width: 30px;
        height: 30px;
    }

    .new-projects-swiper-wrapper::after {
        display: none;
        box-shadow: initial;
    }
}

@media (max-width: 1024px) {
    body.logged-in:not(.elementor-editor-active) [data-elementor-type="header"] {
        top: 0;
    }

    [data-elementor-type="header"] {
        position: relative !important;
        top: 0;
        z-index: 1000;
        width: 100%;
    }

    .bg-mobile-red {
        background-color: #0080bb  !important;
    }

    main,
    footer,
    #content {
        padding-right: 0;
    }

    #elementor-popup-modal-105 {
        position: fixed !important;
    }

    .main-menu-nav .elementor-menu-toggle {
        height: 35px;
    }

    .main-menu-nav ul li a {
        padding: 35px !important;
    }

    .main-menu-nav ul.sub-menu li > a,
    .main-menu-nav ul.sub-menu li > a {
        padding: 20px !important;
    }

    .main-menu-nav ul.elementor-nav-menu > li > a::before {
        position: absolute;
        right: 15px;
        top: 15px;
    }

    .swiper-projects {
        height: auto;
    }

    #form_contact .elementor-form-fields-wrapper {
        display: flex;
        flex-wrap: wrap;
    }

    #form_contact .elementor-form-fields-wrapper .elementor-field-group {
        margin-bottom: 10px;
    }

    .form-contact-marker-p {
        position: relative !important;
    }

    #form_contact button[type="submit"] svg {
        top: 3px;
        left: -15px;
        font-size: 35px;
    }

    #form_contact button[type="submit"] {
        width: 100%;
        padding: 10px 30px 13px 30px;
    }

    #projects-category-swiper {
        height: calc(100vh - 110px);
    }

    .single-project-description {
        max-height: 100%;
        overflow-y: auto;
    }

    .elementor-icon-box-wrapper {
        display: flex !important;
        flex-direction: row-reverse !important;
        align-items: center !important;
    }

    .elementor-icon-box-wrapper .elementor-icon-box-icon {
        margin: 7px 10px 0 0 !important;
    }

    .elementor-element .swiper .swiper-image-stretch .swiper-slide .swiper-slide-image,
    .elementor-lightbox .swiper .swiper-image-stretch .swiper-slide .swiper-slide-image {
        height: 100%;
        min-height: 450px;
    }

    .image-carousel .elementor-swiper-button-next,
    .image-carousel .elementor-swiper-button-prev,
    .swiper.template-2 .swiper-button-next,
    .swiper.template-2 .swiper-button-prev,
    .swiper.template-1 .swiper-button-next,
    .swiper.template-1 .swiper-button-prev {
        width: 38px;
        height: 38px;
    }

    .image-carousel .elementor-swiper-button-next i,
    .image-carousel .elementor-swiper-button-prev i,
    .swiper.template-2 .swiper-button-next i,
    .swiper.template-2 .swiper-button-prev i,
    .swiper.template-1 .swiper-button-next i,
    .swiper.template-1 .swiper-button-prev i {
        font-size: 27px;
    }

    .pagination-layout .swiper-pagination .swiper-pagination-bullet,
    .image-carousel .swiper-pagination .swiper-pagination-bullet {
        width: 49px;
        height: 15px;
        margin: 2px 5px;
    }

    .main-menu-nav ul.elementor-nav-menu > li > a::before {
        width: 60px;
        height: 60px;
    }

    .projects-sidebar .e-con-inner {
        max-height: 100%;
    }

    .swiper.template-2 .slide-image,
    .swiper.template-1 .slide-image {
        max-width: 100%;
        height: auto;
    }

    .swiper.template-1 .slide-content-background {
        display: none;
    }
}

@media (max-width: 768px) {
    .swiper.template-1 .slide-content {
        position: relative;
        width: 100%;
        height: 100%;
    }

    .swiper.template-1 .slide-content-inner {
        display: flex;
        flex-direction: column;
        height: 100%;
        padding: 30px 20px 20px 20px;
        text-align: center;
    }

    .swiper.template-1 .slide-content-inner .company-logo {
        width: auto;
        max-width: 50%;
        height: auto;
        max-height: initial;
        margin: 0 auto;
    }

    .swiper.template-1 .slide-content-inner h2 {
        font-size: 22px;
        line-height: 1.2;
    }

    .swiper.template-1 .slide-content-inner p {
        font-size: 17px;
        line-height: 1.2;
    }

    .swiper.template-1 .slide-content-inner p:last-child a {
        color: black;
        font-size: 16px;
    }

    .swiper.template-1 .slide-content-inner p:last-child .btn {
        padding: 5px 15px;
        background-color: transparent;
        border: none;
    }

    .image-carousel {
        height: auto;
    }

    .elementor-element .swiper .swiper-image-stretch .swiper-slide .swiper-slide-image,
    .elementor-lightbox .swiper .swiper-image-stretch .swiper-slide .swiper-slide-image {
        min-height: initial;
    }
}

/*
 * Animations
 */
/* Animation 1 */
.slide-image.swiper-image-animation-1 img {
    animation: swiper-image-animation-1 1.2s ease forwards;
    transform-origin: top right;
    -webkit-filter: blur(4px);
    transform: scale(2);
    opacity: 1;
}

@keyframes swiper-image-animation-1 {
    to {
        transform-origin: bottom left;
        -webkit-filter: blur(0);
        transform: scale(1);
        opacity: 1;
    }
}

/* Animation 2 */
.swiper-image-animation-2 img {
    animation: swiper-image-animation-2 1.2s ease forwards;
    transform-origin: bottom left;
    -webkit-filter: blur(4px);
    transform: scale(2);
    opacity: 1;
}

@keyframes swiper-image-animation-2 {
    to {
        transform-origin: top right;
        -webkit-filter: blur(0);
        transform: scale(1);
        opacity: 1;
    }
}

