/*
Theme Name: Agrofocus Redirect
Theme URI: https://agrofocus.com/
Author: Bas Botman
*/
html {
    font-size: 16px;
}

* {
    font-family: "ff-meta-correspondence-web-p", sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 2rem;
}

h1, h2 {
    margin-bottom: 2rem;
}

body {
    background-color: #f0f0f0 !important;
}

.wave-home {
    fill: #f0f0f0;
    fill-rule: evenodd;
}

.steps-container > .main-row:nth-child(20) .line {
    top: 0;
    height: 50%;
}

.steps-container > .main-row:nth-child(20) .indicator * {
    display: none;
    color: red;
}

.steps-container > .row:nth-child(21) .line {
    top: 0;
    height: 50%;
}

.steps-container > .row:nth-child(21) .indicator * {
    display: none;
    color: red;
}

h1 {
    font-size: 4rem ;
}

h2 {
    font-size: 3rem;
}

h3 {
    font-size: 1.5rem;
    font-weight: 700;
}

section {
    padding: 64px;
}

section.no-padding {
    padding: 0;
}

header .logo {
    max-height: 160px;
}

.card {
    margin-bottom: 24px;
    border: none;
    border-radius: 0;
}

.card-body {
    padding: 32px;
}

.card-body > p:last-child {
    margin-bottom: 0;
}

.card-employee .card-body h5 {
    font-weight: 700;
}

.card-employee .card-body {
    padding: 32px;
}

.card-employee {
    color: #014691;
}

.home-wrapper {
    margin-top: -340px;
    z-index: 10000;
    position: relative;
    padding: 72px;
}

main > section:last-child {
    padding-bottom: 0;
}
.home-content a {
    color: #fff;
}
.home-content {
    /*background-color: rgba(27, 115, 22, 0.8);
    */
    background: linear-gradient(180deg, rgba(10, 37, 9, 0.8) 0%, rgba(5, 117, 0, 0.8) 60%);
    padding: 64px;
    color: #fff;
}

.faded {
    opacity: .3;
}

.publication-body h5 {
    font-weight: 700;
    color: #014691;
}

.page-template-page-publications h2 {
    margin-bottom: 0;
}

section a:hover {
    opacity: .9;
}
.section-blue a {
    color: #fff;
}
.section-blue {
    background-color: #014691;
    color: #fff;
}

.section-white {
    background-color: #f0f0f0;
    color: #014691;
}

.section-white  a {
    color: #014691;
}

footer {
    background: linear-gradient(rgba(21, 70, 20, 0.6), rgba(21, 70, 20, 0.6)), url(./images/achtergrond-blad.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
}

footer svg {
    width: 100%;
    top: 0;
    margin-top: -1px;
}

.reference-item {
    min-height: 140px;
}

#properties-homepage .card {
    color: #014691;
    background-color: #dcdeef;
}

#properties-homepage .card:hover {
    opacity: .9;
}

.reference-card .card-body a {
    font-weight: 700;
    color: #31912f;
}

.image-carousel-container img {
    float: left;
}

.video-parent {
    position: relative;
}

.svg-wrapper {
    position: absolute;
    bottom: -4px;
    left: 0;
    right: 0;
}

.navbar-toggler-icon {
    color: #014691;
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='rgba(1, 70, 145, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='4' d='M4 7h22M4 15h22M4 23h22'/></svg>");
}

.video-wrapper {
    position: relative;
    max-height: 650px;
}

.image-carousel-container {
    max-height: 300px;
    width: 33.33%;
    float: left;
    display: flex;
    justify-content: center;
    /* Center horizontally */
    align-items: center;
    /* Center vertically */
    overflow: hidden;
    /* Hide overflow if needed */
}

.property-icon {
    display: inline-block;
    float: right;
    margin-left: 32px;
    margin-bottom: 32px;
    height: 80px;
}
.hidden {
    display: none;
    visibility: hidden;
}
#image-carousel-homepage button {
    color: #fff;
}

