/*
Theme Name: Mestiza
Description: The 2010 theme for WordPress is stylish, customizable, simple, and readable -- make it yours with a custom menu, header image, and background. Twenty Ten supports six widgetized areas (two in the sidebar, four in the footer) and featured images (thumbnails for gallery posts and custom header images for posts and pages). It includes stylesheets for print and the admin Visual Editor, special styles for posts in the "Asides" and "Gallery" categories, and has an optional one-column page template that removes the sidebar.
Author: Saul Chavez (Programación) Catarsis (Diseño)
Author URI: https://verticeasociados.com/
Version: 2.0
Tested up to: 6.8
Requires at least: 3.0
Requires PHP: 5.2.4
Tags: blog, two-columns, custom-header, custom-background, threaded-comments, sticky-post, translation-ready, microformats, rtl-language-support, editor-style, custom-menu, flexible-header, featured-images, footer-widgets, featured-image-header, block-patterns
Text Domain: mestiza
-------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inconsolata:wght@200..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');


@font-face {
    font-family: 'Aalto Display-Personal-use';
    src: url('fonts/Aalto-Display-Personal-use.woff2') format('woff2'),
        url('fonts/Aalto-Display-Personal-use.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    /*font-display: swap;*/
}

/*********************
 * PALETA DE COLORES *
 ********************/
:root{
    --inter: "Inter", sans-serif;
    --fondo: #222;
    --oscuro: #808080;
    --claro: #999999;
    --grosor: 1px;
    --color-esquinas: #f2f2f2;
    --color-linea: rgba(255,255,255,.2);
    --menu: #f2f2f2;
    --hover: #f2f2f2;
    --size: .8vw;
    --size: 9px;
    --interletrado: .2vw;
    --interletrado: 1px;
    --regular: 400;
    --medium: 600;
}

/*********************
 * ESTILOS GENERALES *
 ********************/
.tope{
    width: 100%;
    height: 100px;
}
*{
    box-sizing: border-box;
    position: relative;
    margin: 0px;
}
body{
    margin: 0 auto;
    font-weight: 400;
    background-color: var(--fondo);
    font-family: var(--inter);
    font-size: var(--size);
    -webkit-font-smoothing:antialiased;
    color: var(--claro);
    /*color: #000;*/
}
section{
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 5vw;
    padding-left: 7%;
    padding-right: 7%;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
/*section > *{
    padding-left: 2%;
    padding-right: 2%;
}*/
h1{
    font-size: 2vw;
    font-weight: 500;
    line-height: .75;
    text-align: center;
    font-family: var(--sans);
    width: 100%;
    padding-top: 2vw;
    padding-bottom: 2vw;
}
h2{
    font-size: 2vw;
    font-weight: 400;
}
p{
    font-size: .8vw;
    font-weight: 500;
    line-height: 1.2;
}

/*********************
 *      HEADER       *
 ********************/
header{
    position: fixed;
    top: 0px;
    width: 100%;
    height: 100px;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    background-color: #222;
    justify-content: space-between;
    /*display: none;*/
}

header > a{
    width: 85px;
    margin-left: calc(11% - 85px);
    margin-right: 1%;
    height: 100%;
    display: flex;
    align-items: center;
    background-image: url(images/flecha.svg);
    padding-right: 15px;
    background-position: right center;
    background-repeat: no-repeat;
    background-size: auto 10%;
    color: var(--claro);
    font-size: 11px;
    letter-spacing: var(--interletrado);

}
header > a:hover{
    color: var(--hover);
    background-image: url(images/flecha-blanca.svg);
}

header > a:nth-child(1){
    background-image: none;
    width: 12%;
    margin: 0px;
    padding: 0px;
}

header h1{
    font-size: 3vw;
    letter-spacing: var(--interletrado);
    font-family: var(--bebas);
    font-weight: 800;
}
header h1 > span{
    font-family: var(--aalto);
    font-weight: 400;
    display: inline-block;
    -webkit-transform: scale(1.3, 1);
    font-size: 3.1vw;
    padding-left: .1vw;
    padding-right: .1vw;
}
header h1 > span:nth-child(1){
    font-weight: var(--inconsolata);
    font-weight: 600;
    -webkit-transform: scale(1, 1);
}
header svg{
    height: 50%;
    left: 3%;
}


/*********************
 *    BOTON MENU     *
 ********************/
input[type="checkbox"], .logo-movil{
    display:none;
}
label{
    display: flex;
    flex-direction: column;
    width: 45px;
    cursor: pointer;
    right: 5%;
    position:fixed;
    z-index: 11;
    top: 1vw;
    right: 1%;
    box-sizing: content-box;
    padding: 10px;
    display: none;
}
label span{
    background: var(--claro);;
    height:6px;
    margin: 3px 0;
    transition: .4s  cubic-bezier(0.68, -0.6, 0.32, 1.6);
}
label span:nth-of-type(1){
    width:50%;
}
label span:nth-of-type(2){
    width:100%;
}
label span:nth-of-type(3){
    width:75%;
}    
input[type="checkbox"]:checked ~ span:nth-of-type(1){
    transform-origin:bottom;
    transform:rotatez(45deg) translate(3px,0px)
}
input[type="checkbox"]:checked ~ span:nth-of-type(2){
    transform-origin:top;
    transform:rotatez(-45deg)
}
input[type="checkbox"]:checked ~ span:nth-of-type(3){ 
    transform-origin:bottom;
    width:50%;
    transform: translate(30px,-11px) rotatez(45deg);
    transform: translate(21px, -4px) rotatez(45deg);
}
.abierto{
    background-color: var(--verde);
}


/*********************
 *        MENU       *
 *********************/
nav{
    position: relative;
    top: 0px;
    width: 76%;
    height: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    /* display: none; */
    padding-left: 20%;
    padding-right: 20%;
}
nav > a{
	color: var(--claro);;
	font-size: 1.2vw;
    padding: .2vw;
    padding-left: 1.5%;
    padding-right: 1.5%;
    margin-left: 3%;
    margin-right: 3%;
    font-size: 11px;
    width: fit-content;
    /*line-height: 100px;*/
    animation-name: close-link;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    text-align: center;
}
nav > a:hover{
    animation-name: open-link;
}
nav > a:hover > p{
    display: block;
}
nav > a > p{
    position: absolute;
    width: .3vw;
    height: .3vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
    display: none;
}
nav > a > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-left-corner-fade-in;
}
nav > a > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-right-corner-fade-in;
}
nav > a > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-in;
}
nav > a > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-in;
}
@keyframes open-link{
    from{letter-spacing: var(--interletrado); font-weight: 300; color: var(--claro);}
    to{letter-spacing: var(--interletrado); font-weight: 700; color: var(--hover);}
}
@keyframes close-link{
    from{letter-spacing: var(--interletrado); font-weight: 700; color: var(--hover);}
    to{letter-spacing: var(--interletrado); font-weight: 300; color: var(--claro);}
}


