/*
Theme Name: firma
Theme URI: http://underscores.me/
Author: Hola Rafa
Author URI: http://www.holarafa.com
Description: Theme a medida
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: firma
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Underscores Hola Rafa is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/


/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>> STYLES CSS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------
# Fonts
--------------------------------------------------------------*/

@font-face {
	font-family: 'Graphik-Regular';
	src: url('/wp-content/themes/firma/fonts/Graphik-Regular.eot');
	src: url('/wp-content/themes/firma/fonts/Graphik-Regular.eot?#iefix') format('embedded-opentype'),
		url('/wp-content/themes/firma/fonts/Graphik-Regular.woff') format('woff'),
		url('/wp-content/themes/firma/fonts/Graphik-Regular.ttf') format('truetype'),
		url('/wp-content/themes/firma/fonts/Graphik-Regular.svg#Graphik-Regular') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Graphik-Medium';
	src: url('/wp-content/themes/firma/fonts/Graphik-Medium.eot');
	src: url('/wp-content/themes/firma/fonts/Graphik-Medium.eot?#iefix') format('embedded-opentype'),
		url('/wp-content/themes/firma/fonts/Graphik-Medium.woff') format('woff'),
		url('/wp-content/themes/firma/fonts/Graphik-Medium.ttf') format('truetype'),
		url('/wp-content/themes/firma/fonts/Graphik-Medium.svg#Graphik-Medium') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Graphik-Light';
	src: url('/wp-content/themes/firma/fonts/Graphik-Light.eot');
	src: url('/wp-content/themes/firma/fonts/Graphik-Light.eot?#iefix') format('embedded-opentype'),
		url('/wp-content/themes/firma/fonts/Graphik-Light.woff') format('woff'),
		url('/wp-content/themes/firma/fonts/Graphik-Light.ttf') format('truetype'),
		url('/wp-content/themes/firma/fonts/Graphik-Light.svg#Graphik-Light') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'MarsExtendedWeb-Regular';
	src: url('/wp-content/themes/firma/fonts/MarsExtendedWeb-Regular.eot');
	src: url('/wp-content/themes/firma/fonts/MarsExtendedWeb-Regular.eot?#iefix') format('embedded-opentype'),
		url('/wp-content/themes/firma/fonts/MarsExtendedWeb-Regular.woff') format('woff'),
		url('/wp-content/themes/firma/fonts/MarsExtendedWeb-Regular.ttf') format('truetype'),
		url('/wp-content/themes/firma/fonts/MarsExtendedWeb-Regular.svg#MarsExtendedWeb-Regular') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'GraphikWideRegular';
	src: url('/wp-content/themes/firma/fonts/GraphikWide-Regular-Web.woff2') format('woff2'),
		url('/wp-content/themes/firma/fonts/GraphikWide-Regular-Web.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-stretch: normal;
}

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

html {
    font-family: 'Graphik-Regular',sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust:     100%;
}

html {
    font-size: 62.5%;
    background-color: #fff;
}

h1, h2, h3, h4,
p, a, span, div {
	font-family: 'Graphik-Regular', sans-serif;
	margin: 0px;
	padding: 0px;
}

.container-fluid {
	padding-left: 60px;
	padding-right: 60px;
}

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6,
.col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3,
.col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11,
.col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9,
.col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6,
.col-xs-7, .col-xs-8, .col-xs-9 {

}

.row {

}

.hentry {
    margin: 0;
}

.row-content {
	margin-right: -60px;
	margin-left: -60px;
}

#content {
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

input {
	border-radius: 0px !important;
}

.sin-formato, .sin-formato:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/*--------------------------------------------------------------
# Footer & Header
--------------------------------------------------------------*/

#header_desktop {
	width: 100%;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 9999;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.page-template-page-home #header_desktop {
	padding-top: 4.0rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.opcionesdelmenu {
	padding-top: 0.2rem;
	text-align: right;
}

.opcion-menu {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	margin-left: 3.0rem;
	padding-bottom: 1.0rem;
	border: none;
	border-bottom: 1px solid rgba(0,0,0,0);
}

.opcion-menu, .opcion-menu:hover, .opcion-menu:focus {
	-webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}


.color-logo {
	fill: #000;
}

.opcion-menu:last-child {
	margin-right: 0px;
}

.opcion-menu:hover, .opcion-menu:focus {
	border-bottom: 1px solid rgba(0,0,0,1);
	color: #000;
	text-decoration: none;
}

#header_desktop {
	-webkit-transition: -webkit-transform 1s cubic-bezier(0.55, 0.085, 0, 0.99);
	transition: -webkit-transform 1s cubic-bezier(0.55, 0.085, 0, 0.99);
	transition: transform 1s cubic-bezier(0.55, 0.085, 0, 0.99);
	transition: transform 1s cubic-bezier(0.55, 0.085, 0, 0.99), -webkit-transform 1s cubic-bezier(0.55, 0.085, 0, 0.99);
}

#header_desktop::after {
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    right: 0;
    bottom: 0;
    -webkit-transition: opacity .2s;
    transition: opacity .2s;
    opacity: 1;
}


.is-nav-showing #header_desktop {
	padding-top: 2.5rem;
	background-color: #fff !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-nav-showing #header_desktop .opcion-menu {
	color: #000 !important;
}

.is-nav-showing #header_desktop .color-logo {
	fill: #000 !important;
}

.is-nav-showing #header_desktop .opcion-menu:hover {
	border-bottom: 1px solid rgba(0,0,0,1) !important;
}

.is-nav-hidden #header_desktop {
	padding-top: 2.5rem;
	background-color: #fff !important;
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    transform:translateY(-100%);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-nav-hidden #header_desktop .opcion-menu {
	color: #000 !important;
}

.is-nav-hiden #header_desktop .color-logo {
	fill: #000;
}

#logo_header {
	width: 6.7rem;
	height: auto;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#header_desktop .link-logo:hover #logo_header {
	opacity: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#logo_hover_desktop {
	opacity: 0;
	position: relative;
	width: 40px;
	height: auto;
	/*top: -4px;
	right: 30px;*/
	transform: translate(-60px, 0px);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.single-project #logo_hover_desktop {
	top: 2px;
}

.is-nav-showing #logo_hover_desktop path {
	fill: #000 !important;
}

#header_desktop .link-logo:hover #logo_hover_desktop {
	opacity: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}



.logo {
	text-align: left;
	padding-right: 15px;
}

.link-logo:hover {
	text-decoration: none;
}

.link-logo:focus {
	outline: none !important;
}

#colophon {
	padding-top: 15.0rem;
	padding-bottom: 5.0rem;
}

.sedes-footer {
	font-size: 2.2rem;
	color: #FFFFFF;
	letter-spacing: 0;
	text-align: center;
}

.frase-footer {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 5.5rem;
	color: #FFFFFF;
	letter-spacing: 0;
	text-align: center;
	line-height: 6.5rem;
	padding-top: 7.0rem;
	padding-bottom: 17.0rem;
}

.titulo-footer {
	opacity: 0.46;
	font-size: 1.8rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 3.4rem;
	padding-bottom: 2.0rem;
}

.enlace-footer {
	font-size: 1.8rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 3.4rem;
	padding-bottom: 1px;
	border-bottom: 1px solid rgba(255,255,255,0);
	-webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.enlace-footer:hover {
	color: #fff;
	text-decoration: none;
	padding-bottom: 1px;
	border-bottom: 1px solid rgba(255,255,255,1);
	-webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.dos-columnas {
	columns: 2;
	column-gap: 30px;
}

.titulo-newsletter-footer {
	font-size: 2.4rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 2.9rem;
	padding-bottom: 4.8rem;
}


#email_newsletter {
	border: none;
	border-bottom: 1px solid #fff;
	margin-top: 0rem;
	padding-bottom: 1.1rem;
	font-size: 1.8rem;
	color: #fff;
	letter-spacing: 0;
	background-color: transparent;
	width: 100%;
	padding-right: 50px;
}

#email_newsletter::placeholder {
	font-size: 1.8rem;
	color: #fff;
	letter-spacing: 0;
}

#email_newsletter:focus {
	outline: none;
}

#submit_newsletter {
	position: absolute;
	margin-left: -35px;
	border: none;
	background-color: none;
	color: transparent;
	background: url('/wp-content/themes/firma/images/flecha-enviar-mail-white.svg') no-repeat;
}

#colophon span.wpcf7-not-valid-tip {
	display: none;
}

#colophon .wpcf7-form.sent #email_newsletter,
#colophon .wpcf7-form.sent #submit_newsletter,
#colophon .wpcf7-form.sent .aceptarterms {
	display: none !important;
}

#colophon div.wpcf7-mail-sent-ok {
	margin-top: 0rem;
	padding-bottom: 1.1rem;
	font-size: 2.0rem;
	color: #fff;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

#colophon div.wpcf7-validation-errors {
	margin-top: 2.0rem;
	font-size: 2.0rem;
	color: #fff;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

div.wpcf7 .ajax-loader {
	width: 60px !important;
	height: 11px !important;
	float: right;
	margin-top: 10px;
}

#footer_down {
	padding-top: 13.0rem;
}

.lado-derecho-footer {
	text-align: right;
}

.copyright {
	font-size: 1.4rem;
	color: #FFFFFF;
	letter-spacing: 0;
}

.wpml-ls-legacy-list-horizontal {
	padding: 0px !important;
	margin-left: -10px;
}

.wpml-ls-item a {
	padding: 5px 5px !important;
}

.wpml-ls-item a:after {
	content: '|';
	font-size: 1.4rem;
	color: #7D7D7D;
	line-height: 1.4rem;
	padding-bottom: 0.5px;
	margin-left: 10px;
}

.wpml-ls-item:last-child a:after {
	content: '';
}

.wpml-ls-item a span {
	font-size: 1.4rem;
	color: #7D7D7D;
	line-height: 1.4rem;
	padding-bottom: 0.5px;
}

.wpml-ls-current-language a span {
	color: #fff;
	border-bottom: 1px solid #fff;
}

.wpml-ls-item a:hover {
	text-decoration: none;
}

.wpml-ls-item a:hover span {
	color: #fff;
}

.wpml-ls-display {
	display: none;
}

#scrolltotop {
	display: none;
	opacity: 0;
	position: fixed;
	bottom: 10.0rem;
	right: 9.0rem;
	z-index: 10000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}

#scroll_to_top {
	position: absolute;
	width: 7.1rem;
	height: auto;
}

#scroll_to_top circle {
	fill: transparent;
	stroke: rgba(0,0,0,.1);
}

#scroll_to_top .animated-circle {
    fill: transparent;
    stroke-width: 2px;
    stroke: #000;
    stroke-dasharray: 273;
    stroke-dashoffset: 273;
}

.progress-count {
	display: none;
}

.block-scrolltotop {
	display: block !important;
}

.aparece-scrolltotop {
	opacity: 1 !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.hamburger {
    position: relative;
    right: 0px;
    padding: 0px 0px;
    padding-left: 10px;
    z-index: 10000;
}

.hamburger:hover {
    opacity:1 !important;
}

.hamburger-box {
    width: 25px;
    height: 21px;
}

.hamburger-inner, .hamburger-inner::after, .hamburger-inner::before {
    width:24px;
    height:2px;
    border-radius:0px;
}

.is-active .hamburger-inner, 
.is-active .hamburger-inner::after, 
.is-active .hamburger-inner::before {
	background-color: #fff !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#header_mobile {
	width: 100%;
	padding-top: 2.0rem;
	padding-bottom: 2.0rem;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 9999;
}

.menu-mobile {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	z-index: 9000;
	background-color: #000;
	padding-top: 10vh;
}

.menu-mobile .opcion-menu {
	margin-left: 0px !important;
	font-family: 'Graphik-Light';
	font-size: 30px !important;
	color: #FFFFFF !important;
	letter-spacing: 0;
	padding-bottom: 4.5vh !important;
	display: block;
	text-align: center;
}

.enlaces-inferiores {
	position: absolute;
	display: block;
	text-align: center;
	bottom: 48px;
	width: 100vw;
}

.enlace-inferior-mobile, .enlace-inferior-mobile:hover {
	font-size: 16px;
	color: #FFFFFF;
	letter-spacing: 0;
	text-decoration: none;
	display: inline-block;
	width: 29%;
}

.enlace-inferior-mobile span {
	padding-bottom: 2px;
	border-bottom: 1px solid #fff;
	opacity: 0.5;
}

.is-nav-showing #header_mobile {
	background-color: #fff !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-nav-showing #header_mobile .color-logo {
	fill: #000 !important;
}

.is-nav-hidden #header_mobile {
	background-color: #fff !important;
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    transform:translateY(-100%);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-nav-hidden #header_mobile .color-logo {
	/*fill: #000;*/
	fill: #1D1D1B;
}

