/*======================================
=                FONTS                 =
======================================*/

@font-face {
    font-family: 'bebas_neue';
    src: url('../fonts/bebas-neue-webfont.eot');
    src: url('../fonts/bebas-neue-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/bebas-neue-webfont.woff2') format('woff2'),
         url('../fonts/bebas-neue-webfont.woff') format('woff'),
         url('../fonts/bebas-neue-webfont.ttf') format('truetype'),
         url('../fonts/bebas-neue-webfont.svg#bebas_neueregular') format('svg');
}

/*======================================
=                GLOBAL                =
======================================*/

body{
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	background: #4C4A46;
}

.center{
	text-align: center;
}

.titre{
	display: inline-block;
	font-family: 'bebas_neue', sans-serif;
	font-size: 40px;
	text-transform: uppercase;
	position: relative;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 5px;
}

.titre:before{
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	background: #B3D4E7;
	bottom: 0px;
	left: 0px;
}

.sous-titre{
	font-family: 'bebas_neue', sans-serif;
	font-size: 35px;
	text-transform: uppercase;
	position: relative;
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 15px;
}

a, a:link{
	color: #6CA3BE;
	text-decoration: none;
	-webkit-transition: .5s;
	transition: .5s;
}

a:hover, a:focus, a:active{
	color: #B3D4E7;
}

a.link{
	font-family: 'bebas_neue', sans-serif;
	display: inline-block;
	text-transform: uppercase;
	color: #fff;
	background: #89BDD8;
	font-size: 25px;
	padding: 10px 20px;
}

a.link:hover{
	background: #B3D4E7;
}

.blue{
	color: #B3D4E7
}

img{
	max-width: 100%;
	display: block;
}

/*======================================
=               HEADER                 =
======================================*/

header{
	background: #3A3834;
	padding: 15px;
}

/*======================================
=                LOGO                  =
======================================*/

.container-logo{
	margin-bottom: 15px;
}

.container-logo a{
	display: block;
	padding: 30px;
	width: 240px;
	height: 240px;
	background: #4C4A46;
	margin: auto;
	-webkit-transition: 0s;
	transition: 0s;
}

#logo{
	background: no-repeat center url(../img/logo.png);
	background-size: contain;
	width: 100%;
	height: 100%;
}

/*======================================
=                MAIN                  =
======================================*/

main{
	padding: 15px;
	color: #fff;
}

section{
	padding: 15px;
	background: #3A3834;
	margin-bottom: 15px;
}

.accroche{
	font-size: 20px;
	text-align: center;
	line-height: 35px;
	font-weight: lighter;
}

/*======================================
=                 CV                   =
======================================*/

table.progress-tab{
	width: 100%;
	max-width: 400px;
	margin: auto;
	text-transform: uppercase;
}

table.progress-tab tr{
	margin-bottom: 10px;
}

table.progress-tab tr td{
	padding-top: 5px;
	padding-bottom: 5px;
	vertical-align: middle;
}

table.progress-tab tr:first-child td{
	padding-top: 0px;
}

table.progress-tab tr:last-child td{
	padding-bottom: 0px;
}

table.progress-tab td:first-child{
	padding-right: 10px;
}

table.progress-tab td:last-child{
	width: 250px;
}

table.progress-tab .bar-progress{
	background: #4C4A46;
	position: relative;
	height: 10px;
	width: 100%;
}

table.progress-tab .bar-progress .bar-bleu{
	position: absolute;
	height: 100%;
	left: 0px;
	top: 0px;
	background: #B3D4E7;
	-webkit-animation-duration: 1s;
	-webkit-animation-timing-function: ease-in-out;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
}

table.progress-tab .bar-progress .bar-bleu.fr{
	width: 100%;
	-webkit-animation-name: progress-bar-100;
	animation-name: progress-bar-100;
}

table.progress-tab .bar-progress .bar-bleu.html,
table.progress-tab .bar-progress .bar-bleu.css,
table.progress-tab .bar-progress .bar-bleu.wp{
	width: 90%;
	-webkit-animation-name: progress-bar-90;
	animation-name: progress-bar-90;
}

table.progress-tab .bar-progress .bar-bleu.js{
	width: 75%;
	-webkit-animation-name: progress-bar-75;
	animation-name: progress-bar-75;
}

table.progress-tab .bar-progress .bar-bleu.en{
	width: 65%;
	-webkit-animation-name: progress-bar-65;
	animation-name: progress-bar-65;
}

