/*
 Theme Name:   Recurrent Energy
 Theme URI:    https://llyc.global/
 Description:  Recurrent Energy
 Author:       LLYC
 Version:      1.00.0
 Author URI:   https://llyc.global/
 Template:     Divi
*/

:root {
    --main-color : #0E346B;
    --title-color: #2777BD;
    --text-color: #010305;
    --negative-color: #FFFFFF;
    --back-color: #F0F2F5;
    --back-dark-color: #0D192D;
    --gris-fondo: #F2F2F2;
    --granate: #A0090C;
    --rojo:#CA0B0F;

    --text-family: "D-DIN";
    --size-64: 64px;

    --size-titulo: 48px;      
    --line-titulo: 120%;
    --size-destacado: 32px;
    --size-titular: 24px;
    --size-text: 18px;                  
    --line-texto: 150%;
    --size-mini: 16px;    
    --size-menu-footer:  28px;
       
    --padding-peque: 15px;
    --padding-medio: 20px;
    --padding-grande: 40px;
}

@media only screen and (max-width:768px){  
    :root {
      --size-titulo: 40px;
      --size-destacado: 28px;
      --size-titular: 20px;
      --size-medium: 18px;    
      --size-texto: 16px;
      --size-mini: 14px;    
      --size-menu-footer:  24px;
    }
}


/*------------------------------------*\ TYPOGRAPHY \*------------------------------------*/
@font-face {
    font-family: 'D-DIN';
    src: url('fonts/d_din/D-DIN.otf');
    font-weight: 400;
}
@font-face {
    font-family: 'D-DIN';
    src: url('fonts/d_din/D-DIN-Bold.otf');
    font-weight: 600;
}
/*------------------------------------*\ TYPOGRAPHY \*------------------------------------*/

.et_pb_row {
    width: 80%;
    max-width: 1240px;
}

body.wp-child-theme-recurrent_energy{
    font-family: var(--text-family);
    font-size: var(--size-text);
    font-weight: 400;
    color: var(--text-color);    
    line-height: var(--line-texto);
}
.texto_claro a{
    color: var(--negative-color);
}
.texto_claro{
    color: var(--negative-color);
}
.texto_destacado{
    font-size: var(--size-destacado);
    line-height: var(--line-titulo);
}

.texto_destacado strong{
    font-weight: 700;
    color: var(--title-color);
}

.before_linea::before{
    content: url(imagenes/before_titulo.svg);
    position: relative;
    display: block;
    padding-bottom: 30px;
}

.before_email::before{
    content: url(imagenes/email.svg);
    position: relative;
    display: block;
    padding-bottom: 30px;
}

.titular{
    font-size: var(--size-titular);

}

.titulo{
    font-size: var(--size-titulo);
    line-height: var(--line-titulo);
}

.azul {
  color:var(--title-color)
}

.contacto{
    font-size: var(--size-medium);
}

.width_80{
    width: 80%;
}
.bloque_centrado{
    margin: 0 auto;
}
.bloque_derecha{
    margin: 0 0 0 auto;
}
.border_left{
    border-left: 2px solid var(--title-color);
    padding-left: 20px;
}

/* Home */
.seccion_cabecera {
    min-height: 90vh;
}

.localizacion {
    border:1px solid var(--negative-color);
    padding: var(--padding-medio);
    width: fit-content;
}


