/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {margin:0; padding: 0; border:0; font-size: 100%; font: inherit; vertical-align: baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}
.clearfix:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0;font-size:0;}
.clearfix{display:inline-block;}
html[xmlns] .clearfix{display:block;}
* html .clearfix{height:1%;}
* html .clearfix{zoom:1;}
*:first-child+html .clearfix{zoom:1;}
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++    TIPOGRAFIAS   ++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@font-face {
    font-family: 'Caveat';
    src: url('fonts/Caveat-Regular.eot');
    src: url('fonts/Caveat-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Caveat-Regular.woff2') format('woff2'),
        url('fonts/Caveat-Regular.woff') format('woff'),
        url('fonts/Caveat-Regular.ttf') format('truetype'),
        url('fonts/Caveat-Regular.svg#Caveat-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Caveat';
    src: url('fonts/Caveat-Bold.eot');
    src: url('fonts/Caveat-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/Caveat-Bold.woff2') format('woff2'),
        url('fonts/Caveat-Bold.woff') format('woff'),
        url('fonts/Caveat-Bold.ttf') format('truetype'),
        url('fonts/Caveat-Bold.svg#Caveat-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Light.eot');
    src: url('fonts/Poppins-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-Light.woff2') format('woff2'),
        url('fonts/Poppins-Light.woff') format('woff'),
        url('fonts/Poppins-Light.ttf') format('truetype'),
        url('fonts/Poppins-Light.svg#Poppins-Light') format('svg');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.eot');
    src: url('fonts/Poppins-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-Regular.woff2') format('woff2'),
        url('fonts/Poppins-Regular.woff') format('woff'),
        url('fonts/Poppins-Regular.ttf') format('truetype'),
        url('fonts/Poppins-Regular.svg#Poppins-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Medium.eot');
    src: url('fonts/Poppins-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-Medium.woff2') format('woff2'),
        url('fonts/Poppins-Medium.woff') format('woff'),
        url('fonts/Poppins-Medium.ttf') format('truetype'),
        url('fonts/Poppins-Medium.svg#Poppins-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-SemiBold.eot');
    src: url('fonts/Poppins-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-SemiBold.woff2') format('woff2'),
        url('fonts/Poppins-SemiBold.woff') format('woff'),
        url('fonts/Poppins-SemiBold.ttf') format('truetype'),
        url('fonts/Poppins-SemiBold.svg#Poppins-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Bold.eot');
    src: url('fonts/Poppins-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-Bold.woff2') format('woff2'),
        url('fonts/Poppins-Bold.woff') format('woff'),
        url('fonts/Poppins-Bold.ttf') format('truetype'),
        url('fonts/Poppins-Bold.svg#Poppins-Bold') format('svg');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-ExtraBold.eot');
    src: url('fonts/Poppins-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/Poppins-ExtraBold.woff2') format('woff2'),
        url('fonts/Poppins-ExtraBold.woff') format('woff'),
        url('fonts/Poppins-ExtraBold.ttf') format('truetype'),
        url('fonts/Poppins-ExtraBold.svg#Poppins-ExtraBold') format('svg');
    font-weight: 800;
    font-style: normal;
}


/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++    ESTILOS GENERALES    +++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
body, html{
	font-family:'Poppins', sans-serif;
	overflow: auto;
}
h2{
    font-size: 3.6em;
    font-weight: 600;
    letter-spacing: .1em;
}
.script-text{
	font-family: 'Caveat';
}
.linea-degradado{
	height: 3px;
    width: 50%;
    background: #0071bc;
    background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
	margin: auto;
}
.overlay-black{
	position: fixed;
	display: block;
	background: rgba(0,0,0,.5);
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 50;
	display: none;
}
header{
    background: #000;
    display: grid;
    grid-template-columns:200px 1fr 100px;
    height: 70px;
	position: fixed;
	margin: 0;
	overflow: hidden;
	width: 100%;
	z-index: 100;
}
#logo-weil-cont{
    width: 70%;
    margin: auto;
}
nav{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 0 4% 0 0;
}
nav a{
    font-size: .75em;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: .07em;
    text-decoration: none;
    color: #FFF;
    margin: 0 1%;
}
nav a:hover, nav a.active{
    font-weight: 800;
    letter-spacing: .02em;
}

