@keyframes rotating {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes colorChange {
    0% {
        fill: #FFC65D;
    }
    /* jaune */
    100% {
        fill: #FF8C00;
    }
    /* orange */
}

html, body {
    font-size: 16px;
    box-sizing: border-box;
}

body {
    font-family: 'Funnel Display', sans-serif;
    background-color: #F7F7F7;
    margin: 0;
    padding: 4rem;
    color: #222;
    font-size: 21px;
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.under-body {
    height: auto;
    max-width: 1190px;
    width: auto;
    border: solid 4px #222;
    padding: 4rem;
    background-color: #FFF;
    border-radius: 5px;
    position: relative;
}

.under-body .svg-anim {
    position: absolute;
    top: 12px;
    right: 12px;
    transform: translate(0, 0);
    cursor: pointer;
}

.under-body .svg-anim #sun {
    animation: rotating 20s linear infinite;
    transform-origin: center;
}

.under-body .svg-anim svg {
    width: 120px;
    fill: transparent;
}

a.external-link i::after {
    content: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxNXB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJJbnRlcmZhY2UgLyBFeHRlcm5hbF9MaW5rIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTEwLjAwMDIgNUg4LjIwMDJDNy4wODAwOSA1IDYuNTE5NjIgNSA2LjA5MTggNS4yMTc5OUM1LjcxNTQ3IDUuNDA5NzMgNS40MDk3MyA1LjcxNTQ3IDUuMjE3OTkgNi4wOTE4QzUgNi41MTk2MiA1IDcuMDgwMDkgNSA4LjIwMDJWMTUuODAwMkM1IDE2LjkyMDMgNSAxNy40ODAxIDUuMjE3OTkgMTcuOTA3OUM1LjQwOTczIDE4LjI4NDIgNS43MTU0NyAxOC41OTA1IDYuMDkxOCAxOC43ODIyQzYuNTE5MiAxOSA3LjA3ODk5IDE5IDguMTk2OTEgMTlIMTUuODAzMUMxNi45MjEgMTkgMTcuNDggMTkgMTcuOTA3NCAxOC43ODIyQzE4LjI4MzcgMTguNTkwNSAxOC41OTA1IDE4LjI4MzkgMTguNzgyMiAxNy45MDc2QzE5IDE3LjQ4MDIgMTkgMTYuOTIxIDE5IDE1LjgwMzFWMTRNMjAgOVY0TTIwIDRIMTVNMjAgNEwxMyAxMSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+Cjwvc3ZnPg==');
}

a.external-link-white i::after {
    content: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxNXB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJJbnRlcmZhY2UgLyBFeHRlcm5hbF9MaW5rIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTEwLjAwMDIgNUg4LjIwMDJDNy4wODAwOSA1IDYuNTE5NjIgNSA2LjA5MTggNS4yMTc5OUM1LjcxNTQ3IDUuNDA5NzMgNS40MDk3MyA1LjcxNTQ3IDUuMjE3OTkgNi4wOTE4QzUgNi41MTk2MiA1IDcuMDgwMDkgNSA4LjIwMDJWMTUuODAwMkM1IDE2LjkyMDMgNSAxNy40ODAxIDUuMjE3OTkgMTcuOTA3OUM1LjQwOTczIDE4LjI4NDIgNS43MTU0NyAxOC41OTA1IDYuMDkxOCAxOC43ODIyQzYuNTE5MiAxOSA3LjA3ODk5IDE5IDguMTk2OTEgMTlIMTUuODAzMUMxNi45MjEgMTkgMTcuNDggMTkgMTcuOTA3NCAxOC43ODIyQzE4LjI4MzcgMTguNTkwNSAxOC41OTA1IDE4LjI4MzkgMTguNzgyMiAxNy45MDc2QzE5IDE3LjQ4MDIgMTkgMTYuOTIxIDE5IDE1LjgwMzFWMTRNMjAgOVY0TTIwIDRIMTVNMjAgNEwxMyAxMSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+Cjwvc3ZnPg==');
}

h1 {
    font-weight: 300;
    line-height: 60px;
    margin: 80px 0 30px;
}

a {
    color: #222;
}

.main-content {
    max-width: 1000px;
    font-size: 28px;
}

.main-content > p {
    margin: 0;
}

.about__wrapper {
    max-width: 1000px;
    text-align: left;
    margin: 80px 0;
}

h2, h3, h4, h5, h6 {
    line-height: 24px;
}

.download-cv {
    background-color: #222;
    color: white;
    padding: 1rem 2rem;
    border-radius: 5px;
    text-decoration: none;
    min-width: 100px;
    display: inline-block;
    text-align: center;
}

.download-cv:hover {
    background-color: #444;
}

.adobe-commerce-cloud {
    mix-blend-mode: multiply;
    width: 65px;
    height: auto;
}

svg {
    width: 40px;
    height: auto;
    fill: #222;
}

figure {
    margin: 0 10px 0 0;
}

.copyright {
    font-size: 16px;
    text-align: center;
    margin: 30px 0;
    color: #222222;
}

.adobe-commerce-cloud-container {
    display: flex;
    margin: 0;
    align-items: center;
}

.adobe-commerce-cloud-container p {
    margin: 0;
}

@media (min-width: 1440px) {
    .under-body .svg-anim {
        top: 0;
        right: 0;
        transform: translate(50%, -50%);
        justify-content: center;
    }

    .under-body {
        width: 100%;
    }

    body {
        height: 100dvh;
    }
}



@media (max-width: 768px) {
    body {
        padding: 1rem;
        margin: 0;
    }

    .main-content p {
        margin-top: 0;
    }

    .main-content h1 {
        margin: 30px 0;
        font-size: 35px;
        line-height: 35px;
    }

    .under-body .svg-anim svg {
        width: 80px;
    }

    .about__wrapper {
        margin: 40px 0;
    }

    .under-body {
        width: auto;
        padding: 2rem;
    }

    .copyright {
        font-size: 12px;
    }
}