/* Slider home */
  
  .slider_card {
    background-color: var(--main-color);
    color: var(--negative-color);
    border-radius: 20px;
    padding: var(--padding-grande);
    min-height: 310px;
    height: 100%;
    position: relative;
    transition: all 0.4s ease;
    overflow: hidden;
  }

  .carousel_viewport {
    overflow: hidden;
    width: 100%;
  }
  

  .carousel_container {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 100%; 
    padding-right: 60px;
    padding-left: 60px;
  }

  .slider_card .slider_icono img {
    max-height: 40px;
    margin-bottom: var(--padding-medio);
  }
  
  .slider_titulo {
    font-size: var(--size-titular);
    color: var(--negative-color);
    margin-top: var(--padding-medio);
  }
  
  .slider_boton {
    margin-top: 20px;
  }
  
  .slider_texto_largo {
    display: none;
    font-size: var(--size-mini);
    font-weight: 400;
    color: var(--text-color);
  }

  .carousel_slide {
    /*width: calc(25% - 0.75rem) !important;*/
    transition: width 0.3s ease;
    flex: 0 0 calc(25% - 0.75rem);
  }

  .carousel_slide img {
    filter: brightness(0) invert(1); /* se verá blanco */
    transition: filter 0.3s ease;
  }

  .slider_icono {
    width: 40px;
    height: 40px;
  }

  .carousel_slide.active {
    /*width: calc(50% - 0.75rem) !important; */
    flex: 0 0 calc(75% - 0.75rem);
  }

  .carousel_slide.active .slider_content {
    display: flex;
    gap: var(--padding-grande);
  }

  .carousel_slide.active .titulo {
    width: 40%;
  }

  .carousel_slide.active .slider_titulo {
    color: var(--text-color);
    
  }
 
  .carousel_slide.active img {
    filter: none;
  }
  
  .carousel_slide.active  .slider_card{
    background-color: var(--negative-color);
    color: var(--main-color);
    display: flex;
  }
  
  .carousel_slide.active .slider_texto_largo {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  

  .carousel_buttons {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
    
  }


  .carousel_buttons button {
    border: none;
    padding: 0;
    cursor: pointer;
    pointer-events: all;
    background-color: transparent;
    width: 40px;
    height: 40px;

  }
  
  .carousel_container {
    position: relative;
    overflow: hidden;
    width: 100%;
  }

  .carousel_container li::marker {
    display: none;
  }

  .carousel_track {
    display: flex;
    gap: var(--padding-medio);
    transition: transform 0.4s ease;
    will-change: transform;
    width: 100%;
    list-style: none !important;
    padding-left: 0 !important;
  }

  /* Preguntas y respuestas */

  .preguntas .et_pb_accordion_item {
    padding: 0;
    border:none;
    background-color: transparent;
  }

  .preguntas .et_pb_toggle_title {
    padding: var(--padding-grande) var(--padding-grande) !important;
    background-color: var(--back-color) !important;
    color: var(--text-color) !important;
    font-size: var(--size-titular);
    text-align: center;
    border-radius: 20px;
    position: relative;
  }

  .preguntas .et_pb_toggle_title:before {
    content: '';
    background-image: url(./imagenes/flecha_abajo.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    right: var(--padding-medio);
    top: 50%;
    transform: translateY(-50%);
    margin-top: 0;
  }

  .preguntas .et_pb_toggle_open .et_pb_toggle_title:before {
    background-image: url(./imagenes/flecha_arriba.svg) !important;
    display: block !important;
    width: 40px;
    height: 40px;
  }

  .preguntas .et_pb_toggle_open .et_pb_toggle_title {
    background-color: var(--main-color) !important;
    color: var(--negative-color) !important;
  }

  .preguntas .et_pb_toggle_open .et_pb_toggle_title::after {
    content: counter(accordion-item) ". ";
    counter-increment: accordion-item;
    font-weight: 400;
    font-size: var(--size-64);
    margin-right: var(--padding-medio);
    position: absolute;
    left: var(--padding-medio);
    font-family: var(--text-family);
    color: var(--title-color);
    
  }

  .preguntas .et_pb_toggle_title::after {
    content: counter(accordion-item) ". ";
    counter-increment: accordion-item;
    font-weight: 400;
    font-size: var(--size-64);
    margin-right: var(--padding-medio);
    position: absolute;
    left: var(--padding-medio);
    font-family: var(--text-family);
    color: var(--text-color);
    display: block;
    top: 50%;
    transform: translateY(-50%);
  }
  
  /* Iniciar el contador */
  .et_pb_accordion {
    counter-reset: accordion-item;
  }

  .preguntas .et_pb_toggle_content{
    padding: var(--padding-grande) calc(2 * var(--padding-grande));
  }

  .preguntas .et_pb_toggle_open .et_pb_background_pattern {
    box-shadow: 5px 5px 10.6px 3px #00000026;
    margin-top: 0;
    border-radius: 20px;
  }

  /* Contact */
  .contacto ul {
    display: flex;
    list-style: none;
    gap: var(--padding-grande);
    padding-left: 0;
  }

  .contacto ul strong {
    color: var(--title-color);
    display: block;
    margin-bottom: var(--padding-medio);
  }

  .contacto .titulo, .contacto .texto {
    max-width: 350px;
  }

  .contacto .et_pb_column_2  {
    padding: var(--padding-grande);
    background-color: var(--gris-fondo);
    border-radius: 15px;
  }

  .contacto .et_pb_column_2  {
    padding: var(--padding-grande);
    background-color: var(--gris-fondo);
    border-radius: 15px;
  }

  .contacto input, .contacto textarea {
    border-radius: 10px;
    background-color: var(--negative-color);
    box-shadow: 4px 10px 20px 0px #0000000D;
    color: var(--text-color);
    font-size: var(--size-texto);
    font-family: var(--text-family);
    padding: var(--padding-peque) var(--padding-medio);
    width: 100%;
  }

  .contacto .enviar {
    width: auto;
    background-color: var(--title-color);
    color: var(--negative-color);
    box-shadow:none;
    border:none;
    padding: var(--padding-peque) var(--padding-grande);
  }

  .banner_contacto .titulo{
    color: var(--negative-color);
    max-width: 810px;
    text-align: center;
    padding-left: 40px;
    margin-left: auto;
    margin-right: auto;
  }

  .banner_contacto  {
    padding: calc(var(--padding-grande) * 2.5) 0 !important;
  }


  .banner_contacto .titulo::before {
    content: '';
    background-color: var(--granate);
    width: 14px;
    height: 100%;
    position: absolute;
    left: 0;
    top:0;
  }

  .banner_contacto span {
    background-color: var(--title-color);
  }


/* Footer */
.columna_menu {
  display: flex;
  align-items: center;
}

.menu_footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.menu_footer div, .menu_footer, .menu_footer nav, .menu_footer ul, .menu_legal{
  width: 100%;
  background-color: transparent;
}

.menu_footer ul {
  display: flex;
  align-items: center !important;
  justify-content: space-between !important;
}

.menu_footer .btn_contacto  {
  display: none !important;
}

.menu_footer a {
  text-transform: uppercase;
  color: var(--title-color);
  font-weight: 700;
  font-size: var(--size-titular);
  font-family: var(--text-family);
  line-height: var(--line-titulo);
}

/* Mas estilos */

a {
  color: var(--main-color);
}

.seccion_cabecera .logo_proyecto{
  max-width: 50%;
  margin-bottom: 15vh;
}
.contenido_texto ol{
  margin-top: 50px;
  color: var(--main-color);
  font-size: var(--size-titular);
}
.contenido_texto li{
  margin-left: 50px;
}
.contenido_texto h2{
  display: inline;
  color: var(--main-color);
  font-size: var(--size-titular);
}
.btn_circular.et_pb_image {
  background: var(--back-color);
  border-radius: 50%;
  padding: 50px;
  text-align: center;
  cursor: pointer;
  max-width: 175px;
  margin: auto;
}

.btn_circular .et_pb_image_wrap img{
  filter: brightness(0) saturate(100%) invert(35%) sepia(1%) saturate(1%) hue-rotate(180deg);
  transition: filter 0.3s ease;
  max-width: 75px;
  max-height: 75px;
}

.btn_circular.seleccionado img,
.btn_circular:hover img{
  filter: brightness(0) invert(1);
}

#btn_lupa.btn_circular.seleccionado,
#btn_lupa.btn_circular:hover {
  background: var(--main-color);
}

#btn_documento.btn_circular.seleccionado,
#btn_documento.btn_circular:hover {
  background: var(--granate);
}