/*********************
 *       HOME        *
 *********************/
.home{
    position: fixed;
    padding-left: 0px;
    padding-right: 0px;
    height: 100vh;
    /*z-index: 1;*/
}
/* Linea 1 */
.home > .linea-1{
    position: absolute;
    width: 1px;
    height: 100%;
    left: 33.33%;
    background-color: var(--color-linea);
    z-index: 2;
}
/* Linea 2 */
.home > .linea-2{
    position: absolute;
    width: 1px;
    height: 100%;
    left: 66.66%;
    background-color: var(--color-linea);
    z-index: 3;
}

/* Contenedor Carrusel */
.home > aside{
    width: 100%;
    /*height: 20vw;*/
    display: flex;
    border-top: solid 1px var(--color-linea);
    border-bottom: solid 1px var(--color-linea);
}
/* Slide individual */
.home article{
    background-position: center center;
    background-size: cover;
    width: 33.33%;
    height: 14.2vw;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /*height: 17vw;*/
    overflow: hidden;
    pointer-events: none;
}
.home article > div{
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.home article > div h2{
    z-index: 2;
    width: 90%;
    text-align: center;
    font-weight: 400;
    font-size: var(--size);
    letter-spacing: var(--interletrado);
    text-transform: uppercase;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    animation-name: title-fade-out;
    color: var(--hover);
}
.home article > div h2 > span{
    font-weight: 600;
}
.home article.activo > div h2{
    animation-name: title-fade-in;
}
.home article .wp-block-video{
    position: absolute;
    width: 95%;
    height: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-size: cover;
    animation-name: low-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    overflow: hidden;
}
.home video[poster]{
    height:100%;
    width:100%;
}
.home article.activo .wp-block-video{
    animation-name: high-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
}
/* Angulos esquineros */
.home article > p{
    position: absolute;
    width: 1vw;
    height: 1vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
}
.home article > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-left-corner-fade-out;
}
.home article > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-right-corner-fade-out;
}
.home article > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-out;
}
.home article > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-out;
}
/* Animacion angulos */
.home article.activo > p:nth-child(1){
    animation-name: top-left-corner-fade-in;
}
.home article.activo > p:nth-child(2){
    animation-name: top-right-corner-fade-in;
}
.home article.activo > p:nth-child(3){
    animation-name: bottom-left-corner-fade-in;
}
.home article.activo > p:nth-child(4){
    animation-name: bottom-right-corner-fade-in;
}
.home article.inactivo h2{
    animation-name: title-fade-out;
    text-transform: uppercase;
}
.home article.inactivo > p:nth-child(1){
    animation-name: top-left-corner-fade-out;
}
.home article.inactivo > p:nth-child(2){
    animation-name: top-right-corner-fade-out;
}
.home article.inactivo > p:nth-child(3){
    animation-name: bottom-left-corner-fade-out;
}
.home article.inactivo > p:nth-child(4){
    animation-name: bottom-right-corner-fade-out;
}
.swiper-button-next, .swiper-button-prev{
    display:none !important;
}
@keyframes top-left-corner-fade-in{
    from{opacity: 0; top: 1vw; left: 1vw}
    to{ opacity:1; top:0px; left:0px; }
}
@keyframes top-right-corner-fade-in{
    from{opacity: 0; top: 1vw; right: 1vw}
    to{ opacity:1; top:0px; right:0px; }
}
@keyframes bottom-left-corner-fade-in{
    from{opacity: 0; bottom: 1vw; left: 1vw}
    to{ opacity:1; bottom: 0px; left:0px; }
}
@keyframes bottom-right-corner-fade-in{
    from{opacity: 0; bottom: 1vw; right: 1vw}
    to{ opacity:1; bottom:0px; right:0px; }
}

