/* General */
@font-face {
    font-family: "DINCondensed-Regular";
    src: url("DINCond-Regular.otf");
}

@font-face {
    font-family: "ArchivoNarrow-Regular";
    src: url("ArchivoNarrow-Regular.ttf");
}

@font-face {
    font-family: "Rheiborn";
    src: url("Rheiborn_Sans_Clean.otf");
}

body {
    font-family: "ArchivoNarrow-Regular", "Archivo Narrow", "Open Sans";
    color: #555555;
}

a {
    color: rgba(32, 42, 97, 0.8);
}

    a:hover {
        color: #202A61;
        text-decoration: none;
    }

h1, h2, h3, h4, h5, h6 {
    font-family: "Rheiborn", sans-serif;
}

.validation-message {
    color: red;
}

/* Sections general */
section {
    padding: 60px 0;
    overflow: hidden;
}

.section-bg {
    background-color: floralwhite;
}

.section-title {
    text-align: center;
    padding-bottom: 20px;
}

    .section-title h2 {
        font-size: 36px;
        font-weight: bold;
        font-weight: 300;
        margin-bottom: 15px;
        padding-bottom: 0;
        color: #111;
    }

    .section-title p {
        margin-bottom: 0;
        color: #888888;
        font-size: 18px;
    }

/* Welcome section */
#welcome {
    width: 100%;
    height: 100vh;
    background: url("../img/logo-bg.png");
    position: relative;
}

    #welcome .welcome-container {
        position: absolute;
        bottom: 0;
        top: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        text-align: center;
        padding: 0 15px;
    }

    #welcome .welcome-logo {
        margin-bottom: 30px;
    }

    #welcome .welcome-img {
        width: 100%;
    }

    #welcome .btn-get-started {
        font-family: "Rheiborn", sans-serif;
        text-transform: uppercase;
        font-weight: 400;
        font-size: 20px;
        letter-spacing: 2px;
        display: inline-block;
        padding: 10px 30px;
        border-radius: 5px;
        transition: 0.5s;
        margin: 10px;
        color: #555555;
        background: #fff;
    }

        #welcome .btn-get-started:hover {
            background: #fff;
            color: #202a61;
        }

@media (min-width: 1024px) {
    #welcome {
        background-attachment: fixed;
    }

        #welcome .welcome-img {
            min-width: 600px;
        }
}

/*@media (max-width: 768px) {
}*/

/* Header */
#header {
    height: 72px;
    transition: all 0.5s;
    z-index: 997;
    transition: all 0.5s;
    padding: 12px 0;
    background: #202A61;
}

    #header .logo h1 a, #header .logo h1 a:hover {
        color: #fff;
        text-decoration: none;
    }

    #header .logo img {
        padding: 0;
        margin: 0;
        max-height: 40px;
        width: 70%;
    }

@media (max-width: 992px) {
    #header {
        height: 70px;
    }
}

/* Diensten section */
.diensten .icon-box {
    padding: 20px;
    position: relative;
    overflow: hidden;
    margin: 0;
    background: #fff;
    transition: all 0.3s ease-in-out;
    border-radius: 15px;
    text-align: center;
    border-bottom: 3px solid #fff;
}

.diensten .icon i {
    font-size: 48px;
    line-height: 1;
    margin-bottom: 10px;
}

.diensten .title {
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 24px;
    color: #111;
}

.diensten .description {
    font-size: 18px;
    line-height: 25px;
    margin-bottom: 0;
    color: #202A61;
}

.diensten .icon-box-red .icon i {
    color: red;
}

.diensten .icon-box-green .icon i {
    color: #41cf2e;
}

.diensten .icon-box-blue .icon i {
    color: #2282ff;
}

/* Waarom section */
.waarom {
    padding: 20px 0 20px 0;
}

    .waarom .row {
        overflow: hidden;
    }

    .waarom .content-item {
        padding: 20px;
        border-left: 1px solid #e9e9f6;
        border-bottom: 1px solid #e9e9f6;
        margin: -1px;
    }

        .waarom .content-item span {
            display: block;
            font-size: 24px;
            font-weight: 400;
            color: #202A61;
        }

        .waarom .content-item h4 {
            font-size: 28px;
            font-weight: 400;
            padding: 0;
            margin: 10px 0;
            color: #111;
        }

        .waarom .content-item p {
            color: #aaaaaa;
            font-size: 18px;
            margin: 0;
            padding: 0;
            color: #888888;
        }

@media (max-width: 768px) {
    .waarom .content-item {
        padding: 20px 5px;
        border-left: 0;
    }
}

/* Profiel section */
.profiel {
    padding: 20px 0 20px 0;
}

    .profiel .portrait {
        margin-bottom: 20px;
        overflow: hidden;
    }

        .profiel .portrait .portrait-img {
            position: relative;
            overflow: hidden;
            border-radius: 15px;
        }

        .profiel .portrait .social {
            position: absolute;
            left: 0;
            bottom: -40px;
            right: 0;
            height: 40px;
            opacity: 0;
            transition: bottom ease-in-out 0.4s;
            text-align: center;
            background: rgba(32,42,97, 0.8);
        }

            .profiel .portrait .social a {
                transition: color 0.3s;
                color: #fff;
                margin: 0 10px;
                padding-top: 8px;
                display: inline-block;
            }

                .profiel .portrait .social a:hover {
                    color: rgba(255, 255, 255, 0.8);
                }

            .profiel .portrait .social i {
                font-size: 18px;
                margin: 0 2px;
            }

        .profiel .portrait .portrait-info h4 {
            margin: 15px 0 5px 0;
            font-size: 25px;
            color: #111;
        }

        .profiel .portrait .portrait-info span {
            display: block;
            font-size: 18px;
            text-transform: uppercase;
            font-weight: 400;
            margin-bottom: 15px;
            color: #202A61;
        }

        .profiel .portrait .portrait-info p {
            font-style: italic;
            font-size: 18px;
            line-height: 26px;
            color: #888888;
        }

        .profiel .portrait:hover .social {
            bottom: 0;
            opacity: 1;
            transition: bottom ease-in-out 0.4s;
        }

