/* CSS Document */
/* ----------------------- GENERAL ------------------------ */
@font-face {
  font-family: Merriweather_Light_italic;
  src: url('../fonts/Merriweather-LightItalic.otf');
  src:  url('../fonts/Merriweather-LightItalic.ttf');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: Merriweather-italic;
  src: url('../fonts/Merriweather-Italic.otf');
  src:  url('../fonts/Merriweather-Italic.ttf');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: Merriweather-Bold-italic;
  src: url('../fonts/Merriweather-BoldItalic.otf');
  src:  url('../fonts/Merriweather-BoldItalic.ttf');
  font-weight: 400;
  font-style: normal;
}
/*------------- fuentes ------------*/

body{
	background-color: #000;
	margin: 0;
	padding: 0;
	color: #b2b4b7;
	font-family: "Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter";
	font-size: 0.7vw;
	line-height: 1.4vw;
}

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 1);
    z-index: 1000;
}

#spinner {
    position: relative;
    width: 70px;
    height: 70px;
    border: 6px solid transparent;
    border-top: 6px solid #b2b4b7;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    display: flex;
    align-items: center;
    justify-content: center;
}

#percentage {
    position: absolute;
    font-size: 1rem;
    color: #b2b4b7;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

img, div, section, article, header, footer{
	margin: 0;
	border: none 0px;
	padding: 0;
}

header, footer, section{
	position: fixed;
}

header{
	top: 2vw;
    left: 5vw;
    width: 90%;
    height: 5vw;
    background-image: url(../images/puntos.jpg);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100% auto;
    z-index: 5;
    overflow: hidden;
}

header .logo{
	float: left;
    width: 50%;
    height: auto;
}

header a{
	color: #b2b4b7;
	text-decoration: none;
}

header .logo img{
	height: 3.5vw;
    width: auto;
    margin: 0 1vw 0 0;
    float: left;
    position: static;
}

.subtitulo{
	float: left;
    /* width: auto; */
    /* height: 2vw; */
    position: static;
    padding-top: 2.1vw;
    color: #b2b4b7;
    font-size: 0.6vw;
}


header span.activo{
	color:#fff;
	
}
nav{
	float: right;
    width: 50%;
    text-align: right;
	font-size: 0.85vw;
	font-weight: 800;
	padding-top: 2.1vw;
}

nav a, nav span{
	margin-left: 3vw;
	transition: 0.3s;
}

nav a:hover{
	color: #fff;
}

nav a::before, nav span::before{
	content:">>";
	margin-right: 0.5vw;
	transition: 0.3s ease-in-out;
	font-weight: normal;
	
}

nav a:hover::before{
	margin-right: 0.2vw;	
	margin-left: 0.3vw;	
}

