html {
  font-size: 14px;
  scroll-behavior:smooth;
}



.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
    margin-bottom: 60px;
    background-color: #332f35;
    color: #eaeaea;
}

.container {
    max-width: 60%;
    margin: 0 auto;
}

/* ================================
   Navbar Styles
================================ */

.custom-navbar {
    background-color: #1f1c23;
}

.custom-navbar .navbar-brand,
.custom-navbar .nav-link {
    color: #eaeaea;
}

.custom-navbar .nav-link:hover {
    color: #928a92;
}

.nav-item{
    margin-left: 15px
}




/* ================================
   Profiel Styles
================================ */

.profile-section {
    display: flex; /* Plaats de container in een rij */
    align-items: flex-start; /* Zorg dat alles bovenaan uitlijnt */
    justify-content: space-between; /* Ruimte tussen de elementen */
    gap: 50px; /* Ruimte tussen de afbeelding en tekst */
    margin: 0 auto;
    max-width: 1000px;
    padding: 20px;
}

/* Afbeelding en knop groeperen */
.profile-image-container {
    display: flex;
    flex-direction: column; /* Plaats de knop onder de afbeelding */
    align-items: center; /* Centreer de afbeelding en knop horizontaal */
    gap: 10px; /* Ruimte tussen de afbeelding en knop */
}

.profile-image img {
    max-width: 250px;
    border-radius: 50%;
    object-fit: cover;
}

.profile-cv{
    margin-top: 20px;
}
    .profile-cv i {
        color: #e3474a;
        background-color: transparent;
    }

    .profile-cv a {
        background-color: #1f1c23;
        color: #eaeaea;
    }

        .profile-cv a:hover {
            color: #928a92;
            transform: translateY(-2px);
            box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
        }

.profile-text {
    flex: 1;
}

.profile-text h2 {
    margin-bottom: 10px;
}

.profile-text p {
    font-size: 1.1rem;
    line-height: 1.6;
}

/* ================================
   Hard Skills Styles
================================ */

.grid-section {
    display: flex; 
    flex-direction: column; 
    justify-content: center; 
    text-align: center; 
    max-width: 100%; 
    margin-top: 50px;
}

    .grid-section h2 {
        font-size: 2rem;
        margin-bottom: 30px;
        color: #eaeaea;
    }

.card-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); 
    grid-template-rows: repeat(2, auto);
    gap: 30px;
}

.card {
    background: #1f1c23;
    border-radius: 10px;
    padding: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
    transition: transform 0.3s ease, box-shadow 0.3s ease; 
}

    .card:hover {
        transform: translateY(-5px); 
        box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); 
    }

    .card h3 {
        margin: 0px;
        font-size: 1.5rem;
    }

    .card p {
        font-size: 1rem;
        color: #928a92;
    }

.card-title {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #eaeaea;
    margin-bottom: 20px;
}

.card-title i {
    font-size: 1.5rem;
    margin-right: 10px;
}

.skills {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.badge {
    color: #eaeaea;
    background-color: #e3474a;
}
    .badge:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
    }

/* ================================
   Projecten Styles
================================ */

.projects{
    margin-top:75px;
    margin-bottom:75px;
}

.project-title {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #eaeaea;
}

.project-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 kolommen */
    gap: 30px; /* Ruimte tussen kaarten */
    max-width: 100%;
    margin: 30px auto;
}