.is-nav-showing .hamburger-inner, 
.is-nav-showing .hamburger-inner::after, 
.is-nav-showing .hamburger-inner::before {
	background-color: #000 !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.header-mobile-black {
	background-color: transparent !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.header-mobile-black .hamburger-inner, 
.header-mobile-black .hamburger-inner::after, 
.header-mobile-black .hamburger-inner::before {
	background-color: #fff !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.header-mobile-black .color-logo {
	fill: #000 !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-nav-volver .color-logo {
	fill: #000 !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#cookie-notice {
	/*display: none !important;*/
}

.cookie-notice-container {
	text-align: left;
	padding: 24px 44px 24px 44px;
}

#cn-notice-text {
	max-width: calc(100vw - 500px) !important;
	float: left;
	padding-bottom: 24px;
	font-family: 'Graphik-Regular';
	font-size: 1.3rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 1.9rem;
}

#cn-accept-cookie {
	font-family: 'Graphik-Regular';
	font-size: 14px;
	color: #FFFFFF;
	letter-spacing: 0;
	text-align: center;
	line-height: 19px;
	border: 1px solid #fff;
	padding: 7px 65px 5px 64px;
	background: transparent;
	border-radius: 0px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    float: right;
}

#cn-accept-cookie:hover {
	font-family: 'Graphik-Regular';
	font-size: 14px;
	color: #000;
	letter-spacing: 0;
	text-align: center;
	line-height: 19px;
	border: 1px solid #fff;
	padding: 7px 65px 5px 64px;
	background: #fff;
	border-radius: 0px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#cn-more-info {
	border: none;
	background: transparent;
	font-family: 'Graphik-Regular';
	font-size: 14px;
	color: #FFFFFF;
	padding-top: 9px;
	letter-spacing: 0;
	text-align: center;
	line-height: 19px;
	text-decoration: underline;
	box-shadow: none;
}

#cookie-notice .cn-button {
	margin-top: 15px;
}

.logo-bcorp {
	height: 13.0rem;
	width: auto;
	position: absolute;
	right: 0;
	bottom: -10px;
}

.enlace-bcorp {
	position: relative;
	display: inline-block;
}

.logo-bcorp-mobile {
	height: 120px;
	width: auto;
	margin-bottom: 10px;
	margin-right: -10px;
}

/*--------------------------------------------------------------
# Home
--------------------------------------------------------------*/

/*#cabecera_home {
	width: 100vw;
	height: 100vh;
	top: 0px;
	left: 0px;
	position: relative;
}*/

#cabecera_home { 
	position: relative; 
	overflow: hidden;
	height: auto;
	width: 100vw;
	height: 100vh;
}

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

#cabecera_home iframe,
#cabecera_home object,
#cabecera_home embed { 
	width: 100% !important;
    height: 56.25vw !important;
    min-height: 100vh !important;
    min-width: 177.77% !important;
    position: absolute !important;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.foto-cabecera-proyecto {
	width: 100vw;
	height: 100vh;
	object-position: center center;
	object-fit: cover;
}

#cabecera_home video {
	width: 100vw;
	height: 100vh;
	object-fit: cover;
	object-position: center center;
}

#textos_principales {
	padding-top: 17.3rem;
	padding-bottom: 2.5rem;
}

.titulo-home {
	font-size: 5.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 7.5rem;
}

.subtitulo-home {
	padding-bottom: 5.4rem;
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.5rem;
}

.link-home-principal {
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	padding-bottom: 5px;
	border-bottom: 1px solid #000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: inline-block;
    position: relative;
}

.link-home-principal:hover {
	color: #000000;
	border-bottom: 2px solid #000;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.animacion-principal-home {
	margin-top: -10px;
	text-align: right;
}

.animacion-principal-home video {
	max-width: 50%;
	height: auto;
}

.page-template-page-home .proyecto img {
	height: auto !important;
}

#seccion_proyectos_home {
	padding-top: 8.0rem;
	padding-bottom: 8.0rem;
}

#seccion_proyectos_home .imagen-del-proyecto-home {
	cursor: none;
}

.teveo .view_all_projects {
	position: fixed;
	bottom: 0px;
	left: 0px;
	width: 100vw;
	padding-bottom: 10px;
	padding-top: 5px;
}

.teveo .view_all_projects .enlace-services-home {
	margin-top: 0.6rem;
}

.page-template-page-home #scrolltotop {
	display: none !important;
}

#seccion_services_home {
	padding-top: 12.2rem;
	padding-bottom: 10.0rem;
}

.titulo-services-home {
	padding-bottom: 4.1rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 6.0rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 7.0rem;
	max-width: 82.0rem;
	margin: 0 auto;
	position: relative;
}

.subtitulo-services-home {
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	text-align: center;
	padding-bottom: 4.0rem;
}

#seccion_services_home .swiper-wrapper {
	/*align-items: center;*/
}

.enlace-services-home {
	display: inline-block;
	position: relative;
	text-align: center;
	left: 50%;
	transform: translateX(-50%);
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	border-bottom: 1px solid #000;
	padding-bottom: 1px;
	margin-top: 10.0rem;
	cursor: pointer !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.enlace-services-home:hover {
	color: #000;
	padding-bottom: 0px;
	border-bottom: 2px solid #000;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.texto-sobre-la-cabecera {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 7.0rem;
	letter-spacing: 0;
	text-align: center;
	line-height: 8.5rem;
	width: 800px;
	max-width: calc(100vw - 60px);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#seccion_posts {
	padding-top: 9.0rem;
	padding-bottom: 9.0rem;
}

.titulo-seccion-post {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 5.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 6.5rem;
}

.subtitulo-seccion-post {
	font-size: 2.4rem;
	color: #000000;
	letter-spacing: 0;
	text-align: right;
	margin-top: 12px;
}

.titulo-seccion-apart {
	font-size: 4.4rem;
	line-height:5.5rem;
	color: #000000;
	letter-spacing: 0;
	margin-top: 12px;
	max-width: 1200px;
}

.titulo-seccion-apart a {
  color:inherit;
  text-decoration: underline;
}

.link-blog-home {
	font-size: 2.2rem;
	padding-bottom: 2px;
	border-bottom: 1px solid #000;
	color: #000000;
	letter-spacing: 0.2px;
	padding-top: 7.3rem;
	position: relative;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link-blog-home:hover {
	color: #000;
	padding-bottom: 1px;
	border-bottom: 2px solid #000;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#seccion_posts img {
	width: 100%;
	height: auto;
}

.post-home {
	padding-top: 7.3rem;
	position: relative;
}

.post-home p, .post-home div, .post-home a, .post-home a:hover {
	text-decoration: none;
}

.post-home a.cta {
	color:#131312;
	font-size: 18px;
¡}

#seccion_posts .post-home a.cta img {
	height: 15px !important;
	width: 22px !important;
	margin-right: 5px;
	position:relative;
	top:-2px;
}

#seccion_posts.apart .titulo-post-relacionado {
  margin-top:2.2rem;
  padding-bottom:1rem;
}

#seccion_posts.apart .cat-time-relacionado {
	margin-top:0;
}

#seccion_posts.apart .daymonth {
  background:#131312;
  width:6.6rem;
  height:6.6rem;
  position:absolute;
  /*top:9.3rem;
  left:0rem;*/
  top:7.3rem;
  left:15px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}

#seccion_posts.apart .daymonth .day {
  font-size:3rem;
  line-height:3rem;
  color:#D2D6CC;
  margin-left:.8rem;
}

#seccion_posts.apart .daymonth .month {
  font-size:1.6rem;
  line-height:1.6rem;
  color:#D2D6CC;
  margin-left:.8rem;
}

.share-post-desktop {
	position: fixed;
	bottom: -51px;
	left: 0px;
	width: 100vw;
	text-align: center;
	padding-top: 14px;
	padding-bottom: 11px;
	z-index: 1000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.aparece-share-desktop {
	bottom: 0px !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.titulo-share-post {
	font-family: 'Graphik-Medium';
	font-size: 16px;
	color: #000000;
	letter-spacing: 0;
	padding-right: 35px;
	padding-bottom: 4px;
}

.single-post #scrolltotop {
	bottom: 14.0rem !important;
}

.copy-link-post, .link-share-post, .copy-link-post-mobile {
	font-family: 'Graphik-Regular';
	font-size: 16px;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	border: none;
	background: none;
	padding: 0 0;
	margin-right: 40px;
	padding-bottom: 4px;
	text-decoration: none;
}

.copy-link-post:hover, .link-share-post:hover {
	border-bottom: 2px solid #000;
	padding-bottom: 2px;
	color: #000000;
	text-decoration: none;
}

.copy-link-post:focus {
	outline: none;
	border: none;
}

#textareacopiar, #copiarmobile {
	width: 0px;
	height: 0px;
	color: transparent;
	border: none;
	background: transparent;
}

.desaparece {
	z-index: -1;
	position: fixed;
}

.link-share-post:last-child {
	margin-right: 0px;
}

.share-post-mobile {
	text-align: center;
	position: fixed;
	bottom: -286px;
	left: 0px;
	width: 100vw;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
	z-index: 1000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.aparece-share-mobile {
	bottom: -235px !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.aparece-mas-share {
	bottom: 0px !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.titulo-share-post-mobile {
	font-family: 'Graphik-Regular'
	font-size: 16px;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 2px;
	border-bottom: 2px solid #000;
	display: inline;
	margin-bottom: 40px;
}

.share-post-mobile .copy-link-post-mobile,
.share-post-mobile .link-share-post {
	display: block;
	margin-bottom: 5px;
	font-family: 'Graphik-Regular';
	font-size: 30px;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 50px;
	left: 50%;
	position: relative;
	transform: translateX(-50%);
}

.share-post-mobile .copy-link-post-mobile {
	margin-top: 10px;
}

.share-post-mobile .copy-link-post-mobile:hover,
.share-post-mobile .link-share-post:hover {
	border-bottom: none !important;
}

#new_cabecera_home {
	width: 100vw;
	height: auto;
	min-height: 150vh;
	position: relative;
}

.foto-cabecera-desktop-home,
.foto-cabecera-mobile-home {
	width: 100%;
	height: auto;
}

.texto-new-cabecera-top {
	position: absolute;
	max-width: 106.0rem;
	width: calc(100% - 6.0rem);
	top: 35vh;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	animation-delay: 1s;
}

.texto-new-cabecera-top span {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 149px;
	line-height: 135px;
	text-align: center;
	color: #030303;
}

.point-text-top-cabecera {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 16px;
	transform: translateY(-2px);
}

.texto-new-cabecera-bottom {
	position: absolute;
	max-width: 1000px;
	width: calc(100% - 4.0rem);
	bottom: 25vh;
	left: 50%;
	transform: translate(-50%, 0%);
	text-align: center;
}

#new_cabecera_home h1 {
	font-size: 50px;
	line-height: 65px;
	text-align: center;
	color: #FFFFFF;
	margin-bottom: 50px;
	animation-delay: 0.2s;
}

.subtitulo-bottom-cabecera {
	margin-bottom: 20px;
}

.subtitulo-bottom-cabecera span {
	font-size: 16px;
	line-height: 20px;
	text-align: center;
	color: #FFFFFF;
}

.point-text-bottom-cabecera {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 16px;
	transform: translateY(-2px);
}

.link-cabecera-bottom {
	font-size: 16px;
	line-height: 339%;
	text-align: center;
	color: #FFFFFF;
	padding-bottom: 5px;
	border-bottom: 1px solid #fff;	
}

.link-cabecera-bottom:hover, .link-cabecera-bottom:focus {
	font-size: 16px;
	line-height: 339%;
	text-align: center;
	color: #FFFFFF;
	border-bottom: 2px solid #fff;
	text-decoration: none;
}

/*--------------------------------------------------------------
# Project
--------------------------------------------------------------*/

.title-project-header {
	display: none;
}

.single-project .title-project-header {
	display: inline-block;
	font-family: 'Graphik-Light';
	font-size: 30px;
	letter-spacing: 0;
	text-align: center;
	padding-right: 5px;
}

.single-project.is-nav-showing .title-project-header {
	color: #000 !important;
}

#cabecera_proyecto {
	width: 100vw;
	height: 100vh;
	top: 0px;
	left: 0px;
	position: relative;
	overflow: hidden;
}

.foto-cabecera-proyecto {
	width: 100vw;
	height: 100vh;
	object-position: center center;
	object-fit: cover;
}

#cabecera_proyecto video {
	width: 100vw;
	height: 100vh;
	object-fit: cover;
	object-position: center center;
}

.vimeo-header-project {
	position: relative;
	overflow: hidden;
	height: 100vh;
	width: 100vw;
}

.vimeo-header-project iframe,
.vimeo-header-project object,
.vimeo-header-project embed {
	width: 100% !important;
	/*height: 56.25vw !important;*/
	height: 65vw !important;
	min-height: 100vh !important;
	min-width: 177.77% !important;
	position: absolute !important;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}

