/**********RESET**********/
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height: 1.3;
    font-family: 'Quicksand', sans-serif;
    font-weight: 300;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    text-decoration: none;
    vertical-align:baseline;
    background:transparent;
    color: #666;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}
h1,h2,h3,h4,h5,h6 {
    font-weight: bold;
}
h1 {
    font-size: 2em;
}
h2 {
    font-size: 1.7em;
}
h3 {
    font-size: 1.5em;
}
h4 {
    font-size: 1.2em;
}
p {
    text-align: justify;
    margin-bottom: 1em;
}

/**********CLASS***********/
.pull-left {
	float: left;
}
.pull-right {
	float: right;
}
.pull-none {
	float: none;
}
.responsive {
    width: 100%;
    height: auto;
}

/**********LAYOUT**********/
#wrapper {
    width: 90%;
    max-width: 1300px;
    margin: 0 auto;
    position:relative;
}
/*
#top {
    position:absolute;
    z-index: -1;
    left: -6.153846153846154%;* -80/1300 *
    width: 15.38461538461538%;* 200/1300 *
    height: auto;
}
*/
header {
    /*padding-top: 3em;*/
    display: flex;
    justify-content: space-between;
    /*margin-bottom: 1em;*/
    /*
    width: 89.23076923076923%; * 1160/1300 *
    margin-left: 10.76923076923077%; * 140/1300 *
    */
}
header #logo {
    width: 23.07692307692308% /* 300/1300 */;
}
header #logo img {
    width: 100%;
    height: auto;
}
#slider img {
    display: block;
}
#main {
    position: relative;
}

footer {
    display: flex;
    font-size: 0.75em;
    align-items: center;
}
footer p {
    margin: 0;
    line-height: 2em;
}
footer > div {
    border-right: 1px #db261f solid;
    padding: 0 0.5em;
    display: flex;
    align-items: center;
}
.moduletable_social img {
    width: 2.0em;
    height: auto;
}
.moduletable_social .fb {
    margin-right: 0.3em;
}
.moduletable_idioma {
    padding-right: 0;
    border: none;
}
.moduletable_social {
    padding-left: 0;
}
.moduletable_social p {
    display: flex;
    align-items: center;
}
.moduletable_certificaciones {
    margin-left: auto;
    border: none;
    padding-right: 0;
}

/*********FLEX LAYOUT************/
.flex-1,.flex-2,.flex-3,.flex-4,.flex-5,.flex-6 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.flex-1 > * {
	flex: 0 0 100%;
	overflow: hidden;
}
.flex-2 > * {
	flex: 0 0 49%;
	margin-left: 2%;
	overflow: hidden;
}
.flex-2 *:nth-child(2n+1) {
	margin-left: 0;
}
.flex-3 > * {
	flex: 0 0 32%;
	margin-left: 2%;
	overflow: hidden;
}
.flex-3 *:nth-child(3n+1) {
	margin-left: 0;
}

.flex-4 > * {
	flex: 0 0 23.5%;
	margin-left: 2%;
	overflow: hidden;
}
.flex-4 *:nth-child(4n+1) {
	margin-left: 0;
}
.flex-5 > * {
	flex: 0 0 18.4%;
	margin-left: 2%;
	overflow: hidden;
}
.flex-5 *:nth-child(5n+1) {
	margin-left: 0;
}
.flex-6 > * {
	flex: 0 0 15%;
	margin-left: 2%;
	overflow: hidden;
}
.flex-6 *:nth-child(6n+1) {
	margin-left: 0;
}

/**********NAVIGATION********/
nav {
    /*width: 65.38461538461538% /* 850/1300 */;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
nav ul.menu {
    list-style:none;
    margin: 0;
    padding: 0;
    background-color: inherit;
}
nav ul li {
    text-transform: uppercase;
}
ul.menu {
    display: flex;
}
nav ul#uvemenu .flex-right {
    /*margin-left: auto;*/
}
nav ul.menu li.current > a, nav ul.menu li.active.parent > a, nav ul.menu li.active.parent > span, nav ul.menu a:hover, nav ul.menu span:hover {
    color: white;
    background-color: #fe2016;/*#db261f;*/
}
/*INICIO*/
#slider div.moduletable {
    margin-bottom: 2em;
}
/*PROYECTOS*/
section.proyectos article {
    position: relative;
}
section.proyectos h2 a {
    position: absolute;
    bottom: 0.5em;
    width: 96%;
    background-color: rgba(255,255,255,0.6);
    padding: 2%;
    font-weight: 300;
    font-size: 0.85em;
    color: black;
    text-align: right;
}
section.proyectos article.item:hover a {
    color: #fe2016;
    background-color: rgba(255,255,255,0.8);
}
.item-proyecto h2{
    background-color: #fe2016;
    color: white;
    padding: 0.25em;
    margin-bottom: 3px;
    margin-top: 3px;
    font-weight: 300;
    clear: both;
}
ul.pager {
    list-style: none;
    display: flex;
    margin-bottom: 1em;
}
ul.pager a {
    display: block;
    padding: 0.35em;
    background-color: #fe2016;
    color: white;
    font-weight: normal;
    font-size: 0.7em;
    text-transform: uppercase;
    margin-right: 3px;
}
ul.pager .volver {
    margin-left: auto;
}
.galeria {
  width: 100%;
}
/*EMPRESA*/
dl.tabs {
    position: absolute;
    top: 1em;
    right: 0;
}
dl.tabs dt a {
    background-color: rgba(255,255,255,0.8);
    color: #000;
    display: block;
    margin-bottom: 0.5em;
    padding: 0.25em;
    font-weight: 300;
}
dl.tabs dt.open a {
    color: #fe2016;
}
dl.tabs dt:hover a {
    color: #fd8b86;
}
/*CONTACTO*/
.contacto {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2em;
}
.contacto > div {
    flex-basis: auto;
}
.contacto .formulario {
    width: 60%;
}
.contacto .direccion {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #f2f2f2;
    width: 35%;
}
.contacto .direccion p {
     text-align: center;
}
/**********OVERRIDES*********/
.item-image img {
	width: 100%;
	height: auto;
}
.category-desc {
    margin-top: 1em;
}

