/** Custom css **/
body {
    font-family: 'Montserrat';
    font-size: 14px;
}

:focus {
    outline: 0;
}

@media (min-width: 768px) {
    body {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .small-hide {
        display: none !important;
    }
}

@media (max-width: 1023px) and (min-width: 768px) {
    .medium-hide {
        display: none !important;
    }
}

@media (min-width: 1024px) {
    .large-hide {
        display: none !important;
    }
}

.arrow-animation .wp-element-button span {
    background-image: url('../images/btn-arrow-icon.png');
    background-repeat: no-repeat;
    background-size: 10px;
    background-position: center right;
    display: block;
    padding: 0 18px 0 0;
    transition: all 0.3s linear;
}
.arrow-animation .wp-element-button:hover span {
    background-position: center left;
    padding: 0 0 0 18px;
}

.section-heading {
    font-size: 24px;
    font-weight: 700;
    margin: 0;

}
@media (min-width: 880px) {
    .section-heading {
        font-size: 40px;
    }
}
.section-heading .has-inline-color {
    background-color: transparent;
}

.section-sub-heading {
    font-size: 14px;
    font-weight: 500;
}
@media (min-width: 880px) {
    .section-sub-heading {
        font-size: 20px;
    }
}

@media (min-width: 1024px) {
    .is-full-height {
        height: 100%;
    }
}

/*--- Form ---*/
.forminator-guttenberg {
    margin: 0;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-field {
    padding-top: 20px;
    position: relative;
}

.forminator-ui#forminator-module-64.forminator-design--default .forminator-input,
.forminator-ui.forminator-custom-form[data-design=default] .forminator-input,
.forminator-ui#forminator-module-64.forminator-design--default .forminator-textarea {
    border: 0;
    border-bottom: solid 1px #928E8E;
    font-size: 12px;
    padding-left: 0;
    padding-right: 0;
}
.forminator-ui#forminator-module-64.forminator-design--default .forminator-iti-input .iti__selected-dial-code,
.forminator-iti-input.iti.iti .iti__selected-dial-code {
    font-size: 12px;
    font-weight: 500;
}
.forminator-ui#forminator-module-64.forminator-design--default .forminator-textarea {
    max-height: 40px;
    min-height: auto !important;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-input:focus,
.forminator-ui#forminator-module-64.forminator-design--default .forminator-textarea:focus {
    outline: 0;
}

.forminator-ui#forminator-module-64.forminator-design--default .forminator-label {
    color: #747373;
    font-weight: 400;
    position: absolute;
    top: 30px;
    pointer-events: none;
    transition: all 0.3s ease;
}
.forminator-ui#forminator-module-64.forminator-design--default .forminator-label .forminator-required {
    color: currentColor;
}