.carousel-control-prev-icon, .carousel-control-next-icon {
    background-image: none;
}
#prev-gallery-image:hover ,
#next-gallery-image:hover {
    opacity: .9;
}
#prev-gallery-image:active ,
#next-gallery-image:active ,
    #prev-gallery-image ,
    #next-gallery-image {
    border: none;
    background-color: #014691;
    border-radius: 0;
    color: #fff;
}
#prev-gallery-image {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -16px;
}
#modal-image{

    display:block;
    margin-left: auto;
    margin-right: auto;
}
.modal-header{
    background-color: #f0f0f0;
    border-radius: 0;
    border:none;
}
.modal-content{
    border-radius: 0;
}
#next-gallery-image {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -16px;
}
.image-wrapper > img:hover{
    opacity: .9;
    cursor: pointer;
}
.image-wrapper > video,
.image-wrapper > img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

.image-wrapper {
    background-color: #fff;
    padding: 16px;
    margin-bottom: 32px;
    height: 300px;
    width: 100%;
    float: left;
    display: flex;
}

.image-carousel-container > img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}
.nav-link{
    white-space: nowrap;
}

.text-truncate-clamp {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-height: calc(32px * 5);
}

.reference-card .card-img-container {
    height: 320px;
}
.card-img-container {
    width: 100%;
    overflow: hidden;
}

.card-img-container > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

.reference-card .card-title {
    text-transform: uppercase;
    font-weight: 700;
    color: #31912f;

        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;

}

.carousel button {
    visibility: hidden;
    font-size: 72px;
}

.carousel:hover button {
    visibility: visible;
    color: #31912f;
}

.carousel-indicators {
    position: inherit;
    margin: 0;
}

.carousel-indicators [data-bs-target] {
    background-color: #31912f;
}

#properties-homepage {
    color: #014691;
}

#video-homepage h1,
#contact-homepage h2,
.section-orange h2 {
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .7);
}

.section-orange a {
    color: #fff;
}

.section-orange {
    background: linear-gradient(rgba(255, 124, 0, 0.9), rgba(255, 124, 0, 0.9)), url(./images/achtergrond-blad-wit.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    color: #fff;
}

span.reference {
    display: inline-block;
    font-size: 48px;
    line-height: 56px;
    font-style: italic;
    margin-bottom: 32px;
    color: #31912f;
}

#references-homepage span.name {
    font-size: 40px;
    line-height: 48px;
    font-weight: 700;
}

#references-homepage {
    color: #31912f;
}

#contact-homepage .qr {
    max-height: 160px;
}

.btn.projects-cta:hover, .btn.contact-cta:hover {
    color: rgba(0, 0, 0, 0.8);
}

.btn.projects-cta, .btn.contact-cta {
    color: #fff;
}

.logo-footer {
    margin-bottom: 48px;
}

footer section {
    padding-top: 0;
}

.icon-social-media {
    display: inline-block;
    margin-right: 24px;
    padding-bottom: 8px;
    margin-bottom: 1rem;
}

.icon-social-media img {
    width: 48px;
}

section a:hover, footer a:hover, .button-cta:hover {
    opacity: .8;
}

.section-buttons{
    margin-bottom: 32px;
}

.section-buttons .button-cta{
    margin-bottom: 16px;
}

.btn.button-cta:focus, .btn.button-cta:active, .btn.button-cta:hover, .btn.button-cta {
    text-transform: uppercase;
    padding: 8px calc(32px - 2px);
    border: 2px solid #fff;
    margin-right: 16px;
    background: none;
}

.section-projects h2 {
    color: #ee7003;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, .3);
}

.white .btn.button-cta.active:hover,
.white .btn.button-cta.active {
    background-color: #014691;
    color: #fff;

}
.white .btn.button-cta:focus,
.white .btn.button-cta:active,
.white .btn.button-cta:hover,
.white .btn.button-cta {
    color: #014691;
    border-color: #014691;
}

footer p, footer li, footer a {
    color: #fff;
    text-shadow: #000000 1px 0 10px;
}

footer .section {
    margin-bottom: 32px;
}

footer .footer-navigation {
    list-style-type: none;
    padding: 0;
}
.page-template-page-steps  .offset-bottom {
    padding-bottom: 80px;
}

.page-template-page-steps  .offset-top {
    margin-top: -80px;
}

.offset-bottom {
    padding-bottom: 160px;
}
.offset-top {
    background: none;
    margin-top: -160px;
    padding-top: 32px;
}