#textos_principales_proyecto {
	padding-top: 11.5rem;
	padding-bottom: 15.0rem;
}

.titulo-proyecto {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0.2px;
	margin-bottom: 3.3rem;
}

.subtitulo-proyecto {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 5.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 6.0rem;
}

.descripcion-proyecto {
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: -0.43px;
	line-height: 4.1rem;
	margin-top: 5px;
}

.titulo-caracteristicas-proyecto {
	padding-top: 8.5rem;
	padding-bottom: 6.9rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.1rem;
}

.segunda_fila_caracteristicas {
	padding-top: 6.9rem;
}

.titulo-caracteristica {
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.9rem;
	padding-bottom: 1.2rem;
}

.texto-caracteristica {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: -0.43px;
	line-height: 3.0rem;
}

.modulo-proyecto {
	padding-top: 6.5rem;
	padding-bottom: 6.5rem;
}

.padding-color-especial {
	padding-left: 30px;
	padding-right: 30px;
}

.lado-izquierdo-proyecto {
	padding-right: 6.25%;
}

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

.titulo-texto-modulo {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.1rem;
	padding-bottom: 1.7rem;
}

.texto-texto-modulo {
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: -0.09px;
	line-height: 4.1rem;
	padding-bottom: 6.0rem;
}

.imagen-mitad {
	max-width: 100%;
	height: auto;
}

.imagen-full {
	width: 100%;
	height: auto;
}

.texto-modulo {
	/*opacity: 0.8;*/
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: -0.43px;
	line-height: 4.1rem;
}

.modulo-proyecto video {
	width: 100%;
	height: auto;
}

.sin-padding-proyecto {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.texto-cita-modulo {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.5rem;
}

.nombre-cita-modulo {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 2.8rem;
	padding-top: 12.0rem;
}

.swiper-container {
	padding-top: 3.8rem;
	overflow: hidden;
}

.swiper-container-carrousel {
	padding-top: 3.8rem;
	overflow: hidden;
}

.swiper-container-carrousel .swiper-slide {
	text-align: center;
	/* Center slide text vertically */
	/*display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;*/
}

.swiper-container-carrousel {
	position: relative;
}

.swiper-container-carrousel .swiper-wrapper {
	/*align-items: center;*/
}

.swiper-slide img {
	width: 100%;
	height: auto;
}

.swiper-pagination.swiper-pagination-fraction {
	font-size: 1.8rem;
	letter-spacing: 0.21px;
	top: -20px !important;
	position: relative;
}

.swiper-button-disabled {
	display: none !important;
}

.swiper-prev {
	position: absolute;
	top: 2.8rem;
	left: 0px;
	width: 50%;
	height: calc(100% - 2.8rem);
	z-index: 100;
	cursor: url(/wp-content/themes/firma/images/prev.png), auto;
}

.swiper-next {
	position: absolute;
	top: 2.8rem;
	right: 0px;
	width: 50%;
	height: calc(100% - 2.8rem);
	z-index: 100;
	cursor: url(/wp-content/themes/firma/images/next.png), auto;
}

.swiper-prev-carrousel {
	position: absolute;
	top: 2.8rem;
	left: 0px;
	width: 30%;
	height: calc(100% - 2.8rem);
	z-index: 100;
	cursor: url(/wp-content/themes/firma/images/prev.png), auto;
}

.swiper-next-carrousel {
	position: absolute;
	top: 2.8rem;
	right: 0px;
	width: 30%;
	height: calc(100% - 2.8rem);
	z-index: 100;
	cursor: url(/wp-content/themes/firma/images/next.png), auto;
}

.play-video-online {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 7.2rem;
	height: auto;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.play-video-online:hover {
	opacity: 0.7;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.popup-youtube {
	display: block;
	position: relative;
}

.popup-youtube:hover .play-video-online {
	opacity: 0.7;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.lado-derecho-proyecto svg {
	max-width: 100%;
	height: auto;
}

.video-vimeo { 
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	height: auto; 
} 

.video-vimeo iframe, 
.video-vimeo object, 
.video-vimeo embed { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
}

progress {
  /* Positioning */
  position: fixed;
  left: 0;
  top: 0;

  /* Dimensions */
  width: 100%;
  height: 0.6rem;

  /* Reset the apperance */  
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;

  /* Get rid of the default border in Firefox/Opera. */
  border: none;

  /* For Firefox/IE10+ */
  background-color: transparent;

  /* For IE10+, color of the progress bar */
  color: #000;
}

progress::-webkit-progress-bar {
  background-color: transparent;
}

.flat::-webkit-progress-value {
  background-color: #000;
}

.flat::-moz-progress-bar {
  background-color: #000;
}

.progress-container {
  width: 100%;
  background-color: transparent;
  position: fixed;
  top: 0;
  left: 0;
  height: 0.6rem;
  display: block;
}

.progress-bar {
  background-color: #000;
  width: 50%;
  display: block;
  height: inherit;
}

#progressBar {
  z-index: 10000;
}

#proyectos_relacionados {
	padding-top: 7.0rem;
	padding-bottom: 7.0rem;
}

.titulo-proyectos-relacionados {
	padding-bottom: 4.0rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	letter-spacing: 0;
	line-height: 4.1rem;
	padding-left: 15px;
}

#proyectos_relacionados .titulo-proyecto-work,
#proyectos_relacionados .frase-proyecto-work {
	color: #000;
}

#proyectos_relacionados .proyecto,
#proyectos_relacionados a {
	/*cursor: pointer;*/
}

.iframe-website iframe {
	width: calc(100vw - 90px);
	height: calc(54.45vw - 49px);
	border: 2px solid #000;
	z-index: 2;
	position: relative;
	border-radius: 2.4vw;
}

.iframe-web {
	position: relative;
}

.iframe-web-tablet {
	position: absolute;
	top: -1vw;
	left: -1.15vw;
	width: calc(100% + 1.9vw);
	height: auto;
	z-index: 1;
}

.iframe-web-mobile {
	display: none;
	position: absolute;
	top: -1vw;
	left: -1.15vw;
	width: calc(100% + 1.9vw);
	height: auto;
	z-index: 1;
}


/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/

#seccion_about {
	padding-top: 21.0rem;
	padding-bottom: 0rem;
}

.titulo-principal-about {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 6.5rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 7.0rem;
	padding-bottom: 6.2rem;
}

.texto-principal-about {
	padding-bottom: 12.4rem;
	z-index: 2;
	width: 830px;
	max-width: 100%;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

.texto-principal-about p {
	font-size: 2.5rem;
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.6rem;
}

.texto-principal-about strong {
	font-family: 'Graphik-Medium';
	font-size: 2.5rem;
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.6rem;
}

.animacion-principal-about {
	position: relative;
	text-align: right;
	margin-top: -15rem;
	z-index: 1;
}

.animacion-principal-about video {
	width: 23.0rem;
	height: auto;
}

.foto-principal-about {
	position: relative;
	width: 670px;
	max-width: 100%;
	height: auto;
	left: 50%;
	transform: translateX(-50%);
	padding-bottom: 16.0rem;
}

.texto-destacado-about {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 5.5rem;
	width: 870px;
	max-width: 100%;
	left: 50%;
	transform: translateX(-50%);
	position: relative;
	padding-bottom: 24.0rem;
}

.titulo-modulo-about {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000;
	letter-spacing: 0;
	line-height: 5.0rem;
	padding-bottom: 4.0rem;
	padding-right: 3.0rem;
	padding-left: 3.0rem;
	max-width: 560px;
}

.texto-modulo-about {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.2rem;
	padding-right: 3.0rem;
	padding-left: 3.0rem;
	max-width: 560px;
}

.imagen-modulo-about {
	width: 70%;
	height: auto;
	position: relative;
	margin-top: -7.5rem;
	padding-bottom: 15.0rem;
}

.video-modulo-about {
	width: 50%;
	min-width: 390px;
	max-width: 100%;
	height: auto;
	position: relative;
	margin-top: -7.5rem;
	padding-bottom: 15.0rem;
}

.video-modulo-about video {
	width: 100%;
	height: auto;
}

#seccion_people {
	padding-top: 8.3rem;
	padding-bottom: 8.3rem
}

.titulo-seccion-people {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.1rem;
	padding-bottom: 5.6rem;
	padding-left: 15px;
}

.tabla-personas-about {
	display: table;
	width: 100%;
}

.persona-about {
	display: table-cell;
	padding-bottom: 20px;
	min-height: 650px;
}

.foto-persona-about {
	width: 100%;
	height: auto;
	margin-bottom: 2.0rem;
}

.nombre-persona {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 2.8rem;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 1.0rem;
}

.puesto-persona {
	opacity: 0.5;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 1.5rem;
}

.texto-persona {
	opacity: 0.8;
	font-size: 21px;
	color: #000000;
	letter-spacing: 0;
	line-height: 2.8rem;
}

.texto-destacado-persona {
	min-height: 650px;
}

.texto-destacado-persona-inside {
	top: 8.0rem;
	position: relative;
	padding-left: 10%;
	padding-right: 0px;	
}

.texto-destacado-persona-inside p {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.5rem;
}

.texto-destacado-persona-inside a {
	padding-bottom: 2px;
	border-bottom: 1px solid #000;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	margin-top: 4.0rem;
}

.texto-destacado-persona-inside a:hover {
	text-decoration: none;
	color: #000;
}

#seccion_carrousel_about {
	padding-top: 4.0rem;
	padding-bottom: 8.0rem;
}

#seccion_iniciativas {
	padding-top: 8.0rem;
	padding-bottom: 8.0rem;
}

.titulo-iniciativas {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.5rem;
	padding-bottom: 9.0rem;
}

.iniciativa-div {
	padding-left: 55px;
	padding-right: 55px;
}

.iniciativa-div:first-child,
.iniciativa-div:last-child {
	padding-top: 7.0rem;
}

.foto-iniciativa {
	width: 100%;
	height: auto;
}

.titulo-iniciativa {
	padding-bottom: 2.0rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.0rem;
	padding-top: 2.0rem;
}

.texto-iniciativa {
	padding-bottom: 2.3rem;
	font-size: 2.1rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.4rem;
}

.enlace-iniciativa {
	padding-bottom: 2px;
	border-bottom: 1px solid #000;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
}

.enlace-iniciativa:hover {
	text-decoration: none;
	color: #000;
}

#seccion_clientes {
	padding-top: 6.0rem;
	padding-bottom: 8.8rem;
}

#seccion_clientes div {
	text-align: center;
	height: 25.0rem;
}

.logo-cliente {
	max-width: 100%;
	max-height: 7.0rem;
	position: relative;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}





/*--------------------------------------------------------------
# Contacto
--------------------------------------------------------------*/

#head_office {
	padding-top: 18.0rem;
	padding-bottom: 4.0rem;
}

.fecha-temperatura {
}

.fecha {
	opacity: 0.5;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	margin-right: 15px;
	display: inline-block;
	height: 2.2rem;
}

.titulo-head-office {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 3.0rem;
}

.direccion, .telefono {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: -0.07px;
	line-height: 3.0rem;
}

.telefono {
	padding-bottom: 3.0rem;
}

.titulo-contacto, .contacto-contacto {
	opacity: 0.6;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 2.5rem;
}

.contacto-contacto {
	padding-bottom: 1.6rem;
}

.mail-contacto {
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 2.5rem;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.mail-contacto:hover {
	color: #000000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.condiciones {
	margin-bottom: 12.5rem;
}

.condiciones div {
	font-size: 1.8rem;
	color: #000000;
	letter-spacing: 0;
	display: inline-block;
}

.foto-head-office {
	width: 100%;
	height: auto;
	margin-bottom: 4.0rem;
}

.wu-copyright {
	display: none !important;
}

.wu-day-current-temp {
	opacity: 0.5 !important;
	font-size: 1.6rem !important;
	color: #000000 !important;
	letter-spacing: 0 !important;
	font-family: 'Graphik-Regular' !important;
}

.wu-wrapper {
	display: inline-block !important;
	width: auto !important;
	float: none !important;
	clear: initial !important;
	height: 2.2rem !important;
	vertical-align: middle !important;
	padding-top: 2px;
}

.condiciones .wu-wrapper {
	display: inline-block !important;
	width: auto !important;
	float: none !important;
	clear: initial !important;
	height: auto !important;
	vertical-align: middle !important;
	padding-top: 0px !important;
}

.wu-current-conditions .wu-day-title {
	font-size: 1.6rem !important;
	width: auto !important;
	font-family: 'Graphik-Regular' !important;
}

.wu-current-conditions .wu-day-title small {
	margin-left: 0px !important;
	font-size: 1.6rem !important;
	font-family: 'Graphik-Regular' !important;
}

.wu-forecast-wrapper, .wu-forecast-wrapper div {
	margin-bottom: 0px !important;
}

.condiciones .wu-day-title {
	display: none;
}

.wu-current-conditions .wu-cond-text {
	width: auto;
}

#otras_sedes_contacto img {
	max-width: 100%;
	max-height: 80vh;
	width: auto;
	height: auto;
	margin-bottom: 4.0rem;
}

