/*
|--------------------------------------------------------------------------
| Fonts
|--------------------------------------------------------------------------
*/

@import url('https://fonts.googleapis.com/css?family=Lato&display=swap');
@import url('https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap');

/*
|--------------------------------------------------------------------------
| Commons
|--------------------------------------------------------------------------
*/

body {
	background: #FFF;
	font-family: Georgia, serif;
	color: #333;
	font-size: 17px;
	line-height: 27px;
	-webkit-font-smoothing: antialiased;
}
.container {
	margin: 0 auto;
	max-width: 1170px;
	padding: 0px;
}
.left {
	float: left;
}
.right {
	float: right;
}
.clear {
	clear: both;
}
.center {
	text-align: center;
}
h1 {
	margin: 0px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 45px;
	line-height: 55px;
	font-weight: 600;
}
h2 {
	margin: 0px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 30px;
	line-height: 40px;
	font-weight: 600;
}
h3 {
	font-size: 22px;
	line-height: 32px;
	font-weight: 400;
}
h4 {
	font-family: 'Lato', sans-serif;
	font-size: 22px;
	line-height: 32px;
	font-weight: 400;
}


/*
|--------------------------------------------------------------------------
| Header
|--------------------------------------------------------------------------
*/

header {
	width: 100%;
}
.navbar {
	background: none;
	margin: 0px;
	padding: 0px;
	border: none;
	border-radius: 0px;
}
.logo {
	float: left;
	margin: 30px 5px;
	transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}
.logo img {
	height: 55px;
}
header nav {
	float: right;
	margin-top: 45px;
	font-family: 'Lato', sans-serif;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}
header nav ul {
	padding: 0px;
}
header nav ul li {
	display: block;
	float: left;
	margin-left: 0px;
}
.header-social {
	float: left;
	margin: 43px 0px 0px 10px;
	transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}
.navbar-resize {
	position: fixed;
	background: #000;
	width: 100%;
	z-index: 1000;
}
.navbar-resize .logo {
	margin: 10px 0px 0px 5px;
}
.navbar-resize .logo img {
	height: 30px;
}
.navbar-resize nav {
	margin-top: 12px;
}
.navbar-resize .header-social {
	margin: 10px 0px 0px 30px;
}
.navbar-fixed-top .navbar-collapse {
	max-height: none;
}
.navbar-toggle {
	margin-top: 17px;
	margin-right: 5px;
	padding: 5px;
	border-radius: 0px;
	border: none;
}
.navbar-default .navbar-toggle {
	background: none;
}
.navbar-default .navbar-toggle:hover {
	background: none;
}
.icon-bar {
	background: #CCC!important;
}
.scroll-down {
	position: absolute;
	background: url('../images/arrow-down.png') center center no-repeat;
	background-size: 36px 17px;
	bottom: 0;
	width: 100%;
	height: 140px;
	cursor: pointer;
	z-index: 100;
	-webkit-animation: arrow-bounce 1s infinite;
	animation: arrow-bounce 1s infinite;
}
@keyframes arrow-bounce {
	0% {
		transform: translateY(0);
		animation-timing-function: cubic-bezier(.55, .085, .68, .53);
	}
	50% {
		transform: translateY(14px);
		animation-timing-function: cubic-bezier(.25, .46, .45, .94);
	}
	100% {
		transform: translateY(0);
		animation-timing-function: cubic-bezier(.55, .085, .68, .53);
	}
}


/*
|--------------------------------------------------------------------------
| Hero
|--------------------------------------------------------------------------
*/

