
/* Helpers & resets */
*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.cf:before,
.cf:after {
	content: '';
	display: table;
}

.cf:after {
	clear: both;
}




/*----------- GENERAL SETTINGS -----------*/

html,body{
	height: 100%
}

body {
	margin: 0;
	padding: 0;
	/*background: url(../img/dust.png);
	background-color: #000;*/
	color: #000;
	font-size: 1em;
	overflow: hidden;
	position: relative;
	overflow-y: scroll;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/*body.body-home{
	background: #fff;
}*/


.container_h {
	position: relative;
	min-height: 100vh;
	height: 100%;
	overflow: hidden;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

a {
	text-decoration: none  !important;
	color: #000;
	outline: none;
}


a:hover {
	text-decoration: none !important;
	color: #999;
	outline: none;
}


a:hover,
a:focus {
	outline: none;
}

button:focus {
	outline: none;
}


img{
	border: 0;
	margin: 0;
	padding: 0
}

section {
/*	width: 100%;
	min-height: 200px;
	position: relative;*/
	/*overflow: hidden;*/
	/* padding-top: 170px; 
	overflow-y:scroll;
	overflow-x: hidden;*/

}
/*
.container{
	max-width: 1280px !important;
}*/

.left{
	float: left !important;
}

.right{
	float: right !important;
}


.pt-50{
	padding-top: 50px !important
}

.pt-60{
	padding-top: 60px !important
}

.pt-80{
	padding-top: 80px !important
}

.pt-100{
	padding-top: 100px !important
}

.pt-130{
	padding-top: 130px !important
}


.mt-15{
	margin-top: 15px !important
}

.mt-25{
	margin-top: 25px !important
}

.mt-40{
	margin-top: 40px !important
}

.mt-50{
	margin-top: 50px !important
}

.mt-60{
	margin-top: 60px !important
}

.mt-80{
	margin-top: 80px !important
}

.mt-100{
	margin-top: 100px !important
}

.mt-130{
	margin-top: 130px !important
}

.mt-150{
	margin-top: 150px !important
}

.mt-170{
	margin-top: 170px !important
}


.mb-150{
	margin-bottom: 150px !important
}


.mt-m50{
	margin-top: -50px !important
}

.mt-m150{
	margin-top: -150px !important
}




/*----------- TYPOGRAPHY -----------*/

.align-center{
	text-align: center !important;
}

.align-left{
	text-align: left;
}

.align-right{
	text-align: right;
}

.white-text{
	color: #fff !important
}

.white-text a{
	color: #fff !important
}

.black-text{
	color: #000 !important
}


div.page-content{
	position: relative;
	text-align: center;
}

 

/*----------- SECTION GENERAL SETTINGS -----------*/

/*
section{
	width: 100%;
	position: relative
	margin: 0;
	padding: 0;
}*/

 

/*----------- LOADER -----------*/

.fakeloader{
	background-color: #ccc;
}

.spinner1 {
	width: 102px;
	height: 80px;
	position: relative;
}

 

/*----------- MENU -----------*/

nav#menu {
	width: 100%;
	height: 70px;
	background-color: #000;
	z-index:998;
	position: fixed;
	bottom:0px;
	border-top:1px solid #222;
}

nav#menu div#logo-menu{
	float: left;
	margin-top: 25px;
	margin-left: 60px;
}

nav#menu div#logo-menu img{
	max-width: 150px;
}

nav#menu ul#men{
	float: left;
	width: 590px;
	position: absolute;
	left: 50%;
	margin-left: -295px;
	margin-top: 27px;
}

nav#menu ul#social{
	float: right;
	margin-top: 25px;
	margin-right: 60px;
}

nav#menu ul li{
	float: left;
	list-style: none;
	margin: 0 20px;
}

nav#menu ul#social li{
	margin: 0 5px;
}


nav#menu ul li a{
	text-transform: uppercase;
	text-decoration: none;
	color: #ccc;
	font-size: 13px;
	font-family: 'AvenirLT-Book';
}

nav#menu ul li a:hover{
	color: #666;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}


/* Effect on words */
.icon-list{
	position: absolute;
	display: inline-block;
}