table.progress-tab .bar-progress .bar-bleu.php,
table.progress-tab .bar-progress .bar-bleu.presta,
table.progress-tab .bar-progress .bar-bleu.adobe{
	width: 55%;
	-webkit-animation-name: progress-bar-55;
	animation-name: progress-bar-55;
}

table.progress-tab .bar-progress .bar-bleu.symfony{
	width: 33%;
	-webkit-animation-name: progress-bar-33;
	animation-name: progress-bar-33;
}

table.progress-tab .bar-progress .bar-bleu.blender,
table.progress-tab .bar-progress .bar-bleu.es{
	width: 25%;
	-webkit-animation-name: progress-bar-25;
	animation-name: progress-bar-25;
}

/*----------*/

table.point-tab{
	font-size: 13px;
	width: 100%;
	max-width: 350px;
	margin: auto;
}

table.point-tab span{
	display: block;
	text-transform: uppercase;
	font-size: 14px;
	margin-bottom: 5px;
}

table.point-tab span:nth-child(2){
	margin-bottom: 0px;
}

table.point-tab tr td{
	position: relative;
	padding-bottom: 30px;
	vertical-align: top;
}

table.point-tab tr:last-child td{
	padding-bottom: 0px;
}

table.point-tab tr td:first-child{
	padding-right: 10px;
}

table.point-tab tr td:first-child:before{
	content: '-';
	position: absolute;
	top: 20px;
	left: -10px;
}

table.point-tab tr td:last-child{
	padding-left: 25px;
}

table.point-tab tr td:last-child:before{
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	background: #B3D4E7;
	border-radius: 50%;
	top: 0px;
	left: 0px;
}

/*----------*/

table.barre-tab{
	font-size: 13px;
	width: 100%;
	max-width: 400px;
	margin: auto;
}

table.barre-tab span{
	display: block;
	text-transform: uppercase;
	font-size: 14px;
	margin-bottom: 5px;
}

table.barre-tab span:nth-child(2){
	margin-bottom: 0px;
}

table.barre-tab tr td{
	position: relative;
	padding-bottom: 30px;
	vertical-align: middle;
}

table.barre-tab tr:last-child td{
	padding-bottom: 0px;
}

table.barre-tab tr td:first-child{
	padding-right: 15px;
}

table.barre-tab tr td:last-child .barre{
	padding-left: 15px;
	border-left: 5px solid #B3D4E7;	
}

/*-- Animation --*/

@-webkit-keyframes progress-bar-100 {
    from {width: 0px;}
    to {width: 100%;}
} 

@keyframes progress-bar-100 {
    from {width: 0px;}
    to {width: 100%;}
}

@-webkit-keyframes progress-bar-90 {
    from {width: 0px;}
    to {width: 90%;}
} 

@keyframes progress-bar-90 {
    from {width: 0px;}
    to {width: 90%;}
}

@-webkit-keyframes progress-bar-75 {
    from {width: 0px;}
    to {width: 75;}
} 

@keyframes progress-bar-75 {
    from {width: 0px;}
    to {width: 75%;}
}

@-webkit-keyframes progress-bar-65 {
    from {width: 0px;}
    to {width: 65%;}
} 

@keyframes progress-bar-65 {
    from {width: 0px;}
    to {width: 65%;}
}

@-webkit-keyframes progress-bar-55 {
    from {width: 0px;}
    to {width: 55%;}
} 

@keyframes progress-bar-55 {
    from {width: 0px;}
    to {width: 55%;}
}

@-webkit-keyframes progress-bar-33 {
    from {width: 0px;}
    to {width: 33%;}
} 

@keyframes progress-bar-33 {
    from {width: 0px;}
    to {width: 33%;}
}

@-webkit-keyframes progress-bar-25 {
    from {width: 0px;}
    to {width: 25%;}
} 

@keyframes progress-bar-25 {
    from {width: 0px;}
    to {width: 25%;}
}

/*======================================
=                BOOK                  =
======================================*/

.projet{
	padding: 15px;
	margin-bottom: 15px;
	cursor: pointer;
	-webkit-transition: .5s;
	transition: .5s;
}

.projet.last-xs{
	margin-bottom: 0px;
}

.projet:hover{
	background: #4C4A46;
}

.projet .view{
	position: relative;
	overflow: hidden;
    padding-bottom: 56.25%;
    margin-bottom: 15px;
}

.projet .view img{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: auto;
}

.projet figcaption{
	text-align: center;
	font-family: 'bebas_neue', sans-serif;
	font-weight: lighter;
	text-transform: uppercase;
	font-size: 20px;
}

/* Box */

