@font-face {
	font-family: 'Omnes';
	src: url('fonts/Omnes.eot');
	src: url('fonts/Omnes.eot?#iefix') format('embedded-opentype'),
		url('fonts/Omnes.woff') format('woff'),
		url('fonts/Omnes.svg#Omnes') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Omnes';
	src: url('fonts/Omnes-Light.eot');
	src: url('fonts/Omnes-Light.eot?#iefix') format('embedded-opentype'),
		url('fonts/Omnes-Light.woff') format('woff'),
		url('fonts/Omnes-Light.svg#Omnes-Light') format('svg');
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: 'Omnes';
	src: url('fonts/Omnes-ExtraLight.eot');
	src: url('fonts/Omnes-ExtraLight.eot?#iefix') format('embedded-opentype'),
		url('fonts/Omnes-ExtraLight.woff') format('woff'),
		url('fonts/Omnes-ExtraLight.svg#Omnes-ExtraLight') format('svg');
	font-weight: 200;
	font-style: normal;
}

@font-face {
	font-family: 'Omnes';
	src: url('fonts/Omnes-Medium.eot');
	src: url('fonts/Omnes-Medium.eot?#iefix') format('embedded-opentype'),
		url('fonts/Omnes-Medium.woff') format('woff'),
		url('fonts/Omnes-Medium.svg#Omnes-Medium') format('svg');
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Omnes';
	src: url('fonts/Omnes-Semibold.eot');
	src: url('fonts/Omnes-Semibold.eot?#iefix') format('embedded-opentype'),
		url('fonts/Omnes-Semibold.woff') format('woff'),
		url('fonts/Omnes-Semibold.svg#Omnes-Semibold') format('svg');
	font-weight: 600;
	font-style: normal;
}


/* Eléments principaux de la page */

body
{
    font-family: 'Omnes';
}

#bloc_page
{
    width: 1100px;
    margin: auto;
    padding: 30px 0 30px 0;
}


@media all and (max-width: 1350px)
    {
        body
        {
            background: none;
        }
    }

@media all and (max-width: 1100px)
    {
        #bloc_page
        {
            width: auto;
            margin: auto;
         }
    }


#menu
{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 40px 0px 0px 0px;
}



/* Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Header */
header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    padding: 0 0 80px 0;
}

#logo-cf{
    width: 75%;
 }   

/* Navigation */
#navigateur {
    display: flex;
    justify-content: flex-end;
    max-width: 40%;
}

nav ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
    font-size: 20px;
    font-weight: 300;
    gap: 85px;
    padding: 0;
    margin: 0;
}

nav a {
    color: black;
    text-decoration: none;
    font-size: 1em;
    transition: border-bottom 0.3s;
}

nav a:hover {
    padding-bottom: 4px;
    border-bottom: 2px solid;
}

/* Tablets */
@media (min-width: 481px) and (max-width: 835px) {
    header {
        flex-direction: column;
        align-items: center;
        padding-bottom: 50px;
    }

    #logo-cf{
    width: 75%;
    padding-bottom: 10px;
 }

    #navigateur {
        width: 100%;
        justify-content: center;
        margin-top: 20px;
    }

    #navigateur ul {
        justify-content: center;
    }
}

/* Phones */
@media all and (max-width: 480px) {
    header {
        flex-direction: column;
        align-items: flex-start;
    }

    #navigateur {
        text-align: end;
        width: 100%;
        margin-right: 5%;
    }

    #navigateur ul {
        flex-direction: column;
        align-items: flex-end;
        gap: 10px;
    }

    #navigateur a {
        line-height: 1.5em;
    }
}

/* Corps */

#section
{
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 0;
}

#descriptif
{
    margin-right: 50px;
}

#photos-projet
{
    width: 100%;
}

.visuel-projet
{
    max-width: auto;
    height: auto;
    object-fit: contain;
}
 

.details
{
    font-size: 0.75em;
    color: #969494;
    line-height: 1.3em;
    padding-top: 15px;
}

h1
{
	font-size: 1.5em;
    letter-spacing: 0.05em;
    font-weight: 500;
    margin: 0;
    line-height: 1.1em;
}

h2
{
	font-size: 1.1em;
    letter-spacing: 0.04em;
    line-height: 0.8em;
    font-weight: 300;
    margin: 0.5em 0 1.6em 0;
}

h3
{
	font-size: 1.1em;
    font-weight: 500;
    padding-bottom: 4px;
    margin: 0 0 12px 0;

}

p
{
    font-size: 0.9em;
    line-height: 1.3;
    margin: 0px;
}

p b
{
    font-weight: 500;
}

.visuel-projet
{
    margin: 0px 0 20px 0;
}


@media all and (max-width: 950px)

{
    #section
    {
    flex-direction: column;
    text-align: center;
    width: 100%;
    }
    
    #descriptif
    {
    margin: 0 30px 60px 30px;
    }

    .visuel-projet
    {
    width: 100%;
    height: auto;
    }
    
    #photos-projet
    {
    width: 100%;
    }
}

@media all and (max-width: 480px)
{
    #descriptif
    {
    margin: 0 0 40px 0;
    }
    
    #descriptif p
    {
    margin: 0 20px;
    }
    
    #photos-projet
    {
    width: 100%;
    }
}

#legendes
{
	font-size: 0.75em;
    margin-bottom: 40px;
}

.back-next
 {
    margin-top: 30px;
 }

.back-next a
 {
    text-decoration: none;
    color: black;
 }

.back-next a:hover
 {
    text-decoration: none;
    padding : 0 0 2px 0;
    border-bottom : 1px solid;
 }

/* Footer */
footer
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: auto;
    line-height: 1.3;
    font-size: 14px;
    font-weight: 300;
    margin: 90px 0 20px 0;
}  

footer ul
{
    display: flex;
    justify-content: space-between;
    list-style-type: none;
    font-weight: 300;
    font-size: 19px;
    width: 330px;
    padding-left: 0;
    margin-bottom: 40px;
}

footer a
{
    color: black;
    text-decoration: none;
}

footer a:hover
{
    padding-bottom : 4px;
    border-bottom : 2px solid;
}

#infos
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

#coordonnees
{
    width: 30%;
}

#coordonnees b
{
    font-weight: 500;
}

#coordonnees a:hover
{
    padding-bottom : 2px;
    border-bottom : 1px solid;
}

#credit
{
    font-size: 10px;
}


@media (min-width: 481px) and (max-width: 835px)
{
    footer
    {
        margin-top: 100px;
    }
    
    #infos
    {
        flex-direction: column;
        align-items:center;
        text-align: center;
        margin-bottom: 10px;
    }
    
    .categorie
    {
        margin-bottom: 35px;
    }
    
    #coordonnees
    {
        width: 100%;
        text-align: center;
    }
    
    #credit
    {
        text-align: center;
        align-items: center;
        width: 100%;
    }
}


@media screen and (max-width: 480px)
{
    footer
    {
        margin-top: 60px;
    }
    
    #infos
    {
        flex-direction: column;
        align-items:center;
        text-align: center;
    }
    
    footer ul
    {
        font-size: 18.5px;
        width: 300px;
    }
    
    .categorie
    {
        margin-bottom: 35px;
    }
    
    #coordonnees
    {
        width: 100%;
        text-align: center;
    }
    
    #credit
    {
        text-align: center;
        width: 100%;
        margin-top: 30px;
    }
}