@keyframes top-left-corner-fade-out{
    from{ opacity:1; top:0px; left:0px; }
    to{opacity: 0; top: 1vw; left: 1vw}
}
@keyframes top-right-corner-fade-out{
    from{ opacity:1; top:0px; right:0px; }
    to{opacity: 0; top: 1vw; right: 1vw}
}
@keyframes bottom-left-corner-fade-out{
    from{ opacity:1; bottom: 0px; left:0px; }
    to{opacity: 0; bottom: 1vw; left: 1vw}
}
@keyframes bottom-right-corner-fade-out{
    from{ opacity:1; bottom:0px; right:0px; }
    to{opacity: 0; bottom: 1vw; right: 1vw}
}
@keyframes title-fade-in{
    from{letter-spacing: -.5vw; opacity: 0.0}
    to{letter-spacing: 0px; opacity: 1}
}

@keyframes title-fade-out{
    from{letter-spacing: 0px; opacity: 1}
    to{letter-spacing: -.5vw; opacity: 0.0}
}

@keyframes low-brightness{
    from{filter: brightness(1);}
    to{filter: brightness(0.25);}
}
@keyframes high-brightness{
    from{filter: brightness(0.25);}
    to{filter: brightness(1);}
}

/*********************
 *    REPRODUCTOR    *
 *********************/
.reproductor{
    position: fixed;
    padding: 0px;
    height: 100vh;
    top: 0px;
    left: 0px;
    z-index: 3;
    background-color: var(--fondo);
    display: none;
}
.reproductor > .cerrar{
    position: absolute;
    top: 2vw;
    color: var(--claro);;
    font-size: var(--size);
    font-weight: var(--medium);
    right: 2%;
    padding: .5vw;
    padding-top: .1vw;
    padding-bottom: .1vw;
    margin: 0px;
    animation-name: close-link;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    cursor: pointer;
}
.reproductor > .cerrar:hover{
    animation-name: open-link;
}
.reproductor > .cerrar > h2{
    font-size: var(--size);
    font-weight: 500;
    z-index: 10;
}
.reproductor > .cerrar > p{
    position: absolute;
    width: .3vw;
    height: .3vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
}
.reproductor > .cerrar > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-left-corner-fade-in;
}
.reproductor > .cerrar > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-right-corner-fade-in;
}
.reproductor > .cerrar > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-in;
}
.reproductor > .cerrar > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid px var(--claro);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-in;
}
.reproductor > .logo{
    width: 55px;
    height: 40px;
    left: 2%;
    position: absolute;
    top: 1vw;
}
/* Linea 1 */
.reproductor > .linea-1{
    position: absolute;
    width: 1px;
    height: 100%;
    left: 17.3%;
    left: 25%;
    background-color: var(--color-linea);
}
/* Linea 2 */
.reproductor > .linea-2{
    position: absolute;
    width: 1px;
    height: 100%;
    left: 82.6%;
    left: 75%;
    background-color: var(--color-linea);
}
/* Linea 3 */
.reproductor > .linea-3{
    position: relative;
    width: 100%;
    height: 1px;
    /*top: 10.7vw;*/
    background-color: var(--color-linea);
}
/* Linea 4 */
.reproductor > .linea-4{
    position: relative;
    width: 100%;
    height: 1px;
    /*top: 47.7vw;*/
    background-color: var(--color-linea);
}
.reproductor h1{
    font-size: var(--size);
    letter-spacing: var(--interletrado);
    font-weight: var(--medium);
    padding-bottom: 3vw;
    color: var(--claro);
    padding-top: .3vw;
}
.reproductor > p{
    font-size: var(--size);
    padding-top: 3vw;
    color: var(--oscuro);
    text-transform: uppercase;
    letter-spacing: var(--interletrado);
}
.reproductor > p > span{
    color: var(--claro);
}
#vimeo-player{
    padding: .8vw;
    animation-duration: .5s;
    animation-fill-mode: forwards;
    background-color: #000;
    height: 20vw;
    width: 33.33%;
    padding: 0px;
}