#btn_grua.btn_circular.seleccionado,
#btn_grua.btn_circular:hover {
  background: var(--title-color);
}

#btn_energia.btn_circular.seleccionado,
#btn_energia.btn_circular:hover {
  background: var(--rojo);
}

#btn_reciclar.btn_circular.seleccionado,
#btn_reciclar.btn_circular:hover {
  background: var(--back-dark-color);
}

.seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5:last-child,
.seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5 {
  margin-right: 0;
  padding-right: 2%;
  width: 20%;
}


.bloques_contenido.et_pb_section{
  opacity: 0;
  visibility: hidden;
  transition: opacity 1.5s ease;
  height: 0;
  padding: 0;
}

.bloques_contenido.et_pb_section.visible {
  opacity: 1;
  visibility: visible;
  height: auto;
  padding: 54px 0;
}

.bloques_contenido .et_pb_row {
  box-shadow: 5px 5px 10.6px 3px #00000026;
  border-radius: 23px;
  padding: 50px;    
  display: flex;
  flex-wrap: wrap;
}

.bloques_contenido img{
  max-height: 55px;
}

.bloques_contenido .et_pb_row .et_pb_column_1_4{
  padding-left: 50px;
  margin-top: auto;
  margin-bottom: auto;
}

/* MENU CABECERA */


