/*
 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
*/


/* =Theme customization starts here
------------------------------------------------------- */

/**
Colores corporativos:
  #31bfc8
  #222831
**/

/* poppins-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/poppins-v24-latin_latin-ext-regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/poppins-v24-latin_latin-ext-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/poppins-v24-latin_latin-ext-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/poppins-v24-latin_latin-ext-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/poppins-v24-latin_latin-ext-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/poppins-v24-latin_latin-ext-regular.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-italic - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/poppins-v24-latin_latin-ext-italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/poppins-v24-latin_latin-ext-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/poppins-v24-latin_latin-ext-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/poppins-v24-latin_latin-ext-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/poppins-v24-latin_latin-ext-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/poppins-v24-latin_latin-ext-italic.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-500 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/poppins-v24-latin_latin-ext-500.eot'); /* IE9 Compat Modes */
  src: url('fonts/poppins-v24-latin_latin-ext-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/poppins-v24-latin_latin-ext-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/poppins-v24-latin_latin-ext-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/poppins-v24-latin_latin-ext-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/poppins-v24-latin_latin-ext-500.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-700 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/poppins-v24-latin_latin-ext-700.eot'); /* IE9 Compat Modes */
  src: url('fonts/poppins-v24-latin_latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/poppins-v24-latin_latin-ext-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/poppins-v24-latin_latin-ext-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/poppins-v24-latin_latin-ext-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/poppins-v24-latin_latin-ext-700.svg#Poppins') format('svg'); /* Legacy iOS */
}


body,
html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  color: #222831;
  font-weight: 400;
}
#page-container {
  overflow-y: initial!important;
}
#page-container { overflow-y: initial!important; }
body, input, textarea, select {
    font-family: 'Poppins', sans-serif;
}
.poppins-medium { font-weight: 500; }