.awesome-weather-header, .awesome-weather-forecast,
.awesome-weather-attribution {
	display: none;
}

.awesome-weather-current-temp { 
	font-size: 1.6rem !important;
	color: #000000 !important;
	letter-spacing: 0 !important;
	font-family: 'Graphik-Regular' !important;
	background: transparent;
	border: none;
	background-color: transparent;
	padding: 0 0 !important;
	text-shadow: none !important;
	font-weight: normal !important;
}

.awesome-weather-current-temp strong {
	font-weight: 300 !important;
}

.awesome-weather-wrap {
	background-color: transparent !important;
	background: transparent !important;
	text-shadow: none !important;
	display: inline-block !important;
	font-size: 1.6rem !important;
	color: #000000 !important;
	letter-spacing: 0 !important;
	font-family: 'Graphik-Regular' !important;
	font-weight: normal !important;
}

.awesome-weather-current-temp sup {
	display: none !important;
}

.new-temperature-firma {
	display: inline-block;
	opacity: 0.5 !important;
	font-size: 1.6rem !important;
	color: #000000 !important;
	letter-spacing: 0 !important;
	font-family: 'Graphik-Regular' !important;
}

/*--------------------------------------------------------------
# Careers
--------------------------------------------------------------*/

#cabecera_careers {
	padding-top: 19.3rem;
	padding-bottom: 11.0rem;
}

.titulo-careers {
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 6.3rem;
	padding-bottom: 5.5rem;
}

#cabecera_careers video {
	width: 305px;
	max-width: 100%;
	margin-bottom: 8.0rem;
}

.texto-careers p {
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.5rem;
}

.texto-careers a, .texto-careers a:hover {
	font-size: 3.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.5rem;
	text-decoration: underline;
	padding-bottom: 6.0rem;
}

.texto-careers strong {
	font-weight: 600;
}

.subtitulo-careers {
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 6.3rem;
}

.titulo-offer {
	font-size: 2.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.0rem;
	padding-bottom: 4.0rem;
	text-decoration: underline;
	cursor: pointer;
	z-index: 2;
	padding-right: 30px;
}

.flecha-offer {
	opacity: 0;
	cursor: pointer;
	float: right;
	position: relative;
	margin-top: -70px;
	z-index: 1;
}

.descripcion-offer {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.0rem;
	padding-bottom: 5.5rem;
}

.titulo-apartado-offer {
	font-size: 2.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.0rem;
	padding-bottom: 2.1rem;
}

.texto-apartado-offer {
	opacity: 0.61;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 2.5rem;
	margin-bottom: 1.7rem;
}

.descripcion-de-la-offer {
	display: none;
	opacity: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.apply-offer {
	font-size: 1.6rem;
	color: #000000;
	background-color: #fff;
	letter-spacing: 0;
	text-align: center;
	line-height: 2.4rem;
	position: relative;
	display: inline-block;
	margin-top: 2.0rem;
	margin-bottom: 7.0rem;
	border: 1px solid #000;
	padding: 1.6rem 1.9rem 1.9rem 1.9rem;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.apply-offer:hover {
	background-color: #000;
	color: #fff;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
}

.aparece {
	opacity: 1 !important;
	display: block !important;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;	
}

#email_jobs {
	border: none;
	border-bottom: 1px solid #000;
	margin-top: 6.0rem;
	padding-bottom: 1.1rem;
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
}

#email_jobs::placeholder {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
}

#email_jobs:focus {
	outline: none;
}

#submit-jobs {
	position: relative;
	margin-left: -35px;
	border: none;
	background-color: none;
	color: transparent;
	background: url('/wp-content/themes/firma/images/flecha-enviar-mail.svg') no-repeat;
}

#cabecera_careers span.wpcf7-not-valid-tip {
	display: none;
}

#cabecera_careers .wpcf7-form.sent #email_jobs,
#cabecera_careers .wpcf7-form.sent #submit-jobs,
#cabecera_careers .wpcf7-form.sent .aceptarterms {
	display: none;
}

#cabecera_careers div.wpcf7-mail-sent-ok {
	margin-top: 6.0rem;
	padding-bottom: 1.1rem;
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

div.wpcf7-validation-errors {
	margin-top: 2.0rem;
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

.formulario-mail-jobs {
	display: none;
}

.abrir-form-mail-jobs {
	font-size: 1.6rem;
	position: relative;
	display: inline-block;
	cursor: pointer;
	margin-top: 6.8rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 2.4rem;
	padding: 1.7rem 3.3rem 1.9rem 3.4rem;
	border: 1px solid #000;
	background-color: #fff;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;	
}

.abrir-form-mail-jobs:hover {
	text-decoration: none;
	color: #fff;
	border: 1px solid #000;
	background-color: #000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;	
}


/*--------------------------------------------------------------
# Services
--------------------------------------------------------------*/

#cabecera_services {
	padding-top: 20.9rem;
	padding-bottom: 11.0rem;
}

.titulo-services {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 6.5rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 7.0rem;
}

.subtitulo-services {
	margin-top: 6.2rem;
	font-size: 2.5rem;
	color: #000000;
	letter-spacing: -0.13px;
	text-align: center;
	line-height: 3.6rem;
	margin-bottom: 10.0rem;
	width: 840px;
	max-width: calc(100% - 40px);
	left: 50%;
	transform: translateX(-50%);
	position: relative;
}

#animacion_services {
	width: 100%;
	height: auto;
	text-align: center;
}

#animacion_services svg {
	width: 940px;
	max-width: calc(100% - 260px);
}

.textos-animacion-services {
	width: 1200px;
	max-width: calc(100% - 30px);
	padding-top: 8.0rem;
	text-align: left;
	margin: 0 auto;
}

.columna-textos-services {
	padding-right: 4.3rem;
	padding-left: 6.3rem;
}

.titulo-textos-animacion-services {
	padding-bottom: 2.0rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 2.1rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.0rem;
}

.texto-textos-animacion-services {
	font-size: 1.8rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.0rem;
}

.color-capabilities {
	padding-top: 12.9rem;
	padding-bottom: 11.0rem; 
}

.titulo-our-capabilities {
	opacity: 0.5;
	font-size: 2.4rem;
	letter-spacing: 0;
	padding-bottom: 8.1rem;
	padding-left: 15px;
}

.titulo-capability {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.0rem;
	letter-spacing: -0.05px;
	line-height: 3.8rem;
	padding-bottom: 2.6rem;
}

.subtitulo-capability {
	font-size: 1.8rem;
	letter-spacing: 0;
	line-height: 3.0rem;
	padding-bottom: 2.3rem;
}

.servicios-capability {
	font-size: 1.6rem;
	opacity: 0.5;
	line-height: 3.0rem;
	padding-bottom: 10.0rem;
}

.fila-izquierda video, .fila-derecha video,
.fila-izquierda img, .fila-derecha img {
	margin-bottom: 4.3rem;
	width: 100%;
}

.fila-izquierda, .fila-derecha {
	padding-right: 20%;
}


/*--------------------------------------------------------------
# Work
--------------------------------------------------------------*/

#cabecera_work {
	padding-top: 16.1rem;
}

.view-all-clients {
	text-align: right;
}

.link-all-clients {
	cursor: pointer;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid #000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.link-all-clients:hover {
	text-decoration: none;
	color: #000;
	border-bottom: 2px solid #000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#proyectos_work {
	/*padding-top: 7.2rem;*/
	padding-top: 18.2rem;
	padding-bottom: 15.3rem;
}

#proyectos_work a {
	/*cursor: none;*/
}

.proyecto {
	margin-bottom: 5.8rem;
	/*cursor: none;*/
}

.proyecto img {
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center center;
	cursor: none;
}

.vimeo-thumbnail-project iframe,
.vimeo-thumbnail-project object,
.vimeo-thumbnail-project embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.over-vimeo-thumbnail {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
	cursor: none;
}

.page-template-page-work .proyecto img {
	height: 50vh;
}

.imagen-del-proyecto-home-mobile,
.imagen-del-proyecto-work-mobile {
	display: none;
}

.imagen-del-proyecto-work-mobile {
	height: auto !important;
	width: 100%;
}

.especial-work {
	height: 50vh;
	margin-bottom: 5.8rem;
}

.titulo-proyecto-work {
	position: absolute;
	top: 2.0rem;
	left: 4.0rem;
	font-size: 2.4rem;
	letter-spacing: 0;
}

.frase-proyecto-work {
	position: absolute;
	top: 5.0rem;
	left: 4.0rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 5.4rem;
	letter-spacing: -0.19px;
	line-height: 6.1rem;
	width: 80%;
	opacity: 0;
	transform: translateY(20px);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.proyecto:hover .frase-proyecto-work {
	opacity: 1;
	transform: translateY(0px);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.especial-work .proyecto-texto-work {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.5rem;
	padding-left: 5.2rem;
	padding-right: 0px;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}

.especial-work video {
	width: 50%;
	position: absolute;
	bottom: 0px;
	right: 0px;
}

.especial-work .proyecto-imagen-work {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center center;
	position: relative;
}

#view-project {
  display: none;
  position: absolute;
  z-index: 900;
  font-size: 2.0rem;
  line-height: 2.4rem;
}

.proyecto a {
	cursor: none;
	text-decoration: none;
}

#ventana_all_projects {
	background-color: #FBF9F5;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 9999;
	display: none;
	opacity: 0;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#close-ventana-all-projects {
	position: fixed;
	top: 3.1rem;
	right: 3.2rem;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    width: 3.1rem;
    height: auto;
    cursor: pointer;
}

#close-ventana-all-projects:hover {
	transform: rotate(45deg);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.titulo-ventana-all-projects {
	font-size: 2.4rem;
	color: #000000;
	letter-spacing: 0;
	padding-top: 9.6rem;
	padding-left: 4.5rem;
	position: absolute;
}

#listado-proyectos {
	padding-top: 21.5rem;

}

.columnas-proyectos {
	-webkit-column-count: 4;
	-moz-column-count: 4;
	column-count: 4;
	padding-left: 6.0rem;
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.enlace-listado-proyectos {
	opacity: 0.7;
	font-size: 2.1rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 40px;
	padding-bottom: 2px;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: block;
}

.enlace-listado-proyectos:hover {
	opacity: 1;
	color: #000;
	text-decoration: none;
	border-color: 1px solid #000;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.new-titular-project {
	font-family: 'Graphik-Regular',sans-serif;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: -0.08px;
	line-height: 3.2rem;
	margin-top: 2.0rem;
}

.new-titulo-project {
	font-family: 'Graphik-Regular',sans-serif;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: -0.08px;
	line-height: 3.2rem;
	padding-bottom: 2.5px;
	/*border-bottom: 1px solid #000000;*/
	text-transform: uppercase;
}

.new-frase-project {
	font-family: 'Graphik-Regular',sans-serif;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: -0.08px;
	line-height: 3.2rem;
}

/*--------------------------------------------------------------
# Post
--------------------------------------------------------------*/

.single-post .frase-footer {
	display: none;
}

.single-post .sedes-footer {
	padding-bottom: 90px;
}

#cabecera_post {
	margin-bottom: 6.3rem;
}

.espaciado-post-nada {
	margin-top: 11.7rem;
	position: relative;
	width: 100%;
}

.title-post {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 6.5rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 7.0rem;
	width: 840px;
	max-width: calc(100% - 40px);
	left: 50%;
	transform: translateX(-50%);
	padding-top: 7.9rem;
	position: relative;
}

.categoria-tiempo {
	opacity: 0.4;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	padding-bottom: 1.5rem;
	padding-top: 3.0rem;
}

.nombre-autor {
	opacity: 0.61;
	font-family: 'Graphik-Medium';
	font-size: 1.8rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 2.5rem;
	padding-bottom: 9.0rem;
}

.nombre-autor-post {
	opacity: 0.61;
	font-family: 'Graphik-Medium';
	font-size: 1.8rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 2.5rem;
}

#modulos_post {
	padding-top: 9.7rem;
	padding-bottom: 12.9rem;
}

#modulos_post video {
	width: 100%;
	height: auto;
}

.texto-simple-post, .texto-simple-post p {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.0rem;
}

.texto-simple-post {
	width: 660px;
	max-width: 100%;
	margin: 0 auto;
}

.texto-simple-post a {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.0rem;
	padding-bottom: 2px;
	border-bottom: 1px solid #000;
}

.texto-simple-post a:hover {
	text-decoration: none;
	color: #000;
	border-bottom: 2px solid #000;
}

.texto-simple-post em, .texto-simple-post strong {
	font-family: 'Graphik-Medium';
}

