/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 

/* Header */
#sub-left { float: left; font-size: 15px; }
#sub-left a{ margin-right: 25px; }
#et-info {float: right; font-size: 15px; }
#top-header { top: 32px; padding: 10px 0; }
#top-header .container{ font-weight: 400 !important; }
#top-header a:hover{ opacity: 0.7; -webkit-transition: all 0.4s ease-in-out; transition: all 0.4s ease-in-out; }
.et-social-youtube a.icon:before { content: "\e0a3"; }
#top-header .et-social-icon a:before { font-size: 20px !important; }
.et_mobile_menu{ border-top: 3px solid #FFFFFF; }
#main-header { -webkit-box-shadow: 0 4px 0 #DDDDDD; box-shadow: 0 4px 0 #DDDDDD; }
#top-menu li.current-menu-ancestor>a, #top-menu li.current-menu-item>a, .mobile_menu_bar:after, .mobile_menu_bar:before {
    color: #3F429B;
}
#logo { max-height: 120px !important; }
.et_fixed_nav #main-header { position: fixed; }

/* Efecto Menu Principal */
#top-menu li.current-menu-item>a{color:rgba(0,0,0,.6);}
#top-menu  a::before,
#top-menu  a::before {
 content: "";
 position: absolute;
 z-index: 2;
 left: 0;
 right: 0;
}
#top-menu li a:before {
 content: "";
 position: absolute;
 z-index: -2;
 left: 0;
 right: 100%;
 bottom: 50%;
 background: #002F6D;
 height: 3px; 
 -webkit-transition-property: right;
 transition-property: right;
 -webkit-transition-duration: 0.3s;
 transition-duration: 0.3s;
 -webkit-transition-timing-function: ease-out;
 transition-timing-function: ease-out;
}
#top-menu li a:hover {
 opacity: 1 !important;
}
#top-menu li a:hover:before {
 right: 0;
}
#top-menu li li a:before {
 bottom: 10%;
}