body,
.et_pb_section { background-color: #ffffff; }

a { color: #31bfc8; }

h1,h2,h3,h4,h5,h6,b,strong { font-weight: 700; }
h1,h2,h3,h4,h5,h6 { color: #222831; }

.et-db .et_pb_button {
    letter-spacing: 1px;
}
.et-db .et_pb_button,
.et-db .et_pb_button:hover, .et-db .et_pb_module .et_pb_button:hover {
    padding: 6px 30px;
}

/* ----- BLURBS ----- */
.et_pb_blurb_position_left .et_pb_blurb_container { padding-left: 0; }
.et_pb_blurb_position_left .et_pb_blurb_content, .et_pb_blurb_position_right .et_pb_blurb_content {
  display: flex;
  align-items: baseline;
}
.et_pb_blurb_position_left .et_pb_main_blurb_image, .et_pb_blurb_position_right .et_pb_main_blurb_image { margin-bottom: 0; }



/* ----- MENÚ search ----- */
.et-db .et_pb_searchform {
  display: block!important;
}
.et-db .et_pb_searchsubmit {
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important; /* Envía el texto fuera de la vista */
    width: 55px !important; /* Ancho fijo para el botón de la lupa */
    padding: 0 !important;
    background-color: #2ea3f2 !important; /* Cambia al color que quieras */
    border: none !important;
    cursor: pointer;
}
.et-db .et_pb_searchform {
    position: relative !important;
    display: flex;
}
.et-db .et_pb_searchform::after {
    content: '\55'; /* Código de la lupa de Divi */
    font-family: 'ETModules' !important;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 55px; /* Debe ser igual al ancho del botón arriba */
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff !important; /* Color de la lupa */
    font-size: 20px;
    pointer-events: none; /* Importante: para que el click pase al botón */
    z-index: 99;
}
/* Relevanssi ajax */
.rlv-has-spinner {
	border-color: #31bfc8;
	border-right-color: transparent;
}

.rlv-has-spinner::after {
	background-color: #31bfc8;
}

/* Alineación de la foto y el texto en el desplegable */
.relevanssi-live-search-result a,
.relevanssi-live-search-result a .rlv-busqueda-contenedor {
    display: flex !important;
    align-items: center !important;
    gap: 12px;
    padding: 5px 0;
}

.rlv-busqueda-contenedor img {
    width: 50px !important;
    height: 50px !important;
    object-fit: cover;
    border-radius: 4px;
    flex-shrink: 0;
}

.rlv-busqueda-texto {
    font-weight: 600;
    line-height: 1.2;
}

/* Ajuste del contenedor de Relevanssi para Divi */
.relevanssi-live-search-result a {
    text-decoration: none !important;
}
/* FIN Relevanssi ajax */



.et-db.wp-child-theme-divi-child .et-l--header .et_pb_row .et_pb_column .dipl_ajax_search_icon:after {
  background-color: #222831;
  width: 25px;
  border-radius: 2px;
  transform: translateY(-50%) scaleX(-1);
  right: 5px;
}

.bola_inicio {
  display: flex;
  align-items: center;
  justify-content: center;
  left: calc(50% - 650px)!important;
  transform: none!important;
  width: 100px;
  height: 100px;
}
.bola_inicio img {
  width: 14px;
  margin-right: 3px;
}
@media (max-width: 1460px) {
  .bola_inicio { left: 11vw!important; }
}
@media (max-width: 980px) {
  .bola_inicio {
    left: 13vw!important;
    bottom: 60px!important;
    font-size: 0.9em;
    width: 80px;
    height: 80px;
  }
  .bola_inicio img { width: 12px; }
}
@media (max-width: 780px) {
  .bola_inicio {
    bottom: 40px!important;
    font-size: 0.8em;
    width: 60px;
    height: 60px;
    left: 5vw!important;
  }
  .bola_inicio img { width: 10px; }
}
@media (max-width: 450px) {
  .bola_inicio { display: none!important; }
}


/* ----- INICIO ----- */
.olas1 .et_pb_top_inside_divider {
	background-size: 160% 65px!important;
	height: 65px!important;
}
@media (min-width: 1600px) {
  .olas1 .et_pb_top_inside_divider {
      top: 30px!important;
      transform: scale(1, 2)!important;
  }
}
@media (min-width: 980px) and (max-width: 1600px) {
  .olas1 .et_pb_top_inside_divider {
      top: 21px!important;
      transform: scale(1, 2)!important;
  }
}
@media (max-width: 595px) {
  .olas1 .et_pb_top_inside_divider {
			background-size: 290% 60px!important;
			height: 60px!important;
      transform: scale(1, 1)!important;
  }
}


.olas1 .et_pb_bottom_inside_divider {
	background-size: 210% 65px!important;
	height: 65px!important;
}
@media (min-width: 1600px) {
  .olas1 .et_pb_bottom_inside_divider {
      bottom: 43px!important;
      transform: scale(1, 3)!important;
  }
}
@media (min-width: 980px) and (max-width: 1600px) {
  .olas1 .et_pb_bottom_inside_divider {
      bottom: 20px!important;
      transform: scale(1, 2)!important;
  }
}
@media (max-width: 595px) {
  .olas1 .et_pb_bottom_inside_divider {
      transform: scale(1, 1)!important;
  }
}



.olas2 .et_pb_bottom_inside_divider {
	background-size: 91% 80px!important;
	height: 80px!important;
}
@media (min-width: 1600px) {
  .olas2 .et_pb_bottom_inside_divider {
      bottom: 0px!important;
      transform: scale(2, 1)!important;
  }
}
@media (min-width: 980px) and (max-width: 1600px) {
  .olas2 .et_pb_bottom_inside_divider {
      bottom: 0px!important;
      transform: scale(2, 1)!important;
  }
}
@media (max-width: 980px) {
  .olas2 .et_pb_bottom_inside_divider {
      bottom: -10px!important;
      transform: scale(3, 1)!important;
  }
}
@media (max-width: 595px) {
  .olas2 .et_pb_bottom_inside_divider {
      background-size: 91% 50px!important;
      height: 50px!important;
      bottom: -5px!important;
      transform: scale(3, 1)!important;
  }
}


/* ----- DIVI PLUS BLOG ----- */
.dipl_blog .tipo_catalogos .dipl_blog_post_image_wrapper a { display: block; }
.dipl_blog .tipo_catalogos .dipl_blog_post_image_wrapper img {
  height: 350px;
  object-fit: cover;
}


/* ----- FORMULARIO CONTACTO SUPREME PLUGIN ----- */
.contacto-inicio .wpcf7-response-output { color: #FFF; }
.dipl_form_styler_wrapper .wpcf7-form .wpcf7-mail-sent-ok {
  color:#303e49!important;
}
.dipl_form_styler_wrapper .wpcf7 form {
  display: flex;
  flex-flow: wrap;
}
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col,
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col textarea,
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col input[type=text],
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col input[type=tel],
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col input[type=email] { width: 100%; }

.dipl_form_styler_wrapper .wpcf7 form.sent p,
.dipl_form_styler_wrapper .wpcf7 form.sent .daio-cf7-col {
	display: none; /* Ocultar formulario al enviar: */
}

.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col .politica span.wpcf7-list-item { font-size: 0.9em; }
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col>span.politica-privacidad { padding-right: 5px; }
.dipl_form_styler_wrapper .wpcf7 form>div.daio-cf7-col { margin-bottom: 3%!important; }
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col.pol {
  font-size: 0.7em!important;
  margin-bottom: 20px;
}
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col.pol p { padding-bottom: 0.2em; }
.dipl_form_styler_wrapper .wpcf7 form>div.daio-cf7-col { margin-bottom: 20px!important; }

body #page-container .dipl_form_styler_wrapper .wpcf7-form .wpcf7-form-control.wpcf7-submit {
  margin-top: 20px;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .wpcf7-form-control.wpcf7-submit,
body #page-container .dipl_form_styler_wrapper .wpcf7-form .wpcf7-form-control.wpcf7-submit:hover:disabled,
.dipl_form_styler_wrapper .wpcf7 input.wpcf7-submit:disabled {
  transition: color 300ms ease 0ms,background-color 300ms ease 0ms;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .wpcf7-form-control.wpcf7-submit:hover { cursor: pointer; }
.dipl_form_styler_wrapper select {
  border: 0 solid #333;
  color: rgba(48,62,73,0.5);
  background-color: rgba(0,0,0,0);
  padding: 16px 20px 16px 16px;
  font-size: 14px;
  box-sizing: border-box;
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
}
.dipl_form_styler_wrapper .daio-cf7-col>span.acceptance-646 { white-space: nowrap; display:inline; }
.dipl_form_styler_wrapper small { font-size: 0.7em; }
.dipl_form_styler_wrapper .wpcf7-form .daio-cf7-col textarea { height: 120px; }
.dipl_form_styler_wrapper .wpcf7-form {
    display: flex;
    justify-content: space-between;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .btn-enviar {
  position: relative;
  display: flex;
  justify-content: flex-end;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .btn-enviar p {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .btn-enviar:before {
    font-family: "ETmodules" !important;
    content: "\35";
    position: absolute;
    right: 0.3em;
    top: 26px;
    font-size: 1.6em;
    color: #ffffff;
    transition: all .2s;
    font-style: normal;
    font-weight: 400;
}
body #page-container .dipl_form_styler_wrapper .wpcf7-form .btn-enviar:hover:before {
    color: #31BFC8;
}


/* En las páginas de categoría (familias), el módulo solo lista subcategorías: ocultar su imagen */
.tax-product_cat .dipl_woo_product_category_thumbnail {
    display: none !important;
}

@media only screen and (min-width: 769px) {
    .dipl_form_styler_wrapper .daio-cf7-col.mitad { width: 48%; }
}
@media only screen and (max-width: 769px) {
  .dipl_form_styler_wrapper .daio-cf7-col.mitad { width: 100%; }
}
.dipl_form_styler_wrapper span.wpcf7-list-item { margin-left: 0; }


/* ----- CÓDIGOS PERSONALIZADOS A CADA THEME ----- */

/* ----- FICHA DE PRODUCTOS ----- */
.dipl_breadcrumb .dipl-breadcrumb-wrapper.layout2 li {
    flex-wrap: nowrap;
    text-align: center;
}
.dipl_breadcrumb .dipl-breadcrumb-wrapper.layout2 li a.breadcrumb-item { line-height: 1em; }
/* ----- FIN FORMULARIO CONTACTO ----- */

@media only screen and (max-width: 980px) {
}

@media (max-width: 590px) {
}