.texto-destacado-post {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 4.0rem;
	padding-left: 5.0rem;
	padding-right: 5.0rem;
	width: 660px;
	max-width: 100%;
	margin: 0 auto;
}

.highlight-and-share-wrapper div.has_twitter,
.highlight-and-share-wrapper div.has_twitter:hover {
	background: #fff !important;
}

.highlight-and-share-wrapper div.has_twitter:after {
    content:'';
    position: absolute;
    top: 25%;
    left: 00%;
    margin-left: -10px;
    width: 0;
    height: 0;
    border-right: solid 10px #fff;
    border-top: solid 10px transparent;
    border-bottom: solid 10px transparent;
}

.highlight-and-share-wrapper a, .highlight-and-share-wrapper a:hover, .highlight-and-share-wrapper a:visited {
	color: #000 !important;
	padding: 0px 5px !important;
}

.imagen-post {
	width: 100%;
	height: auto;
}

.espaciado-atras {
	margin-bottom: 7.9rem;
}

.share-desktop {
	position: fixed;
	top: 9.2rem;
	left: 6.0rem;
	opacity: 0;
	display: none;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.addtoany_list.a2a_kit_size_32 a {
	display: block;
}

#posts_relacionados {
	background-color: #FDFDFB;
	padding-top: 10.4rem;
	padding-bottom: 19.0rem;
}

#posts_relacionados img {
	width: 100%;
	height: auto;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#posts_relacionados a, #posts_relacionados a:hover {
	color: #000;
	text-decoration: none;
} 

#posts_relacionados a:hover img {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#posts_relacionados a:hover .titulo-post-relacionado {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.titulo-posts-relacionados {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.0rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 4.9rem;
	padding-bottom: 9.4rem;
}

.titulo-post-relacionado {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 2.6rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 3.5rem;
	margin-bottom: 0.6rem;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.excerpt-post-relacionado {
	opacity: 0.7;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0.1px;
	line-height: 2.4rem;
	padding-bottom: 2.0rem;
}

.cat-time-relacionado {
	opacity: 0.4;
	font-size: 1.6rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 1.9rem;
	padding-bottom: 1.0rem;
	margin-top: 2.2rem;
}

.nombre-autor-relacionado {
	opacity: 0.4;
	font-family: 'Graphik-Medium';
	font-size: 1.4rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 1.8rem;
}

.foto-autor img {
	width: 45px !important;
	height: 45px !important;
	object-fit: cover;
	object-position: center center;
	border-radius: 100%;
	margin-top: 0px !important;
	margin-right: 13px;
}

.post-firma {
	padding-bottom: 40px;
}


/*--------------------------------------------------------------
# Blog
--------------------------------------------------------------*/

#cabecera_blog {
	padding-top: 20.0rem;
	padding-bottom: 10.0rem;
}

.titulo-blog {
	font-size: 5.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 7.5rem;
	padding-bottom: 7.0rem;
}

.subtitulo-blog {
	font-size: 4.5rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 5.5rem;
	padding-bottom: 7.0rem;
}

#primeros_posts a, #primeros_posts a:hover {
	color: #000;
	text-decoration: none;
} 

#primeros_posts .titulo-post-relacionado, #primeros_posts .excerpt-post-relacionado {
	padding-right: 40%;
}

#primeros_posts a:hover img {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#primeros_posts a:hover .titulo-post-relacionado {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#siguientes_posts {
	padding-bottom: 100px;
}

#primeros_posts img, #siguientes_posts img {
	width: 100%;
	height: auto;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#siguientes_posts a, #primeros_posts a:hover {
	color: #000;
	text-decoration: none;
} 

#siguientes_posts .titulo-post-relacionado, #siguientes_posts .excerpt-post-relacionado {
	padding-right: 10%;
}

#siguientes_posts a:hover img {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#siguientes_posts a:hover .titulo-post-relacionado {
	/*opacity: 0.7;*/
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#siguientes_posts img {
	margin-top: 9.7rem;
}

#subscribe {
	text-align: center;
	padding-top: 10.0rem;
	padding-bottom: 13.0rem;
}

.titulo-newsletter-post {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.0rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 4.9rem;
	padding-bottom: 6.7rem;
	width: 700px;
	max-width: 100%;
	margin: 0 auto;
}

#subscribe div.wpcf7 {
	width: 490px;
	max-width: 100%;
	margin: 0 auto;
	position: relative;
}

#subscribe #email_newsletter {
	color: #000 !important;
	border-bottom: 1px solid #000;
}

#subscribe #email_newsletter::placeholder {
	color: #000 !important;
}


#subscribe #submit_newsletter {
	background: url('/wp-content/themes/firma/images/flecha-enviar-mail.svg') no-repeat;
}


#subscribe span.wpcf7-not-valid-tip {
	display: none;
}

#subscribe .wpcf7-form.sent #email_newsletter,
#subscribe .wpcf7-form.sent #submit_newsletter,
#subscribe .wpcf7-form.sent .aceptarterms {
	display: none;
}

#subscribe div.wpcf7-mail-sent-ok {
	margin-top: 0rem;
	padding-bottom: 1.1rem;
	font-size: 2.0rem;
	color: #000;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

#subscribe div.wpcf7-validation-errors {
	margin-top: 2.0rem;
	font-size: 2.0rem;
	color: #000;
	letter-spacing: 0;
	border: none;
	padding-left: 0px;
	margin-left: 0px;
}

.highlight-and-share-wrapper .fa {
	font-size: 25px !important;
}

/*--------------------------------------------------------------
# Terms
--------------------------------------------------------------*/

#seccion_terms {
	padding-top: 21.0rem;
	padding-bottom: 0rem;
}

.textos-terms p {
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.0rem;
}

.textos-terms h1 {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 6.5rem;
	color: #000000;
	letter-spacing: 0;
	text-align: center;
	line-height: 7.0rem;
	padding-bottom: 5.2rem;
	padding-bottom: 5.2rem;
}

.textos-terms h2 {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 7.0rem;
	padding-bottom: 4.2rem;
	padding-top: 4.2rem;
}

.textos-terms h3 {
	font-family: 'Graphik-Medium';
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: 0;
	line-height: 4.9rem;
	padding-bottom: 1.2rem;
	padding-top: 3.2rem;
}

.textos-terms a {
	font-size: 2.0rem;
	font-family: 'Graphik-Medium';
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.0rem;
	text-decoration: underline;
}

.textos-terms a:hover {
	font-size: 2.0rem;
	font-family: 'Graphik-Medium';
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.0rem;
	text-decoration: underline;
}

.textos-terms ul {
	margin-top: 3.0rem;
	margin-bottom: 3.0rem;
	font-size: 2.0rem;
	color: #000000;
	letter-spacing: -0.13px;
	line-height: 3.0rem;
	padding-left: 2.0rem;
}

.textos-terms {
	margin-bottom: 10.0rem;
}

.aceptarterms {
	margin-top: 2.6rem;
	margin-bottom: 3.6rem;
}

.aceptarterms .wpcf7-list-item-label {
	opacity: 0.61;
	font-size: 1.4rem;
	color: #000000;
	letter-spacing: 0;
	font-weight: normal !important;
	padding-left: 2.0rem;
}

.aceptarterms .enlace-terms,
.aceptarterms .enlace-terms:hover {
	opacity: 0.61;
	font-size: 1.4rem;
	color: #000000;
	letter-spacing: 0;
	text-decoration: underline;
	margin-left: 0.5rem;
}


.aceptarterms input[type=checkbox] {
	display: none;
}

.aceptarterms .wpcf7-list-item-label:before {
	background: transparent;
	border: 1px solid #000;
	border-radius: 0px;
	content: " " !important;
	color: #000;
	font-size: 14px;
	font-family: 'FontAwesome';
	left: 0px;
	position: absolute;
	top: -5px;
	height: 22px;
	width: 22px;
}

.aceptarterms input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	content: "\f00c" !important;
	color: #000;
	font-size: 14px;
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
	text-align: center;
	display: inline-block;
}

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
	border: none;
}

div.wpcf7-response-output {
	margin: 1.0rem 0 0 0;
	padding: none;
	padding-left: 0px !important;
	font-family: 'Graphik-Medium';
	font-size: 1.4rem;
}

#colophon .aceptarterms {
	margin-top: 1.6rem;
	margin-bottom: 2.6rem;
}

#colophon .aceptarterms .wpcf7-list-item-label {
	opacity: 0.61;
	font-size: 1.4rem;
	color: #fff;
	letter-spacing: 0;
	font-weight: normal !important;
	padding-left: 2.0rem;
}

#colophon .aceptarterms .enlace-terms,
#colophon .aceptarterms .enlace-terms:hover {
	opacity: 0.61;
	font-size: 1.4rem;
	color: #fff;
	letter-spacing: 0;
	text-decoration: underline;
	margin-left: 0.5rem;
}


#colophon .aceptarterms input[type=checkbox] {
	display: none;
}

#colophon .aceptarterms .wpcf7-list-item-label:before {
	background: transparent;
	border: 1px solid #fff;
	border-radius: 0px;
	content: " " !important;
	color: #000;
	font-size: 14px;
	font-family: 'FontAwesome';
	left: 0px;
	position: absolute;
	top: -5px;
	height: 22px;
	width: 22px;
}

#colophon .aceptarterms input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	content: "\f00c" !important;
	color: #fff;
	font-size: 14px;
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
	text-align: center;
	display: inline-block;
}

/*--------------------------------------------------------------
# NEW YEAR
--------------------------------------------------------------*/

.page-template-page-new-year #content {
	background: #000;
}

.page-template-page-new-year .color-logo,
.page-template-page-new-year.is-nav-showing .color-logo,
.page-template-page-new-year.is-nav-showing #header_desktop .color-logo {
	fill: #fff !important;
}

.page-template-page-new-year #logo_hover_desktop path,
.page-template-page-new-year.is-nav-showing #logo_hover_desktop path {
	fill: #fff !important;
}

.page-template-page-new-year .opcion-menu:hover,
.page-template-page-new-year .opcion-menu {
	color: #fff !important;
}

.page-template-page-new-year .opcion-menu:hover {
	border-bottom: 1px solid rgba(255,255,255,1) !important;
}

.page-template-page-new-year.is-nav-showing #header_desktop {
	background-color: #000 !important;
}

.page-template-page-new-year.is-nav-showing #header_desktop .opcion-menu {
	color: #fff !important;
}

.page-template-page-new-year.is-nav-showing #header_desktop .opcion-menu:hover {
	border-bottom: 1px solid rgba(255,255,255,1) !important;
}

.page-template-page-new-year.is-nav-hidden #header_desktop {
	background-color: #000 !important;
}

#cabecera_new_year {
	padding-top: 17.3rem;
	padding-bottom: 10.0rem;
}

.titulo-new-year {
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 4.5rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 5.5rem;
}

.texto-cabecera-new-year {
	font-size: 2.0rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 3.0rem;
	padding-top: 0.8rem;
}

.video-new-year { 
	position: relative; 
	padding-bottom: 56.25%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
} 

.video-new-year iframe,
.video-new-year object,
.video-new-year embed { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video-new-year iframe {
	opacity: 0;
}

.portada-video-new-year {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: none;
}

.video-new-year:hover .portada-video-new-year {
	
}

.desaparece-thumbnail {
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.ano-portada-video-new-year {
	position: absolute;
	top: 4.5rem;
	left: 4.1rem;
	font-size: 2.4rem;
	color: #FFFFFF;
	letter-spacing: 0;
}

.titulo-portada-video-new-year {
	position: absolute;
	left: 4.1rem;
	top: 8.4rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 5.4rem;
	color: #FFFFFF;
	letter-spacing: -0.19px;
	line-height: 6.1rem;
}

#videos-anos-anteriores {
	padding-top: 10.0rem;
	padding-bottom: 8.6rem;
}

.titulo-videos-anos-anteriores {
	padding-bottom: 5.7rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 3.5rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 5.0rem;
}

.titulo-video-anterior {
	padding-top: 1.7rem;
	padding-bottom: 1.3rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 2.6rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 3.5rem;
}

.ano-video-anterior {
	font-size: 1.6rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 1.9rem;
}

.video-anterior {
	padding-bottom: 5.7rem;
}

.textos-video-anterior {
	min-height: 13.0rem;
}

.portada-video-anterior {
	position: relative;
	cursor: none;
	width: 100%;
	height: 20.0rem;
	object-fit: cover;
	object-position: center center;
}

.video-anterior:hover .portada-video-anterior {
	
}

.ano-portada-video-new-year-mobile {
	font-size: 1.6rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 1.9rem;
	display: none;
}

.titulo-portada-video-new-year-mobile {
	padding-top: 1.7rem;
	padding-bottom: 1.3rem;
	font-family: 'GraphikWideRegular',sans-serif;
	font-size: 2.6rem;
	color: #FFFFFF;
	letter-spacing: 0;
	line-height: 3.5rem;
	display: none;
}

.page-template-page-new-year .hamburger-inner, 
.page-template-page-new-year .hamburger-inner:after, 
.page-template-page-new-year .hamburger-inner:before {
	background-color: #fff !important;
}

.page-template-page-new-year.is-nav-showing #header_mobile,
.page-template-page-new-year.is-nav-hidden #header_mobile {
	background-color: #000 !important;
}