.menu_anvorguesa{
	color: #FFF;
	display: none;
	align-items: center;
	position: relative;
	z-index: 501;
}
.menu_anvorguesa p{
	margin: 0 10px 0;
	font-size: .8em;
}
.anvorguesa {
  background: #FFF;
  margin: 0;
  padding: 0;
  width: 33px;
  height: 33px;
  text-align: center;
	
}
.anvorguesa svg {
  width: 100%;
  height: 100%;
  cursor: pointer;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.anvorguesa path {
  fill: none;
  -webkit-transition: stroke-dashoffset 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25), stroke-dasharray 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25);
  -moz-transition: stroke-dashoffset 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25), stroke-dasharray 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25);
  -o-transition: stroke-dashoffset 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25), stroke-dasharray 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25);
  -ms-transition: stroke-dashoffset 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25), stroke-dasharray 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25);
  transition: stroke-dashoffset 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25), stroke-dasharray 0.5s cubic-bezier(0.25, -0.25, 0.75, 1.25);
  stroke-width: 40px;
  stroke-linecap: round;
  stroke: #000;
  stroke-dashoffset: 0px;
}
.anvorguesa path#top,
.anvorguesa path#bottom {
  stroke-dasharray: 240px 950px;
}
.anvorguesa path#middle {
  stroke-dasharray: 240px 240px;
}
.cross path#top,
.cross path#bottom {
  stroke-dashoffset: -650px;
  stroke-dashoffset: -650px;
}
.cross path#middle {
  stroke-dashoffset: -115px;
  stroke-dasharray: 1px 220px;
}

