@keyframes bloemWaai {

    0%,
    100% {
        transform: rotate(0deg);
    }

    25% {
        transform: rotate(3deg);
    }

    50% {
        transform: rotate(-2deg);
    }

    75% {
        transform: rotate(4deg);
    }
}

.flex_content:has(.flex_layout.intro_content) {
    border-radius: 30px;
    overflow: clip;
}

.flex_layout.intro_content .flex_container_inner {
    padding-block: 130px;
}

.flex_layout.intro_content .intro_content_wrapper {
    display: flex;
    gap: 120px;
}

.flex_layout.intro_content .intro_content_wrapper .text_content_wrapper h2 {
    margin-bottom: 90px;
    font-weight: 500;
    letter-spacing: -0.5px;
}

.flex_layout.intro_content .intro_content_wrapper .text_content_wrapper h2 strong {
    font-weight: 700;
}

.flex_layout.intro_content .intro_content_wrapper .text_content_wrapper p:not(:has(strong)) {
    line-height: 1.7;
}

.flex_layout.intro_content .intro_content_wrapper .text_content_wrapper p:has(strong) {
    margin-bottom: 13px;
    line-height: 0.7;
}

.flex_layout.intro_content .intro_content_wrapper .text_content_wrapper p:last-child {
    margin-bottom: 0;
}


.flex_layout.intro_content .intro_cta_wrapper {
    border-radius: 10px;
    background: rgba(197, 216, 206, 0.38);
    padding: 35px 35px 55px 50px;
    position: relative;
    height: fit-content;
}

.flex_layout.intro_content .flowers-container {
    position: absolute;
    left: -40px;
    bottom: -53px;
    width: 140px;
    height: 140px;
    display: inline-block;
}

.flex_layout.intro_content .flowers-container img {
    position: absolute;
    width: 90px;
    height: 90px;
    object-fit: contain;
    object-position: center;
    transform-origin: bottom center;
    animation: bloemWaai 3s ease-in-out infinite;
}

.flex_layout.intro_content .flowers-container img:first-child {
    top: 0;
    left: 0;
}

.flex_layout.intro_content .flowers-container img:last-child {
    bottom: 0;
    right: 0;
    animation-duration: 7s;
    animation-direction: reverse;
}

.flex_layout.intro_content .top_content {
    margin-bottom: 30px;
}

.flex_layout.intro_content .top_content h3 {
    font-size: 35px;
    margin-bottom: 0;
}

.flex_layout.intro_content .top_content span {
    color: rgba(46, 46, 45, 0.5);
    font-size: 20px;
    font-weight: 600;
}


.flex_layout.intro_content .nav {
    display: flex;
    flex-direction: column;
    gap: 15px;
    flex-wrap: wrap;
}

.flex_layout.intro_content .nav .nav_item {
    border-radius: 10px;
    background: #fff;
    padding: 8px 10px 8px 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    font-weight: 600;
    transition: all 0.3s ease-in-out;
}

.flex_layout.intro_content .nav_item .arrow-container {
    aspect-ratio: 1/1;
    height: 50px;
    width: 50px;
    background-color: #3C3C3B;
    position: relative;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.flex_layout.intro_content .nav_item .arrow-container .arrow {
    transition: all .7s cubic-bezier(.2, 1, .22, 1);
}

.flex_layout.intro_content .nav_item .arrow-container .arrow.hover {
    transition: all .3s cubic-bezier(0.25, 1, 0.5, 1);
}

.flex_layout.intro_content .nav_item:hover .arrow-container .arrow {
    transform: translateX(50px);
}

.flex_layout.intro_content .nav_item .arrow-container .arrow.hover {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50px, -50%)
}

.flex_layout.intro_content .nav_item:hover .arrow-container .arrow.hover {
    transition-duration: .6s;
    transform: translate(-50%, -50%)
}

@media screen and (min-width: 1201px) {
    .flex_layout.intro_content .intro_content_wrapper .text_content_wrapper {
        width: 60%;
    }

    .flex_layout.intro_content .intro_content_wrapper .intro_cta_wrapper {
        width: 40%;
    }
}

@media screen and (max-width: 1200px) {
    .flex_layout.intro_content .intro_content_wrapper .text_content_wrapper {
        width: 50%;
    }

    .flex_layout.intro_content .intro_content_wrapper .intro_cta_wrapper {
        width: 50%;
    }

    .flex_layout.intro_content .intro_content_wrapper {
        gap: 80px;
    }
}

@media screen and (max-width: 992px) {
    .flex_layout.intro_content .flex_container_inner {
        padding-block: 80px;
    }

    .flex_layout.intro_content .intro_content_wrapper .text_content_wrapper,
    .flex_layout.intro_content .intro_content_wrapper .intro_cta_wrapper {
        width: 100%;
    }

    .flex_layout.intro_content .intro_content_wrapper {
        flex-direction: column;
        gap: 40px;
    }

    .flex_layout.intro_content .intro_content_wrapper .text_content_wrapper h2 {
        margin-bottom: 40px;
    }

    .flex_layout.intro_content .intro_cta_wrapper {
        padding: 30px 30px 40px 40px;
    }
}

@media screen and (max-width: 767px) {
    .flex_layout.intro_content .flex_container_inner {
        padding-block: 40px;
    }
}