#main-navigation .navbar-nav > li > .nav-link {
    color: #034b9d;
    font-weight: 400;
    text-transform: uppercase;
    transition: none;
    line-height: 1rem;
}
.wave-footer {
    fill: #f0f0f0;
    fill-rule: evenodd;
}

.home .wave-footer {
    fill: #f0f0f0;
    fill-rule: evenodd;
}

.step {
    height: 100%;
}
.step-line{
    position: relative;
}
a.card {
    cursor: pointer;
}

.card-redirect .card-body h2 {
    font-size: 32px;
    text-transform: uppercase;
}
.card-redirect img {
    padding: 64px;
}
.card-redirect .card-body h2{
    font-weight: 700;
}
.card-redirect .card-body {
    background-color: #014691;
    color: #fff;
    position: relative;
    text-align: center;
    padding: 64px;
}
.play-button {
    border: 3px solid white;
    position: absolute;
    left: calc(50% - 40px);
    top: -40px;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    background-color: #ee7003;
    text-align: center;
    font-size: 40px;
    line-height: 80px;
    padding-left: 4px;
}
.card-redirect {
    border: 1px solid #014691;
}
.line {
    position: absolute;
    height: 100%;
    width: 3px;
    left: 50%;
    margin-left: -2px;
    background-color: #ee7003;
}

.page-template-page-projects  .offset-bottom {
    padding-bottom:300px;
}
.page-template-page-projects  .offset-top {
    margin-top: -300px;
}


.section-shadow {
    background: rgb(233,234,236);
    background: linear-gradient(180deg, rgb(228, 228, 228) 0%, rgb(240, 240, 240) 35%)
}

.map-wrapper {
    width: 100%;
    min-height: 500px;
    padding-bottom: 48px;
}

#projects-map {
    width: 100%;
    height: 100%;
    min-height: 500px;
}

.line-left {
    left: -15px;
}

.line-right {
    right: -15px;
}

.h-line {
    width: 50%;
    top: 50%;
    height: 3px;
    background-color: #ee7003;

    margin-top: -1px;
    position: absolute;
}

.arrow {
    height: 100%;
    line-height: 110px;
    color: #ee7003;
    font-size: 64px;
}

.indicator {
    width: 100px;
    height: 100px;
    border-radius: 50% !important;
    background-color: #fff;
    border: 3px solid #ee7003;
    z-index: 1000;
    text-align: center;
}

.step-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.step {
    width: 100%;
    margin-bottom: 64px;
}

.step-image {
    width: 350px;
    height: 350px;
}

.step.text-left .step-title {
    text-align: right;
}

.step.text-right .step-title  {
    text-align: left;
}

.step.text-left .step-title span {
    padding-left: 48px;
    padding-right: 32px;
}

.step.text-right .step-title span {
    padding-left: 32px;
    padding-right: 48px;
}

.step-title span {
    display: inline-block;
    background-color: #ee7003;
    padding-top: 10px;
    padding-bottom: 10px;
    border: 3px solid #ee7003;
    border-bottom: none;
}

.step-title {
    font-size: 32px;
    font-weight: 400;
    color: #fff;
}

.step-body {
    padding: 32px;
    background-color: #fff;
    border: 3px solid #ee7003;
}

@media (max-width: 576px) {
    html {
        font-size: 14px;
    }

    span.reference{
        font-size: 28px;
        line-height: 40px;
    }
    .page-template-page-projects .offset-top {
        margin-top: -324px;
    }

    .image-carousel-container {
        max-height: 160px;
    }

    #main-navigation .navbar-nav > li > .nav-link {
        padding: 16px 16px !important;
    }

    .property-icon{
        margin-left: 16px;
        margin-bottom: 16px;
        height: 60px;
    }
    section {
        padding: 16px;
        padding-top: 32px;
        padding-bottom: 32px;
    }

.map-wrapper{
    min-height: 320px;
    }
#projects-map {
    width: 100%;
    height: 100%;
    min-height: 320px;
}



   .btn.button-cta {
       padding: 16px !important;
       padding-bottom: 8px !important;
       padding-top: 8px !important;
   }



    header,
    .home-wrapper {
        padding: 16px !important;
    }
    .home-wrapper {
        margin-top: -80px !important;
    }
}

