:where(.wp-site-blocks) > * {
    margin-block-start: 0 !important;
}

p,
.wp-block-paragraph,
.wp-block-heading {
    a {
        text-decoration: none;
        transition: all 0.25s;
    }

    strong {
        font-weight: 600;
    }
}

h1 {
    &.wp-block-heading {
        /* transform: translateX(-5px); */
    }
}

header {
    position: fixed;
    width: 100%;
    top: 0;
    height: auto;
    left: 0;
    z-index: 50;

    .site-header--inner {
        background-color: rgba(255, 255, 255, 0.65) !important;
        backdrop-filter: blur(30px);
        box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.07);
    }

    .wp-block-navigation__submenu-icon.wp-block-navigation-submenu__toggle {
        display: none !important;
    }
}

.yoast-breadcrumbs {
    > span {
        > span {
            margin-right: 5px;
            margin-left: 5px;

            &:first-child {
                margin-left: 0;
            }

            a {
                color: var(--wp--preset--color--secondary);
                transition: all 0.25s;

                &:hover {
                    color: var(--wp--preset--color--primary);
                }
            }
        }
    }
}

div.has-ghub-link {
    .wp-block-cover {
        transition: all 0.25s;

        .wp-block-cover__image-background,
        .wp-block-cover__background {
            transition: all 0.25s;
        }
    }

    .wp-block-heading {
        padding-right: 70px;
        position: relative;

        &.has-h-4-font-size {
            padding-right: 0px;
            padding-bottom: 55px;

            &:before,
            &:after {
                top: auto;
                bottom: 0;
                left: 0;
            }
        }

        &:before,
        &:after {
            transition: all 0.25s;
            width: 56px;
            height: 40px;
            position: absolute;
            top: -5px;
            right: 0;
            content: url('data:image/svg+xml,<svg width="56" height="40" viewBox="0 0 56 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="55" height="39" rx="19.5" fill="%23AB1638" stroke="%23AB1638"/><g clip-path="url(%23clip0_11_77)"><path d="M30.1217 27.7305C30.2965 27.9114 30.5249 28 30.7532 28C30.9816 28 31.21 27.9114 31.3848 27.7305L37.7395 21.1553C37.7823 21.111 37.818 21.063 37.8501 21.015C37.8644 20.9929 37.8715 20.9707 37.8858 20.9486C37.9037 20.919 37.9215 20.8895 37.9322 20.8563C37.9429 20.8267 37.95 20.7972 37.9607 20.7677C37.9679 20.7418 37.9786 20.716 37.9857 20.6865C38.0071 20.5683 38.0071 20.4428 37.9857 20.3247C37.9786 20.2951 37.9715 20.2693 37.9607 20.2434C37.9536 20.2139 37.9465 20.1844 37.9322 20.1548C37.9179 20.1216 37.9001 20.0921 37.8858 20.0625C37.8751 20.0404 37.8644 20.0182 37.8501 19.9961C37.818 19.9444 37.7788 19.8964 37.7395 19.8558L31.3812 13.2695C31.0315 12.9077 30.4678 12.9077 30.1181 13.2695C29.7684 13.6313 29.7684 14.2146 30.1181 14.5764L34.9529 19.5789H19.892C19.3996 19.5789 19 19.9924 19 20.5019C19 21.0113 19.3996 21.4248 19.892 21.4248H34.9529L30.1181 26.4273C29.7684 26.7891 29.7684 27.3724 30.1181 27.7342L30.1217 27.7305Z" fill="white"/></g><defs><clipPath id="clip0_11_77"><rect width="19" height="15" fill="white" transform="translate(19 13)"/></clipPath></defs></svg>');
            z-index: 2;
        }

        &:after {
            content: url('data:image/svg+xml,<svg width="56" height="40" viewBox="0 0 56 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.75" y="0.75" width="54.5" height="38.5" rx="19.25" fill="white" stroke="%23AB1638" stroke-width="1.5"/><g clip-path="url(%23clip0_11_68)"><path d="M30.1217 27.7305C30.2965 27.9114 30.5249 28 30.7532 28C30.9816 28 31.21 27.9114 31.3848 27.7305L37.7395 21.1553C37.7823 21.111 37.818 21.063 37.8501 21.015C37.8644 20.9929 37.8715 20.9707 37.8858 20.9486C37.9037 20.919 37.9215 20.8895 37.9322 20.8563C37.9429 20.8267 37.95 20.7972 37.9607 20.7677C37.9679 20.7418 37.9786 20.716 37.9857 20.6864C38.0071 20.5683 38.0071 20.4428 37.9857 20.3246C37.9786 20.2951 37.9715 20.2693 37.9607 20.2434C37.9536 20.2139 37.9465 20.1843 37.9322 20.1548C37.9179 20.1216 37.9001 20.092 37.8858 20.0625C37.8751 20.0404 37.8644 20.0182 37.8501 19.9961C37.818 19.9444 37.7788 19.8964 37.7395 19.8558L31.3812 13.2695C31.0315 12.9077 30.4678 12.9077 30.1181 13.2695C29.7684 13.6313 29.7684 14.2146 30.1181 14.5764L34.9529 19.5789H19.892C19.3996 19.5789 19 19.9924 19 20.5018C19 21.0113 19.3996 21.4248 19.892 21.4248H34.9529L30.1181 26.4273C29.7684 26.7891 29.7684 27.3724 30.1181 27.7342L30.1217 27.7305Z" fill="%23AB1638"/></g><defs><clipPath id="clip0_11_68"><rect width="19" height="15" fill="white" transform="translate(19 13)"/></clipPath></defs></svg>');
            z-index: 1;
        }
    }

    p,
    .wp-block-paragraph {
        padding-right: 25%;
    }

    &:hover {
        .wp-block-cover__image-background,
        .wp-block-cover__background {
            
        }

        .wp-block-heading {
            &:before {
                opacity: 0;
            }
        }
    }
}