#vimeo-player iframe{
    width: 100%;
    height: 100%;
}
    @keyframes maximize{
        from{height: 20vw; width: 33.33%;}
        to{width: 65.2%;height: 36.7vw;}
    }
    @keyframes minimize{
        from{width: 65.2%;height: 36.7vw;}
        to{height: 20vw; width: 33.33%;}
    }

@keyframes maximize{
        from{height: 20vw; width: 33.33%;}
        to{width: 50%;height: 28vw;}
    }
    @keyframes minimize{
        from{width: 50%;height: 28vw;}
        to{height: 20vw; width: 33.33%;}
    }

/*********************
 *      CONTACTO     *
 *********************/
.contacto{
    padding: 0px;
    height: 100vh;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.contacto > article{
    width: 33.33%;
    height: 20vw;
    height: 27vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding-left: 1%;
    padding-right: 1%;
    border-top: solid var(--grosor) var(--color-linea);
    border-bottom: solid var(--grosor) var(--color-linea);
}
.contacto > article:nth-child(2){
    padding-left: 5%;
    padding-right: 5%;
}
.contacto > article a{
    letter-spacing: var(--interletrado);
    font-weight: var(--regular);
    font-size: var(--size);
}
.contacto > article h2{
    letter-spacing: var(--interletrado);
    font-weight: var(--medium);
    font-size: var(--size);
    font-size: 13px;
    padding-bottom: 14px;
    color: var(--claro);
    text-transform: uppercase;
    margin: 0px;
}
.contacto p{
    letter-spacing: var(--interletrado);
    font-weight: var(--medium);
    font-size: var(--size);
    text-transform: uppercase;
}
.contacto span{
    color: var(--claro)
}
.contacto > article:nth-child(3) p{
    text-align: right;
}
.contacto > article:nth-child(1) p:nth-child(2){
    margin-top: 1.2vw;
}
.contacto > article:nth-child(3) p:nth-child(4){
    margin-top: 1.2vw;
}
.contacto > .linea-1, .contacto > .linea-2{
    position: absolute;
    width: 1px;
    height: 100%;
    background-color: rgba(255,255,255,.3);
    left: 66.66%;
    z-index: 3;
}
.contacto > .linea-3, .contacto > .linea-4{
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: rgba(255,255,255,.3);
    top: 68vh;
    top: 65vh;
}
.contacto > .linea-1{
    left: 33.33%;
}
.contacto > .linea-3{
    top: 32vh;
    top: 36.5vh;
}
.contacto article:nth-child(2) > p{
    position: absolute;
    width: 1vw;
    height: 1vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
}
.contacto article:nth-child(2) > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-left-corner-fade-in;
}
.contacto article:nth-child(2) > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-right-corner-fade-in;
}
.contacto article:nth-child(2) > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-in;
}
.contacto article:nth-child(2) > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-in;
}
.contacto > article:nth-child(1){
    align-items: flex-start;
}
.contacto > article:nth-child(3){
    align-items: flex-end;
    justify-content: flex-start;
    /* padding-top: 4vw; */
    display: flex;
    justify-content: center;
    
}
.contacto a{
    font-size: 1vw;
}
/*********************
 *     ABOUT-US      *
 *********************/