.container-box{
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	padding: 15px;
	background: rgba(58, 56, 52, .5);
	display: none;
	opacity: 0;
	-webkit-transition: .2s;
	transition: .2s;
}

.container-box.active{
	display: block;
}

.box{
	background: #4C4A46;
	width: 100%;
	max-width: 800px;
	max-height: 100%;
	margin: auto;
	padding: 15px;
	position: relative;
	z-index: 2;
}

.box img{
	margin-bottom: 15px;
}

.close-box{
	position: absolute;
	right: 15px;
	top: 15px;
	width: 30px;
	height: 30px;
	background: #4C4A46;
	border: 2px solid #B3D4E7;
	border-radius: 50%;
	cursor: pointer;
	opacity: .5;
	z-index: 3;
	-webkit-transition: .2s;
	transition: .2s;
}

.close-box:hover{
	opacity: 1;
}

.close-box:before,
.close-box:after{
	content: '';
	width: 15px;
	height: 2px;
	background: #B3D4E7;
	display: block;
	position: absolute;
	top: 12px;
	left: 6px;
}

.close-box:before{
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.close-box:after{
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.full-close{
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	z-index: 1;
}

/*======================================
=             FORMULAIRE               =
======================================*/

input{
	line-height: 20px;
}

textarea{
	min-height: 200px;
	resize: none;
}

input, textarea{
	background: #4C4A46;
	border: 0px;
	width: 100%;
	padding: 15px;
	margin-bottom: 15px;
	outline: none;
}

input, textarea {
    color: #fff;
}
 
input:-moz-placeholder, textarea:-moz-placeholder {
    color: #fff;
}
 
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: #fff;
}
 
input.placeholder, textarea.placeholder {
    color: #fff;
}

.submit{
	text-align: right;
}

input[type="submit"]{
	border: 0px;
	background: #89BDD8;
	color: #fff;
	text-shadow: none;
	text-transform: uppercase;
	font-family: 'bebas_neue', sans-serif;
	-webkit-transition: .5s;
	transition: .5s;
	font-size: 25px;
	margin-bottom: 0px;
}

input[type="submit"]:hover{
	background: #B3D4E7;
}

.error-mail{
	padding: 15px;
	border: 1px solid #FF0000;
	margin-bottom: 15px;
	text-align: center;
}

.succes-mail{
	padding: 15px;
	border: 1px solid #34C924;
	margin-bottom: 15px;
	text-align: center;
}

/*======================================
=               FOOTER                 =
======================================*/

footer{
	padding: 15px;
	background: #3A3834;
}

/*======================================
=             MEDIA QUERY              =
=      ----  Mobile Method  ----       =
======================================*/

@media only screen and (min-width : 768px) {
	header{
		position: fixed;
		top: 0px;
		left: 0px;
		height: 100vh;
		width: 200px;
		padding: 30px;
	}
	.container-logo a{
		width: 140px;
		height: 140px;
		padding: 15px;
	}
	main{
		width: calc(100% - 200px);
		margin-left: 200px;
		min-height: 100vh;
	}
	.projet.last-sm{
		margin-bottom: 0px;
	}
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	.sous-titre{
		margin-bottom: 30px;
	}
	header{
		width: 300px;
	}
	.container-logo a{
		width: 240px;
		height: 240px;
		padding: 30px;
	}
	main{
		width: calc(100% - 300px);
		margin-left: 300px;
		padding: 30px;
	}
	section{
		margin-bottom: 30px;
	}
	section,
	footer{
		padding: 30px;
	}
	.projet{
		margin-bottom: 30px;
	}
	.projet.last-md{
		margin-bottom: 0px;
	}
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
    
}

/*======================================
=             MEDIA QUERY              =
=     ----  Max Width Method  ----       =
======================================*/

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {
}

/* Medium Devices, Desktops */
@media only screen and (max-width : 991px) {
}

/* Small Devices, Tablets */
@media only screen and (max-width : 767px) {
}

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 480px) {
}

/* Custom, iPhone Retina */ 
@media only screen and (max-width : 320px) {
    
}

/*======================================
=             MEDIA QUERY              =
=  -  Only Column detection Method -   =
======================================*/

/* Medium Devices, Desktops */
@media (max-width: 1199px) and (min-width: 992px) {
}

/* Small Devices, Tablets */
@media (max-width: 991px) and (min-width: 768px){
}

/* Extra Small Devices, Phones */
@media (max-width: 767px) and (min-width: 321px) {
}

/* Custom, iPhone Retina */
@media (max-width: 320px) {
}