.page-template-page-new-year.is-nav-showing #header_mobile .color-logo {
	fill: #fff !important;
}

.play-vimeo, .play-vimeo-new-year {
	position: absolute;
	left: 50%;
	top: 10.0rem;
	transform: translate(-50%, -50%);
	display: none;
	cursor: pointer;
}

.play-vimeo-new-year {
	top: 12.0rem;
}

#watch-video {
  display: none;
  position: absolute;
  z-index: 900;
  font-size: 2.0rem;
  line-height: 2.4rem;
  color: #fff;
}

/*--------------------------------------------------------------
# Brands in the next normal
--------------------------------------------------------------*/

#contenido_next_normal {
	background: #F4F4F4;
	padding: 15.4rem 4.5rem 18.4rem 6.0rem;
}

#contenido_next_normal .row {
}

.texto-next-normal {
	max-width: 74rem;
	font-size: 6.0rem;
	color: #000000;
	letter-spacing: -1.6px;
	line-height: 6.5rem;
}

.texto-next-normal u {
	text-decoration: none;
	border-bottom: 3px solid #000;
	line-height: 7.5rem;
}

.sticker-next-normal {
	cursor: move;
	cursor: grab;
	cursor: -moz-grab;
	cursor: -webkit-grab;
	z-index: 1000;
	position: absolute;
}

.sticker-next-normal:active {
	cursor: grabbing;
	cursor: -moz-grabbing;
	cursor: -webkit-grabbing;
}

#sticker_1 {
    top: 12.0rem;
    width: 7.9rem;
    left: 63rem;
}

#sticker_2 {
    top: 23.5rem;
    width: 7.3rem;
    left: 11rem;
}

#sticker_3 {
    top: 36rem;
    width: 7.3rem;
    left: 42.5rem;
}

#form_next_normal {
	position: relative;
	padding-left: 12.0rem;
	padding-top: 1.0rem;
}

.banner-next-normal {
	width: 43.0rem;
	max-width: 100%;
	height: auto;
	position: relative;
	margin-bottom: 3.4rem;
}

/*.banner-next-normal:hover #banner_next_normal {
	transform: translate(7px, 7px);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}*/

#banner_next_normal {
	width: calc(100% - 7px);
	height: auto;
	position: relative;
	left: 0;
	top: 0;
	z-index: 100;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.gray-banner {
	background: #0D0D0D;
	width: calc(100% - 7px);
	position: absolute;
	right: 0;
	bottom: -7px;
	height: 100%;
	z-index: 0;
}

.button-show-form {
	display: inline-flex;
	cursor: pointer;
	background: #000000;
	border: 1px solid #000000;
	font-size: 2.2rem;
	color: #FFFFFF;
	letter-spacing: 0.2px;
	padding: 2.2rem 5.8rem 1.8rem 5.9rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.button-show-form:hover, .button-show-form:focus {
	background: transparent;
	color: #000;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.button-watch-video-next-normal {
	opacity: 1;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	padding-bottom: 0.8rem;
	border-bottom: 1px solid #000000;
	display: inline-flex;
	margin-top: 4.3rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.button-watch-video-next-normal:hover, .button-watch-video-next-normal:focus {
	opacity: 0.7;
	text-decoration: none;
	color: #000;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.form-next-normal {
	display: none !important;
}

.email-next-normal input, .email-next-normal input:focus {
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0;
	padding-bottom: 1.0rem;
	border: none;
	border-bottom: 1px solid #000000;
	margin-bottom: 2.0rem;
	width: 100%;
	max-width: 33.0rem;
	background: transparent;
	outline: none;
}

.acceptance-next-normal {
	margin-bottom: 2.5rem;
	display: block;
}

.acceptance-next-normal .wpcf7-list-item-label {
	opacity: 0.48;
	font-size: 1.4rem;
	color: #000000;
	letter-spacing: 0;
	font-weight: normal !important;
	padding-left: 2.0rem;
}

.acceptance-next-normal a,
.acceptance-next-normal a:hover {
	font-size: 1.4rem;
	color: #000000;
	letter-spacing: 0;
	text-decoration: underline;
	margin-left: 0.2rem;
}


.acceptance-next-normal input[type=checkbox] {
	display: none;
}

.acceptance-next-normal .wpcf7-list-item-label:before {
	background: transparent;
	border: 1px solid #000;
	border-radius: 0px;
	content: " " !important;
	color: #000;
	font-size: 14px;
	font-family: 'FontAwesome';
	left: 0px;
	position: absolute;
	top: -2px;
	height: 22px;
	width: 22px;
}

.acceptance-next-normal input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	content: "\f00c" !important;
	color: #000;
	font-size: 14px;
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
	text-align: center;
	display: inline-block;
}

#form_next_normal .wpcf7-submit {
	-webkit-appearance: none !important;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	padding: 2.2rem 8.5rem 2.2rem 3.6rem;
	width: 100%;
	position: relative;
	border: 1px solid #000000;
	background: transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.boton-submit {
	opacity: 0.5;
	position: relative;
	width: 35rem;
	margin-top: 0.9rem;
	margin-bottom: 0.9rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.boton-submit:before {
	content: url('/wp-content/themes/firma/images/download_next_normal.svg');
	z-index: 100;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 3.6rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#form_next_normal div.wpcf7 .ajax-loader {
	display: none !important;
}

.boton-submit:hover, .boton-submit:focus {
	opacity: 1;
	background: #000;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
} 

.boton-submit:hover .wpcf7-submit,
.boton-submit:focus .wpcf7-submit {
	color: #fff !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.boton-submit:hover:before,
.boton-submit:focus:before {
	content: url('/wp-content/themes/firma/images/download_next_normal_white.svg');
	z-index: 100;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#form_next_normal div.wpcf7-response-output {
	border: none;
	font-size: 2.2rem;
	color: #000000;
	letter-spacing: 0.2px;
	padding: 0 0;
	padding-top: 3.0rem;
}

.desaparece-boton-next-normal {
	display: none !important;
}

.aparece-form-next-normal {
	display: block !important;
}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/

#header_mobile {
	display: none;
}

.foto-cabecera-proyecto-mobile {
	display: none;
}

.no-desktop {
	display: none !important;
}

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

.menu-mobile .opcion-menu:hover, .menu-mobile .opcion-menu:focus {
	border-bottom: none;
}

@media (max-width: 500px) {
	html {
	    font-size: 45%;
	    width: 100vw;
		max-width: 100vw;
		overflow-x: hidden;
	}
	body {
		width: 100vw;
		max-width: 100vw;
		overflow-x: hidden;
	}
	.no-mobile {
		display: none !important;
	}
	.no-desktop {
		display: block !important;
	}
	.row-content {
		margin-right: -25px;
		margin-left: -25px;
	}
	.container-fluid {
		padding-left: 25px;
		padding-right: 25px;
	}
	#header_desktop {
		display: none;
	}
	#header_mobile {
		display: block;
	}
	#scrolltotop {
		display: none !important;
	}
	.texto-sobre-la-cabecera {
		font-size: 45px;
		line-height: 45px;
	}
	#textos_principales {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.titulo-home {
		padding-bottom: 36px;
	}
	.titulo-proyecto-work {
		position: relative;
		left: 0px;
		display: block;
		font-size: 16px;
		color: #000000 !important;
		letter-spacing: 0;
	}
	.frase-proyecto-work {
		position: relative;
		display: block;
		top: 0px;
		left: 0px;
		opacity: 1;
		font-size: 20px;
		color: #000000 !important;
		letter-spacing: -0.11px;
		line-height: 25px;
		padding-bottom: 50px;
		width: 100% !important;
	}
	.titulo-services-home {
		font-size: 36px;
		line-height: 46px;
	}
	.titulo-footer {
		/*padding-top: 30px;*/
		font-size: 13px;
	}
	.titulo-newsletter-footer {
		padding-top: 50px;
	}
	#footer-down {
		padding-top: 60px;
	}
	.frase-footer {
		padding-bottom: 7.0rem;
	}
	.especial-work .proyecto-texto-work {
		padding-left: 20px;
		padding-right: 20px;
		font-size: 26px;
		line-height: 38px;
		text-align: center;
		top: 0px;
		transform: translateY(0px);
	}
	.titulo-principal-about {
		font-size: 36px;
		color: #000000;
		letter-spacing: 0;
		line-height: 40px;
		text-align: left;
		padding-left: 20px;
	}
	.texto-principal-about {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 50px;
	}
	.foto-principal-about {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 50px;
	}
	.texto-modulo-about {
		padding-left: 0px;
		padding-right: 0px;
		font-size: 16px;
		line-height: 26px;
	}
	.imagen-modulo-about {
		width: 100%;
		margin-top: 30px;
		padding-bottom: 30px;
	}
	.texto-destacado-about {
		font-size: 26px;
		line-height: 34px;
		padding-top: 50px;
		padding-bottom: 50px;
		width: calc(100% - 40px);
		text-align: left;
	}
	.animacion-principal-about {
		margin-top: 0px;
		margin-bottom: 50px;
	}
	.titulo-modulo-about {
		padding-left: 0px;
		padding-top: 30px;
		max-width: 100%;
	}
	.persona-about {
		min-height: 350px;
		padding-bottom: 20px;
	}
	.texto-destacado-persona-inside {
		padding-left: 0px;
		padding-right: 0px;
	}
	.texto-destacado-persona {
		min-height: 350px;
	}
	.iniciativa-div {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 30px;
		padding-top: 7.0rem;
	}
	.iniciativa-div:first-child {
		padding-top: 0px !important;
	}
	.titulo-iniciativas {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 0px;
	}
	.titulo-iniciativa {
		padding-top: 15px;
	}
	.titulo-services {
		font-size: 30px;
		line-height: 40px;
	}
	#animacion_services svg {
		display: none;
	}
	.columna-textos-services {
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 30px;
	}
	.descripcion-proyecto {
		padding-top: 20px;
	}
	.texto-caracteristica {
		padding-bottom: 30px;
	}
	.lado-derecho-proyecto svg, .imagen-mitad, .texto-modulo {
		padding-top: 20px;
	}
	.subtitulo-services {
		margin-bottom: 0px;
	}
	.proyecto:hover .frase-proyecto-work {
		transform: translateY(20px) !important;
	}
	.video-modulo-about {
		margin-top: 20px;
		max-width: 70%;
	}
	.condiciones {
		margin-bottom: 40px;
	}
	#logo_header {
		width: 61px;
	}
	.subtitulo-careers {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	#email_jobs {
		padding-right: 50px;
		width: calc(100% - 30px);
	}
	.especial-work video {
		position: relative;
		width: 70%;
	}
	.especial-work {
		height: auto;
	}
	.enlace-services-home {
		margin-top: 20px;
	}
	#seccion_services_home {
		padding-top: 20px;
		padding-bottom: 60px;
	}
	#seccion_services_home .enlace-services-home {
		margin-top: 40px;
	}
	.texto-textos-animacion-services, .subtitulo-capability,
	#our_capabilities p {
		font-size: 16px;
		line-height: 24px;
	}
	.titulo-textos-animacion-services {
		font-size: 22px;
		line-height: 30px;
	}
	.subtitulo-home {
		font-size: 28px;
		line-height: 36px;
	}
	#view-project {
		display: none !important;
	}
	.texto-persona {
		display: none;
	}
	#seccion_about, #cabecera_services, #proyectos_work, #seccion_terms {
		padding-top: 120px;
	}
	#textos_principales_proyecto {
		padding-bottom: 20px;
	}
	#seccion_clientes div {
		height: 15.0rem;
	}
	.logo-cliente {
		max-width: 80%;
		max-height: 5.5rem;
	}
	.texto-texto-modulo, .texto-caracteristica,
	.texto-simple-post, .texto-simple-post p, .texto-simple-post a {
		font-size: 16px;
		line-height: 24px;
	}
	.nombre-persona {
		font-size: 20px;
		line-height: 25px;
	}
	.title-post {
		font-size: 30px;
		line-height: 36px;
		padding-top: 19px;
	}
	.texto-destacado-post {
		font-size: 26px;
		line-height: 34px;
		padding-left: 0px;
		padding-right: 0px;
	}
	.espaciado-atras {
		margin-bottom: 40px;
	}
	.share-desktop {
		display: none !important;
	}
	#siguientes_posts img, #primeros_posts img {
		margin-top: 40px;
	}
	#cabecera_blog {
		padding-top: 120px;
		padding-bottom: 40px;
	}
	.titulo-blog {
		padding-bottom: 30px;
	}
	.subtitulo-blog {
		padding-bottom: 0px;
	}
	.subtitulo-seccion-post {
		text-align: left;
		margin-top: 20px;
	}
	.swiper-container {
		width: calc(100% + 20px);
		margin-left: -10px;
	}
	.logo {
		padding-right: 20px;
	}
	.wpml-ls-item a span, .wpml-ls-item a:after {
		font-size: 14px;
	}
	.enlaces-inferiores .wpml-ls-legacy-list-horizontal {
		margin-bottom: 20px;
		margin-left: 0px;
	}
	.copyright {
		font-size: 14px;
		margin-top: 2px;
		opacity: 0.5;
	}
	#colophon .wpcf7 {
		margin-bottom: 100px;
	}
	#colophon .enlace-footer {
		font-size: 13px;
		display: block;
		padding-bottom: 10px;
	}
	.animacion-principal-home {
		margin-top: 0px;
	}
	.abrir-form-mail-jobs {
		font-size: 16px;
	}
	.descripcion-offer {
		font-size: 16px;
		line-height: 26px;
	}
	.wu-wrapper {
		padding-top: 4px;
	}
	#colophon {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.frase-footer {
		padding-top: 70px;
		padding-bottom: 20px;
	}
	#footer_down {
		padding-top: 70px;
	}
	.share-post-desktop {
		display: none !important;
	}
	#primeros_posts .titulo-post-relacionado, #primeros_posts .excerpt-post-relacionado {
		padding-right: 0px !important;
	}
	#cn-notice-text {
		max-width: 100vw !important;
		text-align: left;
		font-size: 11px;
		line-height: 16px;
	}
	.cookie-notice-container {
		padding: 24px 14px 24px 14px;
		text-align: center;
	}
	#cookie-notice .cn-button {
		margin-top: 0px;
	}
	#cn-accept-cookie, #cn-accept-cookie:hover {
		float: none;
		padding: 7px 25px 5px 24px;
		font-size: 12px;
	}
	#cn-more-info {
		font-size: 12px;
	}
	.textos-terms {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
	.ano-portada-video-new-year-mobile,
	.titulo-portada-video-new-year-mobile {
		display: block !important;
	}
	.ano-portada-video-new-year,
	.titulo-portada-video-new-year {
		display: none !important;
	}
	#cabecera_new_year {
		padding-top: 10.3rem;
		padding-bottom: 5.0rem;
	}
	.textos-video-anterior {
		min-height: 0;
	}
	.play-vimeo, .play-vimeo-new-year {
		display: block;
	}
	#head_office {
		padding-top: 11.0rem;
	}
	.imagen-del-proyecto-home {
		display: none !important;
	}
	.imagen-del-proyecto-home-mobile {
		display: block !important;
	}
	.page-template-page-work .proyecto img {
		/*display: none !important;*/
	}
	.imagen-del-proyecto-work-mobile {
		/*display: block !important;*/
	}
	.foto-cabecera-proyecto {
		display: none !important;
	}
	.foto-cabecera-proyecto-mobile {
		display: block;
		width: 100vw;
		height: 100vh;
		object-position: center center;
		object-fit: cover;
	}
	#contenido_next_normal {
	    padding: 8.9rem 1.9rem 9.6rem 2.0rem;
	}
	#contenido_next_normal .row {
		display: flex;
    	flex-direction: column-reverse;
    	margin-right: 0;
    	margin-left: 0;
	}
	.banner-next-normal {
		width: 100%;
		margin-bottom: 5.4rem;
	}
	#form_next_normal {
		padding-left: 0;
		padding-right: 0;
	}
	#texto_next_normal {
		padding-left: 0 !important;
		padding-top: 20.0rem;
	}
	.email-next-normal, .email-next-normal input, .email-next-normal input:focus {
		min-width: 100%;
	}
	#sticker_1 {
	    top: 6rem;
	    width: 7.9rem;
	    left: 18%;
	}
	#sticker_2 {
	    top: 8rem;
	    width: 7.3rem;
	    left: 5%;
	}
	#sticker_3 {
	    top: 9rem;
	    width: 7.3rem;
	    left: 70%;
	}
	.texto-next-normal {
		width: 100%;
		font-size: 36px;
		line-height: 40px;
	}
	.texto-next-normal u {
		font-size: 36px;
		line-height: 40px;
		display: inline-flex;
		width: 33.0rem;
		border-bottom: none;
		text-decoration: underline;
	}
	.iframe-website iframe {
		width: calc(100vw - 55px);
		border-radius: 9vw;
		height: 153.5vw;
		transform: translateX(2.5vw);
	}
	.iframe-web-mobile {
		top: -3.2vw;
		left: -4px;
		display: block;
		width: calc(100vw - 29px);
	}
	.iframe-web-tablet {
		display: none;
	}
	.con-logo-bcorp {
		padding-top: 30px !important;
	}
	#cabecera_home {
		height: 90vw;
	}
	#cabecera_home iframe,
	#cabecera_home object,
	#cabecera_home embed {
		height: 90vw !important;
    	min-height: 90vw !important;
	}
	.texto-new-cabecera-top {
		top: 30vh;
		max-width: 300px;
	}
	.texto-new-cabecera-top span {
		font-size: 46px;
		line-height: 48px;
	}
	#new_cabecera_home h1 {
		font-size: 26px;
		line-height: 35px;
	}
	.point-text-top-cabecera {
		width: 10px;
		height: 10px;
		margin-left: 10px;
	}
	.point-text-bottom-cabecera {
		width: 10px;
		height: 10px;
		margin-right: 0;
		display: block;
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		margin-bottom: 12px;
	}
	.texto-new-cabecera-bottom {
		bottom: 25%;
		transform: translate(-50%, 50%);
	}
	.subtitulo-bottom-cabecera {
		max-width: 230px;
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.vimeo-header-project {
		height: calc(100vh - 50px);
		min-height: calc(100vh - 50px);
		max-height: calc(100vh - 50px);
	}
	.vimeo-header-project iframe, .vimeo-header-project object, .vimeo-header-project embed {
		width: 100% !important;
		height: calc(100vh - 50px) !important;
		min-height: calc(100vh - 50px) !important;
		min-width: 200vh !important;
	}
	#textos_principales_proyecto {
		padding-top: 6.0rem;
	}
	#cabecera_proyecto {
		height: 100%;
	}
	.subtitulo-proyecto {
		font-size: 35px;
		line-height: 45px;
	}
	.descripcion-proyecto {
		font-size: 3.0rem;
		line-height: 4.0rem;
	}
	.texto-modulo {
		font-size: 16px;
		line-height: 24px;
	}
	.titulo-texto-modulo {
		font-size: 22px;
        line-height: 30px;
	}
	#cabecera_proyecto video {
		height: 100%;
	}
}