.usp {
    .gutslider-content-inner {
        max-width: 99999px;
        padding: 0 !important;
    }

    .swiper-wrapper {
        align-items: stretch;

        .wp-block-gutsliders-slide {
            height: unset;
        }
    }

    .wp-block-columns {
        flex-wrap: wrap !important;

        .wp-block-column {
            flex: 0 1 100% !important;
        }
    }

    div.has-ghub-link {
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 20px;
        -webkit-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);
        -moz-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);
        box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);

        &:hover {
            -webkit-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);
            -moz-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);
            box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.13);
        }

        .wp-block-heading {
            flex: 1;
        }
    }
}

.projects {
    div.has-ghub-link {
        .wp-block-cover__inner-container {
            width: 100% !important;
        }

        .wp-block-buttons {
            .wp-block-button__link {
                font-size: 16px;
            }
        }

        .wp-block-heading {
            width: 100%;
            box-sizing: border-box;
            padding-bottom: 0;
            padding-right: 75px;

            &:before,
            &:after {
                left: auto;
                top: -5px;
                bottom: auto;
                right: 0;
                content: url('data:image/svg+xml,<svg width="56" height="40" viewBox="0 0 56 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="55" height="39" rx="19.5" fill="transparent" stroke="%23ffffff"/><g clip-path="url(%23clip0_11_77)"><path d="M30.1217 27.7305C30.2965 27.9114 30.5249 28 30.7532 28C30.9816 28 31.21 27.9114 31.3848 27.7305L37.7395 21.1553C37.7823 21.111 37.818 21.063 37.8501 21.015C37.8644 20.9929 37.8715 20.9707 37.8858 20.9486C37.9037 20.919 37.9215 20.8895 37.9322 20.8563C37.9429 20.8267 37.95 20.7972 37.9607 20.7677C37.9679 20.7418 37.9786 20.716 37.9857 20.6865C38.0071 20.5683 38.0071 20.4428 37.9857 20.3247C37.9786 20.2951 37.9715 20.2693 37.9607 20.2434C37.9536 20.2139 37.9465 20.1844 37.9322 20.1548C37.9179 20.1216 37.9001 20.0921 37.8858 20.0625C37.8751 20.0404 37.8644 20.0182 37.8501 19.9961C37.818 19.9444 37.7788 19.8964 37.7395 19.8558L31.3812 13.2695C31.0315 12.9077 30.4678 12.9077 30.1181 13.2695C29.7684 13.6313 29.7684 14.2146 30.1181 14.5764L34.9529 19.5789H19.892C19.3996 19.5789 19 19.9924 19 20.5019C19 21.0113 19.3996 21.4248 19.892 21.4248H34.9529L30.1181 26.4273C29.7684 26.7891 29.7684 27.3724 30.1181 27.7342L30.1217 27.7305Z" fill="%23FFFFFF"/></g><defs><clipPath id="clip0_11_77"><rect width="19" height="15" fill="white" transform="translate(19 13)"/></clipPath></defs></svg>');
            }

            &:after {
                content: url('data:image/svg+xml,<svg width="56" height="40" viewBox="0 0 56 40" fill="%23AB1638" xmlns="http://www.w3.org/2000/svg"><rect x="0.75" y="0.75" width="54.5" height="38.5" rx="19.25" fill="%23AB1638" stroke="%23AB1638" stroke-width="1.5"/><g clip-path="url(%23clip0_11_68)"><path d="M30.1217 27.7305C30.2965 27.9114 30.5249 28 30.7532 28C30.9816 28 31.21 27.9114 31.3848 27.7305L37.7395 21.1553C37.7823 21.111 37.818 21.063 37.8501 21.015C37.8644 20.9929 37.8715 20.9707 37.8858 20.9486C37.9037 20.919 37.9215 20.8895 37.9322 20.8563C37.9429 20.8267 37.95 20.7972 37.9607 20.7677C37.9679 20.7418 37.9786 20.716 37.9857 20.6864C38.0071 20.5683 38.0071 20.4428 37.9857 20.3246C37.9786 20.2951 37.9715 20.2693 37.9607 20.2434C37.9536 20.2139 37.9465 20.1843 37.9322 20.1548C37.9179 20.1216 37.9001 20.092 37.8858 20.0625C37.8751 20.0404 37.8644 20.0182 37.8501 19.9961C37.818 19.9444 37.7788 19.8964 37.7395 19.8558L31.3812 13.2695C31.0315 12.9077 30.4678 12.9077 30.1181 13.2695C29.7684 13.6313 29.7684 14.2146 30.1181 14.5764L34.9529 19.5789H19.892C19.3996 19.5789 19 19.9924 19 20.5018C19 21.0113 19.3996 21.4248 19.892 21.4248H34.9529L30.1181 26.4273C29.7684 26.7891 29.7684 27.3724 30.1181 27.7342L30.1217 27.7305Z" fill="%23FFFFFF"/></g><defs><clipPath id="clip0_11_68"><rect width="19" height="15" fill="white" transform="translate(19 13)"/></clipPath></defs></svg>');
                z-index: 1;
                opacity: 0;
            }
        }

        &:hover {
            .wp-block-heading {
                &:after {
                    opacity: 1;
                }
                &:after {
                    opacity: 1;
                }
            }
        }
    }

    .wp-block-cover {
        min-height: 1px !important;
        height: clamp(250px, 30vw, 485px);

        .wp-block-cover__background,
        .wp-block-cover__image-background {
            min-height: 1px !important;
            height: clamp(250px, 30vw, 485px);
            overflow: hidden;
            box-sizing: border-box;
        }
    }
}