.about-us{
    flex-wrap: wrap;
}
.about-us > article{
    align-items: center;
    justify-content: center;
    height: 36vh;
    border-top: 0px;
}
.about-us > article:nth-child(1){
    justify-content: flex-end;
}
.about-us > article:nth-child(1) > p:nth-child(2){
    margin-top: 0px;
    padding-left: 10px;
    padding-bottom: 14px;
}
.about-us > article:nth-child(1) > ol{
    font-size: var(--size);
    letter-spacing: var(--interletrado);
    font-weight: var(--regular);
    text-transform: uppercase;
    padding-left: 10px;
    list-style: none;
    /*padding-bottom: 20px;*/
}
.about-us > article:nth-child(1) > ol > li{
    padding-bottom: 14px;
}
.about-us > article:nth-child(4){
    padding-left: 0%;
    padding-right: 10%;
    /*justify-content: flex-start;*/
    /*padding-top: 3.3vw;*/
    padding-left: 1%;
    justify-content: flex-start;
    padding-top: 25px;
}
.about-us > article:nth-child(5){
    display: flex;
    align-items: center;
    /*justify-content: flex-start;*/
    flex-direction: column;
    padding-left: 1%;
    padding-right: 1%;
    /*padding-top: 4vw;*/
}
.about-us > article:nth-child(5) > h1{
    position: relative;
    font-weight: var(--medium);
    font-size: 1vw;
    color: var(--hover);
    letter-spacing: var(--interletrado);
    text-align: left;
    padding: 0px;
    padding-bottom: 1vw;
    text-transform: uppercase;
}
.about-us > article:nth-child(5) > h2{
    text-align: left;
    width: 100%;
}
.about-us > article:nth-child(5) > h2 > span{
    font-weight: var(--regular);
}
.about-us > article:nth-child(5) > p{
    position: relative;
    width: 100%;
    font-weight: var(--regular);
    font-size: var(--size);
    color: var(--claro);
    line-height: 1.2;
    animation-name: none !important;
    border: 0px !important;
    text-transform: uppercase;
    height: auto;
}
.about-us > article:nth-child(5) > h3{
    text-align: right;
    width: 100%;
    padding-top: 30px;
    letter-spacing: var(--interletrado);
    font-size: var(--size);
    font-weight: var(--medium);
}
.about-us > article:nth-child(6){
    align-items: flex-end;
    /*justify-content: flex-start;*/
    /*padding-top: 4vw;*/
    text-align: right;
    justify-content: flex-end;
}
.about-us > article:nth-child(6) > h4{
    /*border-left: solid 1px var(--color-linea);*/
    text-align: right;
    width: 35%;
    padding-top: 10px;
    letter-spacing: var(--interletrado);
    font-size: var(--size);
    font-weight: var(--medium);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.about-us > article:nth-child(4), .about-us > article:nth-child(5), .about-us > article:nth-child(6){
    height: 28vh;
}
.about-us > article:nth-child(7), .about-us > article:nth-child(8), .about-us > article:nth-child(9){
    border-bottom: 0px;
}

.about-us > article:nth-child(1) h2{
    font-weight: 800;
}
.about-us > article:nth-child(1) p > span{
    font-style: italic;
}
.about-us > article:nth-child(1) ol span{
    font-weight: 800;
}
/*********************
 *       ROOTS       *
 *********************/
.roots{
    padding-left: .4%;
    padding-right: .4%;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    padding-top: 0px;
    animation-duration: .1s;
    animation-fill-mode: forwards;
}
.roots > .division{
    width: 100%;
    background-color: rgba(255,255,255,.1);
    height: 1px;
    margin-bottom: 1.3vw;
    margin-top: .4vw;
}
.roots:hover article{
    /*animation-name: low-brightness;*/
}
.roots article{
    width: 24%;
    margin-left: .5%;
    margin-right: .5%;
    height: 12.5vw;
    /*animation-name: high-brightness;*/
    animation-duration: .3s;
    animation-fill-mode: forwards;
}
.roots article:hover{
    /*animation-name: high-brightness;*/
}

.roots article h2{
    font-size: var(--size);
    color: var(--oscuro);
    font-weight: var(--regular);
    letter-spacing: var(--interletrado);
    text-align: center;
    padding-top: 1vw;
    text-transform: uppercase;
}
.roots article h2 > span{
    font-weight: var(--medium);
    color: var(--claro);
}
.roots article:hover h2{
    color: var(--claro);
}
.roots article:hover h2 > span{
    color: var(--hover);
}
.roots article > .container{
    height: 10vw;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
.roots article > .container > p{
    position: absolute;
    width: .7vw;
    height: .7vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
    z-index: 2;
}
.roots article > .container > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid 2px var(--color-esquinas);;
    border-left: solid 2px var(--color-esquinas);;
    animation-name: top-left-corner-fade-out;
}
.roots article > .container > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid 2px var(--color-esquinas);;
    border-right: solid 2px var(--color-esquinas);;
    animation-name: top-right-corner-fade-out;
}
.roots article > .container > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid 2px var(--color-esquinas);;
    border-left: solid 2px var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-out;
}
.roots article > .container > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid 2px var(--color-esquinas);;
    border-right: solid 2px var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-out;
}
.roots article > .container:hover > p:nth-child(1){
    animation-name: top-left-corner-fade-in;
}
.roots article > .container:hover > p:nth-child(2){
    animation-name: top-right-corner-fade-in;
}
.roots article > .container:hover > p:nth-child(3){
    animation-name: bottom-left-corner-fade-in;
}
.roots article > .container:hover > p:nth-child(4){
    animation-name: bottom-right-corner-fade-in;
}
.roots article > .live-player{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 13vw;
}
.roots article > .live-player iframe{
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
}
.roots > section{
    width: 100%;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}