.icon-list a {
	text-transform: uppercase;
	text-decoration: none;
	color: #666 !important;
	font-size: 14px;
	font-family: 'AvenirLT-Book';
	font-weight: 600;
	text-shadow: none;
	position: relative;
	display: inline-block;
}

.icon-list a::before {
	position: absolute;
	left: 0;
	overflow: hidden;
	padding: 0px 0;
	max-height: 100%;
	color: #ddd;
	content: attr(data-hover);
	-webkit-transition: max-height 0.5s;
	-moz-transition: max-height 0.5s;
	transition: max-height 0.5s;
}

.icon-list a:hover::before,
.icon-list a:focus::before {
	max-height: 0%;
}





/*----------- HOME -----------*/

.swh {
	position: absolute;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	overflow: hidden;
	pointer-events: none;
}

.swh > div {
	background: url(../images/bg_landing.png) no-repeat center center;
	/*background-size: 110%;*/
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.swh__back--static,
.swh__front {
	-webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
	transition: transform 0.5s, opacity 0.5s;
	-webkit-transform-origin: 50% 60px;
	transform-origin: 50% 60px;
	-webkit-transition-timing-function: cubic-bezier(0.6,0,0.4,1);
	transition-timing-function: cubic-bezier(0.6,0,0.4,1);
}

.swh__back {
	position: absolute;
	width: 100%;
	height: 100%;
}

.swh__back--mover {
	opacity: 0.7;
	-webkit-transition: -webkit-transform 0.4s, opacity 0s 0.5s;
	transition: transform 0.4s, opacity 0s 0.5s;
}

.move-items .swh__back--mover {
	opacity: 0;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.swh__front {
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -391px;
	width: 782px;
	height: 782px;
	border-radius: 50%;
	opacity: 0;
}

.move-items .swh__back--static {
	opacity: 0;
	-webkit-transform: scale3d(0.15,0.15,1);
	transform: scale3d(0.15,0.15,1);
}

.move-items .swh__front {
	opacity: 1;
	-webkit-transition-duration: 0.5s, 0s;
	transition-duration: 0.5s, 0s;
	-webkit-transform: scale3d(0.15,0.15,1);
	transform: scale3d(0.15,0.15,1);
}

div#logo{
	/*position: absolute;
	left: 50%;
	margin-left: -250px;
	top: 61%;
	margin-top: -270px*/
position:relative;
margin:0 auto;
    top: 17rem;
text-align:center;

}


/*----------- MOBILE MENU -----------*/

*{   -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent; /* For some Androids */
}

.top-animate {
    background: #fff !important;
    top: 13px !important;
    -webkit-transform: rotate(45deg);
    /* Chrome, Safari, Opera */
    transform: rotate(45deg);
}
.mid-animate {
    opacity: 0;
}
.bottom-animate {
    background: #fff !important;
    top: 13px !important;
    -webkit-transform: rotate(-225deg);
    /* Chrome, Safari, Opera */
    transform: rotate(-225deg);
}
.top-menu {
    top: 5px;
    width: 25px;
    height: 2px;
    border-radius: 10px;
    background-color: #F9A530;
}
.mid-menu {
    top: 13px;
    width: 25px;
    height: 2px;
    border-radius: 10px;
    background-color: #F9A530;
}
.bottom-menu {
    top: 21px;
    width: 25px;
    height: 2px;
    border-radius: 10px;
    background-color: #F9A530;
}
.menui {
    background: #000;
    transition: 0.6s ease;
    transition-timing-function: cubic-bezier(.75, 0, .29, 1.01);
    margin-top: 10px;
    position: absolute;
}


.icon {
    z-index: 999;
    position: relative;
    padding: 9px;
    height: 32px;
    width:32px;
    margin: 0px;
    margin-top: 10px;
  	margin-right: 60px;
  	float: right;
	display: none;
}

.icon-social{
	padding: 0 10px
}

.mobilenav {
    /*    top: 47px !important;*/
    font-family: inherit;
    top: 0;
    left:0;
    z-index: 999;
    display: none;
    position: fixed;
    overflow: scroll;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
}
.mobilenav li {
    list-style-type: none;
    text-align: center;
    padding: 2vh;
}

.mobilenav li img#logo-menu{
	max-width: 200px;
	display: inline-block; 
}