.flexslider, .flex-viewport {
	background: #000;
	width: 100%;
	height: 300px;
}
.home .flexslider, .home .flex-viewport {
	background: #000;
	width: 100%;
	height: 100vh;
}
.flexslider .slides li {
	position: relative;
	background-position: center center;
	width: 100%;
	height: 100%!important;
	-webkit-background-size: cover!important;
	-moz-background-size: cover!important;
	-o-background-size: cover!important;
	background-size: cover!important;
}
.flexslider .slides li:after {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, 0.6);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.flex-caption {
	position: relative;
	display: table;
	width: 100%;
	z-index: 100;
}
.flex-text {
	display: table-cell;
	vertical-align: middle;
	height: 100vh;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 45px;
	line-height: 55px;
	font-weight: 400;
	color: #FFF;
	text-align: center;
}
.flex-control-nav {
	bottom: 20px!important;
	z-index: 100!important;
}
@media (min-width: 992px) and (max-width: 1399px) {

	.flex-text {
		font-size: 35px;
		line-height: 45px;
	}

}
@media (min-width: 768px) and (max-width: 991px) {

	.flexslider, .flex-viewport {
		height: 400px;
	}
	.flex-text {
		height: 400px;
	}

}
@media (max-width: 767px) {

	.flexslider, .flex-viewport {
		height: 400px;
	}
	.flex-text {
		height: 400px;
	}

}


/*
|--------------------------------------------------------------------------
| Pages
|--------------------------------------------------------------------------
*/