.roots > section > div{
    width: 50%;
    margin-bottom: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
}
.roots > section > div > h3{
    font-size: var(--size);
    color: var(--claro);
    letter-spacing: var(--interletrado);
    font-weight: var(--regular);
    text-transform: uppercase;
    text-align: center;
    height: 10vw;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.roots > section > div > h3 > span{
    font-weight: var(--medium);
}
.roots > section > div > p{
    position: absolute;
    width: 1vw;
    height: 1vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
}
.roots > section > div > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-left-corner-fade-in;
}
.roots > section > div > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: top-right-corner-fade-in;
}
.roots > section > div > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-left: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-left-corner-fade-in;
}
.roots > section > div > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid var(--grosor) var(--color-esquinas);;
    border-right: solid var(--grosor) var(--color-esquinas);;
    animation-name: bottom-right-corner-fade-in;
}

.works{
    padding-top: 7vw;
    padding-top: 100px;
}

.texto-roots{
    width: 100%;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    padding-left: 50%;
    padding-top: 100px;
}
.texto-roots > div{
    width: 100%;
    margin-bottom: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 1%;
}
.texto-roots > div > h3{
    font-size: var(--size);
    color: var(--claro);
    letter-spacing: var(--interletrado);
    font-weight: var(--regular);
    text-transform: uppercase;
    text-align: center;
    height: 10vw;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: right;
    padding-right: 1%;
    line-height: 1.5;
}
.texto-roots > div > h3 > span{
    font-weight: var(--medium);
    width: 100%;
}
.texto-roots > div > p{
    position: absolute;
    width: 1vw;
    height: 1vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
}

/*********************
 *       TRIBE       *
 *********************/
.tribe > section .linea{
    position: fixed;
    width: 1px;
    background-color: rgba(255,255,255,.5);
    height: 100vh;
    left: 33%;
    top: 0px;
    z-index: 3;
}
.tribe{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding-left: 0%;
    padding-right: 0%;
    padding-top: 8vw;
    height: 100vh;
    flex-wrap: wrap;
    align-content: center;
}
.tribe > aside{
    width: 33%;
    width: 33%;
    display: flex;
    flex-direction: column;
    line-height: 3;
    padding-left: 2%;
    z-index: 2;
    height: 100%;
    display: flex;
    justify-content: center;
}
.tribe > aside > a{
    font-size: var(--size);
    font-weight: var(--regular);
    animation-name: close-link;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    color: var(--claro);
    text-transform: uppercase;
    letter-spacing: var(--interletrado);
}
.tribe > aside > a:hover{
    animation-name: open-link;
}
.tribe > section{
    width: 67%;
    padding-bottom: 1vw;
    padding-top: 1vw;
    overflow: visible;
    border-bottom: solid 1px rgba(255,255,255,.4);
    border-top: solid 1px rgba(255,255,255,.4);
    padding-left: 1%;
    padding-right: 1%;
    /*background-color: #FA0;*/
}
.tribe > section .grid{
    width: 100%;
    overflow: hidden;
    height: 24vw;
    /*background-color: #F00;*/
}

.tribe > section .grid  article{
    width: 32.33%;
    margin-left: .5%;
    margin-right: .5%;
    animation-name: low-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 12vw;
}
.tribe > section .grid article{
    animation-name: high-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
}
.tribe > section .grid:hover article{
    animation-name: low-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
}
.tribe > section .grid:hover article:hover {
    animation-name: high-brightness;
    animation-duration: .3s;
    animation-fill-mode: forwards;
}

