html {
	font-size: 16px;
}

body {
	margin: 0;
	padding: 0;
	font-family: "circular-pro";
	color: white;
	overflow-x: hidden;
}

.font-ca {
	font-family: "corporate-a";
}

.font-cp {
	font-family: "circular-pro";
}

body.disabled {
	overflow: hidden;
}

a {
	cursor: pointer;
}

* {
	box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

.od {
	display: block;
}

.om {
	display: none;
}

.btn {
    border-radius: 50px;
    padding: 14px 40px;
    text-transform: uppercase;
    color: white;
    text-decoration: none;
    font-family: "circular-pro";
    display: inline-block;
    cursor: pointer;
    font-weight: bold;
    letter-spacing: 5px;
    overflow: hidden;
    position: relative;
    border: 2px solid white;
    font-size: 11px;
    text-transform: uppercase;
	transition: background .4s;
}

.btn:hover {
	background: rgba(255,255,255,0.4);
}

.clear, .clearfix {
	clear: both;
}

.header {
	width: 100%;
	position: fixed;
	top: 0px;
	left: 0;
	z-index: 9999;
	padding: 25px 0;
	height: 70px;
	transform: translateY(-100%);
	transition: transform .5s, background .5s, height .5s;
	background: transparent;
}

.header.active {
	/*background: rgba(0,0,0,0.8);*/
}

.header.inuse {
	background: rgba(0,0,0,0.8);
}

.header.visible {
	transform: translateY(0);
}

.header-logo {
	display: block;
	float: left;
	width: 15%;
}

.leemon {
	display: block;
	height: 18px;
}

.menu-item {
	font-size: 12px;
	color: #fff;
	text-transform: uppercase;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	display: inline-block;
	padding: 0px 20px;
	transition: none;
}

.wrapper {
	position: relative;
	width: 100%;
}

.inner {
	max-width: 1170px;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}

.slide {
	position: relative;
	width: 100%;
	padding: 100px 0;
}

.slide--color-white {
	color: white;
}

.slide--nobottom {
	padding-bottom: 0;
}

.slide-background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

h2 {
	font-weight: bold;
	font-size: 60px;
	text-align: center;
	color: white;
	line-height: 60px;
}

.h2--gray {
	color: #6d6f71;
}

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

h3 {
	font-size: 30px;
    font-weight: bold;
}

h3.light {
	text-align: center;
	font-weight: normal;
}

.subtitle {
	font-size: 18px;
	color: inherit;
	text-align: center;
	padding-top: 40px;
	max-width: 600px;
	margin: 0 auto;
}

.subtitle--left {
	text-align: left;
	margin: 0;
}

.subtitle--nopd {
	padding-top: 0;
}

.pretitle {
	text-transform: uppercase;
	font-family: "circular-pro";
	font-weight: bold;
	font-size: 12px;
	text-align: center;
	color: inherit;
	padding-bottom: 50px;
    letter-spacing: 5px;
}

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

.button {
	display: inline-block;
    border-radius: 100px;
    background: #d41f61;
    padding: 16px 60px;
    text-transform: uppercase;
	font-family: "circular-pro";
    font-size: 12px;
    font-weight: 700;
	cursor: pointer;
}

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

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

.main-menu {
	opacity: 1;
	transition: opacity .5s;
    text-align: center;
    float: left;
    width: 70%;
}

.menu-item {
	opacity: 0.5;
	transition: opacity .5s;
}

.menu-item:hover {
	opacity: 1;
}

.mobile-menu {
	display: none;
}

.main-menu.active {
	opacity: 1;
}

.langs {
	float: left;
	width: 15%;
	text-align: right;
}

.langs a {
	font-size: 12px;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    padding-left: 5px;
    transition: none;
	opacity: 0.5;
	transition: opacity .5s;
	border-left: 1.5px solid rgba(255,255,255,0.5);
}

.langs a:first-child {
	border-left: 0;
}

.langs a.active {
	opacity: 1;
}

.menu-langs {
	display: none;
}

/* slide - #home */

.movie-player {
	position: fixed;
	top: 0; left: 0;
	height: 100%; width: 100%;
	background: black;
	opacity: 0;
	visibility: hidden;
	transition: opacity .5s 0s, visibility 0s .5s;
	z-index: 99999;
}

.movie-player.active {
	opacity: 1;
	visibility: visible;
	transition: opacity .5s 0s, visibility 0s 0s;
}

.movie-player-x {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 9;
	width: 70px;
	height: 70px;
	background: url(../images/close.svg) no-repeat center center;
}

.video-player {
	min-width: 100%;
    min-height: 100%;
}

.slide--home {
	padding: 200px 0;
	transition: height .5s;
}

.home-play {
	padding: 60px 0;
}

.play-btn {
	display: inline-block;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	border: 2px solid white;
	background: url(../images/play.svg) no-repeat 60% center;
	background-size: 50% 50%;
	transition: box-shadow .5s;
}

.play-btn:hover {
	box-shadow: 0px 0px 10px white;
}

.home-menu {
	opacity: 1;
	transition: opacity .5s;
}

.home-menu.inactive {
	opacity: 0;
}

.slide-background--home {
	background: url(../images/home.jpg) no-repeat center center;
}

/* slide - #our-attitude */

.slide-background--attitude {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#d800dd+0,78027d+100 */
	background: #d800dd; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #d800dd 0%, #78027d 100%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #d800dd 0%,#78027d 100%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #d800dd 0%,#78027d 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.main-boxes-wrapper {
	padding-top: 50px;
}

.main-boxes-wrapper .bx-pager {
	text-align: center;
}

.main-boxes-wrapper .bx-pager-item {
	display: inline-block;
}

.main-boxes-wrapper .bx-pager-link {
	display: inline-block;
	width: 5px;
	height: 5px;
	background: white;
	margin: 10px;
	color: transparent;
	border-radius: 50%;
	opacity: 0.5;
}

.main-boxes-wrapper .bx-pager-link.active {
	opacity: 1;
	transform: scale(1.5);
}

.main-boxes {
}

.main-box {
	width: 50%;
	padding: 40px 20px;
	float: left;
}

.main-box-title {
	font-size: 36px;
	color: #fff;
	font-weight: bold;
}

.main-box-title span {
	display: inline-block;
	width: 80px;
	font-size: 48px;
	opacity: 0.5;
}

.main-box-content {
	padding-left: 80px;
	padding-top: 20px;
	opacity: 0.9;
}

.object-eggs {
    display: block;
    margin-left: 100px;
    max-width: 100%;
}

/* slide - #services */

.slide-background--services {
	background: #12134c; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #12134c 0%, #04041c 100%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #12134c 0%,#04041c 100%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #12134c 0%,#04041c 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.services-line {
    height: 1px;
    background: white;
	opacity: 0.5;
	margin: 40px 0;
}

.service-boxes {
	padding-top: 50px;
}

.service-box {
	width: calc(100% / 3);
	padding: 0 10px;
	float: left;
}

.service-box-title {
	font-size: 30px;
	color: #fff;
	font-weight: bold;
}

.service-box-content {
	padding-top: 20px;
	font-size: 14px;
	opacity: 0.7;
}

.service-box-inner {
	height: 60px;
}

.service-box-inner--auto {
	height: auto;
}

.service-box-items {
	padding-top: 20px;
}

.service-box-items span {
	padding-left: 20px;
	display: inline-block;
}

.services-slider-wrapper .bx-pager {
	padding-top: 30px;
	text-align: center;
}

.services-slider-wrapper .bx-pager-item {
	display: inline-block;
}

.services-slider-wrapper .bx-pager-link {
	display: inline-block;
	width: 5px;
	height: 5px;
	background: white;
	margin: 10px;
	color: transparent;
	border-radius: 50%;
	opacity: 0.5;
}

.services-slider-wrapper .bx-pager-link.active {
	opacity: 1;
	transform: scale(1.5);
}

/* slide - #casestudies*/

.cs-header {
	width: 1100px;
	height: 632px;
	background: url(../images/fish.png) no-repeat;
	padding-top: 340px;
	margin: 0 auto;
}

.casestudies {
	position: relative;
    margin-top: -70px;
}

.casestudy {
	width: 50%;
	height: 280px;
	float: left;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: relative;
}

.casestudy--sf {
	display: none;
}

.casestudy-buttons {
	padding-top: 100px;
}

.casestudy-over {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(0,0,0,0.6);
	transition: opacity .5s;
}

.casestudy-content {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	width: 100%;
	font-size: 30px;
	font-weight: bold;
	transition: opacity .5s, transform .5s;
}

.casestudy-btn {
	position: absolute;
	top: 50%;
	width: 100%;
	opacity: 0;
	transform: translateY(0%);
	text-align: center;
	transition: opacity .5s, transform .5s;
}

.casestudy-content-brand {
    text-transform: uppercase;
    font-size: 14px;
    padding-bottom: 10px;
    letter-spacing: 5px;
	opacity: 0.7;
}

.casestudy:hover .casestudy-content {
	opacity: 0;
	transform: translateY(-100%);
}

.casestudy:hover .casestudy-btn {
	opacity: 1;
	transform: translateY(-50%);
}

/* slide - #clients*/

.slide--clients {
	color: #58595b;
}

.clients-image {
	display: block;
	max-width: 100%;
	margin-top: 50px;
}

.clients-slider-wrapper {
	display: none;
}

/* slide - #awards*/

.slide-background--awards {
	background: url(../images/slide-awards.jpg) no-repeat center bottom;
}

.awards {
	padding-top: 100px;
}

.line-label {
	position: relative;
	padding: 40px 0;
}

.line-label-line {
	display: block;
	width: 100%;
	height: 1px;
	background: #fff;
	width: 100%;
	opacity: 0.5;
}

.line-label-title {
	font-family: "circular-pro";
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
    display: block;
    position: relative;
	padding-bottom: 15px;
}

.line-label-year {
    width: 260px;
    height: 80px;
    overflow: hidden;
    font-size: 100px;
    position: absolute;
    right: 0;
    bottom: 40px;
    text-align: right;
	opacity: 0.4;
	font-weight: bold;
}

.weare-prices {
	padding-bottom: 100px;
}

.weare-price {
	padding-right: 60px;
	width: 33%;
	float: left;
	font-size: 20px;
}

.weare-price-title {
	font-weight: bold;
}

.weare-price-subtitle {
	font-size: 18px;
}

.awards-members {
	padding: 50px 0 80px 0;
	width: 700px;
}

.weare-members {
	max-width: 100%;
}

/* slide - blog */

/* slide - contact */

.slide-background--contact {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#d40d60+0,fce65c+100 */
	background: #d40d60; /* Old browsers */
	background: -moz-linear-gradient(120deg, #d40d60 0%, #fce65c 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(120deg, #d40d60 0%,#fce65c 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(120deg, #d40d60 0%,#fce65c 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.bg-map {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/mapa_gradient.svg) no-repeat center top;
}

.contact-cosmo {
	position: absolute;
	bottom: 0;
	left: 50%;
}

#map-canvas {
	width: 100%;
	height: 400px;
}

.world-wrapper {
	padding: 50px 0;
	background: black;
}

.world {
    display: block;
    margin: 0 auto;
}

.contact-info-inner {
	padding: 0 50px;
}

.contact-boxes {
	padding-top: 50px;
	text-align: left;
}

.contact-box {
	padding-bottom: 30px;
}

.contact-title {
	font-size: 30px;
	font-family: "circular-pro";
	font-weight: bold;
	padding-bottom: 30px;
}

.contact-item-title {
	font-family: "circular-pro";
	font-weight: bold;
	padding-bottom: 12px;
	cursor: pointer;
}

.contact-item-title.rea {
	text-decoration: underline;
}

.contact-item-content {
	display: none;
	padding-bottom: 12px;
}

.contact-line {
	width: 100%;
	height: 1px;
	background: #4b4b4b;
	margin: 15px 0;
}

.contact-collapse {
	display: none;
}

.contact-collapsed {
	display: block;
}

.copyright {
	text-align: center;
	color: #646464;
	font-size: 12px;
	padding-top: 10px;
	padding-bottom: 10px;
	background: black;
}

.copyright .inner {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}

.footer-social {
    text-align: center;
}

.footer-social-icon {
	width: 15px;
    height: 15px;
    margin: 0 10px;
    display: inline-block;
    vertical-align: middle;
}

.footer-social-icon img {
	display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.footer-eu img {
	display: inline-block;
	margin: 0 5px;
}

.footer-msk img {
	height: 60px;
}

/* slide - career */

.slide-background--career {
	background: black;
}

.career-content {
	position: relative;
	overflow: hidden;
	padding-top: 100px;
	padding-bottom: 100px;
}

.career-boxes {
	transition: transform .5s, opacity .5s, visibility 0s linear 0s;
	position: relative;
	opacity: 1;
	visibility: visible;
}

.career-boxes.out {
	transition: transform .5s, opacity .5s, visibility 0s linear .5s;
	opacity: 0;
	transform: translateX(-100px);
	visibility: hidden;
}

.career-boxes.hide {
	position: absolute;
	top: 0;
	left: 0;
}

.career-inner {
	width: 570px;
	margin: 0 auto;
	position: relative;
}

.career-detail {
	transition: transform .5s, opacity .5s, visibility 0s linear .5s;
	top: 0; left: 0%;
	position: absolute;
	opacity: 0;
	width: 100%;
	transform: translateX(100px);
	visibility: hidden;
}

.career-detail.show {
	position: relative;
}

.career-detail.in {
	visibility: visible;
	transition: transform .5s, opacity .5s, visibility 0s linear 0s;
	transform: translateX(0);
	opacity: 1;
}

.career-detail ul, .career-detail p {
	opacity: 0.9;
}

.career-detail-content {
}

.career-back {
    position: absolute;
    top: 7px;
    left: -30px;
    width: 22px;
	cursor: pointer;
}

.career-line {
	width: 100%;
	height: 1px;
	background: #fff;
	margin: 20px 0;
}

.career-box {
	width: 50%;
	float: left;
}

.career-box-title {
	font-size: 48px;
	font-family: "circular-pro";
	font-weight: bold;
}

.career-item {
	cursor: pointer;
    width: 80%;
    padding: 30px 0;
    border-top: 1px solid #808080;
	position: relative;
}

.career-item-title {
	float: left;
}

.career-item-plus {
	color: #fcc91d;
	width: 22px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

/* layout */

.l-col {
	float: left;
	width: 100%;
}

.l-col--25 {
	width: 25%;
}

.l-col--50 {
	width: 50%;
}

.l-col--66 {
	width: calc(100% * 2/3);
}

.l-col--33 {
	width: calc(100% * 1/3);
}