.mobilenav li a {
    font-size: 20px;
    color: #fff;
    text-decoration: none;
    font-weight: 300;
    width: 100%;
    text-transform: uppercase;
	font-family: 'AvenirLT-Book';
}
.mobilenav li:first-child {
    margin-top: 60px;
}


img.close-icon{
  margin-top: 7px
}



/*----------- ABOUT -----------*/


section#about p {
	font-family: 'PrestigeEliteStd-Bd';
	font-size: 14px;
	text-align: left;
	margin-bottom: 10px;
}

section#about div.about-content{
	max-width: 100% !important;
	padding: 0 40px;
}

section#about div.short {
	font-family: 'PrestigeEliteStd-Bd';
	font-size: 14px;
	max-width: 310px;
	text-align: left;
	position: relative;
	float: right;
	margin-top: 15px;
	/*margin-left: -190px*/
}

section#about div.short p#start {
	text-align: center;
	margin-bottom: 7px
}

section#about div.short p#end {
	text-align: right !important;
}

section#about div.team{
	max-width: 600px;
	height: auto;
	margin: 0 auto;
}

section#about div.single-about{
	border: 1px solid;
	height: 170px;
	margin: 35px 0px;
}

section#about div.last{
	margin-bottom: 50px
}

section#about div.team h2{
	font-family: 'PrestigeEliteStd-Bd';
	font-size: 15px;
	text-align: center;
	margin-bottom: 3px;
}

section#about div.team h4{
	font-family: 'PrestigeEliteStd-Bd';
	font-size: 11px;
	margin-top: 0px;
	text-align: center;
	text-transform: uppercase;
}

#circle{
	position: absolute;
	display: none;
	max-width: 170px;
	margin-left: -35px;
	margin-top: -3px
}

#goonies{
	position: absolute;
	display: none;
	max-width: 250px;
	margin-left: 400px;
	margin-top: -60px
}

#owl{
	position: absolute;
	display: none;
	max-width: 280px;
	margin-top: 30px;
	margin-left: -30px;
}


/*----------- CLIENTS -----------*/


div.clients-container{
	background: url(../img/clients_bg.gif) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100vh;
	position: fixed;
	z-index: -1
}


section#clients div.clients-content{
	max-width: 100% !important;
	padding: 0 40px;
	position: relative;
	z-index: 99
}

/*section#clients h1 {
    color: #fff;
}*/

section#clients div.loghi_clienti div.col-xs-6 img{
	text-align: center;
	max-width: 100%;
	height: auto;
}



/*----------- PORTFOLIO -----------*/

section#portfolio h1{
	color: #fff
}

section#portfolio{
	margin-bottom: 160px
}

section#portfolio video{
	display: block !important;
	object-fit: cover;
}

section#portfolio video:hover{
	cursor: pointer;
}


section#portfolio div.page-content{
	max-width: 1800px;
	height: auto;
	margin: 0 auto;
	font-family: 'PrestigeEliteStd-Bd';
	text-align: center;
	color: #FFF;
}

section#portfolio ul{
	float: left;
	width: 766px;
	position: absolute;
	left: 50%;
	margin-left: -383px;
	margin-top: 27px;
}

section#portfolio ul li{
	float: left;
	list-style: none;
	margin: 0 5px;
}

section#portfolio ul li a{
	text-transform: uppercase;
	text-decoration: none;
	display: block;
	color: #fff;
	font-size: 13px;
	padding: 0 10px;
	min-width: 105px !important;
	min-height: 17px !important;
	font-family: 'PrestigeEliteStd-Bd';
}

section#portfolio ul li a:hover{
	color: #000 !important;
	cursor: pointer;
	background: url('../img/marker.png') left center no-repeat !important;
	background-size: cover !important;
}


section#portfolio div.portfolio-content{
	height: auto;
	margin: 0 auto;
	margin-top: 100px;
	text-align: left;
	width: auto;
}