@media screen and (min-width: 480px) {
    .usp {
        .wp-block-group {
            .wp-block-columns {
                .wp-block-column {
                    flex: 0 1 calc(50% - 15px) !important;
                }
            }
        }
    }
}

@media screen and (min-width: 782px) {
    .usp {
        .wp-block-columns {
            flex-wrap: nowrap !important;
        }

        .wp-block-group {
            .wp-block-columns {
                flex-wrap: wrap !important;
            }
        }
    }
}

@media screen and (min-width: 782px) and (max-width: 1023px) {
    .projects {
        > .wp-block-columns {
            > .wp-block-column {
                &:first-child {
                    flex: 0 1 calc(33.333vw - 38px) !important;
                }
            }
            
        }

        div.has-ghub-link {
            .wp-block-buttons {
                .wp-block-button__link {
                    font-size: 11px !important;
                }
            }
            .wp-block-heading {
                font-size: var(--wp--preset--font-size--h-5) !important;
                padding-right: 40px;
    
                &:before,
                &:after {
                    transform: scale(0.75);
                    transform-origin: top right;
                }
            }
        }

    }
}

@media screen and (min-width: 992px) {
    div.has-ghub-link {
        .wp-block-heading {
            &:before,
            &:after {
                top: 0;
            }
        }
    }
}