.tribe > section .grid article .container{
    height: 10vw;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.tribe > section .grid  article > h2{
    font-size: var(--size);
    color: var(--oscuro);
    text-align: center;
    padding-top: 1vw;
    padding-bottom: 1vw;
    text-transform: uppercase;
    letter-spacing: var(--interletrado);
}
.tribe > section .grid  article > h2 > span{
    color: var(--claro);
    font-weight: var(--medium);
}
.tribe > section .grid  article:hover > h2 {
    color: var(--claro);
}
.tribe > section .grid  article:hover > h2 > span{
    color: var(--hover);
}
.tribe > section .grid  article .container > p{
    position: absolute;
    width: .7vw;
    height: .7vw;
    animation-duration: .3s;
    animation-fill-mode: forwards;
    display: block;
    z-index: 2;
}
.tribe > section .grid  article .container > p:nth-child(1){
    top: 0px;
    left: 0px;
    border-top: solid 2px #f2f2f2;
    border-left: solid 2px #f2f2f2;
    animation-name: top-left-corner-fade-out;
}
.tribe > section .grid  article .container > p:nth-child(2){
    top: 0px;
    right: 0px;
    border-top: solid 2px #f2f2f2;
    border-right: solid 2px #f2f2f2;
    animation-name: top-right-corner-fade-out;
}
.tribe > section .grid  article .container > p:nth-child(3){
    bottom: 0px;
    left: 0px;
    border-bottom: solid 2px #f2f2f2;
    border-left: solid 2px #f2f2f2;
    animation-name: bottom-left-corner-fade-out;
}
.tribe > section .grid  article .container > p:nth-child(4){
    bottom: 0px;
    right: 0px;
    border-bottom: solid 2px #f2f2f2;
    border-right: solid 2px #f2f2f2;
    animation-name: bottom-right-corner-fade-out;
}
.tribe > section .grid  article:hover .container > p:nth-child(1){
    animation-name: top-left-corner-fade-in;
}
.tribe > section .grid  article:hover .container > p:nth-child(2){
    animation-name: top-right-corner-fade-in;
}
.tribe > section .grid  article:hover .container > p:nth-child(3){
    animation-name: bottom-left-corner-fade-in;
}
.tribe > section .grid  article:hover .container > p:nth-child(4){
    animation-name: bottom-right-corner-fade-in;
}
.tribe > section  .controles{
    position: absolute;
    width: 97%;
    display: flex;
    justify-content: center;
    /* bottom: -20px; */
    flex-direction: row;
    animation-name: none;
    bottom: -20px;
    
}
.tribe > section  .controles > p{
    width: 30px;
    height: 30px;
    border-radius: 20px;
    border: solid 1px rgba(255, 255, 255, .4);
    text-align: center;
    line-height: 28px;
    color: #999;
    margin: 5px;
    cursor: pointer;
    z-index: 2;
    background-color: var(--fondo);
}
.tribe > .grid > .grid-container > p:hover{
    border-color: #666666;
    color: #666666;
}
.grid-container{
    display: flex;
    flex-wrap: wrap;
}
/*************************
 *         FOOTER
 ************************/
footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 1%;
    padding-right: 1%;
    font-size: var(--size);
    letter-spacing: var(--interletrado);
    padding-bottom: 2vw;

    background-color: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 1%;
    padding-right: 1%;
    font-size: var(--size);
    letter-spacing: var(--interletrado);
    padding-bottom: 1vw;
    position: fixed;
    bottom: 0px;
    width: 100%;
    z-index: 1;
}
footer > a{
    background-image: url(images/flecha.svg);
    padding-right: 1.2vw;
    background-position: right center;
    background-repeat: no-repeat;
    background-size: auto 70%;
    color: var(--oscuro);
    letter-spacing: var(--interletrado);
    font-size: var(--size);
}
footer > a:hover{
    color: var(--claro);
    background-image: url(images/flecha-blanca.svg);
}