.forminator-ui#forminator-module-64.forminator-design--default .forminator-is_active .forminator-label,
.forminator-ui#forminator-module-64.forminator-design--default .forminator-is_filled .forminator-label {
    top: 0;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-label+.forminator-description {
    position: absolute;
    right: 0;
}
.forminator-consent__label p {
    color: #979797;
    font-size: 12px;
    font-weight: 500;
}
.forminator-ui#forminator-module-64.forminator-design--default .forminator-consent .forminator-checkbox-box {
    border-color: #2889D7;
    border-radius: 4px;
    border-width: 2px;
    background-color: #fff;
    height: 16px;
    width: 16px;
    flex: 16px;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-checkbox .forminator-checkbox-box:before {
    font-size: 9px;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-button {
    background-image: linear-gradient(135deg,rgb(40,137,215) 0%,rgb(21,72,113) 100%);
    color: #fff;
    border-radius: 8px;
    padding-right: 25px;
    padding-left: 25px;
    position: relative;
    transition: all 0.3s linear;
    width: auto;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-button:before {
    content: "";
    background-image: url('../images/btn-arrow-icon.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center right;
    height: 10px;
    width: 10px;
    position: absolute;
    left: calc(100% - 20px);
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s linear;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-button:hover:before {
    left: 10px;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-button:focus {
    outline: 0;
}
.forminator-ui.forminator-custom-form:not(.forminator-size--small)[data-grid=open] .forminator-row-inside:not(:last-child), 
.forminator-ui.forminator-custom-form:not(.forminator-size--small)[data-grid=open] .forminator-row:not(:last-child) {
    margin-bottom: 23px;
}
.forminator-ui.forminator-custom-form:not(.forminator-size--small)[data-grid=open] .forminator-row.forminator-row-last {
    margin-bottom: 0;
}
.forminator-ui.forminator-custom-form:not(.forminator-size--small)[data-grid=open] .forminator-row.forminator-row-last .forminator-field {
    padding-top: 0;
}

/*--- Header ---*/
header {
    position: relative;
    top: 0;
    z-index: 2;
}
body .header-wrapper {
    box-shadow: 0 0px 4px rgba(0,0,0,0.2);
    display: grid; 
    grid-template-columns: auto 130px 40px; 
    grid-template-rows: 1fr; 
    gap: 0px 8px;
    padding: 9px 16px;
}
.open-search,
.header-search {
    display: none;
}
@media (min-width: 880px) {
    header {
        margin: 0 0 24px;
        padding: 0 16px;
        top: 8px;
        position: fixed;
        left: 0;
        width: calc(100% - 30px);
    }
    body .header-wrapper {  
        box-shadow: 0 4px 16px rgba(0,0,0,0.2);
        grid-template-columns: auto 1fr 40px 130px; 
        grid-template-rows: 1fr; 
        gap: 0px 16px;
        border-radius: 8px;
        padding: 15px 24px;
        position: relative;
    }
    .open-search {
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .header-search {
        background-color: #fff;
        border-radius: 8px;
        position: absolute;
        display: block;
        left: 0;
        right: 0;
        top: -100px;
        max-width: 1340px;
        z-index: 2;
        margin: auto;
        padding: 10px 0;
        transition: all 0.3s linear 0s;
    }
    .header-search.open {
        top: 0;
    }
    .header-search form {
        max-width: 90%;
    }
    .wp-block-search__button {
        padding: 10px;
    }
    .close-search {
        cursor: pointer;
        position: absolute;
        right: 20px;
        top: 24px;
        margin: 0;
    }
}

@media (min-width: 1361px) {
    header {
        padding: 0 15px;
    }
}


@media (max-width: 879px) {
    .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
        display: none;
    }
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: block;
    }
    .header-wrapper .wp-block-group {
        grid-column-start: 3;
        grid-row-start: 1;
    }
    .header-wrapper .wp-block-group > nav {
        display: block;
    }
    .header-wrapper .wp-block-buttons {
        grid-column-start: 2;
        grid-row-start: 1;
    }
    header .wp-block-site-logo img {
        max-width: 50px;
    }
    .wp-block-navigation__responsive-container-open {
        background-color: #E9EDF3;
        border-radius: 8px;
        color: #2889D7;
        padding: 8px;
    }
}

/*----- Mobile menu -----*/
nav .wp-block-navigation__responsive-container.is-menu-open {
    overflow: visible;
    padding: 0;
    top: 58px;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    padding-top: 10px;
}
nav .wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close {
    background-color: #E9EDF3;
    border-radius: 8px;
    color: #2889D7;
    padding: 8px;
    top: -48px;
    right: 16px;
    width: 40px;
    height: 40px;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
    width: 100%;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
    row-gap: 2px;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
    background-color: #fff !important;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
    display: block;
    margin: 0;
    padding: 18px 16px;
    width: calc(100% - 32px);
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item > .wp-block-navigation-item__content {
    display: inline-block;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
    display: block;
    height: 14px;
    position: absolute;
    right: 16px;
    top: 20px;
    width: 14px;
}

nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
    margin: 0;
    padding: 0;
}

nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
    background-color: transparent;
    position: static;
    position: static;
    margin: 0;
    padding: 0;
    height: 0;
    overflow: hidden;
    visibility: hidden;
    transition: all 0.3s ease;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon[aria-expanded="true"] + .wp-block-navigation__submenu-container {
    height: auto;
    overflow: visible;
    visibility: visible;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container > li {
    margin: 0;
    padding: 16px 0 0;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container > li > a {
    padding: 0;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container > li > .wp-block-navigation__submenu-icon {
    right: 0;
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:has(.wp-block-navigation__submenu-icon[aria-expanded="true"]) {
    background: linear-gradient(to right,  rgb(6,65,113) 0%,rgb(40,137,215) 50%) !important;    
}
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:has(.wp-block-navigation__submenu-icon[aria-expanded="true"]) a,
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon[aria-expanded="true"] + .wp-block-navigation__submenu-container a,
nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:has(.wp-block-navigation__submenu-icon[aria-expanded="true"]) .wp-block-navigation-submenu__toggle {
    color: #fff;
}

 /*--- Mega menu ---*/
 @media (min-width: 880px) {
    .wp-block-navigation-item__content {
        text-decoration: none;
    }

    .wp-block-navigation .wp-block-navigation-item.has-child:after {
        content: "";
        position: absolute;
        top: 100%;
        height: 25px;
        width: 100%;
    }

    .wp-block-navigation__responsive-container-content > ul.wp-block-navigation > li.has-child > .eov-submenu-wrapper {
        background-color: #fff;
        border-radius: 0 0 8px 8px;
        box-shadow: 0 4px 4px rgba(0,0,0,0.2);
        position: fixed;
        top: 72px;
        max-width: 1340px;
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - 30px) !important;
    }
    .wp-block-navigation__responsive-container-content > ul.wp-block-navigation > li.has-child > .eov-submenu-wrapper:after {
        content: "";
        background: radial-gradient(ellipse at center,  rgba(96,145,193,0.61) 0%,rgba(40,137,215,0.38) 23%,rgba(40,137,215,0.1) 52%,rgba(40,137,215,0) 62%);
        position: absolute;
        height: 100%;
        width: 40%;
        right: 1%;
        bottom: -30px;
        opacity: 0.15;
    }

    nav .wp-block-navigation .wp-block-navigation__submenu-icon[aria-expanded="true"] + .eov-submenu-wrapper>.wp-block-navigation__submenu-container {
        border: 0;
        border-right: solid 1px rgba(10, 54, 137, 0.12);
        height: auto;
        overflow: visible;
        visibility: visible;
        width: 50%;    
        opacity: 1;
        margin: 16px 8px;
        min-height: 200px;
        position: relative;
    }

    .eov-submenu-wrapper>.wp-block-navigation__submenu-container>li.wp-block-navigation-item {
        border-left: 3px solid transparent;
        border-radius: 8px;
        max-width: 300px;
    } 
    .eov-submenu-wrapper>.wp-block-navigation__submenu-container>li.wp-block-navigation-item:hover {
        background-color: #EFF4F8;
        border-color: #2889D7;
        color: #2889D7;
    }

    .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon {
        margin-right: 16px;
    }

    .eov-submenu-wrapper .eov-submenu-wrapper {        
        position: absolute;
        left: 100%;
        top: 0;
        width: 100%;
    }
    .eov-submenu-wrapper .eov-submenu-wrapper .wp-block-navigation__submenu-container {
        border: 0 !important;
        margin: 0 0 0 16px !important;
        position: static !important;
        width: 100% !important;
    }

}
 

/*--- Footer ---*/
.footer-newsletter .wp-block-heading {
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}
.footer-newsletter .forminator-custom-form {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 8px;
    margin-top: 18px !important;
}
@media (min-width: 1400px) {
    .footer-newsletter .forminator-custom-form {
        justify-content: flex-start;
    }
}

.footer-newsletter .forminator-ui#forminator-module-286.forminator-design--default .forminator-input {
    border: solid 1px #2889D7;
    border-radius: 8px;
    color: #656565;
    font-size: 16px;
    font-weight: 500;
    min-height: 48px;
    padding: 10px;
}
.footer-newsletter .forminator-ui.forminator-custom-form[data-design=default] .forminator-field {
    padding-top: 0;
}
@media (min-width: 1400px) {
    .footer-newsletter .forminator-ui#forminator-module-286.forminator-design--default .forminator-input {
        min-width: 340px;
    }
}

.footer-newsletter .forminator-ui#forminator-module-286.forminator-design--default .forminator-input:focus {
    outline: 0;
}
.footer-newsletter .forminator-ui.forminator-custom-form[data-design=default] .forminator-button {
    background-color: #2889D7;
    background-image: url('../images/send-button.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px auto;
    border-radius: 8px;
    height: 48px;
    min-width: 48px;
    width: 48px;
    font-size: 0 !important;
}
.footer-newsletter .forminator-ui.forminator-custom-form[data-design=default] .forminator-button:before {
    display: none;
}
.footer-newsletter .forminator-response-message.forminator-success {
    order: 1;
    margin: 0 0 10px;
    padding: 10px 10px 10px 10px;
    border-radius: 4px;
    text-align: left;
    font-size: 12px !important;
}

.footer-newsletter .forminator-ui.forminator-custom-form[data-design=default] .forminator-response-message + .forminator-row {
    width: calc(100% - 58px);
}

.footer-newsletter .forminator-loading {
    display: none !important;
}

.footer-menu-column .wp-block-heading {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 16px;
}
.footer-menu-column nav .wp-block-navigation-item__content {
    font-size: 16px;
    font-weight: 500;
    position: relative;
    transition: all 0.3s ease-in;
}
.footer-menu-column nav .wp-block-navigation-item__content:before {
    content: "";
    background-image: url('../images/slant-arrow-up-icon.png');
    background-repeat: no-repeat;
    background-position: center left;
    background-size: cover;
    height: 10px;
    width: 10px;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: all 0.3s ease-in;
}
.footer-menu-column nav .wp-block-navigation-item__content:hover {
    padding-left: 18px;
    text-decoration: none;
}
.footer-menu-column nav .wp-block-navigation-item__content:hover:before {
    left: 0;
    opacity: 1;
}
.is-layout-constrained > .bottom-footer {
    max-width: 100%;
}

.bottom-footer .wp-block-group {
    max-width: var(--wp--style--global--wide-size);
    margin: auto;
    padding-right: var(--wp--preset--spacing--30);
    padding-left: var(--wp--preset--spacing--30);
}

.bottom-footer .wp-social-link {
    transition: all 0.3s linear;
}
.bottom-footer .wp-social-link:hover {
    background-color: #2889D7 !important;
    color: #fff !important;
}

@media (min-width: 880px) {
    .footer-newsletter .wp-block-heading {
        font-size: 36px;
        font-weight: 700;
        text-align: left;
    }
    .footer-menu-column .wp-block-heading {
        margin: 0 0 24px;
    }
    .footer-menu-column nav .wp-block-navigation-item__content {
        font-size: 17.5px;
    }
}

@media (max-width: 879px) {
    footer {
        background-color: #F3F9FD;
    }
    footer .wp-block-site-logo {
        text-align: center;
    }
    footer .wp-block-site-logo img {
        max-width: 90px;
    }
    .is-layout-constrained > .bottom-footer {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .bottom-footer .wp-block-social-links {
        justify-content: center !important;
    }
    .bottom-footer .wp-block-column p {
        font-size: 9px !important;
        text-align: center;
    }
}

/*--- Home page ---
@media (min-width: 880px) {
    .hero-swiper {
        top: -96px;
    }
}
*/

.wp-block-group:has(.member-card__modal--opened) {
    z-index: 99;
}

/*--- Awards ---*/
.wp-block-gallery--awards img {
    max-height: 35px;    
    object-fit: contain;
}
@media (min-width: 768px) {
    .wp-block-gallery--awards img {
        max-height: 45px;    
    }
}

.entry-content.wp-block-post-content {
    font-weight: 400;
}
/*--- Comment form ---*/
.comment-form {
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 0 4px rgba(0,0,0,0.2);
    margin: 16px 0 0;
    padding: 16px;
}
.comment-form .comment-notes {
    display: none;
}
.comment-form .comment-form-comment {
    margin-top: 0;
}
.comment-form label {
    color: #363636;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0 0 8px;
}
.comment-form label .required {
    color: red;
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form textarea {
    background-color: #f8f8f8;
    border: 0;
    border-radius: 8px;
    color: #6A6A6A;
    font-size: 0.75rem;
    font-weight: 500;
}
.comment-form .comment-form-cookies-consent {
    position: relative;
}
.comment-form .comment-form-cookies-consent:before {
    content: "";
    border: 2px solid #2889D7;
    border-radius: 2px;
    height: 11px;
    width: 10px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}
.comment-form .comment-form-cookies-consent label {
    color: #979797;
    font-size: 0.875rem;
    font-weight: 500;
    margin: 0;
}
.comment-form .form-submit.wp-block-button {
    text-align: center;
}
.comment-form input[type="submit"] {
    border-radius: 8px;
    background: linear-gradient(135deg,rgb(40,137,215) 0%,rgb(21,72,113) 100%);
    padding-top: var(--wp--preset--spacing--20);
    padding-right: 17px;
    padding-bottom: var(--wp--preset--spacing--20);
    padding-left: 17px;
    font-style: normal;
    font-size: 0.875rem;
    font-weight: 600;
}
@media (min-width: 768px) {
    .comment-form {
        padding: 24px;
    }
    .comment-form label {
        font-size: 1rem;
        font-weight: 600;
    }
    .comment-form input[type="text"],
    .comment-form input[type="email"],
    .comment-form textarea {
        font-size: 1rem;
        font-weight: 600;
    }
}

/*--- Absolute gradiant ---*/
@media (min-width: 1400px) {
    body.home main:before {
        content: "";
        background: url('../images/home-gradient.svg') no-repeat center/100% auto;
        position: absolute;
        left: 0;
        top: 115%;
        height: 100%;
        width: 50%;
        z-index: -1;
        pointer-events: none;
    }

    body.page-id-22 main:before,
    body.postid-16 main:before,
    body.postid-17 main:before,
    body.postid-160 main:before,
    body.page-id-1175 main:before,
    body.postid-1039 main:before,
    body.page-id-1025 main:before,
    body.page-id-1313 main:before,
    body.project-template-default main:before {
        content: "";
        background: url('../images/about-gradient.svg') no-repeat center/100% auto;
        position: absolute;
        right: 0;
        z-index: -1;
        pointer-events: none;
    }

    body.page-id-22 main:before {        
        top: 350%;
        height: 200%;
        width: 70%;        
    }

    body.postid-16 main:before {
        top: 40%;
        height: 150%;
        width: 70%;
    }

    body.postid-17 main:before,
    body.postid-160 main:before,
    body.page-id-1175 main:before,
    body.postid-1039 main:before,
    body.page-id-1025 main:before,
    body.page-id-1313 main:before,
    body.project-template-default main:before {
        top: 60%;
        height: 200%;
        width: 70%;
    }

    body.blog {
        background: linear-gradient(135deg,  rgba(255,255,255,0.5) 0%,rgba(255,255,255,0.4) 50%,rgba(219,234,254,0.3) 100%);
    }

    body.postid-16,
    body.postid-1039,
    body.page-id-1025,
    body.page-id-1175,
    body.page-id-1313,
    body.archive,
    body.project-template-default,
    body.single-post {
        background: linear-gradient(135deg,  rgba(252,252,252,0) 0%,rgba(252,252,252,0.15) 50%,rgba(219,234,254,0.24) 79%,rgba(208,238,251,0.3) 100%);

    }
}