.project-card {
    background-color: #1f1c23;
    border-radius: 10px;
    overflow: hidden; /* Zorg ervoor dat de afbeelding niet uitsteekt */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtiele schaduw */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

    .project-card:hover {
        transform: translateY(-5px); /* Kaart beweegt omhoog bij hover */
        box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Versterkte schaduw bij hover */
    }

.project-image {
    width: 100%;
    height: 250px;
    object-fit: cover; /* Behoud verhoudingen van de afbeelding */
}

.project-info {
    padding: 20px;
    color: #eaeaea;
}

.project-meta {
    display: flex;
    justify-content: space-between;
    font-size: 0.9rem;
    color: #928a92;
    margin-bottom: 10px;
}

    .project-meta span {
        display: flex;
        align-items: center;
        gap: 5px;
    }

.project-title {
    font-size: 1.2rem;
    margin: 10px 0;
    color: #eaeaea;
}

.project-role {
    font-size: 1rem;
    font-weight: bold;
    color: #e3474a;
    margin-bottom: 10px;
}

.project-description {
    font-size: 0.9rem;
    line-height: 1.4;
    color: #d3d3d3;
}

.project-card-link {
    text-decoration: none; /* Verwijder onderstreping */
    color: inherit; /* Zorg dat de tekstkleur overerft van de kaart */
    display: block; /* Zorg dat de hele link blok is */
}

/* ================================
   Projecten Details Styles
================================ */

.project-detail-startsection {
    display: flex; /* Plaats de container in een rij */
    gap: 50px; /* Ruimte tussen de afbeelding en tekst */
    margin: 0 auto;
    margin-top: 40px;
}

.project-detail-titlediscription{
    align-content:center;
}

.project-detail-hoofdtitle {
    color: #d3d3d3;
}

.project-detail-title {
    color: #d3d3d3;
    margin-top: 40px;
    text-align:center;
    margin-bottom: 20px;
}

.project-detail-description {
    color: #d3d3d3;
    font-size: 1.1rem;
    line-height: 1.6;
}

.project-detail-image {
    max-width: 350px;
    min-width: 350px;
    border-radius: 10%;
    object-fit: cover;
}

.project-keyfeatures-description {
    font-size: 1.1rem;
}

.project-keyfeatures-listitem {
    margin-bottom: 10px;
}

.project-detail-galerij{
    margin-top: 40px;
}

    .project-detail-galerij img {
        width: 100%;
        height: 600px; 
        object-fit: contain;
    }

.project-detail-buttons {
    display: flex; /* Gebruik Flexbox */
    justify-content: center; /* Centreer de knoppen horizontaal */
    align-items: center; /* Centreer de knoppen verticaal */
    gap: 30px; /* Ruimte tussen de knoppen */
    margin: 0 auto; /* Centreer de container */
    margin-bottom: 50px;
    margin-top: 50px;
}
    .project-detail-buttons i {
        color: #e3474a;
        background-color: transparent;
    }

    .project-detail-buttons a {
        background-color: #1f1c23;
        color: #d3d3d3;
        max-width: 150px;
    }

        .project-detail-buttons a:hover {
            color: #928a92;
            transform: translateY(-2px); /* Kaart beweegt omhoog bij hover */
            box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Versterkte schaduw bij hover */
        }
/* ================================
   Contact Styles
================================ */
.contact {
}

.contact-title {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #eaeaea;
    margin-bottom: 30px;
}
.contact-buttons {
    display: flex; /* Gebruik Flexbox */
    justify-content: center; /* Centreer de knoppen horizontaal */
    align-items: center; /* Centreer de knoppen verticaal */
    gap: 30px; /* Ruimte tussen de knoppen */
    margin: 0 auto; /* Centreer de container */
    margin-bottom: 50px;
}

    .contact-buttons i {
        color: #e3474a;
        background-color: transparent;
    }

    .contact-buttons a {
        background-color: #1f1c23;
        color: #d3d3d3;
        max-width: 150px;
    }
        .contact-buttons a:hover {
            color: #928a92;
            transform: translateY(-2px); /* Kaart beweegt omhoog bij hover */
            box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Versterkte schaduw bij hover */
        }

/* ================================
   Back To Top Styles
================================ */

.back-to-top {
    position: fixed;
    bottom: 75px; /* Afstand vanaf de onderkant */
    right: 75px; /* Afstand vanaf de rechterkant */
    padding: 10px 20px;
    background-color: #e3474a;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: opacity 0.3s ease, transform 0.3s ease;
    opacity: 0; /* Maak standaard onzichtbaar */
    visibility: hidden; /* Zorg dat het niet klikbaar is */
}

    .back-to-top:hover {
        background-color: #d33636;
        color: #928a92;
        transform: translateY(-2px); /* Beweeg omhoog bij hover */
    }

    .back-to-top.show {
        opacity: 1; /* Maak zichtbaar */
        visibility: visible; /* Zorg dat het klikbaar is */
    }




@media (max-width: 768px) {
    html 
    {
        font-size: 10px;
    }
    .container {
        max-width: 80%;
        margin: 0 auto;
        
    }

    /*Profiel onder elkaar plaatsen*/
    .profile-section {
        display: flex;
        flex-direction:column;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
    .profile-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
        .profile-text p {
            text-align: center;
            margin: 0 auto;
        }

    /*Skills grid onder elkaar plaatsen*/
    .card-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(2, auto);
        gap: 30px;
    }

    /* Zorg ervoor dat de projecten onder elkaar staan */
    .project-card-grid {
        grid-template-columns: 1fr; /* Eén kolom */
        gap: 20px; /* Ruimte tussen kaarten */
    }

    /* Contactknoppen aanpassen */
    .contact-buttons {
        display: flex; /* Gebruik Flexbox */
        flex-direction: column; /* Zorg dat knoppen onder elkaar staan */
        justify-content: center; /* Centreer de knoppen verticaal */
        align-items: center; /* Centreer de knoppen horizontaal */
        gap: 20px; /* Voeg ruimte tussen de knoppen toe */
        margin-bottom:50px;
    }

        .contact-buttons a {
            width: 100%; /* Knoppen nemen volledige breedte in */
        }

    .project-detail-startsection {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }

    .project-detail-titlediscription{
        text-align: center;
    }
    .project-detail-description{
        text-align: left;
    }

    .project-detail-image {
        max-width: 250px;
        min-width: 250px;
        border-radius: 10%;
        object-fit: cover;
    }

    .carousel-item img {
        height: 180px; /* Aanpassen voor kleinere schermen */
    }
}