#menu-mobile{
	position: absolute;
	display: block;
	height: 100vh;
	width: 93vw;
	background: url(../img/fondo.jpg);
	background-position: 39% 88%;
	z-index: 500;
	right: -120%;
	top: 0;
	transition: all ease .5s;
	box-shadow: -7px 0px 16px 0px rgba(0,0,0,0.75);
	opacity: .9;
}
#menu-mobile:after{
	display: block;
	content: '';
	position: absolute;
	width: 10px;
	height: 100%;
	left: 0;
	top: 0;
	background: linear-gradient(to bottom, #0071bc 0%,#39b54a 25%,#8cc63f 50%,#d9e021 75%,#f7931e 100%);
}
#menu-mobile.open{
	right: 0;
}
#menu-mobile li{
	display: block;
	position: relative;
	width: 100%;
	height: 8%;
	margin: 5px 0 0 0;
}
#menu-mobile li:first-child{
	margin: 80px 0 0 0;
}
#menu-mobile li a{
	display: block;
	font-size: 1.5em;
	font-weight: 600;
	text-decoration: none;
	color: #FFF;
	text-align: center;
	width: 100%;
	height: 100%;
}
#menu-mobile li a:after{
	display: block;
	content: '';
	position: absolute;
	width: 0%;
	height: 2px;
	background:#FFF;
	margin: 10px 0 0 -35%;
	left: 50%;
	transition: ease all .5s;
}
#menu-mobile li a:hover{
	opacity: 1;
}
#menu-mobile li a:hover:after{
	width: 70%;
}
.redes{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20% 0;
    border-left: 1px solid #FFF;
}
.redes a{
    display: block;
    width: 25%;
    margin: 0 5%;
}
.redes a .cls-1{fill:#fff; transition: all .4s;}
.redes a:hover .cls-1{fill:#ec297b;}
.linea-grad:after{
    display: block;
    position: absolute;
    bottom: -2px;
    right: 0;
    z-index: 3;
    content: '';
    height: 10px;
    width: 60%;
    background: #0071bc;
    background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
}
.seccion{
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
}
#inicio{
	margin: 70px 0 0;
	position: relative;
}
#inicio video{
	width: 100%;
	height: auto;
	padding: -5px;
	position: relative;
	z-index: 1;
}
#mute{
	display: block;
	position: absolute;
	z-index: 3;
	bottom:3%;
	left: 3%; 
	width: 33px;
	height: 33px;
	background: url(../img/audio-sprite.png);
	background-size: 100%;
	background-position: bottom;
	cursor: pointer;
}
#mute.muted{
	background-position: top;
}
#nosotros{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
	position: relative;
	z-index: 3;
}
#nosotros:after{
	display: block;
	z-index: 8	;
    content: '';
    height: 10px;
    width: 70%;
    background: #0071bc;
    background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
	bottom: 5px;
	left: 0;
}
h1{
    font-weight: 700;
    font-size: 1.2em;
    line-height: 1.5em;
    margin: 20px 0;
}
.nosotros-img{
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    height: auto;
	transition: all .4s ease-out;
	transform-origin: 50% 50%;
}
.nosotros-img img{
    display: block;
    position: absolute;
    width: 100%;
    height: auto;
	transition: all .4s ease-out;
	transform-origin: 50% 50%;
	bottom: 0;
}
.nosotros-overlay{
	position: absolute;
	width: 100%;
	height: 0;
	bottom: 0;
	background: linear-gradient(45deg, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
	z-index: 2;
	opacity: 0;
	transition: all .4s ease-out;
	padding-top: 86.6%;
}
.nosotros-img:hover{
	width: 105%;
}
.nosotros-img:hover .nosotros-overlay{
	opacity: .5;
}
.nosotros-img:hover img{
	filter: contrast(1.5) grayscale(.9);
}
.side-nosotros{
    max-width: 100%;
    margin: 8% 13% 18%;
    color: #25093d;
}
.side-nosotros img{
    width: 100%;
    height: auto;
}
.side-nosotros p{
    font-size: .85em;
    font-weight: 400;
    line-height: 1.9em;
    margin: 20px 0 20px;
}
.side-nosotros p strong{
    font-weight: 700;
}
.side-nosotros hr{
    color: #25093d;
}
#fondo-abstracto{
    width: 100%;
    height: 100%;
    background: url(../img/fondo.jpg);
    position: relative;
	z-index: 1;
	color: #FFF;
	margin: -5% 0 0;
	box-shadow: 1px -8px 11px -1px rgba(0,0,0,0.3);
}
#wedoit{
	padding: 10% 0 4%;
	text-align: center;
	position: relative;
}
#wedoit:before{
	display: block;
	position: absolute;
	z-index: 8;
    content: '';
    right: 0;
	bottom: 13px;
    height: 1px;
    width: 75%;
	background: rgba(255,255,255,.7);
}
.pleca_color{
	height: 10px;
    width: 70%;
    background: #0071bc;
    background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
	display: block;
	float: right;
	z-index: 7;
}
#wedoit .script-text{
	margin: 10px 0 0;
	font-size: 2em;
}
#card-container{
	display: table;
	width: 80%;
	margin: 0 auto 3%;
	border-collapse: separate;
  	border-spacing: 2rem;
}
.flipcard {
	display: table-cell;
	position: relative;
	width:50%;
	perspective: 1000px;
	padding: 0 0 16%;
}
.row-table{
	width: 100%;
	display: table-row;
	border-collapse: separate;
  	border-spacing: 10px;
}