section#portfolio div.col-sm-6{
	max-width: 48%;
	margin: 11px;
	padding: 0px;
	background-color: #000;
	color:white;
	overflow: hidden;
	height: 290px;
	padding: 0
}

/*section#portfolio div.big-box{
	display: none;
}*/


section#portfolio div.last{
	margin-bottom: 100px
}


section#portfolio div.video-ext{
	padding: 0px;
	background: rgba(0,0,0,0.5) !important;
	height: auto;
	min-height: 290px;
	width: 100%;
	overflow: hidden;
	-webkit-transition: all 0.8s;
	-moz-transition: all 0.8s;
	transition: all 0.8s;
	position: absolute;
	display: none;
}


section#portfolio div.video-ext div.info-box{
	position: absolute;
	width: 100%;
	top: 50%;
	margin-top: -27px;
	
}

section#portfolio div.video-ext h2.title-video{
	font-family: 'AvenirLT-Book';
	color: #fff;
	text-transform: uppercase;
	font-size: 20px;
	margin-top: 0px;
	font-weight: 700;
	text-align: center;
	cursor:pointer;
	letter-spacing: 2px;
}

section#portfolio div.video-ext h3.subtitle-video{
	font-family: 'PrestigeEliteStd-Bd';
	color: #fff;
	font-size: 10px;
	margin-top: 15px;
	margin-bottom: 0px;
	text-align: center;
}



.modal-dialog {
	width: 100%;
	height: 100%;
	padding: 0;
	margin:0;
	background-color: #000 
}


button.close {
	cursor: pointer;
	background: 0 0;
	border: 0;
	-webkit-appearance: none;
	z-index: 9999;
	position: absolute;
	right: 50px;
	top: 50px;
	font-size: 40px;
	color: #fff;
	opacity: 1
}

button.close:hover, .close:focus {
	color: #fff;
	-webkit-transition: all 0.8s;
	-moz-transition: all 0.8s;
	transition: all 0.8s;
}






/*----------- PRESS -----------*/

section#press div.page-content{
	max-width: 800px;
	height: auto;
	margin: 0 auto;
	font-family: 'PrestigeEliteStd-Bd';
	text-align: center;
}

section#press div.press-content{
	max-width: 800px;
	height: auto;
	margin: 0 auto;
	text-align: left;
	width: auto;
}

section#press div.col-sm-6{
	margin-top: 50px;
	padding: 0 50px;
}

section#press h2 {
	font-size: 15px;
	text-transform: uppercase;
	text-align: left;
	margin-bottom: 5px;
	font-weight: 600
}

section#press p {
	font-size: 12px;
	margin-bottom: 3px
}

section#press div.press-content a {
	font-size: 10px;
	text-decoration: underline !important;
}


section#press div.col-sm-12{
	margin-top: 50px
}


section#press div.last{
	margin-bottom: 150px
}


#coffee{
	display: none;
	position: absolute;
	margin-left: -170px;
	margin-top: -40px;
	opacity: 0.3
}


#say{
	display: none;
	position: absolute;
	max-width: 250px;
	margin-left: 369px;
	margin-top: -184px;
}


#beatle{
	opacity: 0.9;
	max-width: 90px;
	height: auto;
}

#beatle img{
	-moz-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

/*----------- CONTACT -----------*/

section#contact div.contact-content{
	max-width: 550px;
	height: auto;
	margin: 0 auto 120px;
	text-align: left;
	width: auto;
}

section#contact h1{
	margin-bottom: 25px
}

section#contact div.contact-content h3{
	font-family: "PrestigeEliteStd-Bd";
	text-align: center;
	font-size: 12px;
	line-height: 1.7
}

section#contact div.contact-content h4#social{
	text-align: center;
	font-size: 25px;
	width: 100%;
	margin-top: 17px;
}

section#contact div.contact-content h4#social a{
	margin: 0 6px;
	text-align: center;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;

}

section#contact div.contact-content h4#social a:hover{
	color: #666;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}



.input {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin-bottom: 15px;
	max-width: 100%;
	width: calc(100% - 2em);
	vertical-align: top;
}