/* Footer*/
.footer-info-left{ float: left; color: #CCCCCC;}
#footer-info{ color: #CCCCCC; }
.tolb-holder.tolb-open { z-index: 999999; }
@media (max-width: 767px){ #et-info .et-social-icons { display: inline; }}
@media (max-width: 980px){ .footer-info-left{ float: none; text-align: center; }}
@media (min-width: 979px){ .centrar-column{ margin-left: 15%; }}
#footer-widgets a:hover{ opacity: 0.7; -webkit-transition: all 0.4s ease-in-out; transition: all 0.4s ease-in-out; }
#footer-widgets .footer-widget li:before {
    border-radius: 3px;
    border-style: solid;
    border-width: 3px;
    content: "";
    left: 0;
    position: absolute;
    top: 9px;
}
#footer-widgets h4{ color: #FFFFFF !important; font-weight: 600; margin-bottom: 20px; }
.footer-widget li:before { border-color: #3F429B; }
/* fontawesome.com/v4/icon/ */
#footer-widgets .fa{ 
	padding: 8px;
    color: #3F429B;
	background-color: #FFF;
    font-size: 18px;
    border-radius: 40px;
    margin-right: 9px;
	width: 34px;
	text-align: center;
}
#footer-widgets #text-2 p{ font-size: 12px; }
#footer-widgets .et-social-icons { margin-top: 30px; }
#footer-widgets .et-social-icons li:before{ display: none; }
#footer-widgets .et-social-icons li { margin-right: 20px; padding-left: 0; margin-left: 0; }
.et_pb_gutters3.et_pb_footer_columns3 .footer-widget .fwidget { margin-bottom: 0px; }
#footer-widgets #nav_menu-3{ margin-top: 30px; }


/* Home */
.banner-home .et_pb_button{ font-size: 15px; padding: 0.6em 1em; box-shadow: -10px -10px 0px 0px rgba(236,94,100,0.75);}
.banner-home .et_pb_button:hover{ padding: 0.6em 2em 0.6em 1em; box-shadow: -5px -5px 0px 0px rgba(236,94,100,0.75);}
.banner-home .et_pb_button:after{ line-height: 0.8 !important; }
h1{ font-size: 35px }
h2, h4{ color: #104d79; }
a{ color: #FDCF00; }

.et-pb-icon-circle{ box-shadow: 0px 2px 18px 0px rgba(0,0,0,0.3); }
hr {
    width: 200px;
    border: 2px solid #3F429B;
    margin: 0px 0px 25px 0px;
}

/* Caja Recorridos */
.caja-recorridos {
    padding-bottom: 40px;
	background-color: #FFFFFF;
    box-shadow: 0px 12px 38px -6px rgb(0 0 0 / 30%);
}
.caja-recorridos .et_pb_blurb_container{ padding: 20px; }
.caja-recorridos .descripcion{ min-height: 70px; }
.caja-recorridos table td{ font-weight: 600; font-size: 14px;}
.caja-recorridos table strong{ color: #6eba01; font-size: 16px;}

.linea-alternativa{  border-bottom: 1px solid #0C0E2D;  }
.linea-alternativa:after{  background-color: #0C0E2D; }

.img-destacada{
	display: inline-block;
    max-width: 100%;
    height: auto;
    padding: 4px;
    line-height: 1.42857143;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
}
.text-destacado strong{color: #81b200;}

.iconlist{
	color: #81b200 !important;
    font-size: 20px !important;
}

.noiconlist{
	color: #F04E4D !important;
    font-size: 20px !important;
}

.espacio-bottom li{ margin-bottom: 20px; }

#et-info-phone:before {
    position: relative;
    top: 0px;
    margin-right: 2px;
    content: "\e090";
    border-radius: 50%;
    border: 2px solid #FFFF;
    padding: 5px;
}

.et_pb_main_blurb_image { margin-bottom: 0px; }

.input[type="checkbox"]+label i, input, textarea{ 
	background-color: #FFFFFF !important;
	box-shadow: 0px 6px 18px -6px rgba(0,0,0,0.3);
}

.bt-general{
	padding-top: 10px !important;
    padding-bottom: 10px !important;
    color: #FFF;
    background-color: #FDCF00;
    font-size: 15px;
    text-transform: uppercase;
    border-radius: 6px;
    text-shadow: 1px 1px 2px #555;
    font-weight: 600;
}
.bt-general:hover{ background-color: #244259 !important; }
.bt-general:after{ line-height: 0.8 !important; }

.bt-general2{
	border: 3px solid #BBBBBB !important;;
    margin: 20px 0px;
    padding: 10px 30px 10px 30px !important;
    color: #FFF;
    background-color: #333333;
    font-size: 15px;
    border-radius: 10px;
}
.bt-general2:hover{ 
	background-color: #2E3192 !important;
	padding: 10px 40px 10px 30px !important;
	border: 3px solid #BBBBBB;
}
.bt-general2:after{ line-height: 0.8 !important; }

.fondo-fijo{ background-attachment: fixed; }

/* Efectos Hover en Imagenes */
.img-zoom .et_pb_image_wrap{
    overflow: hidden;
    margin: 0 auto;
}
      
.img-zoom .et_pb_image_wrap img {
    width: 100%;
    transition: 0.5s all ease-in-out;
}
      
.img-zoom .et_pb_image_wrap:hover img {
    transform: scale(1.2);
	opacity: 0.7 !important;
}

.icono-size .et-pb-icon{ width: 90px; height: 90px; }


/* Estilos Logo Showcase */
.wpls-logo-showcase .slick-dots{ 
	display: none !important; 
}
.wpls-logo-slider.center .slick-slide {
    opacity: 1;
    transform: scale(1);
}

/* Iconos FontAwesome */
.fab, .far, .fas {
    font-weight: 400;
    font-size: 25px;
    padding: 10px 20px 10px 0;
	color: #01adf0;
}
.espacio-rs i{
	width: 40px;
}

/* Portfolio Grid 3 Columnas */
@media (min-width: 981px) {
    .lwp-col-portfolio .et_pb_grid_item {
        width: 29.66%!important;
        margin-right: 5.5%!important;  
    }
 
    .lwp-col-portfolio .et_pb_grid_item:nth-child(3n) {
        margin-right: 0!important;
    }
 
    .lwp-col-portfolio .et_pb_grid_item:nth-child(4n) {
        margin-right: 5.5%!important;
    }
 
    .lwp-col-portfolio .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1) {
        clear: none!important;
    }
    .lwp-col-portfolio .et_pb_grid_item.first_in_row {
        clear: unset;
    }
}
.lwp-col-portfolio h2{ 
	background-color: #18143A;
    color: #FFF;
    padding: 10px;
    margin-top: 0 !important;
    text-align: center;
    border-radius: 0 0px 10px 10px;
    height: 60px;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active {
    color: #FFFFFF !important;
    background-color: #18143A;
}

/* Proyectos Internos */
.project .et_pb_blurb_position_left{ margin-bottom: 10px !important; }

/* Breadcrumbs */
.lwp-breadcrumbs, .lwp-breadcrumbs a{ color: #FFF; }
.lwp-breadcrumbs .et-pb-icon.separator {
    font-size: unset;
    vertical-align: middle;
}
.lwp_divi_breadcrumbs_1 .lwp-breadcrumbs .separator {
    color: #ffffff;
}

/* Tabla Precios*/
.entry-content table:not(.variations), body.et-pb-preview #main-content .container table {
    border: none;
}
.tabla-general table{
	border: 1px solid #CCC !important;
}
.tabla-general table tr td{
border-bottom: 1px solid #CCC;
    border-top: none;
    padding: 6px 20px;
}

.entry-content tr td, body.et-pb-preview #main-content .container tr td {
    border-bottom: 1px solid #ddd;
	border-top: none;
    padding: 6px 0px;
}
.espacio-li ul{ margin-left: 30px; }
.espacio-li p:not(.has-background):last-of-type { padding-bottom: 1em; }
li::marker{color: #3F429B; font-size: 18px; }

/* Estilos Galeria */
@media screen and (min-width: 981px) {
    body.single .et_pb_gallery_item {
        width: 22.875% !important;
    	margin-right: 2.5% !important;
   		margin-bottom: 2.5% !important;
    }
    body.single .et_pb_gallery_item.last_in_row {
        margin-right: 0!important;
    }
}


/* Estilos Contact Form 7 */
.wpcf7-form strong{
	color: #FFF;
    text-shadow: 0em 0em 0.5em #000000;
}
.wpcf7-form a{ color: #97937D; }
.btn_color{
	color: #2D3192;
    font-weight: 700;
    font-size: 17px;
    background-color: #FFFFFF !important;
    display: block;
    margin-top: 40px;
    padding: 15px 30px;
    border-radius: 40px;
    border: 4px solid #BBBBBB;
}
.btn_color:hover{
	color: #FFFFFF;
    font-weight: 700;
    font-size: 17px;
    background-color: #2D3192 !important;
    display: block;
    margin-top: 40px;
    padding: 15px 30px;
    border-radius: 40px;
    border: 4px solid #BBBBBB;
}
.wpcf7-text, .wpcf7-date, .wpcf7-number, .wpcf7-select, .wpcf7-textarea{
	font-family: inherit;
    background: #ffffff;
    border-radius: 2px;
    border: 1px solid #dddddd !important;
    box-shadow: none;
    width: 100% !important;
    padding: 15px !important;
    margin-bottom: 15px !important;
	box-shadow: 0px 6px 18px -6px rgba(0,0,0,0.3);
}
.wpcf7-textarea{ height: 140px; }
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing{
    margin: 0;
    padding: 0;
    border: none;
}

.wpcf7-form input[type=checkbox]{
  width: 20px;
  height: 20px;
}

.wpcf7-form label{
  /*display: inline-block;*/
  vertical-align: top;
  margin-top: 2px;
  font-weight: 600;
  margin-bottom: 10px;
}

.wpcf7-radio .wpcf7-list-item {
    display: block;
    margin: 0 0 0.5em 1em;
}

.math{
	width: 80px;
	padding: 10px !important;
}
.asterisco{color: #ff5700;}


.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 20px;
    text-align: center;
    font-size: 20px;
    color: #FFF;
    font-weight: 700;
    border: 2px solid #00a0d2;
}


.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450; /* Green */
	background-color: #46b450;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232; /* Red */
	background-color: #dc3232;
}

.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28; /* Orange */
    background-color:  #f56e28;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900; /* Yellow */
	background-color:  #ffb900;
}

.wpcf7-list-item {
    display: inline-block;
    margin: 0;
}

.codedropz-upload-inner h3 {
    margin: 5px 0;
    font-size: 25px;
    line-height: 32px;
}

#responsive-form{
	/*	max-width:600px; -- cambiar esto para conseguir el ancho de la forma deseada --*/
	margin:0 auto;
	width:100%;
}
.form-row{
	width: 100%;
}
.column-half, .column-full{
	float: left;
	position: relative;
	padding: 0.35rem;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
.form-espacio{margin-bottom: 40px;}

.color-icono{
	padding: 15px;
    background-color: #CD181E;
    color: #FFFFFF;
    font-size: 20px;
    border-radius: 40px;
    margin-right: 9px;
    width: 50px;
    text-align: center;
}

.color-redes span{ display: none; }
.color-redes .icon{
	padding: 0px;
    color: #FFFFFF;
    font-size: 25px;
}
.color-redes{
    float: none !important;
    text-align: center;
	padding: 0 !important;
}
.color-redes li {
    display: inline-block;
    margin: 10px;
}


 
/**---------------- Media query ----------------**/

@media (max-width: 980px){
	#top-header{ padding: 0; }
	#sub-left { display: none; }
	#et-info{ float: none; font-size: 15px; }
	.banner-home h1{ font-size: 40px;}
	h1{ font-size: 30px }
	.fondo-fijo{ background-position: center bottom !important; }
	#footer-widgets { padding: 12% 0 0 0;}
	.texto-contactenos { text-align: center !important; }
	.texto-contactenos .color-icono{ display: block; margin: 0 auto; }
	#logo { max-height: 90px !important; }
	.joinchat {
		bottom: 40px;
		right: 0px;
	}
}

@media only screen and (min-width: 48em) { 
	.column-half{
		width: 50%;
	}
}

div.heateor_sss_bottom_sharing {
    margin-bottom: 0;
    zoom: 0.9;
}

.row-no-padding{ padding: 0px !important; }

/* vertically align row using flex */
@media only screen and (min-width : 981px) {
    .mp_row_vertical_align {
        display: flex;
        flex-direction: row;
        align-items: center;
	}
}


