main
{
    margin-top: 100px;
}

h1
{
    font-family: 'Montserrat', sans-serif;
    font-size: 72px;
    font-weight: bold;
    line-height: 88px;
}

h2
{
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    font-weight: bold;
    line-height: 39px;
}

h3
{
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: bold;
    line-height: 32px;
}

h4
{
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: bold;
    line-height: 32px;
}

h5
{
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: bold;
    line-height: 32px;
}

h6
{
    font-family: 'montserrat-semi-bold', sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 32px;
}

a, p, ul, ol, li, span, button, div.ce-paragraph
{
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 32px;
}

img
{
    border-radius: 5px;
    height: auto;
    max-height: 684px;
    max-width: 100%;
    object-fit: cover;
    width: 100%;
}

.retour-container
{
    bottom: 25px;
    left: 35px;
    height: 30px;
    position: absolute;
    transform: rotate(-135deg);
    width: 30px;
}

.retour-container .retour
{
    animation: retour-right 0.25s forwards;
    display: block;
    height: 100%;
    width: 100%;
}

.retour-container:hover .retour
{
    animation: retour-left 0.25s forwards;
}

@keyframes retour-right
{
    from
    {
        filter: invert(23%) sepia(75%) saturate(3285%) hue-rotate(210deg) brightness(107%) contrast(104%);
        transform: translate(10px, -10px);
    }

    to
    {
        filter: invert(0%) sepia(76%) saturate(0%) hue-rotate(263deg) brightness(82%) contrast(100%);
        transform: translate(0, 0);
    }
}

@keyframes retour-left
{
    from
    {
        filter: invert(0%) sepia(76%) saturate(0%) hue-rotate(263deg) brightness(82%) contrast(100%);
        transform: translate(0, 0);
    }

    to
    {
        filter: invert(23%) sepia(75%) saturate(3285%) hue-rotate(210deg) brightness(107%) contrast(104%);
        transform: translate(10px, -10px);
    }
}

/* message d'erreur reçu en GET */
div.error,
div.success
{
    animation: 2s fermer-message 5s forwards;
    border-radius: 5px;
    position: fixed;
    left: 50%;
    padding: 15px;
    top: 15vh;
    transform: translateX(-50%);
}

@keyframes fermer-message
{
    from
    {
        opacity: 1;
    }

    to
    {
        opacity: 0;
    }
}

div.error
{
    background-color: #f6b2b2;
    border: 1px solid #E93E3F;
    color:#840f10;
}

div.success
{
    background-color: #b7e0b8;
    border: 1px solid #4CAF50;
    color:#265728;
}

#fermer-message
{
    display: block;
    height: 3px;
    position: absolute;
    right: 10px;
    top: -2px;
    width: 3px;
}

#fermer-message:hover
{
    font-weight: bold;
    cursor: pointer;
}

@media only screen and (max-width: 1780px)
{
    h1
    {
        font-size: 68px;
        line-height: 83px;
    }

    h2
    {
        font-size: 31px;
        line-height: 38px;
    }
}

@media only screen and (max-width: 1640px)
{
    h1
    {
        font-size: 64px;
        line-height: 78px;
    }

    h2
    {
        font-size: 30px;
        line-height: 37px;
    }

    h3
    {
        font-size: 23px;
    }

    h4
    {
        font-size: 21px;
    }

    h5
    {
        font-size: 19px;
    }

    h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        font-size: 17px;
    }

    h3, h4, h5, h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        line-height: 31px;
    }
}

@media only screen and (max-width: 1500px)
{
    h1
    {
        font-size: 60px;
        line-height: 73px;
    }

    h2
    {
        font-size: 29px;
    }
}

@media only screen and (max-width: 1360px)
{
    h1
    {
        font-size: 56px;
        line-height: 68px;
    }

    h2
    {
        font-size: 28px;
        line-height: 36px;
    }
}

@media only screen and (max-width: 1220px)
{
    h1
    {
        font-size: 52px;
        line-height: 63px;
    }

    h2
    {
        line-height: 35px;
    }

    h3
    {
        font-size: 22px;
    }

    h4
    {
        font-size: 20px;
    }

    h5
    {
        font-size: 18px;
    }

    h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        font-size: 16px;
    }

    h3, h4, h5, h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        line-height: 30px;
    }
}

@media only screen and (max-width: 1080px)
{
    h1
    {
        font-size: 48px;
        line-height: 58px;
    }

    h2
    {
        font-size: 27px;
        line-height: 34px;
    }
}

@media only screen and (max-width: 940px)
{
    h1
    {
        font-size: 44px;
        line-height: 53px;
    }

    h2
    {
        font-size: 26px;
        line-height: 33px;
    }
}

@media only screen and (max-width: 800px)
{
    h1
    {
        font-size: 40px;
        line-height: 48px;
    }

    h2
    {
        font-size: 25px;
    }

    h3
    {
        font-size: 21px;
    }

    h4
    {
        font-size: 19px;
    }

    h5
    {
        font-size: 17px;
    }

    h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        font-size: 15px;
    }

    h3, h4, h5, h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        line-height: 29px;
    }
}

@media only screen and (max-width: 660px)
{
    h1
    {
        font-size: 36px;
        line-height: 43px;
    }

    h2
    {
        font-size: 24px;
        line-height: 32px;
    }
}

@media only screen and (max-width: 520px)
{
    h1
    {
        font-size: 32px;
        line-height: 38px;
    }

    h2
    {
        font-size: 23px;
        line-height: 31px;
    }
}

@media only screen and (max-width: 375px)
{
    h1
    {
        font-size: 28px;
        line-height: 34px;
    }

    h2
    {
        font-size: 22px;
        line-height: 30px;
    }

    h3
    {
        font-size: 20px;
    }

    h4
    {
        font-size: 18px;
    }

    h5
    {
        font-size: 16px;
    }

    h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        font-size: 14px;
    }

    h3, h4, h5, h6, a, p, ul, ol, li, span, button, div.ce-paragraph
    {
        line-height: 28px;
    }
}