.et_header_style_left #et-top-navigation nav>ul>li>a,
.et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li>a{ 
  font-size: var(--size-mini);
  font-weight: 400;
}

.et_header_style_left #et-top-navigation nav>ul>li.btn_contacto>a,
.et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li.btn_contacto>a{    
  background-color: var(--main-color);
  color: var(--negative-color);
  padding: 8px 20px;
  border-radius: 6px;
}

.mobile_menu_bar:before, .mobile_menu_bar:after, 
#top-menu li.current-menu-ancestor>a,
#top-menu li.current-menu-item>a{
  color: var(--main-color);
  text-decoration: underline;    
}


.et_header_style_left #et-top-navigation nav>ul>li.btn_contacto.current-menu-item>a,
.et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li.btn_contacto.current-menu-item>a{
  background-color: var(--granate);
  text-decoration: none; 
}

/* MENU MOBILE */
.et_mobile_menu{
  border-top: 3px solid var(--main-color);
}

.mobile_menu_bar:before, 
.mobile_menu_bar:after, 
#top-menu li.current-menu-ancestor>a{
  text-decoration: none;
}

/* MENU FOOTER LEGAL */
.menu_legal .et-menu a{    
  color: var(--negative-color);
}
/* END MENU CABECERA */


.fondo_oscuro {
  background-color: var(--back-dark-color);
}

.cuadros .et_pb_column  {
  background-color: var(--main-color);
  border-radius: 20px;
  padding: var(--padding-grande);
}

.cuadros .et_pb_image {
  max-width:40px;
  width: 40px;
}

.cuadros .et_pb_image img {
  filter: brightness(0) invert(1); 
}

.cuadros  .titulo p{
  font-size: var(--size-titular);
  color: var(--negative-color);
  font-weight: 400;
  line-height: var(--line-texto);
}

.cuadros  .texto p{
  font-size: var(--size-text);
  color: var(--negative-color);
  font-weight: 400;
}

.lansingerstroom a {
  color: var(--title-color);
}

/* Mas estilos */ 

@media (max-width: 1430px) {
  footer #menu-menu-principal {
    display: flex;
    justify-content: space-evenly;
  }

  footer #menu-menu-principal li {
    width: 50%;
    display: flex;
    justify-content: center;
  }
}

@media (max-width: 1250px) {
  #seccion_lineas_fondo.et_pb_section{
      background-image: none !important;
  }
  .bloques_contenido .et_pb_row .et_pb_column_1_4 {
      padding-left: 0px;
  }
  .btn_circular .et_pb_image_wrap img {
      max-width: 50px;
      max-height: 50px;
  }
  .btn_circular.et_pb_image {
      max-width: 150px;
  }
}