section {
	width: 100%;
	padding: 90px 0px;
}
section ul {
	padding-left: 20px;
	list-style: circle;
}
.grey-bg {
	background: #EAEAEA;
}
.grey-font {
	color: #AAAAAA;
}
.section-title {
	margin-bottom: 20px;
}
.subtitle {
	margin-bottom: 20px;
	color: #777;
}
.subsection-title {
	margin: 60px 0px 15px 0px;
	color: #777;
}
.home-square {
	position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.home-square-content {
    width: 100%;
    height: 100%;
    filter: grayscale(100%);
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	filter: gray;
    -webkit-transition: transform 0.3s, filter 0.3s;
    -moz-transition: transform 0.3s, filter 0.3s;
    -o-transition: transform 0.3s, filter 0.3s;
    transition: transform 0.3s, filter 0.3s;
}
.home-square:hover .home-square-content, .home-square:focus .home-square-content {
    -ms-transform: scale(1.03);
    -moz-transform: scale(1.03);
    -webkit-transform: scale(1.03);
    -o-transform: scale(1.03);
    transform: scale(1.03);
    filter: grayscale(0%);
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
}
.home-rental {
	background: url('../images/home-rental.jpg?v=1.0') center center no-repeat;
	background-size: cover;
}
.home-led-volume {
	background: url('../images/home-led-volume.jpg?v=1.0') center center no-repeat;
	background-size: cover;
}
.home-studios {
	background: url('../images/home-studios.jpg') center center no-repeat;
	background-size: cover;
}
.home-sfx {
	background: url('../images/home-sfx.jpg') center center no-repeat;
	background-size: cover;
}
.home-service {
	background: url('../images/home-service.jpg') center center no-repeat;
	background-size: cover;
}
.home-robot-events {
	background: url('../images/home-robot-events.jpg') center center no-repeat;
	background-size: cover;
}
.home-square:hover .home-square-content:before, .home-square:focus .home-square-content:before {
    display: block;
}
.home-square:hover a, .home-square:focus a {
    display: block;
}
.home-square-content-div {
    display: block;
	padding-bottom: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    -webkit-transition: background 0.5s;
    -moz-transition: background 0.5s;
    -o-transition: background 0.5s;
    transition: background 0.5s;
}
.home-square-content-div:hover {
    background-color: rgba(0, 0, 0, 0.45);
}
.home-square-content h2 {
	position: absolute;
	top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
	height: 10%;
	margin: auto;
	color: #FFF;
    text-align: center;
}
.linked-image, .linked-image-with-visible-name {
	display: block;
	position: relative;
	margin-bottom: 30px;
	cursor: pointer;
}
.linked-thumb {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	max-width: 100%;
	height: 300px;
	filter: grayscale(100%);
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	filter: gray;
	transition: filter 0.3s linear;
	-moz-transition: filter 0.3s linear;
	-webkit-transition: filter 0.3s linear;
}
.linked-thumb.small-thumb {
	height: 135px;
}
.linked-thumb.large-thumb {
	height: 450px;
}
.linked-image:hover .linked-thumb, .linked-image-with-visible-name:hover .linked-thumb, .linked-image-with-visible-name-thumb-hover {
	filter: grayscale(0%);
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
}
.linked-image-name {
	display: none;
	position: absolute;
	top: 50%;
	bottom: 0;
	left: 0;
	right: 0;
	margin-top: -65px;
	color: #FFF;
	text-align: center;
	z-index: 100;
}
.linked-image-name.linked-image-name-visible {
	display: block;
}
.linked-image-name.linked-image-name-hidden {
	display: none;
}
.linked-image-description {
	margin-top: -15px;
	margin-bottom: 30px;
}
.zoom-icon {
	display: none;
	position: absolute;
	background: #000 url('../images/zoom-icon.png') center center no-repeat;
	background-size: 40px 40px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	opacity: 0.60;
	filter: alpha(opacity=60);
}
.zoom-icon.zoom-icon-with-name {
	background-position: center 60%;
}
.zoom-icon.zoom-icon-visible {
	display: block;
}
.zoom-icon.zoom-icon-hidden {
	display: none;
}
.section-detail {
	display: none;
	padding: 0px 0px 30px 0px;
}
.gallery-element {
	margin-top: 10px;
}
.close-details {
	position: absolute;
	background: url('../images/close-icon.png') center center no-repeat;
	background-size: 40px 40px;
	top: 0px;
	right: 15px;
	width: 40px;
	height: 40px;
	z-index: 100;
	cursor: pointer;
}
.vimeo-video {
	position: relative;
	background: #000;
	height: 0;
	margin: 50px 0px 30px 0px;
	padding-bottom: 56.25%;
	overflow: hidden;
}
.vimeo-video.two-thirtyfive-video {
	padding-bottom: 41%;
}
.vimeo-video.thirtyfive-two-video {
	padding-bottom: 178%;
}
.vimeo-video.square-video {
	padding-bottom: 100%;
}
.vimeo-video iframe, .vimeo-video object, .vimeo-video embed {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.team-element-bg-left {
	background: linear-gradient(90deg, #EAEAEA 60%, #FFFF 60%);
	margin-top: 40px;
}
.team-element-bg-right {
	background: linear-gradient(90deg, #FFF 40%, #EAEAEA 40%);
	margin-top: 40px;
}
.team-element-video {
	padding: 43px 20px 30px 20px;
}
.team-element-video .vimeo-video {
	margin: 0px;
}
.team-element-description {
	padding: 0px 20px 25px 20px;
}
.rental-cover {
	margin: 30px 0px;
	height: 524px;
}
.rental-buttons .btn-default {
	margin: 10px 0px;
}
#service .service-element:nth-child(n+9) {
    display: none;
}
/* #sfx .service-element:nth-child(n+9) {
    display: none;
} */
.show-less-services {
	display: none;
}
.show-less-tabletops {
	display: none;
}
.led-volume-thumb {
	background: url('../images/slide-led-volume.jpg?v=1.0') center center no-repeat;
	background-size: cover;
	margin: 30px 0px;
	max-width: 100%;
	height: 450px;
}
.robot-events-thumb {
	background: url('../images/slide-robot-events.jpg') center center no-repeat;
	background-size: cover;
	margin: 30px 0px;
	max-width: 100%;
	height: 450px;
}
.robot-events-element-bg-left {
	background: #FFF;
	margin-top: 40px;
}
.robot-events-element-bg-right {
	background: #FFF;
	margin-top: 40px;
}
.robot-events-element-video {
	/* padding: 40px 30px 40px 30px; */
	padding: 20px;
}
.robot-events-element-video .vimeo-video {
	margin: 0px;
}
.robot-events-element-description {
	padding: 70px 15px 0px 15px;
}
#map-canvas {
	margin: 40px 0px;
	width: 100%;
	height: 450px;
}
.body-fancy {
	padding: 0px;
}
.body-fancy .container {
	width: auto;
	padding: 0px;
	margin: 0px;
}
.body-fancy .fancy-studio {
	padding: 15px;
}
.body-fancy .vimeo-video {
	margin: 0px;
}


/*
|--------------------------------------------------------------------------
| Footer
|--------------------------------------------------------------------------
*/

footer {
	width: 100%;
	font-size: 15px;
	color: #333;
}
.main-footer {
	background: none;
	padding: 40px 0px 0px 0px;
}
.social-icon {
	margin: 0px 4px;
	height: 26px;
	opacity: 1.00;
	filter: alpha(opacity=100);
	transition: opacity 0.3s linear;
	-moz-transition: opacity 0.3s linear;
	-webkit-transition: opacity 0.3s linear;
}
.social-icon:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
}
.copy-footer {
	background: none;
	padding: 50px 0px;
}
.whatsapp-icon {
	position: fixed;
	background: url('../images/whatsapp-icon.png') center center no-repeat;
	background-size: 50px 50px;
	width: 50px;
	height: 50px;
	right: 15px;
	bottom: 15px;
	z-index: 2000;
}


/*
|--------------------------------------------------------------------------
| Forms
|--------------------------------------------------------------------------
*/

label {
	font-weight: 400;
}
input[type="text"], input[type="email"] {
	height: auto!important;
	padding: 12px 16px!important;
	border: 1px solid #CCC!important;
}
input[type="checkbox"] {
	margin-top: 16px;
	margin-right: 8px;
	cursor: pointer;
}
textarea {
	padding: 16px!important;
	border: 1px solid #CCC!important;
	resize: vertical;
}
input:focus, textarea:focus {
	outline: none!important;
	border: 1px solid #CCC!important;
	box-shadow: 0 0 4px #CCC!important;
}
.btn-default, .btn-default:disabled {
	background: #000;
	padding: 12px 20px;
	height: auto!important;
	font-size: 16px;
	font-weight: 400;
	color: #FFF!important;
	border: 1px solid #000;
	border-radius: 0px;
	transition: color 0.3s linear, background 0.3s linear;
	-moz-transition: color 0.3s linear, background 0.3s linear;
	-webkit-transition: color 0.3s linear, background 0.3s linear;
}
.btn-default:hover, .btn-default:focus {
	background: #FFF;
	color: #000!important;
	border: 1px solid #000;
	outline: 0!important;
}
.btn-default.btn-lg, .btn-default.btn-lg:disabled {
	background: #CCC;
	padding: 12px 18px;
	font-size: 18px;
	font-weight: 400;
	color: #FFF!important;
	border: 1px solid #CCC;
	border-radius: 50px;
	transition: color 0.3s linear, background 0.3s linear;
    -moz-transition: color 0.3s linear, background 0.3s linear;
    -webkit-transition: color 0.3s linear, background 0.3s linear;
}
.btn-default.btn-lg:hover, .btn-default.btn-lg:focus {
	background: #DDD;
	color: #FFF!important;
	border: 1px solid #CCC;
	outline: 0!important;
}
.form-control::-webkit-input-placeholder {
	color: #b1b1b1;
}
.form-control:-moz-placeholder {
	color: #b1b1b1;
}
.form-control::-moz-placeholder {
	color: #b1b1b1;
}
.form-control:-ms-input-placeholder {
	color: #b1b1b1;
}


/*
|--------------------------------------------------------------------------
| Links
|--------------------------------------------------------------------------
*/

a:link, a:visited, a:active {
	text-decoration: none;
	color: #777;
	transition: color 0.3s linear, background 0.3s linear;
    -moz-transition: color 0.3s linear, background 0.3s linear;
    -webkit-transition: color 0.3s linear, background 0.3s linear;
}
a:hover {
	text-decoration: none;
	color: #333;
}
a.nav-link:link, a.nav-link:visited, a.nav-link:active {
	background: none;
	padding: 20px 12px;
	text-decoration: none;
	color: #FFF;
}
a.nav-link:hover {
	background: none;
	text-decoration: none;
	color: #BBB;
}
a.nav-link-attivo:link, a.nav-link-attivo:visited, a.nav-link-attivo:active {
	background: none;
	padding: 20px 12px;
	text-decoration: none;
	color: #FFF;
}
a.nav-link-attivo:hover {
	background: none;
	text-decoration: none;
	color: #BBB;
}
a.nav-link-lang:link, a.nav-link-lang:visited, a.nav-link-lang:active {
	background: none;
	padding: 20px 2px;
	text-decoration: none;
	color: #FFF;
}
a.nav-link-lang:hover {
	background: none;
	text-decoration: none;
	color: #BBB;
}
a.nav-link-lang:first-of-type {
	padding-left: 10px;
}
a.nav-link-lang:last-of-type {
	padding-right: 10px;
}
a.footer-link:link, a.footer-link:visited, a.footer-link:active {
	text-decoration: none;
	color: #777;
	border-bottom: none;
}
a.footer-link:hover {
	text-decoration: none;
	color: #333;
}


/*
|--------------------------------------------------------------------------
| Responsive: large desktop
|--------------------------------------------------------------------------
*/

@media (min-width: 1500px) and (max-width: 1999px) {

	.team-element-bg-left {
		background: linear-gradient(90deg, #EAEAEA 63%, #FFFF 63%);
		margin-top: 40px;
	}
	.team-element-bg-right {
		background: linear-gradient(90deg, #FFF 37%, #EAEAEA 37%);
		margin-top: 40px;
	}

}


/*
|--------------------------------------------------------------------------
| Responsive: large desktop
|--------------------------------------------------------------------------
*/

@media (min-width: 1200px) and (max-width: 1499px) {

	.home-square-content h2 {
		font-size: 25px;
		line-height: 35px;
	}
	.team-element-bg-left {
		background: linear-gradient(90deg, #EAEAEA 67%, #FFFF 67%);
		margin-top: 40px;
	}
	.team-element-bg-right {
		background: linear-gradient(90deg, #FFF 33%, #EAEAEA 33%);
		margin-top: 40px;
	}

}


/*
|--------------------------------------------------------------------------
| Responsive: desktop and tablet
|--------------------------------------------------------------------------
*/

@media (min-width: 992px) and (max-width: 1199px) {

	.home-square-content h2 {
		font-size: 17px;
		line-height: 27px;
	}
	.team-element-bg-left {
		background: linear-gradient(90deg, #EAEAEA 68%, #FFFF 68%);
		margin-top: 40px;
	}
	.team-element-bg-right {
		background: linear-gradient(90deg, #FFF 32%, #EAEAEA 32%);
		margin-top: 40px;
	}

}


/*
|--------------------------------------------------------------------------
| Responsive: tablet portrait
|--------------------------------------------------------------------------
*/

@media (min-width: 768px) and (max-width: 991px) {

	.container {
		padding: 0px 2%;
	}
	.team-element-bg-left {
		background: linear-gradient(90deg, #EAEAEA 65%, #FFFF 65%);
		margin-top: 40px;
	}
	.team-element-bg-right {
		background: linear-gradient(90deg, #FFF 25%, #EAEAEA 25%);
		margin-top: 40px;
	}

}


/*
|--------------------------------------------------------------------------
| Responsive: phone
|--------------------------------------------------------------------------
*/

@media (max-width: 767px) {

	body {
		padding-top: 60px;
	}
	.text-justify {
		text-align: left;
	}
	.container {
		padding: 0px 5%;
	}
	h1 {
		margin: 0px;
		font-size: 30px;
		line-height: 40px;
	}
	h2 {
		margin: 0px;
		font-size: 24px;
		line-height: 34px;
	}
	h3 {
		font-size: 20px;
		line-height: 30px;
	}
	h4 {
		font-size: 18px;
		line-height: 28px;
	}
	.navbar {
		background: #000;
	}
	.navbar-header {
		width: 100%;
		margin: 0px!important;
	}
	.logo {
		margin: 10px 0px;
	}
	.logo img {
		height: 40px;
	}
	.header-social {
		display: block;
		float: none;
		text-align: center;
		margin: 15px 0px;
	}
	header nav {
		float: none;
		margin: 15px 0px;
	}
	header nav ul li {
		display: block;
		float: none;
		padding: 5px 0px;
		margin: 0px;
		text-align: center;
	}
	section {
		padding: 60px 0px;
	}
	.section-title {
		margin-bottom: 25px;
	}
	.subtitle {
		margin-bottom: 10px;
	}
	.subsection-title {
		margin: 40px 0px 15px 0px;
	}
	.home-square {
		margin-bottom: 20px;
	}
	.linked-image {
		margin-bottom: 20px;
	}
	.linked-image-name {
		display: block;
		margin-top: -75px;
	}
	.linked-image-name.linked-image-name-hidden {
		display: block;
	}
	.zoom-icon {
		display: block;
	}
	.zoom-icon.zoom-icon-with-name {
		background-position: center 70%;
	}
	.team-element-bg-left {
		background: #EAEAEA;
		margin-top: 40px;
	}
	.team-element-bg-right {
		background: #EAEAEA;
		margin-top: 40px;
	}
	.team-element-video {
		margin-top: 20px;
		padding: 20px;
	}
	.team-element-description {
		padding-top: 20px;
	}
	.rental-buttons {
		text-align: center;
	}
	.rental-buttons .text-right {
		margin-bottom: 20px;
		text-align: center;
	}
	.show-more-service {
		margin-top: 10px;
	}
	.show-more-tabletops {
		margin-top: 10px;
	}
	.led-volume-thumb {
		background: url('../images/home-led-volume.jpg?v=1.0') center center no-repeat;
		background-size: cover;
		margin: 0px;
		max-width: 100%;
		height: 350px;
	}
	.robot-events-thumb {
		background: url('../images/home-robot-events.jpg') center center no-repeat;
		background-size: cover;
		margin: 0px;
		max-width: 100%;
		height: 350px;
	}
	#map-canvas {
		height: 350px;
	}
	.copy-footer {
		text-align: center;
	}
	.copy-footer .text-right {
		text-align: center;
	}
	a.nav-link:link, a.nav-link:visited, a.nav-link:active {
		background: none;
		padding: 0px;
	}
	a.nav-link-attivo:link, a.nav-link-attivo:visited, a.nav-link-attivo:active {
		background: none;
		padding: 0px;
	}

}

@media (max-width: 424px) {

	.linked-thumb {
		height: 230px;
	}
	.linked-thumb.small-thumb {
		height: 230px;
	}
	.linked-thumb.large-thumb {
		height: 230px;
	}

}


/*
|--------------------------------------------------------------------------
| Responsive: collapse sidebar on tablet portait
|--------------------------------------------------------------------------
*/

@media (max-width: 991px) {

	.navbar-header {
		float: none;
	}
	.navbar-toggle {
		display: block;
	}
	.navbar-collapse {
		border-top: 1px solid transparent;
		box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
	}
	.navbar-collapse.collapse {
		display: none!important;
	}
	.navbar-nav {
		float: none!important;
		margin: 7.5px -15px;
	}
	.navbar-nav>li {
		float: none;
	}
	.navbar-nav>li>a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.navbar-text {
		float: none;
		margin: 15px 0;
	}
	/* since 3.1.0 */
	.navbar-collapse.collapse.in {
		display: block!important;
	}
	.collapsing {
		overflow: hidden!important;
	}

}