@media screen and (min-width: 1024px) {
    div.has-ghub-link {
        .wp-block-heading {
            &:before,
            &:after {
                top: 0;
            }
        }
    }

    .projects {
        .wp-block-buttons {
            .wp-block-button__link {
                font-size: 16px !important;

                &:hover {
                    background-color: white !important;
                    color: var(--wp--preset--color--secondary) !important;
                }
            }
        }

        > .wp-block-columns {
            > .wp-block-column {
                .wp-block-cover {
                    min-height: 1px !important;
                    height: clamp(250px, 25vw, 290px);
                    padding: 35px !important;

                    .wp-block-heading {
                        font-size: var(--wp--preset--font-size--h-4) !important;

                        &:before,
                        &:after {
                            top: 0 !important;
                            transform: scale(0.75) !important;
                            transform-origin: top right !important;
                        }
                    }
            
                    .wp-block-cover__background,
                    .wp-block-cover__image-background {
                        min-height: 1px !important;
                        height: clamp(250px, 25vw, 290px);
                    }
                }

                &:first-child {
                    .wp-block-cover {
                        min-height: 1px !important;
                        height: clamp(250px, 50vw, 525px);
                        padding: var(--wp--preset--spacing--medium-tertiary) !important;

                        .wp-block-heading {
                            font-size: var(--wp--preset--font-size--h-3) !important;

                            &:before,
                            &:after {
                                top: 0 !important;
                                transform: scale(1) !important;
                                transform-origin: top right !important;
                            }
                        }
                
                        .wp-block-cover__background,
                        .wp-block-cover__image-background {
                            min-height: 1px !important;
                            height: clamp(250px, 50vw, 525px);
                        }
                    }
                }

                &:last-child {
                    display: flex;
                    flex-direction: column;

                    > .wp-block-group {
                        margin-top: auto;
                    }
                }
            }
        }
    }
}

@media screen and (min-width: 992px) {
    .usp {
        .wp-block-group {
            .wp-block-columns {
                .wp-block-column {
                    flex: 0 1 calc(20% - 24px) !important;
                }
            }
        }
        div.has-ghub-link {
            -webkit-box-shadow: unset;
            -moz-box-shadow: unset;
            box-shadow: unset;
        }
    }
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
    .usp {
        div.has-ghub-link {
            padding: 15px !important;

            .wp-block-post-title
            .wp-block-heading {
                font-size: 18px !important;
            }
        }
    }
}

.search-results {

}

.wp-social-link {
    &:hover {
        transform: unset !important;
    }
}