.cargador{
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    background-color: var(--fondo);
    /*display: none;*/
}
.cargador img{
    width: 50%;
}
.container > img{
    width: 100%;
}
video{
    cursor: pointer;
}
.solo-movil{
    display: none;
}
@media (max-width: 480px){
    .no-movil{
        display: none;
    }
    .solo-movil{
        display: block;
    }
    header{height: 85px}
    header > a{
        width: 40%;
        display: none;
    }
    header > a:nth-child(1){
        display: flex;
    }
    label{
        top: 5vw;
        right: 2%;
        display: flex;
        z-index: 4;
    }
    label span{
        height: 2px;
    }
    input[type="checkbox"]:checked ~ span:nth-of-type(3){
        transform: translate(13px, -3px) rotatez(45deg);
    }
    label span:nth-of-type(2) {
        width: 85%;
    }
    nav{
        position: fixed;
        width: 100%;
        height: 100vh;
        flex-direction: column;
        background-color: #222;
        flex-wrap: wrap;
        display: flex;
        justify-content: flex-start;
        padding-top: 150px;
        display: none;
        padding-right: 10%;
        padding-left: 10%;
    }
    nav > a{
        font-size: 6vw;
        line-height: 2.5;
        padding-left: 5%;
        padding-right: 5%;
    }
    nav > a > p{
        width: 2vw;
        height: 2vw;
        display: none !important;
    }
    #tribe{
        width: 100%;
        color: var(--claro);;
        padding: .2vw;
        margin-left: 0%;
        margin-right: 0%;
        font-size: 11px;
        /*line-height: 100px;*/
        animation-name: close-link;
        animation-duration: .3s;
        animation-fill-mode: forwards;
        text-align: center;
        font-size: 6vw;
        line-height: 2.5;
        padding-left: 5%;
        padding-right: 5%;
    }

    #tribe .submenu{
        width: 100%;
        display: flex;
        flex-direction: column;        
        list-style: none;
        padding: 0px;
        display: none;
        padding-right: 3.5vw;
    }
    /*#tribe:hover > .submenu{
        display: flex;
    }*/
    .submenu > a{
        font-size: 16px;
        line-height: 1.5;
        font-weight: 300 !important;
        text-align: center;
        width: 100%;
    }
    header > a:nth-child(1){ width: 30%;z-index: 2; margin-left: 3%;}

    .cargador{padding-bottom: 20vw;}
    .cargador > img{width: 60%}

    .reproductor{z-index: 5}
    .reproductor > .cerrar{top: 4vw}
    .reproductor > .linea-1, .reproductor > .linea-2{display: none;}
    #vimeo-player{width: 100% !important; height: 55vw !important}

    .home{padding-bottom: 15vw}
    .home > .linea-1, .home > .linea-2{display: none;}
    .home article{height: 40vw;}
    /*.home article > div{height: 40vw}*/

    .tribe > aside{display: none;}
    .tribe > section .linea{display: none;}
    .tribe > section .controles{display: none;}
    .tribe > section{width: 100%}
    .tribe > section .grid{height: calc(100vh - 16vw); overflow: auto; padding-top: 16vw}
    .tribe > section .grid article{height: auto; width: 99%}
    .tribe > section .grid article .container{height: 40vw; width: 100%}
    .tribe > section .grid article > h2{padding-top: 3vw; padding-bottom: 3vw}

    .texto-roots{padding-top: 30vw; padding-left: 10%; padding-right: 10%;}
    .texto-roots > div > h3{height: auto; padding-bottom: 3vw; text-align: center;}
    .roots{padding-bottom: 5vw}
    .roots article > .container{height: 40vw; overflow: hidden;}
    .roots article{height: auto;width: 99%}
    .roots article h2{padding-top: 3vw; padding-bottom: 3vw}
    .roots > .division{display: none;}

    .works{padding-top: 25vw}

    .about-us > article:nth-child(4), .about-us > article:nth-child(5), .about-us > article:nth-child(6){height: 33%;}
    .about-us > article, .about-us > article:nth-child(5){width: 100%;padding-left: 10%;padding-right: 10%;}
    .about-us > article:nth-child(6){justify-content: flex-start;border-bottom: 0px;height: 27%;padding-top: 30px;}
    .about-us > article:nth-child(1){height: 40%;padding-bottom: 30px;}
    .about-us > article:nth-child(6) > h4{width: 100%}
    .about-us > article:nth-child(2){display: none;}
    .about-us > article:nth-child(3){display: none;}
    .about-us > article:nth-child(4){display: none;}
    .about-us > article:nth-child(7){display: none;}
    .about-us > article:nth-child(8){display: none;}
    .about-us > article:nth-child(9){display: none;}
    .about-us > .linea-1{left: 3%; z-index: 2; display: none;}
    .about-us > .linea-2{left: 97%; z-index: 2; display: none;}
    .about-us > article:nth-child(1) > p:nth-child(2){padding-left: 0px;}

    .contacto{flex-direction: column;}
    .contacto article{width: 100%;padding-left: 10%;padding-right: 10%;}
    .contacto > .linea-1, .contacto > .linea-2{display: none;}
    .contacto article:nth-child(2) > p:nth-child(1){display: none;}
    .contacto article:nth-child(2) > p:nth-child(2){display: none;}
    .contacto article:nth-child(2) > p:nth-child(3){display: none;}
    .contacto article:nth-child(2) > p:nth-child(4){display: none;}
    .contacto > article:nth-child(3){border-bottom: 0px}

    footer{padding-left: 4%;padding-right: 4%;bottom: 25px;}
    footer > a{padding-right: 14px}

    /*.wp-block-video video {
        vertical-align: middle !important;
        width: 140% !important;
        left: -20%;
    }*/

    /*.home video[poster]{height: auto;}

    .home .wp-block-video video{
        width: 100% !important;
        left: 0px;
    }*/
    .home article{
        pointer-events: auto;
    }
}



a{
    text-decoration: none;
    color: inherit;
}
#primary, #secondary{
    display: none;
}
.wp-block-video {
    margin: 0px !important;
}