/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

body, button, input, select, textarea, .rs-layer,
#proyectos .esg-container * {
    font-family: 'Inter', sans-serif !important;
}
body {
    overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
    color: #005c5a;
}
h2 {
    font-size: 32px;
    font-weight: 400;
}

/*header*/
.inside-header {
    padding: 10px 0px 10px 10%;
    margin: 0 !important;
    max-width: 100% !important;
}
#site-navigation .inside-navigation #primary-menu {
    float: right;
    display: block;
}
.main-nav ul.secondary-menu > li > a { padding-left: 0; }
.main-nav ul.secondary-menu > li a {
    text-transform: inherit;
    font-weight: 500;
    font-size: 14px;
}
.main-nav ul.secondary-menu > li.info a {
    font-size: 14px;
    letter-spacing: 3px;
}
.main-nav ul.secondary-menu > li img {
    width: 40px;
    height: 40px;
    vertical-align: middle;
}
.toggled ul ul.sub-menu { max-width: unset; }
.toggled ul ul.sub-menu > li > a { line-height: 40px !important; }
#primary-menu {
    top: 0;
    position: absolute;
    right: 10%;
}
#primary-menu a > img {
    max-width: 50px;
}
#primary-menu.main-nav ul > li > a {
    line-height: 40px;
}
#sticky-navigation.main-navigation {
	bottom: unset;
	right: unset;
}
#sticky-navigation .navigation-branding {
    margin-left: 10%;
}
#sticky-navigation.main-navigation .grid-parent {
    max-width: 100%;
    align-items: baseline;
}
#sticky-navigation #main-contacto { position: fixed; }
#sticky-navigation #main-contacto .main-nav {
    position: fixed;
    right: 0px;
    top: 0px;
}
#sticky-navigation #primary-menu {
    position: absolute;
    float: right;
    right: 0;
    bottom: 0;
}
#sticky-navigation .sticky-navigation-logo img {
    padding: 5px 0px;
    height: 100px;
}
#main-contacto .main-nav ul li:hover > a {
    background: inherit;
    color: inherit;
}
.main-navigation ul ul.sub-menu {
    max-width: 240px;
    width: max-content;
}
.main-navigation ul ul.sub-menu > li > a {
    padding: 5px 10px;
    line-height: 26px !important;
}
.main-navigation .menu-toggle {
    position: absolute;
    bottom: 0;
    right: 0;
    background: #005c5a !important;
    color: #fff !important;
    line-height: 40px !important;
}
.proyecto-am p { font-size: 14px; }
#contacto {
    letter-spacing: 3px;
    padding: 0 6%;
}
#iconos-contacto {
    display: flex;
    padding: 0 75px;
}
#iconos-contacto > div {
    margin: 0 auto;
    min-width: 33.3%;
}
#iconos-contacto img {
    max-width: 52px;
}
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea {
    font-size: 15px;
    padding: 6px 10px;
}
.wpcf7-form-control-wrap input:not([type="checkbox"]),
.wpcf7-form-control-wrap textarea { width: 100%; }
span.wpcf7-list-item {
    font-size: 15px;
    letter-spacing: 0px;
    margin-left: 0;
}
.sel-pro {
    display: flex;
    letter-spacing: 0;
    line-height: 18px;
    font-size: 18px;
}
.wpcf7-select {
    font-size: 15px;
    line-height: 15px;
    width: 150px;
    padding: 6.5px 10px;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
    top: -22px;
    left: 0;
    text-align: center;
    letter-spacing: 0;
    padding: 0;
    background: none;
    border: none;
    font-size: 12px;
}
.wpcf7 form .wpcf7-response-output {
    text-align: center;
    letter-spacing: 0;
}
span.Proyecto, .wpcf7-select {
    width: 100%;
}
.page .inside-article {
    padding-top: 0;
    padding-bottom: 0;
}
.separate-containers .site-main {
    margin: 0px;
}
.generate-back-to-top, .generate-back-to-top:visited {
    bottom: 10px !important;
    background-color: #005c5d !important;
    opacity: 0.5 !important;
}
.generate-back-to-top:hover, .generate-back-to-top:focus { opacity: 1 !important; }
#responsive-form{
 max-width:600px /*-- change this to get your desired form width --*/;
 margin:0 auto;
        width:100%;
}
.form-row{
 width: 100%;
}
.column-half, .column-full{
 float: left;
 position: relative;
 padding: 0.65rem;
 width:100%;
 -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
}
.clearfix:after {
 content: "";
 display: table;
 clear: both;
}
#email-cntf {
    width: 100%;
}
.sub .column-half:last-child {
    width: 30%;
}
.sub .column-half {
    width: 70%;
}
.sub .column-half:last-child .wpcf7-submit {
    width: 100%;
}
.wpcf7 input[type="submit"] {
    background: #eb9f3f;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 18px;
}
.politica * {
    font-size: 13px;
}
.politica a {
    text-decoration: underline;
}
/**---------------- Media query ----------------**/
@media only screen and (min-width: 48em) {
 .column-half{
 width: 50%;
 }
}
/*composer*/
.vc_col-has-fill>.vc_column-inner, .vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner,
.vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner, .vc_row-has-fill>.vc_column_container>.vc_column-inner {
    padding-top: 0 !important;
}
.vc_column_container > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
@media only screen and (max-width: 440px) {
  .icons .vc_inner {
      width: 50%;
      display: inline-grid;
  }
  .icons .vc_col-sm-4 {
    width: 100% !important;
    height: 190px;
  }
  .maja .icons .vc_inner:nth-child(3) {
    width: 100%;
    display: block;
  }
  .maja .icons .vc_inner:nth-child(3) .vc_col-sm-4 { width: 50% !important; }
  .maja .icons .vc_inner:nth-child(3) .vc_col-sm-4:last-child { width: 100% !important; }
}
@media only screen and (max-width: 767px) {
  /* For mobile phones: */
  .full-width-content.separate-containers .inside-article,
  .full-width-content.one-container .site-content {
      padding: 0 !important;
  }
  h1 {
      font-size: 28px;
  }
  h2 {
      font-size: 24px;
  }
  .uvc-heading {
      margin: 0 5%;
  }
  #info-2 {
      margin: 20px 0px;
  }
	#mobile-header .navigation-branding img, #mobile-header .site-logo.mobile-header-logo img {
  		height: 80px;
  		width: auto;
	}
  #primary-menu {
      right: 0%;
  }
  .proyecto-am .vc_col-sm-2 {
      width: 50% !important;
      display: inline-flex !important;
  }
  #info-2 > .vc_col-sm-6, #info-2 > .vc_col-sm-3:nth-child(2) {
      width: 100% !important;
      margin-bottom: 20px;
  }
  #info-2 > .vc_col-sm-3:nth-child(2) .aio-icon-component .aio-icon-left {
      display: none;
  }
  #info-2 > .vc_col-sm-3:nth-child(2) .aio-icon-component .aio-ibd-block {
      text-align: center;
      padding: 45px 20px 10px;
  }
  #info-2 .wpb_wrapper .aio-icon-box .aio-ibd-block { display: block; }
  .sub .column-half, .sub .column-half:last-child {
      width: 100%;
  }
  .icons p {
      font-size: 13px;
  }
}
@media only screen and (max-width: 800px) {
  #info-2 > .vc_col-sm-6, #info-2 > .vc_col-sm-3:nth-child(2) {
      width: 100% !important;
      margin-bottom: 20px;
  }
}
@media only screen and (max-width: 992px) {
  /* For landscape tablets: */
	#mobile-header .navigation-branding img, #mobile-header .site-logo.mobile-header-logo img {
		height: 120px;
		width: auto;
	}
	.vc_column_container > .vc_column-inner {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
  #contacto { width: 100%; }
	#contacto .wpb_text_column { margin-bottom: 10px; }
	#contacto form.fc-form { padding: 0px 25px 20px; margin-bottom: 0;}
	#contacto h2 { text-align: center !important; }
	.contacto-bg { width: 100%; }
	.vc_row.vc_row-flex > .vc_column_container.contacto-bg { display: none; }
	#info-contacto { margin-left: 0; margin-right: 0; }
  .vc_custom_1595978938639 {
      margin-top: 0px!important;
      padding-bottom: 0px!important;
  }
  .icons .vc_col-sm-4 {
      width: 33.3333%;
      display: inline-flex;
  }
  #info-2 > .vc_col-sm-6, #info-2 > .vc_col-sm-3:nth-child(2) {
      width: 37.5%;
  }
  #iconos-contacto { padding: 0 15px; }
  #iconos-contacto > div {
      font-size: 0;
      margin: 0px auto;
  }
  .proyecto-desc .vc_col-sm-6 { width: 100%; }
  #sticky-navigation .navigation-branding, .navigation-branding { margin-left: 2% !important; }
  #sticky-navigation #primary-menu, #primary-menu { right: 2% !important; }
  .uvc-sub-heading {
      padding: 0 5% !important;
  }
}
@media only screen and (max-width: 1024px) {
  /* For small laptops/desktops: */
	.site-footer { border-top: 0; }
	.site-footer .footer-widgets {display: none;}
	.inside-header { padding: 10px 0px 10px 2%; }
}