footer {
    a {
        text-decoration: none;
    }

    .wp-block-social-links {
        padding-top: 5px;

        .wp-social-link {
            border: 1px solid white;
            padding: 0px !important;
            transition: all 0.25s;

            &:hover {
                background-color: white !important;

                svg {
                    color: var(--wp--preset--color--black) !important;
                }
            }

            .wp-block-social-link-anchor {
                padding: 5px 12px;
            }

            svg {
                transition: all 0.25s;
                width: 30px;
                height: 30px;
            }
        }
    } 

    .wp-block-site-logo {
        img {
            filter: grayscale() brightness(200%);
            -webkit-filter: grayscale() brightness(1000%);
        }
    }

    .wp-block-columns {
        .wp-block-column {
            .wp-block-group.wp-block-group-is-layout-flex {
                justify-content: space-between;
                height: 100%;
            }
        }
    }
}

@media screen and (max-width: 991px) {
    footer {
        .wp-block-social-links {
            .wp-social-link {
                .wp-block-social-link-anchor {
                    padding: 2px 5px;
                }
                
                svg {
                    width: 20px;
                    height: 20px;
                }
            }
        }

        .wp-block-columns {
            flex-wrap: wrap !important;

            .wp-block-column {
                &[style*="flex-basis:15%"] {
                    flex: 0 1 100% !important;
                }
            }
        }

        .footer-address {
            border-bottom: 1px solid white;
            padding-bottom: 0;
            margin-top: 20px !important;
            transition-property: padding;
            transition-duration: 0.2s;
            transition-timing-function: ease-in-out;

            > .wp-block-group {
                gap: 15px;
            }

            + .footer-address {
                margin-top: 0 !important;
            }

            .footer-address-trigger {
                box-sizing: border-box;
                font-size: 20px !important;
                padding-right: 30px;
                width: 100%;
                position: relative;
                cursor: pointer;
                min-height: 24px;
                transition: all 0.25s;

                &:hover {
                    color: var(--wp--preset--color--primary);

                    &:after {
                        content: url('data:image/svg+xml,<svg fill="%23AB1638" height="16px" width="16px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 330 330" xml:space="preserve"><path id="XMLID_225_" d="M325.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001l-139.39,139.393L25.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001c-5.858,5.858-5.858,15.355,0,21.213l150.004,150c2.813,2.813,6.628,4.393,10.606,4.393s7.794-1.581,10.606-4.394l149.996-150C331.465,94.749,331.465,85.251,325.607,79.393z"/></svg>')
                    }
                }
                
                &:after {
                    position: absolute;
                    width: 16px;
                    right: 16px;
                    transition: all 0.25s;
                    display: flex;
                    top: 0;
                    right: 0;
                    align-items: center;
                    justify-content: center;
                    content: url('data:image/svg+xml,<svg fill="%23ffffff" height="16px" width="16px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 330 330" xml:space="preserve"><path id="XMLID_225_" d="M325.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001l-139.39,139.393L25.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001c-5.858,5.858-5.858,15.355,0,21.213l150.004,150c2.813,2.813,6.628,4.393,10.606,4.393s7.794-1.581,10.606-4.394l149.996-150C331.465,94.749,331.465,85.251,325.607,79.393z"/></svg>');
                }

                ~ .wp-block-group {
                    max-height: 0px;
                    overflow: hidden;
                    transition: all 0.25s;
                    margin: 0 !important;
                }
            }

            &.open {
                padding-bottom: 20px;

                .footer-address-trigger {
                    &:after {
                        transform: rotate(180deg);
                    }

                    ~ .wp-block-group {
                        max-height: 200px;
                    }
                }
            }
        }

        .wp-block-navigation__container.items-justified-right {
            flex-direction: column;
            align-items: flex-start;
            gap: 5px;
        }
    }
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
    footer {
        .footer-address {
            .wp-block-heading {
                font-size: 16px !important;
            }

            p {
                font-size: 14px !important;
            }
        }
    }
}

.has-ghub-layout select{
    border: unset;
    background-position: 95% 50%;
    padding: 10px 18px;
}

.swiper-slide.type-testimonial {
	background-color: var(--wp--preset--color--light-grey);

	&.swiper-slide-active{
		background-color: var(--wp--preset--color--black);
	}	
}

.wp-block-categories-dropdown select{
	border: unset !important;
}