@media (min-width: 501px) and (max-width: 767px) {
	html {
	    font-size: 45%;
	    width: 100vw;
		max-width: 100vw;
		overflow-x: hidden;
	}
	body {
		width: 100vw;
		max-width: 100vw;
		overflow-x: hidden;
	}
	.no-mobile {
		display: none !important;
	}
	.no-desktop {
		display: block !important;
	}
	.row-content {
		margin-right: -30px;
		margin-left: -30px;
	}
	.container-fluid {
		padding-left: 30px;
		padding-right: 30px;
	}
	#header_desktop {
		display: none;
	}
	#header_mobile {
		display: block;
	}
	#scrolltotop {
		display: none !important;
	}
	.menu-mobile {
		padding-top: 10vh;
	}
	.enlaces-inferiores {
		bottom: 2vh;
	}
	.menu-mobile .opcion-menu {
		padding-bottom: 1.5vh !important;
		font-size: 24px !important;
	}
	.texto-sobre-la-cabecera {
		font-size: 45px;
		line-height: 45px;
	}
	#textos_principales {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.titulo-home {
		padding-bottom: 36px;
	}
	.titulo-proyecto-work {
		position: relative;
		left: 0px;
		display: block;
		font-size: 16px;
		color: #000000 !important;
		letter-spacing: 0;
	}
	.frase-proyecto-work {
		position: relative;
		display: block;
		top: 0px;
		left: 0px;
		opacity: 1;
		font-size: 20px;
		color: #000000 !important;
		letter-spacing: -0.11px;
		line-height: 25px;
		padding-bottom: 50px;
		width: 100% !important;
	}
	.titulo-services-home {
		font-size: 36px;
		line-height: 46px;
	}
	.titulo-footer {
		/*padding-top: 30px;*/
		font-size: 13px;
	}
	.titulo-newsletter-footer {
		padding-top: 50px;
	}
	#footer-down {
		padding-top: 60px;
	}
	.frase-footer {
		padding-bottom: 7.0rem;
	}
	.especial-work .proyecto-texto-work {
		padding-left: 20px;
		padding-right: 20px;
		font-size: 26px;
		line-height: 38px;
		text-align: center;
		top: 0px;
		transform: translateY(0px);
	}
	.titulo-principal-about {
		font-size: 36px;
		color: #000000;
		letter-spacing: 0;
		line-height: 40px;
		text-align: left;
		padding-left: 20px;
	}
	.texto-principal-about {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 50px;
	}
	.foto-principal-about {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 50px;
	}
	.texto-modulo-about {
		padding-left: 0px;
		padding-right: 0px;
		font-size: 16px;
		line-height: 26px;
	}
	.imagen-modulo-about {
		width: 100%;
		margin-top: 30px;
		padding-bottom: 30px;
	}
	.texto-destacado-about {
		font-size: 26px;
		line-height: 34px;
		padding-top: 50px;
		padding-bottom: 50px;
		width: calc(100% - 40px);
		text-align: left;
	}
	.animacion-principal-about {
		margin-top: 0px;
		margin-bottom: 50px;
	}
	.titulo-modulo-about {
		padding-left: 0px;
		padding-top: 30px;
		max-width: 100%;
	}
	.persona-about {
		min-height: 350px;
		padding-bottom: 20px;
	}
	.texto-destacado-persona-inside {
		padding-left: 0px;
		padding-right: 0px;
	}
	.texto-destacado-persona {
		min-height: 350px;
	}
	.iniciativa-div {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 30px;
		padding-top: 7.0rem;
	}
	.iniciativa-div:first-child {
		padding-top: 0px !important;
	}
	.titulo-iniciativas {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 0px;
	}
	.titulo-iniciativa {
		padding-top: 15px;
	}
	.titulo-services {
		font-size: 30px;
		line-height: 40px;
	}
	#animacion_services svg {
		display: none;
	}
	.columna-textos-services {
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 30px;
	}
	.descripcion-proyecto {
		padding-top: 20px;
	}
	.texto-caracteristica {
		padding-bottom: 30px;
	}
	.lado-derecho-proyecto svg, .imagen-mitad, .texto-modulo {
		padding-top: 20px;
	}
	.subtitulo-services {
		margin-bottom: 0px;
	}
	.proyecto:hover .frase-proyecto-work {
		transform: translateY(20px) !important;
	}
	.video-modulo-about {
		margin-top: 20px;
		max-width: 70%;
	}
	.condiciones {
		margin-bottom: 40px;
	}
	#logo_header {
		width: 61px;
	}
	.subtitulo-careers {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	#email_jobs {
		padding-right: 50px;
		width: calc(100% - 30px);
	}
	.especial-work video {
		position: relative;
		width: 70%;
	}
	.especial-work {
		height: auto;
	}
	.enlace-services-home {
		margin-top: 20px;
	}
	#seccion_services_home {
		padding-top: 20px;
		padding-bottom: 60px;
	}
	#seccion_services_home .enlace-services-home {
		margin-top: 40px;
	}
	.texto-textos-animacion-services, .subtitulo-capability,
	#our_capabilities p {
		font-size: 16px;
		line-height: 24px;
	}
	.titulo-textos-animacion-services {
		font-size: 22px;
		line-height: 30px;
	}
	.subtitulo-home {
		font-size: 28px;
		line-height: 36px;
	}
	#view-project {
		display: none !important;
	}
	.texto-persona {
		display: none;
	}
	#seccion_about, #cabecera_services, #proyectos_work, #seccion_terms {
		padding-top: 120px;
	}
	#textos_principales_proyecto {
		padding-bottom: 20px;
	}
	#seccion_clientes div {
		height: 15.0rem;
	}
	.logo-cliente {
		max-width: 80%;
		max-height: 5.5rem;
	}
	.texto-texto-modulo, .texto-caracteristica,
	.texto-simple-post, .texto-simple-post p, .texto-simple-post a {
		font-size: 16px;
		line-height: 24px;
	}
	.nombre-persona {
		font-size: 20px;
		line-height: 25px;
	}
	.title-post {
		font-size: 30px;
		line-height: 36px;
		padding-top: 19px;
	}
	.texto-destacado-post {
		font-size: 26px;
		line-height: 34px;
		padding-left: 0px;
		padding-right: 0px;
	}
	.espaciado-atras {
		margin-bottom: 40px;
	}
	.share-desktop {
		display: none !important;
	}
	#siguientes_posts img, #primeros_posts img {
		margin-top: 40px;
	}
	#cabecera_blog {
		padding-top: 120px;
		padding-bottom: 40px;
	}
	.titulo-blog {
		padding-bottom: 30px;
	}
	.subtitulo-blog {
		padding-bottom: 0px;
	}
	.subtitulo-seccion-post {
		text-align: left;
		margin-top: 20px;
	}
	.swiper-container {
		width: calc(100% + 20px);
		margin-left: -10px;
	}
	.logo {
		padding-right: 20px;
	}
	.wpml-ls-item a span, .wpml-ls-item a:after {
		font-size: 14px;
	}
	.enlaces-inferiores .wpml-ls-legacy-list-horizontal {
		margin-bottom: 20px;
		margin-left: 0px;
	}
	.copyright {
		font-size: 14px;
		opacity: 0.5;
		margin-top: 2px;
	}
	#colophon .wpcf7 {
		margin-bottom: 100px;
	}
	#colophon .enlace-footer {
		font-size: 13px;
	}
	.animacion-principal-home {
		margin-top: 0px;
	}
	.abrir-form-mail-jobs {
		font-size: 16px;
	}
	.descripcion-offer {
		font-size: 16px;
		line-height: 26px;
	}
	.wu-wrapper {
		padding-top: 4px;
	}
	#colophon {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.frase-footer {
		padding-top: 70px;
		padding-bottom: 20px;
	}
	#footer_down {
		padding-top: 70px;
	}
	.share-post-desktop {
		display: none !important;
	}
	#primeros_posts .titulo-post-relacionado, #primeros_posts .excerpt-post-relacionado {
		padding-right: 0px !important;
	}
	#cn-notice-text {
		max-width: 100vw !important;
		text-align: left;
		font-size: 11px;
		line-height: 16px;
	}
	.cookie-notice-container {
		padding: 24px 14px 24px 14px;
		text-align: center;
	}
	#cookie-notice .cn-button {
		margin-top: 0px;
	}
	#cn-accept-cookie, #cn-accept-cookie:hover {
		float: none;
		padding: 7px 25px 5px 24px;
		font-size: 12px;
	}
	#cn-more-info {
		font-size: 12px;
	}
	.textos-terms {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
	.ano-portada-video-new-year-mobile,
	.titulo-portada-video-new-year-mobile {
		display: block !important;
	}
	.ano-portada-video-new-year,
	.titulo-portada-video-new-year {
		display: none !important;
	}
	#cabecera_new_year {
		padding-top: 10.3rem;
		padding-bottom: 5.0rem;
	}
	.textos-video-anterior {
		min-height: 0;
	}
	.play-vimeo, .play-vimeo-new-year {
		display: block;
	}
	#head_office {
		padding-top: 11.0rem;
	}
	.foto-cabecera-proyecto {
		display: none !important;
	}
	.foto-cabecera-proyecto-mobile {
		display: block;
		width: 100vw;
		height: 100vh;
		object-position: center center;
		object-fit: cover;
	}
	#contenido_next_normal {
	    padding: 8.9rem 1.9rem 9.6rem 2.0rem;
	}
	#contenido_next_normal .row {
		display: flex;
    	flex-direction: column-reverse;
    	margin-right: 0;
    	margin-left: 0;
	}
	.banner-next-normal {
		width: 100%;
		margin-bottom: 5.4rem;
	}
	#form_next_normal {
		padding-left: 0;
		padding-right: 0;
	}
	#texto_next_normal {
		padding-left: 0 !important;
		padding-top: 20.0rem;
	}
	.email-next-normal, .email-next-normal input, .email-next-normal input:focus {
		min-width: 100%;
	}
	#sticker_1 {
	    top: 6rem;
	    width: 7.9rem;
	    left: 18%;
	}
	#sticker_2 {
	    top: 8rem;
	    width: 7.3rem;
	    left: 5%;
	}
	#sticker_3 {
	    top: 9rem;
	    width: 7.3rem;
	    left: 70%;
	}
	.texto-next-normal {
		width: 100%;
		font-size: 36px;
		line-height: 40px;
	}
	.texto-next-normal u {
		font-size: 36px;
		line-height: 40px;
		display: inline-flex;
		border-bottom: none;
		text-decoration: underline;
	}
	.con-logo-bcorp {
		padding-top: 30px !important;
	}
	#cabecera_home {
		height: 120vh;
	}
	#cabecera_home iframe,
	#cabecera_home object,
	#cabecera_home embed {
		height: 120vh !important;
    	min-height: 120vh !important;
	}
	.texto-new-cabecera-top span {
		font-size: 60px;
		line-height: 60px;
	}
	.texto-new-cabecera-top {
		top: 50vh;
	}
	#new_cabecera_home h1 {
		font-size: 26px;
		line-height: 35px;
	}
	.point-text-top-cabecera {
		width: 10px;
		height: 10px;
		margin-left: 10px;
	}
	.point-text-bottom-cabecera {
		width: 10px;
		height: 10px;
		margin-right: 0;
		display: block;
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		margin-bottom: 12px;
	}
	.texto-new-cabecera-bottom {
		bottom: 25%;
		transform: translate(-50%, 50%);
	}
	.subtitulo-bottom-cabecera {
		max-width: 230px;
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.texto-new-cabecera-top {
		max-width: 400px;
	}
	.texto-modulo {
		font-size: 16px;
		line-height: 24px;
	}
	.titulo-texto-modulo {
		font-size: 22px;
        line-height: 30px;
	}
	#cabecera_proyecto video {
		height: 100%;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	html {
	    font-size: 50%;
	}
	.no-mobile {
		display: none !important;
	}
	.no-desktop {
		display: block !important;
	}
	.row-content {
		margin-right: -30px;
		margin-left: -30px;
	}
	.container-fluid {
		padding-left: 30px;
		padding-right: 30px;
	}
	#scrolltotop {
		display: none !important;
	}
	.texto-destacado-persona-inside p, .especial-work .proyecto-texto-work {
		font-size: 35px;
		line-height: 45px;
	}
	.imagen-modulo-about {
		margin-top: 3.5rem;
		margin-left: 30px;
	}
	.texto-principal-about {
		padding-left: 30px;
		padding-right: 30px;
	}
	.texto-destacado-about {
		padding-bottom: 10.0rem;
		font-size: 30px;
		padding-left: 30px;
		padding-right: 30px;
	}
	.titulo-modulo-about {
		padding-top: 3.0rem;
	}
	.texto-destacado-persona {
		min-height: 400px;
	}
	.titulo-iniciativas {
		padding-left: 45px;
	}
	.iniciativa-div {
		padding-top: 55px;
	}
	.logo {
		width: 29%;
		display: inline-block;
	}
	.opcionesdelmenu {
		width: 70%;
		display: inline-block;
	}
	#cn-notice-text {
		max-width: 100vw !important;
		text-align: left;
		font-size: 11px;
		line-height: 16px;
	}
	.cookie-notice-container {
		padding: 24px 14px 24px 14px;
		text-align: center;
	}
	#cookie-notice .cn-button {
		margin-top: 0px;
	}
	#cn-accept-cookie, #cn-accept-cookie:hover {
		float: none;
		padding: 7px 25px 5px 24px;
		font-size: 12px;
	}
	#cn-more-info {
		font-size: 12px;
	}
	.textos-terms {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
	.ano-portada-video-new-year-mobile,
	.titulo-portada-video-new-year-mobile {
		display: block !important;
	}
	.ano-portada-video-new-year,
	.titulo-portada-video-new-year {
		display: none !important;
	}
	#cabecera_new_year {
		padding-top: 10.3rem;
		padding-bottom: 5.0rem;
	}
	.textos-video-anterior {
		min-height: 0;
	}
	.play-vimeo, .play-vimeo-new-year {
		display: block;
	}
	#contenido_next_normal .row {
		display: flex;
    	flex-direction: column-reverse;
	}
	#form_next_normal {
		padding-left: 0;
	}
	#texto_next_normal {
		padding-left: 0 !important;
		margin-top: 10.0rem;
	}
	.texto-new-cabecera-top span {
		font-size: 100px;
		line-height: 100px;
	}
	.texto-new-cabecera-top {
		max-width: 700px;
	}
}