@media (max-width: 1024px) {
  .carousel_container {
    padding: 0 0 40px 0;
  }

  .carousel_buttons button { 
    height: 30px;
    width: 30px;
  }

  .carousel_slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    
  }

  .carousel_slide .slider_card {
    background-color: var(--negative-color);
    color: var(--main-color);
    display: flex;
    flex-direction: column;
  }

  .slider_content {
    display: flex;
    flex-direction: column;
  }


  .carousel_slide.active {
    flex: 0 0 100% !important;
    width: 100% !important;
    flex-direction: column;
  }


  .carousel_buttons {
    top: auto;
    bottom: 0;
    transform: translateY(0);
    justify-content: center;
    gap: var(--padding-peque);
  }

  .carousel_slide.active .titulo {
    width: 100%;
  }

  .contacto ul {
    flex-direction: column;
  }

  .preguntas .et_pb_toggle_title::after, .preguntas .et_pb_toggle_open .et_pb_toggle_title::after {
    font-size: var(--size-titular);
  }

  .preguntas .et_pb_toggle_open .et_pb_toggle_title:before {
    width: 22px;
    height: 22px;
  }

  .preguntas .et_pb_toggle_title:before {
    width: 15px;
    height: 15px;
  }

  .preguntas .et_pb_toggle_title { 
    padding: var(--padding-medio) var(--padding-grande) !important;
  }
}

@media (max-width: 980px) {
  footer #menu-menu-principal {
    margin-top: var(--padding-medio);
  }

  footer #menu-menu-principal li {
    justify-content: flex-start;
  }

  .et_pb_menu .et_pb_menu__menu {
      display: none;
  }
  .et_pb_row {
    width: 90%;
  }
  .preguntas .et_pb_toggle_content {
    padding: var(--padding-medio);
  }
}
@media (max-width: 980px) {
  .seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5:last-child,
  .seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5 {
      width: 47.25%;
      margin-right: 5.5%;
      padding-right: 0;
  }
  .seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5:last-child,
  .seccion_botones .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5:nth-child(2n), 
  .seccion_botones .et_pb_row_5col>.et_pb_column.et_pb_column_1_5:nth-child(2n) {
      margin-right: 0;
  }
  .btn_circular .et_pb_image_wrap img {
      max-width: 75px;
      max-height: 75px;
  }
  .btn_circular.et_pb_image {
      max-width: 175px;
  }
  .bloques_contenido .border_left {
      border-left: none;
      padding-left: 0px;
      border-top: 2px solid var(--title-color);
      padding-top: 20px;
      margin-top: 20px;
  }
  .menu_footer.et_pb_menu .et_pb_menu__menu,
  .menu_legal.et_pb_menu .et_pb_menu__menu {
      display: block;
  }
  .menu_legal .et_mobile_nav_menu,
  .menu_footer .et_mobile_nav_menu {
      display: none;
  }
}
@media (max-width: 479px) {
  footer #menu-menu-principal li {
    width: 100%;
  }

  .seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5 {
      width: 47.25%!important;
      margin-right: 5.5%;
  }
  .seccion_botones .et_pb_row .et_pb_column.et_pb_column_1_5:last-child,
  .seccion_botones .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5:nth-child(2n), 
  .seccion_botones .et_pb_row_5col>.et_pb_column.et_pb_column_1_5:nth-child(2n) {
      margin-right: 0;
  }
  
  .btn_circular .et_pb_image_wrap img {
      max-width: 50px;
      max-height: 50px;
  }
  .btn_circular.et_pb_image {
      max-width: 120px;
      padding: 35px;
  }
  .width_80 {
      width: auto;
  }

  .bloques_contenido .et_pb_row{
      padding: 30px;
  }
}
@media (max-width: 320px) {
  :root {
      --size-titulo: 32px;
      --size-destacado: 24px;
      --size-titular: 18px;
      --size-medium: 16px;    
      --size-texto: 14px;
      --size-mini: 14px;    
      --size-menu-footer:  20px;
  }
}