html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

h1{
    font-size: clamp(32px, 6vw, 80px) !important;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    color: black !important;
}

.link-cv{
    font-size: clamp(10px, 3vw, 25px) !important;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    color: rgb(0 0 0 / 0.84) !important;
}

#title {
    background: linear-gradient(270deg, #FF5F00, #FF8C00, #FFC300 , #FFD400);
    background-size: 600% 600%;

    animation: gradientMove 8s ease infinite;
}

.cv-download-button {
    text-decoration: none;
    background-color: transparent;
    padding: 12px 28px;
    border-radius: 6px;
    border : 3px solid;
    font-family: "Josefin Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    display: inline-block;
}

.link-cv{
    text-decoration: none;
}

#about{
    background: #ffffff;
    width : 80%;
    margin-left: clamp(16px, 10vw, 200px);
    margin-top: 20px;
}

#title .container {
    background: transparent !important;
}

.ocupation{
    font-size: clamp(14px, 2.2vw, 30px);
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

@keyframes gradientMove {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.text-container{
    display: grid;
    grid-template-rows: 0.5fr 1fr;
}

.heading{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(22px, 3.5vw, 50px);
}

.lead{
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: clamp(12px, 4vw, 60px);
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

#skills{
    display: flex;
    justify-content: center;
    align-items: center;
}

.skills-container{
    display: grid;
    justify-content: center;
    width: 100%;
    grid-template-rows: minmax(60px, 100px) auto auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding-left: clamp(10px, 2vw, 25px);
    padding-right: clamp(10px, 2vw, 25px);
    margin-top: 40px;
    gap: 20px;
}

.skills-container > h2 {
    display: flex;
    justify-content: center;
    grid-column: span 4;
    padding-top: 20px;
    margin-bottom: 20px;
}

.skills-container img {
    height: clamp(50px, 10vw, 150px);
    width: auto;
    max-width: 100%;
}

.java{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.html{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.css{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.javascript{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.bootstrap{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.postgresql{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.git{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.docker{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    width: 70%;
    aspect-ratio: 1;
    margin: auto;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.9);
    border-radius: 10%;
}

.skills-container > h2{
    font-size: clamp(22px, 3.5vw, 50px);
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

#projects{
    display: block;
    width: 100%;
    margin-top: clamp(40px, 6vw, 100px);
}

.project-container-bookcommunity{
    row-gap: clamp(14px, 2vw, 28px);
    column-gap: clamp(24px, 5vw, 100px);
    display: grid;
    justify-content: start;
    align-items: start;
    grid-template-columns: minmax(min(360px, 90vw), 620px) minmax(0, 1fr);
    grid-template-rows: auto auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding-left: clamp(16px, 10vw, 250px);
    padding-right: clamp(16px, 3vw, 40px);
    margin-left: 0;
    margin-bottom: clamp(24px, 3vw, 40px);
}

.project-container-financeBuddy{
    row-gap: clamp(14px, 2vw, 28px);
    column-gap: clamp(24px, 5vw, 100px);
    display: grid;
    justify-content: start;
    align-items: start;
    grid-template-columns: minmax(min(360px, 90vw), 620px) minmax(0, 1fr);
    grid-template-rows: auto auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding-left: clamp(16px, 10vw, 250px);
    padding-right: clamp(16px, 3vw, 40px);
    margin-left: 0;
    margin-bottom: 0;
}

.project-container-gradingProgram {
    row-gap: clamp(14px, 2vw, 28px);
    column-gap: clamp(24px, 5vw, 100px);
    display: grid;
    justify-content: start;
    align-items: start;
    grid-template-columns: minmax(min(360px, 90vw), 620px) minmax(0, 1fr);
    grid-template-rows: auto auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding-left: clamp(16px, 10vw, 250px);
    padding-right: clamp(16px, 3vw, 40px);
    margin-left: 0;
    margin-bottom: clamp(24px, 3vw, 40px);
}

.carousel-slide-bookcommunity{
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-width: 620px;
    align-self: flex-start;
    margin-bottom: clamp(20px, 3vw, 50px);
}

.carousel-slide-financeBuddy{
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    max-width: 620px;
    align-self: flex-start;
    margin-bottom: clamp(20px, 3vw, 50px);
}

.carousel-slide-gradingProgram{
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-width: 620px;
    align-self: flex-start;
    margin-bottom: clamp(20px, 3vw, 50px);
}

.project-container-bookcommunity > h2{
    grid-column: span 2;
    grid-row: 1;
    justify-content: flex-start;
    text-align: start;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(22px, 3.5vw, 50px);
    margin-right: clamp(0px, 20vw, 400px);
}

.bookco-carousel-text{
    grid-column: 2;
    grid-row: 2;
    max-width: 760px;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.bookco-carousel-text > h3{
    font-size: clamp(8px, 3.5vw, 18px);
    color: #FF8C00;
}

.gradingProgram-carousel-text{
    grid-column: 2;
    grid-row: 2;
    max-width: 760px;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.gradingProgram-carousel-text > h3{
    font-size: clamp(8px, 3.5vw, 18px);
    color: #FF8C00;
}

.financeBuddy-carousel-text{
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.financeBuddy-carousel-text > h3{
    font-size: clamp(8px, 3.5vw, 18px);
    color: #FF8C00;
}


@media (max-width: 992px) {
    .project-container-bookcommunity,
    .project-container-financeBuddy,
    .project-container-gradingProgram {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        gap: 20px;
        padding: 20px 1rem 40px;
        margin-left: 0;
    }

    .project-container-bookcommunity > h2,
    .project-container-financeBuddy > h2,
    .project-container-gradingProgram > h2 {
        grid-column: 1;
        margin-right: 0;
    }

    .carousel-slide-bookcommunity,
    .carousel-slide-financeBuddy,
    .carousel-slide-gradingProgram {
        grid-column: 1;
        grid-row: 2;
        max-width: 100%;
        margin-top: 12px;
    }

    .bookco-carousel-text,
    .financeBuddy-carousel-text,
    .gradingProgram-carousel-text {
        grid-column: 1;
        grid-row: 3;
        max-width: 100%;
    }
}

#footer{
    background: linear-gradient(270deg, #FF5F00, #FF8C00, #FFC300 , #FFD400);
    background-size: 600% 600%;

    animation: gradientMove 8s ease infinite;
}

.btn{
    background: linear-gradient(270deg, #FF5F00, #FF8C00, #FFC300 , #FFD400);
    background-size: 600% 600%;

    animation: gradientMove 8s ease infinite;
}