/* Contact section */
.contact {
    width: 100%;
    background: #fff;
    padding: 20px;
    border-radius: 5px;
}

    .contact i {
        font-size: 20px;
        color: #202A61;
        float: left;
        width: 44px;
        height: 44px;
        background: #e9e9f6;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50px;
        transition: all 0.3s ease-in-out;
    }

    .contact h4 {
        padding: 0 0 0 60px;
        font-size: 22px;
        margin-bottom: 5px;
        color: #111;
    }

    .contact .padding {
        padding: 0 0 0 60px;
        margin-bottom: 0;
        font-size: 18px;
        color: #888888;
    }

    .contact p {
        margin-bottom: 0;
        font-size: 18px;
        color: #888888;
    }

    .contact .email {
        margin-top: 40px;
    }

        .contact .email:hover i {
            background: #202A61;
            color: #fff;
        }

    .contact .asp-email-form {
        width: 100%;
        background: #fff;
        padding: 20px;
        border-radius: 5px;
    }

        .contact .asp-email-form label {
            display: inline-block;
            margin: .5rem 0 0 0;
        }

        .contact .asp-email-form input, .contact .asp-email-form textarea {
            border-radius: 0;
            box-shadow: none;
            font-size: 14px;
        }

        .contact .asp-email-form input {
            height: 44px;
        }

        .contact .asp-email-form textarea {
            padding: 10px 12px;
        }

        .contact .asp-email-form button[type="submit"] {
            background: rgba(32, 42, 97, 0.8);
            border: 0;
            padding: 10px 24px;
            color: #fff;
            transition: 0.4s;
            border-radius: 4px;
        }

            .contact .asp-email-form button[type="submit"]:hover {
                background: #202A61;
            }

@-webkit-keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Back to top */
.back-to-top {
    position: fixed;
    display: none;
    right: 25px;
    bottom: 25px;
    z-index: 99999;
}

    .back-to-top i {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        width: 40px;
        height: 40px;
        border-radius: 4px;
        background: rgba(32, 42, 97, 0.8);
        color: #fff;
        transition: all 0.4s;
    }

        .back-to-top i:hover {
            background: #202A61;
            color: #fff;
        }

/* Disable AOS delay on mobile */
@media screen and (max-width: 768px) {
    [data-aos-delay] {
        transition-delay: 0 !important;
    }
}

/* Disable reCaptcha in line with Google Policy*/

.grecaptcha-badge {
    visibility: hidden;
}

/* Footer */
#footer {
    color: #fff;
    font-size: 14px;
    position: relative;
}

    #footer::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background: #202A61;
        z-index: 1;
    }

    #footer .footer-top {
        position: relative;
        z-index: 2;
        text-align: center;
        padding: 25px 0;
    }

        #footer .footer-top h1 {
            font-size: 28px;
            font-weight: 500;
            color: #fff;
            position: relative;
            font-family: "ArchivoNarrow-Regular", sans-serif;
            margin-bottom: 0;
        }

/* Navigation Menu */
.nav-menu, .nav-menu * {
    margin: 0;
    padding: 0;
    list-style: none;
}

    .nav-menu > ul > li {
        position: relative;
        white-space: nowrap;
        float: left;
    }

    .nav-menu a {
        display: block;
        position: relative;
        color: rgba(255, 255, 255, 0.8);
        padding: 5px 0 5px 0;
        transition: 0.3s;
        font-size: 20px;
        font-family: "Rheiborn", sans-serif;
    }

    .nav-menu > ul > li + li {
        margin-left: 30px;
    }

    .nav-menu a:hover, .nav-menu .active > a, .nav-menu li:hover > a {
        color: #fff;
        text-decoration: none;
    }

/* Mobile Navigation */
.mobile-nav-toggle {
    position: fixed;
    right: 25px;
    top: 20px;
    z-index: 9998;
    border: 0;
    background: none;
    font-size: 24px;
    transition: all 0.4s;
    outline: none !important;
    line-height: 1;
    cursor: pointer;
    text-align: right;
}

    .mobile-nav-toggle i {
        color: #fff;
    }

.mobile-nav {
    position: fixed;
    top: 55px;
    right: 15px;
    left: 15px;
    z-index: 9999;
    overflow-y: auto;
    background: #fff;
    transition: ease-in-out 0.2s;
    opacity: 0;
    visibility: hidden;
    border-radius: 10px;
    padding: 10px 0;
}

    .mobile-nav * {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .mobile-nav a {
        display: block;
        position: relative;
        color: #555555;
        padding: 10px 20px;
        font-weight: 500;
        outline: none;
    }

        .mobile-nav a:hover, .mobile-nav .active > a, .mobile-nav li:hover > a {
            color: #202A61;
            text-decoration: none;
        }

.mobile-nav-overly {
    width: 100%;
    height: 100%;
    z-index: 9997;
    top: 0;
    left: 0;
    position: fixed;
    background: rgba(0, 0, 0, 0.6);
    overflow: hidden;
    display: none;
    transition: ease-in-out 0.2s;
}

.mobile-nav-active {
    overflow: hidden;
}

    .mobile-nav-active .mobile-nav {
        opacity: 1;
        visibility: visible;
    }

    .mobile-nav-active .mobile-nav-toggle i {
        color: #fff;
    }