section{
	width: 100%;
    height: 35vw;
    top: calc(55% - 17.5vw);
    overflow: hidden;
    z-index: 2;
}
footer{
	bottom: 0vw;
    left: 5vw;
    width: 90%;
    height: 2vw;
    background-image: url(../images/puntos.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;
    z-index: 5;
    overflow: hidden;
}

.flecha{
	width: 3vw;
    height: auto;
    position: absolute;
    top: calc(50% - 3vw);
    z-index: 9;
    cursor: pointer;
	transition: 0.5s ease-in-out;
	filter: brightness(200%);
}

.izq{
	left: 4vw;
	padding-right: 0vw;
}
.dch{
	right: 4vw;
	padding-left: 0vw;
}

.izq:hover{
	left: 3vw;
	padding-right: 1vw;
	filter: brightness(200%);
}
.dch:hover{
	right: 3vw;
	padding-left: 1vw;
	filter: brightness(200%);
}

.proyecto{
	width: 90vw;
    height: 35vw;
    overflow: hidden;
    position: absolute;
    top: 0vw;
    left: 5vw;
    z-index: 2;
    background-image: url(../images/trama.jpg);
    background-size: 100% auto;
	cursor: pointer;
}

.contenedorlinea{
	position: absolute;
    bottom: 0vw;
    height: 2px;
    background-color: transparent;
    left: 5vw;
    z-index: 45000;
    width: 90vw;
	overflow: hidden;
}

.lineaplay{
	position: absolute;
    bottom: 0vw;
    height: 2px;
    background-color: #fff;
    left: 0vw;
    z-index: 45;
    width: 0;
}

.titular{
	position: absolute;
    top: 0vw;
    left: 0vw;
  /*  transform: translate(-50%, -50%);*/
    color: #fff;
    font-size: 3vw;
    text-align: center;
    letter-spacing: 0.1vw;
	font-family: 'Merriweather_Light_italic';
	z-index: 10;
	display: flex;
    justify-content: center; /* Centra horizontalmente */
    align-items: center; /* Centra verticalmente */
	background-color: rgba(0,0,0,0.3);
	width: 90vw;
	height: 35vw;
	transition: 0.5s;
}

.titular strong{
	font-family: "Merriweather-Bold-italic";
	font-weight: normal;
}




.cliente{	
    position: absolute;
    bottom: 0vw;
    width: 100%;
    text-align: center;
    padding-bottom: 1vw;
    font-size: 0.7vw;
    letter-spacing: 0;
    font-weight: 600;
	color:#b2b4b7;
	z-index: 10;
}


.miloop{
	width: 90vw;
    height: 51vw;
    margin-top: -9vw;
	-webkit-filter: grayscale(100%);
    filter: grayscale(100%);
	opacity: 0.9;
	z-index: 4;
	mix-blend-mode: plus-lighter;
	transition: 0.5s;
}

.proyecto:hover .miloop{
	-webkit-filter: grayscale(0%);
    filter: grayscale(0%);
}

.ocultar{
	display:none;
	z-index: 1;
}

.work, .about, .contact{
	width: 90vw;
    height: 35vw;
    overflow: hidden;
    position: absolute;
    top: 0vw;
    left: 5vw;
    z-index: 15;
    background-image: url(../images/trama.jpg);
    background-size: 100% auto;
    cursor: pointer !important;
}

.about{
	background-image: none;
}

.about strong{
	color:#d9d9d9;
	font-weight: 700;
}

.atras_btn{
	position: absolute;
    right: 3vw;
    top: 3vw;
	font-size: 1vw;
	cursor: pointer;
}

.atras_btn2{
		position: absolute;
		right: 3vw;
		top: 3vw;
		font-size: 1vw;
		z-index: 99;
		cursor: pointer;
	}

.about .atras_btn2{
	position: absolute;
    right: 0vw;
    top: 0vw;
    font-size: 1vw;
    z-index: 99;
    cursor: pointer;
}

.atras_btn:hover, .atras_btn2:hover{
	color: #fff;
}

.atras_btn::before, .atras_btn2::before{
	content:"<<";
	margin-right: 0.2vw;
	margin-left: 0.3vw;
	transition: 0.3s ease-in-out;
	font-weight: normal;
	
}

.atras_btn:hover::before, .atras_btn2:hover::before{
	margin-right: 0.5vw;	
	margin-left: 0vw;	
}

.videowork{
	width: 51vw;
    height: 29vw;
    position: absolute;
    top: 3vw;
    left: 3vw;
    border-radius: 1vw;
    overflow: hidden;
    background-color: #000;
}

.videowork iframe{
	width: 51.1vw;
    height: 29.2vw;
	margin: 0;
	padding: 0;
}

.textowork{
	position: absolute;
    top: 5vw;
    right: 3vw;
    width: 28vw;
    text-align: justify;
	color: #fff;
	font-size: 0.8vw;
}

.titularwork{
	font-family: 'Merriweather_Light_italic';
	font-weight: normal;
	color: #fff;
	font-size: 1.4vw
}

.titularwork strong{
	font-family: "Merriweather-Bold-italic";
	font-weight: normal;
}


.fotoabout{
	width:45vw;
	height: 35vw;
	position: absolute;
	right: 0vw;
	top: 2vw;
	opacity: 1;
	background-image: url("../images/about.jpg");
	background-size: cover;
	mix-blend-mode: plus-lighter;

	background-position: center;
}
/*
.fotoabout:hover{
	opacity: 0.9;
}
*/
.textoabout {
    position: absolute;
    top: 4vw;
    left: 4vw;
    width: 37vw;
    text-align: left;
    color: #d9d9d9;
    font-size: 0.8vw;
    line-height: 1.2vw;
	font-weight: 300;
}
/*
.textoabout .atras_btn2{
	position: static;
    text-align: right;
    width: 100%;
    display: block;
}
*/
.about, .contact{
	cursor: default !important;
}


.textocontact{
	position: absolute;
    top: 50%;
    left: 0vw;
    width: 90vw;
    text-align: center;
    color: #fff;
    font-size: 0.8vw;
    transform: translateY(-50%);
	color: #bfbfbf;
}

.textocontact a{
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	opacity: 0.8;
	transition: 0.3s;
}

.textocontact a:hover{
	opacity: 1;
}


@media (orientation:portrait){
	.about .atras_btn2 {
		position: absolute;
		right: 0vw;
		top: 0vw;
		font-size: 4vw;
		z-index: 99;
		cursor: pointer;
	}
	
	
	body {
		font-size: 3vw;
		line-height: 4vw;
	}
	
	
	header {
		top: 0vw;
		left: 5vw;
		width: 90%;
		height: 35vw;
		background-size: 300% auto;
	}
	
	
	header .logo {
		float: left;
		width: 100%;
		height: auto;
		text-align: center;
	}
	
	header .logo img {
		height: 13vw;
        width: auto;
        margin: 3vw auto;
		float: none;
		position: static;
		display: block;
	}
	.subtitulo {
		float: none;
		/* width: auto; */
		/* height: 2vw; */
		position: static;
		padding-top: 0;
		color: #b2b4b7;
		font-size: 2.5vw;
		width: 100%;
		margin: 0 auto 0;
		text-align: center;
		display: block;
	}
	
	
	nav {
		float: left;
		width: 100%;
		text-align: center;
		font-size: 3vw;
		font-weight: 800;
		padding-top: 5vw;
	}
	footer {
		top: 185vw;
		left: 5vw;
		width: 90%;
		height: 2vw;
		background-size: 300% auto;
		z-index: 5;
		padding-bottom: 10vw;
	}
	nav a, nav span {
		margin-left: 3vw;
		transition: 0.3s;
		display: inline-block;
		margin: 0 0vw;
	}
	
	.navsolo{
		margin: 0vw 22vw !important;
	}
	
	
	section {
		width: 100%;
		height: 140vw;
		top: 40vw;
		overflow: hidden;
		z-index: 2;
	}
	
	
	.proyecto {
		width: 90vw;
		height: 140vw;
		overflow: hidden;
		position: absolute;
		top: 0vw;
		left: 5vw;
		z-index: 2;
		background-image: none;
		background-size: auto 100%;
		background-color: #2F2F2F;
		cursor: pointer;
	}
	.titular {
		font-size: 5vw;
		line-height: 6vw;
		width: 90vw;
		height: 140vw;
	}
	
	.cliente {
		position: absolute;
		bottom: 0vw;
		width: 100%;
		text-align: center;
		padding-bottom: 3vw;
		font-size: 3vw;
		letter-spacing: 0;
		font-weight: 600;
		color: #b2b4b7;
		z-index: 10;
	}
	
	.miloop {
		width: 250vw;
		height: 140vw;
		margin-top: 0vw;
		-webkit-filter: grayscale(0%);
		filter: grayscale(0%);
		opacity: 1;
		z-index: 4;
		mix-blend-mode: normal;
		margin-left: -82vw;
		position: static;
	}
	
	.flecha {
		width: 3vw;
		height: auto;
		position: absolute;
		top: calc(50% - 3vw);
		z-index: 9;
		cursor: pointer;
		transition: 0.5s ease-in-out;
		filter: brightness(200%);
	}
	
	.flecha:hover{
		filter: brightness(200%);
	}
	.dch, .dch:hover {
    right: 1vw;
    padding-left: 0vw;
}
	.izq, .izq:hover {
    left: 1vw;
    padding-right: 0vw;
}
	
	.work, .about, .contact {
		width: 90vw;
		height: 140vw;
		background-size: auto 100%;
	}
	
	.atras_btn {
		position: absolute;
		right: 4vw;
		top: 4vw;
		font-size: 3vw;
	}
	
	.atras_btn2{
		position: absolute;
		right: 4vw;
		top: 4vw;
		font-size: 4vw;
		z-index: 99;
		cursor: pointer;
	}
	
	.textoabout .atras_btn2 {
		position: static;
		text-align: right;
		width: 100%;
		display: block;
		font-size: 4vw;
		margin-top: 2vw;
	}
	
	.videowork {
		width: 83vw;
		height: 47vw;
		position: absolute;
		top: 10vw;
		left: 3vw;
		border-radius: 2vw;
		overflow: hidden;
		background-color: #000;
	}
	
	.videowork iframe {
		width: 83vw;
		height: 47vw;
		margin: 0;
		padding: 0;
	}

	.textowork {
		position: absolute;
		top: 63vw;
		left: 3vw;
		width: 83vw;
		text-align: justify;
		color: #fff;
		font-size: 3vw;
		right: 3vw;
		line-height: 4vw;
	}
	
	.titularwork {
		font-family: 'Merriweather_Light_italic';
		font-weight: normal;
		color: #fff;
		font-size: 5vw;
		margin: 0 0 2vw 0;
	}
	
	.sec_about{
		height: 245vw;
	}
	
	.sec_about .about{
		height: 235vw;
	}
	.fotoabout {
		width: 90vw;
        height: 67vw;
        position: absolute;
        right: 0vw;
        top: 6vw;
        opacity: 1;
        background-image: url(../images/about.jpg);
        background-size: cover;
        mix-blend-mode: normal;
        transition: 0s;
	}
	
	.textoabout {
		position: absolute;
		top: 76vw;
		left: 4vw;
		width: 82vw;
		text-align: center;
		color: #fff;
		font-size: 3vw;
		line-height: 4vw;
	}
	
	.footer_about {
        top: 279vw !important;
        padding-bottom: 4vw;
    
	}
	
	
	header, footer, section{
		position: absolute;
	}
	.textocontact {
		font-size: 3vw;
	}
	
}