@media (max-width: 1200px) {
    #main-navigation {
        width: 100%;
    }

    #menu-hoofdnavigatie {
        margin-top: 32px;
    }

    header {
        padding: 32px;
    }

    .dropdown-menu {
        display: none !important;
        visibility: hidden;
    }

    #main-navigation .navbar-nav > li.current_page_item > .nav-link {
        background-color: #014691;
        color: #fff;
    }

    #main-navigation .navbar-nav > li > .nav-link:focus,
    #main-navigation .navbar-nav > li > .nav-link:active {
        background-color: #014691;
        color: #fff;
    }
    #main-navigation .navbar-nav > li > .nav-link:after {
        content: " »";
        right: 24px;
        position: absolute;
    }

    #main-navigation .navbar-nav > li:hover > .nav-link {
        opacity: .9;
    }

    #main-navigation .navbar-nav > li > .nav-link {
        padding: 24px 24px;
        background-color: #dcdeef;
        border: 2px solid #f0f0f0;
    }
}

@media (max-width: 992px) {


    .image-wrapper > img {
        pointer-events: none;
    }
    .image-wrapper > img:hover{
        cursor: inherit;
    }
}
@media (min-width: 1200px) {
    header .logo {
        margin-bottom: 32px;
    }

    body {
        padding-top: 32px;
    }

    #main-navigation .navbar-nav > li > .nav-link {
        padding: 32px 24px;
    }

    ul.dropdown-menu > li a.nav-link {
        padding: 8px 24px;
        padding-left: 24px !important;
        padding-right: 24px !important;
        color: #fff;
        text-transform: uppercase;
    }

    ul.dropdown-menu {
        border: none;
        border-radius: 0;
    }

    #main-navigation {
        padding: 0;
    }

    #menu-hoofdnavigatie .menu-item {
        position: relative;
    }

    #menu-hoofdnavigatie > .menu-item:hover:after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 0;
        height: 0;
        border-top: 16px solid #c4d2e9;
        border-left: 16px solid transparent;
        border-right: 16px solid transparent;
        transition: none;
        z-index: 1000;
    }

    [aria-expanded="true"],
    #menu-hoofdnavigatie > .current-page-ancestor,
    #menu-hoofdnavigatie > .current_page_item,
    #menu-hoofdnavigatie > .menu-item:hover {
        background-color: #c4d2e9;
        transition: none;
    }

    ul.dropdown-menu {
        background-color: rgba(0, 21, 66, 0.8);
    }

    ul.dropdown-menu > li a.nav-link:hover {
        background-color: rgba(9, 15, 34, 0.9);
    }
}

@media (max-width: 1400px) {
    h1 {
        font-size: 48px;
    }

    .card-redirect img {
        padding: 32px 32px 64px;
    }
    .card-redirect .card-body {
        padding: 64px 32px 32px;
    }
}

@media (max-width: 992px) {
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 2rem;
        margin-bottom: 1.5rem;
    }

    .step.text-left .step-title,
    .step.text-right .step-title {
        text-align: center;
    }

    .step.text-left .step-title span,
    .step.text-right .step-title span {
        padding-left: 24px;
        padding-right: 24px;
    }

    .home-wrapper {
        margin-top: -304px;
        padding: 32px;
    }

    #references-homepage span.reference, #references-homepage span.name {
        font-size: 24px;
        line-height: 32px;
    }

    .home-content {
        padding: 32px;
    }

    footer section {
        padding-top: 32px;
    }

    .reference-card .card-img-container {
        height: 240px;
    }

    #contact-homepage {
        padding-bottom: 64px;
    }

    .carousel-item .image-carousel-container {
        width: 50%;
        height: 160px;
    }

    .carousel-item .image-carousel-container:last-child {
        display: none;
    }

    .carousel-control-next {
        float: right;
    }

    .step-body {
        padding-bottom: 128px;
    }

    .first-indicator .line {
        top: 50%;
        height: 50%;
    }

    .step-image {
        margin-top: -96px;
    }

    .step {
        width: 100%;
        margin-bottom: 0px;
    }

    .horizontal-indicator {
        padding: 32px;
    }

    .page-template-page-steps .offset-top {
        margin-top: -112px;
    }

    .wave-divider {
        height: 100%;
        transform: scaleY(1.5);
        transform-origin: top;
    }
}

.wave-divider svg{
    position: relative;
    top: -2px;
}
.wave-divider{
    position: relative;
}