.input__field {
	position: relative;
	display: block;
	float: right;
	padding: 0.8em;
	width: 60%;
	border: none;
	border-radius: 0;
	background: #f0f0f0;
	color: #aaa;
	font-weight: bold;
	font-family: "PrestigeEliteStd-Bd";
	text-transform: uppercase;
	-webkit-appearance: none; /* for box shadows to show on iOS */
}

.input__field:focus {
	outline: none;
}

.input__label {
	display: inline-block;
	float: right;
	padding: 0 1em;
	width: 40%;
	color: #6a7989;
	font-weight: bold;
	font-size: 12px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-family: "PrestigeEliteStd-Bd";
	text-transform: uppercase;
}

.input__label-content {
	position: relative;
	display: block;
	padding: 0em 0;
	width: 100%;
	margin-top: 13px
}

.textarea span.input__label-content {
	margin-top: 35px !important
}

.graphic {
	position: absolute;
	top: 0;
	left: 0;
	fill: none;
}

.icon {
	color: #ddd;
	font-size: 150%;
}

/* Individual styles */


/* Hoshi */
.input--hoshi {
	overflow: hidden;
}

.input__field--hoshi {
	margin-top: 1em;
	padding: 0 0.15em 1em;
	font-size: 16px;
	width: 100%;
	background: transparent;
	color: #000;
}

.input__label--hoshi {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 0em;
	width: 100%;
	height: calc(100% - 1em);
	text-align: left;
	pointer-events: none;
}

.input__label-content--hoshi {
	position: absolute;
}

.input__label--hoshi::before,
.input__label--hoshi::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 10px);
	border-bottom: 2px solid #B9C1CA;
}

.input__label--hoshi::after {
	margin-top: 2px;
	border-bottom: 3px solid red;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.input__label--hoshi-color-1::after {
	border-color: #484848;
}

.input__label--hoshi-color-2::after {
	border-color: #484848;
}

.input__label--hoshi-color-3::after {
	border-color: #484848;
}

.input__field--hoshi:focus + .input__label--hoshi::after,
.input--filled .input__label--hoshi::after {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.input__field--hoshi:focus + .input__label--hoshi .input__label-content--hoshi,
.input--filled .input__label-content--hoshi {
	-webkit-animation: anim-1 0.5s forwards;
	animation: anim-1 0.5s forwards;
}

.input__field--hoshi-mat {
  border-bottom: 2px solid #B9C1CA !important;
  padding-bottom: 0px !important;
}

@-webkit-keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 24px, 0);
		transform: translate3d(0, 24px, 0);
	}
}

@keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 24px, 0);
		transform: translate3d(0, 24px, 0);
	}
}

/* Input Button */
.butt-submit  {
	position: relative;
	display: inline-block;
	margin: 15px 25px;
	outline: none;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 18px;
	padding: 12px 10px 3px;
	color: #6a7989;
	font-family: 'PrestigeEliteStd-Bd';
	text-shadow: none;
	font-weight: 700;
	background: transparent;
  	border: 0px;
}

.butt-submit:hover{
	color: #484848
}

.butt-submit::before,
.butt-submit::after {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 2px;
	background: #B9C1CA;
	content: '';
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
	transition: transform 0.3s;
	-webkit-transform: scale(0.85);
	-moz-transform: scale(0.85);
	transform: scale(0.85);
}

.butt-submit::after {
	opacity: 0;
	-webkit-transition: top 0.3s, opacity 0.3s, -webkit-transform 0.3s;
	-moz-transition: top 0.3s, opacity 0.3s, -moz-transform 0.3s;
	transition: top 0.3s, opacity 0.3s, transform 0.3s;
}

.butt-submit:hover::before,
.butt-submit:hover::after,
.butt-submit:focus::before,
.butt-submit:focus::after {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
	background: #484848;
	color:  #484848;
	height: 3px;
}

.butt-submit:hover::after,
.butt-submit:focus::after {
	top: 0%;
	opacity: 1;
	background: #484848;
	height: 3px;
}


.copy{
	width: 100%;
	margin-top: 40px;
	font-family: 'PrestigeEliteStd-Bd';
	font-size: 12px
}