.flipcard.h:hover .front, .flipcard.h.flip .front{
  transform: rotateY(180deg);
}
.flipcard.h:hover .back, .flipcard.h.flip .back{
  transform: rotateY(0deg);
}
.flipcard.h-:hover .front, .flipcard.h.flip .front{
  transform: rotateY(-180deg);
}
.flipcard.h-:hover .back, .flipcard.h.flip .back{
  transform: rotateY(0deg);
}
.flipcard.h .back{
  transform: rotateY(-180deg);
}
.flipcard.h- .back{
  transform: rotateY(180deg);
}
.flipcard .front, .flipcard .back{
  position:absolute;
  width: 100%;
  box-sizing: border-box;
  transition: all 0.5s ease-in;
  color: white;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.flipcard .front img, .flipcard .back img{
	display: block;
	vertical-align: middle;
	position: relative;
	width: 100%;
	height: auto;
}
.flipcard .front h4{
	display: table-cell;
	position: absolute;
	width: 100%;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	font-size: 2em;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-align: center;
	margin: auto;
	height: 20%;
}
.flipcard .back p{
	display: block;
	position: absolute;
	bottom: 4%;
	left: 0%;
	font-size: .75em;
	margin: 0 4%;
	line-height: 1.5em;
	text-align: center;
}
#origen{
	padding: 8% 0 7%;
	position: relative;
}
#origen:before{
	display: block;
	position: absolute;
	z-index: 8;
    content: '';
    left: 0;
	bottom: 13px;
    height: 1px;
    width: 75%;
	background: rgba(255,255,255,.7);
}
#origen hr{
	width: 33%;
}
#origen h2{
	text-align: center;
	text-transform: uppercase;
	margin: 2rem 0 1rem;
}
.contenedor-datos{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-gap: 1rem;
	width: 80%;
	margin: 3% auto;
}
.contenedor-datos div:last-child{
	display: none;
}
.dato-cont{
	text-align: center;
	transition: all 1.5s ease-out;
	opacity: 0;
	transform: translateY(100px);
}
.visible{
	opacity: 1;
	transform: translateY(0);
}
.picto-cont{
	position: relative;
	z-index: 1;
	width: 100%;
	border: 1px solid #FFF;
	margin: 0 auto;
}
.picto-cont img{
	width: 50%;
	height: auto;
	padding: 20px 0;
}
.numero{
	display: block;
	position: relative;
	z-index: 2;
	border: 1px solid #FFF;
	margin: -15px auto 10px;
	text-align: center;
	padding: 6px 0;
	width: 80%;
	background: #06010c;
}
.dato-cont h5{
	font-size: .8em;
	line-height: 1.2em;
}
.dato-total{
	width: 40%;
	display: grid;
	grid-template-columns: 90px 1fr 1fr;
	align-items: center;
	justify-content: left;
	grid-gap: 1rem;
	margin: 0 auto;
	text-align: left;
}
.dato-total img{
	width: 100%
}
.dato-total p{
	font-size: 1.3em;
	text-transform: uppercase;
}
.dato-total h4{
	font-size: 3em;
	font-weight: 700;
}
.swiper-container{
	background: #FFF;
	box-shadow: inset 0px 0px 24px -4px rgba(0,0,0,0.3);
	padding: 2% 0;
}
#clientes{
	padding: 5% 0 10%;
	position: relative;
	border-bottom: 1px solid rgba(255,255,255,.5);
}
#clientes:before{
	display: block;
	position: absolute;
	z-index: 8;
    content: '';
    left: 0;
	bottom: 13px;
    height: 10px;
    width: 40%;
	background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
}
#clientes h2{
	text-align: center;
	text-transform: uppercase;
	margin: 0 0 2rem;
}
#contacto{
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 98%;
	margin: 0 1%;
	padding: 6% 0;
	position: relative;
	border-bottom: 1px solid rgba(255,255,255,.5);
}
.contacto-info h2{
	text-align: center;
	text-transform: uppercase;
}
.contacto-info .linea-degradado{
	margin: 1rem auto 2rem;
}
.personal-cont{
	display: grid;
	grid-template-columns: 1fr 1fr;
	height: 70%;
	align-items: center;
}
.personal-ficha{
	width: 90%; 
	margin: 0 auto 2rem;
	text-align: center;
}
.personal-ficha h3{
	font-size: 1.9em;
	margin: 0 0 .3em;
}
.personal-cargo{
	font-size: 1.1em;
	font-weight: 600;
}
.personal-mail{
	font-size: .9em;
	margin: .3rem; 0 0;
	font-weight: 300;
}
.contacto-form{
	background: #FFF;
}
.contacto-form h3{
	text-align: center;
	color: #761f5c;
	display: block;
	padding: 2rem 0;
	width: 100%;
	box-shadow: 0px 5px 4px -1px rgba(0,0,0,0.3);
	font-size: 2em;
	position: relative;
	width: auto;
}
.contacto-form h3:after{
	content: '';
	display: block;
	width: 100%;
	height: 6px;
	position: relative;
	background: url(../img/underline.png) no-repeat;
	background-position: center;
	background-size: 60% 100%;
	margin: 0 auto;
}
.formulario{
	width: 92%;
	margin: 3% 5% 3% 3%;
	display: block;
	border: 1px solid #bdccd4;
}
.formulario li{
	list-style: none;
	display: block;
	width: 80%;
	height: auto;
	margin: 2em auto 1em;
	padding: 0;
	position: relative;
}
.formulario label, input {
  transition: all 0.2s;
  touch-action: manipulation;
}
.formulario input {
  border: 1px solid #25093d;
  font-family: inherit;
  -webkit-appearance: none;
  border-radius: 0;
  padding: 3px 2px;
  cursor: text;
  position: relative;
  z-index: 2;
  background: transparent;
  font-size: .7em;
  width: 100%;
	margin: 5px 0 0;
}
.formulario textarea {
  border: 1px solid #25093d;
  font-family: inherit;
  -webkit-appearance: none;
  border-radius: 0;
  padding: 3px 2px;
  cursor: text;
  position: relative;
  z-index: 2;
  background: transparent;
  font-size: .7em;
  width: 100%;
	height: 6rem;
	resize: none;
	margin: 5px 0 0;
}
.formulario label {
	position: relative;
	z-index: 0;
	top:0;
	left: 0;
	font-size: .9em;
	color: #25093d;
	font-weight: 600;
}
.formulario label span{
	font-size: .9em;
	font-weight: 500;
}
.formulario li p{
	font-size: .7em;
	font-weight: 300;
}
/*.formulario input:focus {
  outline: 0;
  border-bottom: 2px solid #666;
}
.formulario input:focus + label, .formulario input:valid + label{
	margin-top:-15px;
	font-size: .7em;
}
.formulario input:valid{
	background: transparent;
}*/
.btn-morado, .btn-gris{
	display: block;
	outline: none;
	border: none;
	padding: 2% 10%;
	background: #761f5c;
	color: #DDD;
	margin: 20px auto 33px;
	cursor: pointer;
	width: 40%;
}
.btn-gris{
	background: #bdccd4;
	color: #761f5c;
}
.btn-morado:hover, .btn-gris:hover{
	opacity: .8;
}
.formulario .error{
	border-color: red;
	border-width: 2px;
}
.formulario .validado{
	border-color: green;
	border-width: 2px;
}
.formulario .textoError{
	color: red;
	position: absolute;
    font-size: .7em;
    font-weight: 700;
    bottom: -21px;
}
#trabaja{
	display:grid;
	grid-template-columns:1fr 1fr;
	color:#25093d;
	position: relative;
	padding: 1.3% 0 0;
}
#trabaja h2{
	color:#f7931e;
	text-align:center;
}
.trabaja-pic{
	position:relative;
	width:100%;
	overflow: hidden;
}
.trabaja-pic:before{
	content: '';
	display: block;
	width: 100%;
	height: 9px;
	position: absolute;
	background: #0071bc;
    background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
	margin: 0 auto;
	z-index: 2;
	top: 0;
}
.trabaja-pic img{
	position:absolute;
	height:70%;
	width: auto;
	margin:auto;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
}
.trabaja-form{
	background: #FFF;
	position: relative;
}
.trabaja-cabecera{
	padding: 2rem 0;
	box-shadow: 0px 5px 4px -1px rgba(0,0,0,0.3);
	text-align: center;
}
.trabaja-cabecera .script-text{
	font-size: 1.5em;
}
.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}
.inputfile + label {
    background-color: #CCC;
    display: inline-block;
	cursor: pointer;
	padding: 10px 0;
	font-size: .8em;
	text-align: center;
	width: 100%;
}
.inputfile + label * {
	pointer-events: none;
}
.inputfile:focus + label,
.inputfile + label:hover {
    background-color: #761f5c;
	outline: 1px dotted #000;
	outline: -webkit-focus-ring-color auto 5px;
	color: #FFF;
}
.rejilla_botones{
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 2rem;
	margin: 0 10%;
}
.trabaja-form .btn-morado, .trabaja-form .btn-gris{
	width: 100%;
	padding: 13px 0;
}
.trabaja-cabecera hr{
	color: #25093d;
	width: 50%;
	margin: 13px auto;
}
.barra-multicolor{
	position: absolute;
	width: 10px;
	height: 80%;
	right: 0;
	top: 50%;
	margin: -50% 0 0;
	background: linear-gradient(to bottom, #0071bc 0%,#39b54a 25%,#8cc63f 50%,#d9e021 75%,#f7931e 100%);
}
footer{
	display: grid;
	grid-template-columns: 1fr 160px;
	padding: 13px 0;
	box-shadow: inset 6px 9px 13px 2px rgba(0,0,0,0.8);
	grid-template-rows: 1fr 1fr;
	grid-row-gap: 1rem;
}
footer .redes{
	display: flex;
    justify-content: center;
    align-items: center;
    margin:  0;
    border-left: 1px solid #FFF;
}
footer .disclaimer{
	grid-column: 1/3;
	text-align: center;
	font-size: .8em;
	color: #CCC;
}
footer .disclaimer a{
	color: #CCC;
}
.lds-ellipsis {
  display: block;
  position: relative;
  width: 80px;
  height: 80px;
	margin: 20% auto;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #ed1e79;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}
.overlay-confirmacion{
	position: fixed;
	display: block;
	background: rgba(0,0,0,.5);
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 1000;
	display: none;
}
.modal{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60vw;
	height: 70vh;
	margin: -35vh 0 0 -30vw;
	background: #FFF;
	color: #333;
	overflow: auto;
}
.cerrar-modal{
	cursor: pointer;
	width: 26px;
	height: 26px;
	position: absolute;
	top: 3%;
	right: 1%;
	background: url(../img/cerrar-modal.png) no-repeat;
	background-size: cover;
	z-index: 10;
}
.modal h2{
	font-size: 2em;
	margin: 2% 4% 0;
	color: #761f5c;
}
.modal p:first-child{
	margin: 6% 4% 0;
}
.modal p{
	margin: 2% 4% 0;
	text-align: left;
	color: #444;
	font-size: .9em;
}
.modal .mails-modal{
	text-align: center;
	color: #777;
	display: inline-block;
	width: 100%;
	margin: 1% auto;
	font-size: .85em;
}
.modal h3, .modal h4{
	color: #761f5c;
	font-size: 1em;
	font-weight: 600;
	margin: 1rem auto 0;
	text-align: center;
}
.modal .btn-morado{
	text-align: center;
	text-decoration: none;
	font-weight: 300;
	margin: 1rem auto 0;
}
.modal:before{
	display: block;
	position: absolute;
	z-index: 8;
    content: '';
    left: 0;
	top: 0;
    height: 10px;
    width: 100%;
	z-index: 600;
	background: linear-gradient(to right, #0071bc 0%,#662d91 25%,#d61556 50%,#ed1c24 75%,#f7931e 100%);
}
.head-gracias{
	display: block;
	justify-content: space-between;
}
.head-gracias #logo-weil-cont{
	max-width: 150px;
	display: block;
	float: left;
	margin: 20px 0 0 20px;
}
.head-gracias .redes, .foot-gracias .redes, .foot-galeria .redes{
	display: flex;
	width: 120px;
	margin: 15px 20px 0;
	float: right;
	border: none;
}
#agradece{
	margin: 15% 0;
	text-align: center;
}
#agradece h2{
	color: #d3135a;
}
#agradece .btn-morado{
	width: 20%;
	text-decoration: none;
}
.foot-gracias{
	background: #000;
	position: absolute;
	bottom: 0;
	width: 100%;
}
#titulo-galeria{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 50px 40px;
	grid-row-gap: 2rem;
	align-items:center;
	color: #FFF;
}
#titulo-galeria h1{
	font-size: 4em;
	font-weight: 700;
	line-height: 1em;
	text-align: right;
	margin: 0 2rem 0 0;
	padding: 0 2rem 0 0;
	border-right: 1px solid #FFF;
}
#titulo-galeria h1.viajes-title{
	font-size: 3em;
}
#titulo-galeria article{
	font-size: 1.1em;
}
#titulo-galeria article p{
	font-weight: 300;
}
#titulo-galeria article p strong{
	font-size: 1.4em;
	font-weight: 600;
	text-transform: uppercase;
}
#titulo-galeria>div{
	font-size: 1em;
	grid-column: 1 / 3;
	margin: 0 auto;
	width: 60%;
	text-align: center;
}
.fondo-galeria{
	display: block;
	width: 100;
	background: url(../img/fondo.jpg) no-repeat;
	background-position: 50% 50%;
	background-size:cover;
	margin: 70px 0 0;
	padding: 4% 0 8%;
}
#galeria{
	width: 80%;
	margin: 8% auto 0;
}
.foot-galeria{
	background: #000;
	bottom: 0;
	width: 100%;
}
.salir{
	font-size: .9em;
	color: #bbb;
	text-decoration: none;	
}
.botones-admin{
	width: 90%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 2rem;
	margin: 5% auto;
	text-align: center;
	text-decoration: none;	
}
.botones-admin a{
	text-decoration: none;	
}
.aviso{
	width: 90%;
	max-width: 800px;
	margin: 100px auto 40px;
}
.aviso h1{
	font-size: 1.6em;
	text-align: center;
}
.aviso h2{
	font-size: 1em;
	margin: 20px 0 5px;
}
.aviso p{
	font-size: .75em;
	color:#444;
	margin: 10px 0;
}
.aviso ol li{
	font-size: .75em;
	color: #444;
	margin: 10px 0 10px 20px;
	list-style: decimal;
}
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*+++++++++++++++++++++++++++++++++++++++    MEDIA QUERIES SIZE    +++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 1200px){

}
@media screen and (max-width: 1150px){
	h2{
		font-size: 2.9em;
	}
	#card-container {
		width: 92%;
		margin: 0 auto 3%;
		border-spacing: 1rem;
	}
	.flipcard .front h4 {
	    font-size: 1.4em;
	}
}
@media screen and (max-width: 960px){
	
}
@media screen and (max-width: 800px){
	h2{
		font-size: 2.2em;
	}
	header{
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 3%;
		width: 94%;
		height: 52px;
		overflow: visible;
	}
	header .redes{
		display: none;
	}
	#logo-weil-cont{
		display: block;
		margin: 0;
		width: 30%;
	}
	header nav{
		display: none;
	}
	.menu_anvorguesa{
		display: flex;
	}
	#inicio{
		margin: 52px 0 0;
	}
	.side-nosotros {
		max-width: 100%;
		margin: 5% 5% 10%;
		color: #25093d;
		grid-column: 1/2;
		grid-row: 1/3;
	}
	.nosotros-img{
		grid-column: 2/3;
		grid-row: 1/3;
	}
	#nosotros::after {
    	display: none;
	}
	.nosotros-img img {
		display: block;
		width: auto;
		height: 100%;
		left: 50%;
		transform: translateX(-50%);
	}
	.nosotros-overlay {
		width: 100%;
		height: 100%;
		padding-top: 0;
	}
	h1 {
		font-size: 1.0em;
		line-height: 1.3em;
		margin: 13px 0;
	}
	.side-nosotros p {
		font-size: .74em;
		line-height: 1.5em;
		margin: 13px 0 20px;
	}
	.side-nosotros h2{
		color: #ed1e79;
	}
	.side-nosotros hr{
		display: none;
	}
	#fondo-abstracto {
    	margin: 0 0;
	}
	.flipcard .back p{
		bottom: 4%;
		left: 0%;
		font-size: .65em;
		margin: 0 4%;
		line-height: 1.1em;
	}
	#contacto {
    	display: block;
	}
	.contacto-form {
		width: 90%;
		margin: 0 auto;
	}
	.personal-cont {
    	padding: 0 0 6%;
	}
	#trabaja {
    	display: block;
	}
	.trabaja-pic img {
    	position: relative;
		width: 100%;
		height: auto;
	}
	.trabaja-form{
		width: 90%;
		margin: -25% auto 0;
	}
	footer {
    	grid-template-columns: 1fr 110px;
		padding: 0 0 10px;
		align-items: center;
	}
	nav a {
    	font-size: .65em;
	}
	.head-gracias #logo-weil-cont {
		max-width: 130px;
		margin: 13px 0 0 13px;
	}
	.head-gracias .redes, .foot-gracias .redes, .foot-galeria .redes {
		width: 100px;
		margin: 13px 13px 0;
	}
	.fondo-galeria{
		margin: 52px 0 0;
	}
}
@media screen and (max-width: 600px){
	#card-container {
		width: 92%;
		margin: 0 auto 3%;
		border-spacing: 1rem;
		display: block;
	}
	#wedoit .script-text {
		margin: 20px 0 ;
		font-size: 1.5em;
	}
	.row-table {
		width: 100%;
		display: block;
	}
	.flipcard {
		display: block;
		position: relative;
		width: 100%;
		padding: 0;
		height: auto;
		padding-bottom: 31.1%;
		margin: 0 0 13px;
	}
	.flipcard .front h4 {
	    font-size: 1.3em;
	}
	.contenedor-datos{
    	grid-template-columns: repeat(3, 1fr);
	}
	.contenedor-datos div:last-child{
		display: block;
	}
	.dato-total{
		display: none;
	}
	footer {
    	display: block;
		padding: 2% 0;
	}
	footer nav{
		display: none;
	}
	footer .redes{
		width: 25%;
		border: none;
		margin: 0 auto;
	}
	#titulo-galeria{
		display: block;
	}
	#titulo-galeria h1{
		font-size: 2em;
		font-weight: 700;
		text-align: left;
		margin: 0 2rem 1rem ;
		padding: 0 0rem 1rem ;
		border-right: none;
		border-bottom: 1px solid #FFF;
	}
	#titulo-galeria h1.viajes-title{
		font-size: 1.7em;
	}
	#titulo-galeria article{
		font-size: .85em;
		margin: 0 2rem;
	}
	#titulo-galeria>div{
		font-size: .9em;
		margin: 20px auto 5px;
		width: 90%;
	}
	.foot-galeria {
		display: grid;
	}
}
@media screen and (max-width: 500px){
	h2{
		font-size: 1.8em;
	}
	#wedoit .script-text {
		margin: 20px 3%;
		font-size: 1.3em;
	}
	#nosotros{
		grid-template-rows: 1fr 1fr;
	}
	.side-nosotros {
		width: 90%;
		margin: 5% 5% 10%;
		color: #25093d;
		grid-column: 1/3;
		grid-row: 1/2;
	}
	.nosotros-img{
		grid-column: 1/3;
		grid-row: 2/3;
	}
	.nosotros-img img {
		width: 100%;
		height: auto;
		left: 0;
		transform: translateX(0);
	}
	.personal-cont {
		width: 92%;
		margin: 0 auto;
		grid-gap:1em;
		font-size: .7em;
	}
	.personal-ficha {
		width: 100%;
		margin: 0 auto 2rem;
		text-align: center;
	}
	.contacto-form h3 {
		font-size: 1.5em;
	}
	.trabaja-cabecera .script-text {
		font-size: 1.2em;
	}
	.trabaja-cabecera p{
		font-size: .8em;
	}
	.formulario label {
    	font-size: .7em;
	}
	.barra-multicolor{
		display: none;
	}
	.formulario li {
	    margin: .8em auto .4em;
	}
}
@media screen and (max-width: 350px){
	.flipcard .back p{
		font-size: .6em;
		margin: 0 4%;
		line-height: 1.1em;
	}
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*+++++++++++++++++++++++++++++++++++    MEDIA QUERIES ASPECT RATIO    +++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (min-aspect-ratio: 17/9) {
	/*body{
		background: black;
	}*/

}
@media screen and (max-aspect-ratio: 2/1) {
	/*body{
		background: yellow;
	}*/

}
@media screen and (max-aspect-ratio: 16/9) and (min-width: 961px){
	/*body{
		background: red;
	}*/

}
@media screen and (max-aspect-ratio: 5/3) {
	/*body{
		background: olive;
	}*/
}
@media screen and (max-aspect-ratio: 3/2) {
	/*body{
		background: cyan;
	}*/
}
@media screen and (max-aspect-ratio: 1/1){
	.modal{
		width: 80vw;
		height: 70vh;
		margin: -35vh 0 0 -40vw;
		font-size: .9em;
	}
}
@media screen and (max-aspect-ratio: 3/4) and (max-width: 600px){

}
