/* Définition des polices personnalisées */



/* Eléments principaux de la page */

body
{
    font-family: 'Trebuchet MS', Arial, sans-serif;
    margin: 0px;
}

section h1, h2
{
    font-size: 45px;
    margin: 0 0 15px 0;
}


/* Header */

header
{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#logo
{
    padding-top: 10px;
    margin-left: 75%;
}


/* Navigation */

nav ul
{
    list-style-type: none;
    display: flex;
    margin-right: 150px;
}

nav li
{
    margin-right: 15px;
}

#index a
{
	font-size: 20px;
    color: #181818;
    padding-bottom: 3px;
    padding-right: 10px;
    text-decoration: none;
}

#index a:hover
{
	color: #71BCF0;
    border-top: 2px groove #71BCF0;
    padding-top: 29px;
}


/* Bannière */

#banniere_image
{
	overflow: hidden;
	position: relative;
	width: 100%;
    height: 480px;
    border: 0 solid;
    margin-top: 15px;
    background: url('images/slider/bg1.jpg') no-repeat;
    background-color: #E3E3E3;
    background-size: 100%;
}

#banniere_description
{
	position: absolute;
	width: 42.5%;
	margin-left: 10%;
	margin-top: 125px;
    color: white;
}

#banniere_description h1
{
	font-size: 35px;
}

#banniere_description p
{
	font-size: 16px;
}

#banniere_description span
{
    color: #71BCF0;
}

.bouton_bleu
{
    height: 35px;
    font-size: 1.4em;
    position: absolute;
    border-radius: 5px;
    background: #71BCF0;
    color: white;
    text-align: center;
    padding: 6px 8px 0 6px;
    margin-top: 10px;
    text-decoration: none;
}

#banniere_description a
{
    border-bottom: 3px solid #538FD9;
}

#banniere_image i
{
	position: absolute;	
	color: white;
	font-size: 16px;
}

#fleche_gauche
{
	position: absolute;
	height: 50px;
	width: 50px;
	border-radius: 50%;
	background: rgba(1, 1, 1, 0.5);
	top: 50%;
	left: -24px;
}

#fleche_gauche i
{
	left: 25px;
	top: 16px;
}

#fleche_droite
{
	position: absolute;
	height: 50px;
	width: 50px;
	border-radius: 50%;
	background: rgba(1, 1, 1, 0.5);
	top: 50%;
	left: calc(98% - 4px);
}

#fleche_droite i
{
	left: 15px;
	top: 16px;
}


  /* Corps */


	/* Services + portfolio */

.services_projets
{
	margin: auto;
	text-align: center;
	font-size: 21px;
	padding-top: 20px;
}

.services_projets p
{
	margin: auto;
	margin-top: 0px;
	max-width: 54%;
}


	/* services */

.photo1
{
	position: relative;
	top: -100px
}

.image_aside
{
    display: flex;
    justify-content: center;
    align-items: center;
}

aside
{
	margin-top: 100px;
    width: 40%;
    padding-left: 125px;
    font-size: 15px;
}

aside p
{
	margin-bottom: 40px;
}

.logo_aside
{
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 50%;
	height: 30px;
	width: 30px;
	position: relative;
	right: 80px;
	top: 80px;
	transform: scale(1.6);
	margin-top: -40px;
}

.logo_aside i
{
	position: relative;
	color: #71BCF0;
	top: 6px;
	left: 6px;
}

.point_aside
{
	border: 1.5px solid white;
	border-radius: 50%;
	width: 6px;
	height: 6px;
	background-color: #71BCF0;
	position: relative;
	left: 26px;
	bottom: 5px;
}


	/* decoration services et projets */

.trait
{
	width: 100px;
	border-top: 1.5px solid rgba(0, 0, 0, 0.05);
	margin: auto;
}

.point
{
	position: relative;
	margin: auto;
	top: -11px;
	border: 4px solid white;
	width: 15px;
	height: 15px;
	background-color: #71BCF0;
	border-radius: 50%;
}


	/* Projets */
	
#projets
{
	background: rgba(223, 223, 223, 0.5);
	padding-top: 1px;
	margin: auto;
}

#nav_projet
{
    display: flex;
    margin: auto;
    align-items: center;
    width: 540px;
    height: 82px;
    margin-top: 60px;
    margin-bottom: 60px;
    background-color: #E3E3E3;
    border-radius: 8px;

}

#nav_projet a
{
	display: flex;
	color: #181818;
	font-size: 1.4em;
	padding: 26px 22px 17px 22px;
	position: relative;
	left: 1px;
	text-decoration: none;
}

#nav_projet i
{
	visibility: hidden;
	position: relative;
	left: 43%;
	font-size: 30px;
	color: #538FD9;
}

#nav_projet div:hover
{
	border-bottom: 4px solid #538FD9;
	color: white;
	background: #71BCF0;
	border-radius: 8px;
}

#nav_projet div:hover > i
{
	visibility: visible;
}

.nav_projets
{
	height: 78px;
}


	/* Portfolio */

#portfolio
{
	display: flex;
	flex-wrap: wrap;
	margin-left: 35px;
}

.portfolio
{
	position: relative;
    width: 280px;
    height: 170px;
    margin-right: 20px;
    margin-bottom: 30px;
    background-color: rgba(26,76,110,0.5)
}

.portfolio img
{
	width: 100%;
	left: 0;
    bottom: 0;
    cursor: pointer;
    margin: -12px 0;
}

.text
{
	background: rgba(1, 1, 1, 0.5);
	color: #fff;
    padding: 2px 0 3px 10px;
    top: -60px;
    height: 38%;
    font-size: 14px;
    position: relative;
	visibility: hidden;
}

.rond_eyes
{
	border: 2px solid white;
	position: relative;
	left: 220px;
	bottom: 20px;
	background: #71BCF0;
	height: 30px;
	width: 30px;
	border-radius: 50%;
	text-align: center;
}

.text i
{
	position: relative;
	top: -45px;
	left: 230px;
}

.text h3
{
	font-size: 16px;
	font-weight: bold;
	position: relative;
	top: -50px;
}

.text p
{
	font-size: 14px;
	position: relative;
	top: -66px;
}

.portfolio img:hover + .text
{
	visibility: visible;
}


/* contact */

#formulaire
{
	background: rgba(255, 255,255, 0.7);
	width: 350px;
	font-size: 16px;
	padding-left: 10px;
	padding-bottom: 2px;
	position: relative;
	left: 66%;
	top: 6%;
}

#formulaire h2
{
	font-weight: bold;
	font-size: 24px;
	padding-top: 10px;
}
#formulaire span
{
	font-weight: bold;
}

#send
{
	border-radius: 5px;
    background: #71BCF0;
    color: white;
    width: 30px;
}

#send input
{
	border: 0px;
	border-bottom: 2px solid #538FD9;
	background: #71BCF0;
	border-radius: 6px;
	width: 110px;
	height: 40px;
	color: white;
}

#map
{
    height: 660px;
    background: url('images/map.png') no-repeat;
    background-size: 100%;
    margin-top: 5px;
	margin-bottom: 10px;
}

.contact
{
	font-size: 15px;
}


	/* Responsive - Media queries */

 /* Tv and 4k */

@media all and (min-width: 2310px)
{
	#banniere_image
	{
		height: 910px;
	}

	#banniere_description
	{
		top: 20%;
	}

	#banniere_description h1
	{
		font-size: 46px;
	}

	#banniere_description p
	{
		font-size: 25px;
	}

		.bouton_bleu
	{
	    height: 50px;
	    font-size: 1.4em;
	    position: absolute;
	    border-radius: 5px;
	    background: #71BCF0;
	    color: white;
	    text-align: center;
	    padding: 8px 10px 0 8px;
	    margin-top: 10px;
	    text-decoration: none;
	}

	#banniere_description a
	{
	    border-bottom: 4px solid #538FD9;
	}

	#banniere_image i
	{
		position: absolute;	
		color: white;
		font-size: 16px;
	}

	#fleche_droite
	{
		left: calc(98% + 20px);
	}

	#portfolio
	{
		margin-left: 115px;
	}

	.portfolio
	{
		width: 500px;
		height: 322px;
		margin-right: 78px;
		margin-bottom: 70px;
	}

	.text
	{
		top: -118px;
		font-size: 24px;
	}

	.text h3
	{
		font-size: 28px;
		top: -75px;
	}

	.text p
	{
		font-size: 24px;
		top: -100px;
	}

	.text i
    {
    	left: 412px;
    	top: -72px;
    	font-size: 30px;
    }

    .rond_eyes
    {
    	left: 400px;
    	top: -30px;
    	height: 50px;
		width: 50px;
    }

	    #map
	{
	    height: 960px;
	}

		#formulaire
	{
		width: 450px;
		font-size: 30px;
		padding-left: 10px;
		padding-bottom: 2px;
	}
		#formulaire h2
	{
		font-size: 36px;
	}

	#send
	{
	    width: 0px;
	}

	#send input
	{
		border-bottom: 4px solid #538FD9;
		width: 180px;
		height: 50px;
	}

	#formulaire input, textarea
    {
    	font-size: 25px;
    }

    #formulaire textarea
    {
    	width: 420px;
    }
}


 /* Grend écrans */

@media all and (min-width: 1920px) and (max-width: 2309px)
{
	#banniere_image
	{
		height: 700px;
	}

	#banniere_description
	{
		top: 5%;
	}

	#banniere_description h1
	{
		font-size: 38px;
	}

	#banniere_description p
	{
		font-size: 22px;
		width: 63%;
	}

	#banniere_description a
	{
	    border-bottom: 6px solid #538FD9;
	}

	.bouton_bleu
	{
	    height: 42px;
	}

	#fleche_droite
	{
		left: calc(98% + 10px);
	}

	#portfolio
	{
		margin-left: 60px;
	}

	.portfolio
	{
		width: 400px;
		height: 240px;
		margin-right: 50px;
		margin-bottom: 70px;
	}

	.text
	{
		top: -87px;
		font-size: 20px;
	}

	.text h3
	{
		font-size: 20px;
	}

	.text p
	{
		font-size: 17px;
	}

	.text i
    {
    	left: 327px;
    	top: -49px
    }

    .rond_eyes
    {
    	left: 320px;
    }
}

@media all and (min-width: 1680px) and (max-width: 1919px)
{
	#banniere_image
	{
		height: 600px;
	}

	#fleche_droite
	{
		left: calc(98% + 6px);
	}

	#portfolio
	{
		margin-left: 45px;
	}

	.portfolio
	{
		width: 365px;
		height: 228px;
		margin-right: 35px;
		margin-bottom: 50px;
	}

	.text
	{
		top: -83px;
		font-size: 18px;
	}

	.text h3
	{
		font-size: 20px;
	}

	.text p
	{
		font-size: 17px;
	}

	.text i
    {
    	left: 298px;
    	top: -48px
    }

    .rond_eyes
    {
    	left: 290px;
    }
}

@media all and (min-width: 1440px) and (max-width: 1679px)
{
	#banniere_image
	{
		height: 520px;
	}

	#fleche_droite
	{
		left: calc(98% + 1px);
	}

	#portfolio
	{
		margin-left: 45px;
	}

	.portfolio
	{
		width: 310px;
		height: 190px;
		margin-right: 28px;
		margin-bottom: 45px;
	}

	.text
	{
		top: -68px;
		font-size: 18px;
	}

	.text h3
	{
		font-size: 18px;
	}

	.text p
	{
		font-size: 15px;
	}

	.text i
    {
    	left: 253px;
    	top: -47px
    }

    .rond_eyes
    {
    	left: 245px;
    }
}


 /* Moyen écrans */

@media all and (min-width: 1366px) and (max-width: 1439px)
{
	#banniere_image
	{
		height: 500px;
	}

	#fleche_droite
	{
		left: calc(98%);
	}

	#portfolio
	{
		margin-left: 60px;
	}

	.portfolio
	{
		margin-right: 35px;
		margin-bottom: 50px;
	}

	.text
	{
		top: -62px;
	}
}

@media all and (min-width: 1035px) and (max-width: 1279px)
{
	#fleche_droite
	{
		left: calc(98% - 6px);
	}

	#portfolio
	{
		margin-left: 35px;
	}

	.portfolio
	{
		width: 230px;
		height: 128px;
		margin-right: 20px;
		margin-bottom: 30px;
	}

	.text
	{
		top: -44px;
		font-size: 16px;
	}

	.text h3
	{
		font-size: 14px;
		top: -58px;
	}

	.text p
	{
		font-size: 12px;
		top: -72px;
	}

	.text i
    {
    	left: 169px;
    	top: -46px
    }

    .rond_eyes
    {
    	left: 160px;
    }
}


 /* Petits écrans */

@media only screen and (max-device-width: 1034px)
{
	#banniere_image
	{
		height: 380px;
	}

	#banniere_description
	{
		margin-top: 60px;
	}

	.petit_ecran
	{
		display: none;
	}

	#logo
	{
		width: 200px;
		height: 130px;
	}

	#index
    {
        font-size: 34px;
    }
    
    nav ul
    {
        flex-direction: column;
    }

        #index a:hover
	{
    	padding-top: 4px;
	}

	#fleche_droite
	{
		left: calc(98% - 8px);
	}

    .image_aside
    {
    	flex-direction: column;
    }

    .services_projets
    {
    	width: 100%;
    	font-size: 45px;
    }

    .photo1
    {
    	top: 0px;
    }

    aside
    {
    	margin-top: 0px;
    	padding-left: 0px;
    	width: 80%;
    }

    aside p
    {
    	font-size: 30px;
    	margin-bottom: 45px;
    }

    aside h2
    {
    	font-size: 38px;
    }

    .logo_aside
    {
    	top: 130px;
    }

    #nav_projet
    {
    	font-size: 23px;
    	width: 700px;
    	height: 82px;
    }

    #nav_projet a
    {
    	padding: 19px 22px 0px 22px;
    }

    #nav_projet i
    {
    	top: 30px;
    }

    #portfolio
    {
    	margin-left: 90px;
    }

    .portfolio
    {
    	width: 350px;
    	height: 220px;
    	margin-right: 70px;
    	margin-bottom: 90px;
    }
    .portfolio h3
    {
    	font-size: 30px;
    }

    .text
    {
    	top: -80px;
    }

    .text i
    {
    	left: 280px;
    }

    .rond_eyes
    {
    	left: 270px;
    }

    #formulaire h2
    {
    	font-size: 40px;
    }

    #formulaire
    {
    	background: rgba(223, 223, 223, 0.5);
    	padding-left: 25px;
    	margin-bottom: 30px;
    	width: 70%;
    	top: 506px;
    	left: 14%;
    	font-size: 32px;
    }

    #formulaire input, textarea
    {
    	font-size: 30px;
    }

    #formulaire textarea
    {
    	width: 90%;
    }

    #send input
    {
    	width: 240px;
    	height: 60px;
    	font-size: 34px
    }
}