@media (min-width: 1024px) and (max-width: 1200px) {
	html {
	    font-size: 55%;
	}
	#scrolltotop {
		display: none !important;
	}
	.texto-destacado-persona-inside p, .especial-work .proyecto-texto-work {
		font-size: 35px;
		line-height: 45px;
	}
	.share-post-mobile {
		display: none !important;
	}
	.texto-next-normal {
		font-size: 5.0rem;
		line-height: 5.5rem;
		max-width: 61rem;
	}
	#form_next_normal {
		padding-left: 8.0rem;
	}
	#sticker_1 {
	    top: 11rem;
	    width: 5.9rem;
	    left: 52rem;
	}
	#sticker_2 {
	    top: 21.5rem;
	    width: 5.7rem;
	    left: 9rem;
	}
	#sticker_3 {
	    top: 32rem;
	    width: 5.7rem;
	    left: 36.5rem;
	}
	.texto-new-cabecera-top {
		max-width: 650px;
		top: 30vh;
	}
	.texto-new-cabecera-top span {
		font-size: 89px;
		line-height: 75px;
	}
	.texto-new-cabecera-bottom {
		bottom: 10vh;
	}
	.texto-new-cabecera-bottom {
		max-width: 800px;
	}
	#new_cabecera_home h1 {
		font-size: 40px;
		line-height: 45px;
	}
}

@media (min-width: 1201px) and (max-width: 1400px) {
	html {
	    font-size: 57.5%;
	}
	.share-post-mobile {
		display: none !important;
	}
	.texto-new-cabecera-top span {
		font-size: 129px;
		line-height: 115px;
	}
}

@media (min-width: 1401px) and (max-width: 1700px) {
	html {
	    font-size: 62.5%;
	}
	.share-post-mobile {
		display: none !important;
	}
}

@media (min-width: 1701px) and (max-width: 1920px) {
	html {
	    font-size: 62.5%;
	}
	.row-content {
		margin-right: -10vw;
		margin-left: -10vw;
	}
	.container-fluid {
		padding-left: 10vw;
		padding-right: 10vw;
	}
	.persona-about {
		min-height: 750px;
	}
	.texto-destacado-persona {
		min-height: 750px;
	}
	.share-post-mobile {
		display: none !important;
	}
	#contenido_next_normal {
	    padding: 15.4rem 10vw 18.4rem 10vw;
	}
	.iframe-website iframe {
		width: calc(80vw + 30px);
		height: calc(43.6vw + 16px);
		border-radius: 2.2vw;
	}
	.iframe-web-tablet {
		top: -0.9vw;
		left: -1vw;
		width: calc(100% + 1.7vw);
	}
}

@media (min-width: 1921px) and (max-width: 2200px) {
	html {
	    font-size: 62.5%;
	}
	.row-content {
		margin-right: -15vw;
		margin-left: -15vw;
	}
	.container-fluid {
		padding-left: 15vw;
		padding-right: 15vw;
	}
	.persona-about {
		min-height: 750px;
	}
	.texto-destacado-persona {
		min-height: 750px;
	}
	.share-post-mobile {
		display: none !important;
	}
	#contenido_next_normal {
	    padding: 15.4rem 15vw 18.4rem 15vw;
	}
	.iframe-website iframe {
		width: calc(70vw + 30px);
		height: calc(38.2vw + 16px);
		border-radius: 1.9vw;
	}
	.iframe-web-tablet {
		top: -0.8vw;
		left: -0.9vw;
		width: calc(100% + 1.5vw);
	}
	.texto-new-cabecera-top span {
		font-size: 169px;
		line-height: 155px;
	}
}

@media (min-width: 2201px) {
	html {
	    font-size: 62.5%;
	}
	.row-content {
		margin-right: -20vw;
		margin-left: -20vw;
	}
	.container-fluid {
		padding-left: 20vw;
		padding-right: 20vw;
	}
	.persona-about {
		min-height: 800px;
	}
	.texto-destacado-persona {
		min-height: 800px;
	}
	.share-post-mobile {
		display: none !important;
	}
	#contenido_next_normal {
	    padding: 15.4rem 20vw 18.4rem 20vw;
	}
	.iframe-website iframe {
		width: calc(60vw + 30px);
		height: calc(32.7vw + 16px);
		border-radius: 1.6vw;
	}
	.iframe-web-tablet {
		top: -0.7vw;
		left: -0.75vw;
		width: calc(100% + 1.3vw);
	}
}