div.mod-languages_idioma a {
  line-height: 2em;
  display: inline-block;
}
div.mod-languages_idioma ul {
  list-style: none;
}
div.mod-languages_idioma li {
  margin: 0;
}

/*PAGINACIÓN*/
div.pagination {
  font-size: 0.85em;
}
div.pagination ul {
  list-style: none;
}
div.pagination ul li {
  display: inline-block;
}
div.pagination ul li a, div.pagination ul li span {
  display: block;
  padding: 3px;
}
div.pagination ul li a {
  color: #fe2016;
}



/*Breezing Forms*/
.bfFormDiv {
	/*margin-top: 3em;
	margin-bottom: 3em;*/
}
.bfQuickMode .bfNoSection {
	margin-top: 0;
}
.bfQuickMode section.bfElemWrap {
	padding: 0;
	margin-bottom: 10px;
}
.bfQuickMode section input[type="text"], .bfQuickMode section textarea, .bfQuickMode section select {
	float: none;
	width: 98%;
	border: none;
	font-family: 'Open Sans', sans-serif;
	font-size: 1em;
	line-height: 1.2em;
	background-color: #f2f2f2;
	padding: 1%;
	border-radius: 1px;
}
.bfQuickMode .bfNextButton, .bfQuickMode .bfSubmitButton, .bfQuickMode .bfCancelButton {
	border: none;
	float: none;
	font-family: 'Open Sans', sans-serif;
	font-size: 1em;
	line-height: 1.2em;
	background-color: #fe2016;
	padding: 1%;
	cursor: pointer;
        color: #fff;
        font-size: 0.85em;
}
.bfQuickMode span.bfRequired { 
	color: #999;
}

/**********MEDIA QUERIES**********/
@media screen and (max-width: 1220px) {
    footer {
        flex-wrap: wrap;
        justify-content: center;
    }
    .moduletable_certificaciones {
        margin-left: 0;
        margin-top: 0.5em;
    }
}
@media screen and (max-width: 975px) {
    .moduletable_idioma {
        width: 100%;
        padding: 0;
        margin-top: 0.5em;
        display: flex;
        justify-content: center;
    }
    .moduletable_direccion {
        border: none;
    }
}
@media screen and (max-width: 950px) {
    .moduletable_direccion {
        margin-top: 0.5em;
    }
    .moduletable_nombre-empresa {
        border: none;
    }
}
@media screen and (max-width: 900px) {
    header {
        flex-direction: column;
        align-items: center;
    }
    header #logo {
        min-width: 190px
    }
    header nav {
        margin-bottom: 0.5em;
    }
}

@media screen and (max-width: 850px) {
    dl.tabs {
        position: static;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    dl.tabs dt {
        border: 1px solid #fe2016;
        margin: 5px;
        flex: 1 0 auto;
        text-align: center;
    }
    dl.tabs dt h3 {
        font-size: 1.2em;
    }
    dl.tabs dt a {
        margin: 0;
    }
}

@media screen and (max-width: 700px) {
    .flex-3 > * {
        flex: 0 0 49%;
        margin-left: 2%;
    }
    .flex-3 :nth-child(3n+1) {
        margin-left: 2%;
    }
    .flex-3 :nth-child(2n+1) {
        margin-left: 0%;
    }
    .contacto {
        flex-direction: column;
    }
    .contacto .formulario {
        margin-bottom: 1.5em;
    }
    .contacto .formulario, .contacto .direccion {
        width: 100%;
    }
    .bfQuickMode input[type="text"], .bfQuickMode textarea, .bfQuickMode .uneditable-input, .bfQuickMode input[type="text"]:hover, .bfQuickMode textarea:hover, .bfQuickMode .uneditable-input:hover, .bfQuickMode input[type="text"]:focus, .bfQuickMode textarea:focus, .bfQuickMode .uneditable-input:focus {
        max-width: 100%;
    }
    .bfQuickMode .bfNextButton, .bfQuickMode .bfSubmitButton, .bfQuickMode .bfCancelButton {
        width: 100%;
    }
}
@media screen and (max-width: 500px) {
    footer p {
        text-align: center;
    }
}
@media screen and (max-width: 460px) {
    footer > div {
        border: none;
        padding: 0;
    }
    footer {
        flex-direction: column;
    }
    /* MENÚ */
nav {
    display: block;
    width: 100%;
}
#nav {
    width: 100%;
}
.slicknav_menu {
    background-color: #aaa;
}
.slicknav_btn {
    float: left;
    padding: 0.5em;
    background-color:  #fe2016;
}
.flex-3 > * {
        flex: 0 0 100%;
        margin-left: 0%;
    }
    .flex-3 :nth-child(3n+1) {
        margin-left: 0%;
    }
    .flex-3 :nth-child(2n+1) {
        margin-left: 0%;
    }
}
@media screen and (max-width: 400px) {

}