/*
Theme Name: Divi Child
Theme URI: https://onlinenavarra.com
Description: Divi - Tema hijo para Masmini
Author: Online Navarra
Author URI:  https://onlinenavarra.com
Template: Divi
*/

/* Fondo sólido real del menú móvil */
/* Quitar mezcla y transparencia del header en móvil */
/* Solo en móvil */
@media (max-width: 980px){

  /* Cuando el menú está abierto */
  .et_mobile_nav_menu .mobile_nav.opened{
    background-color:#ffffff !important;
    background:#ffffff !important;
    background-image:none !important;

    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;

    opacity:1 !important;
  }

  /* Quitar mezcla del header SOLO cuando el menú está abierto */
  .mobile_nav.opened.closest-header,
  .mobile_nav.opened ~ * {
    mix-blend-mode: normal !important;
  }

  /* Header sin mezcla */
  .et_pb_section_0_tb_header{
    mix-blend-mode: normal !important;
    background-image:none !important;
  }

  /* Fondo real del desplegable */
  .et_mobile_nav_menu ul.et_mobile_menu{
    background-color:#ffffff !important;
    background:#ffffff !important;
    background-image:none !important;
  }

  /* Texto visible */
  .et_mobile_nav_menu ul.et_mobile_menu li a{
    color:#111 !important;
    opacity:1 !important;
  }

}

/*-----------------------------*/
/*Formulario acceso*/
/* Personaliza campos de login del plugin */
/*-----------------------------*/

#loginform label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
}

#loginform input[type="text"],
#loginform input[type="password"] {
  background: #eaf2ff;
  border-radius: 25px;
  border: 2px solid #333;
  padding: 10px 14px;
  font-size: 1rem;
  margin: 0 0 16px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

#loginform .login-remember label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 400;
  margin-bottom: 18px;
}

#loginform input[type="checkbox"] {
  width: 16px;
  height: 16px;
}

#loginform input[type="submit"] {
  background: #000;
  color: #fff;
  border-radius: 25px;
  padding: 12px 20px;
  width: 100%;
  font-size: 1.1rem;
  font-weight: 700;
  border: none;
  box-shadow: none;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

#loginform input[type="submit"]:hover {
  background: #333;
  transform: translateY(-1px);
}

/* Ajuste del bloque que contiene el formulario */
.et_pb_code_inner #loginform {
  margin-top: 25px;
}

/* Móvil */
@media (max-width: 767px) {
  #loginform input[type="text"],
  #loginform input[type="password"],
  #loginform input[type="submit"] {
    font-size: 1rem;
  }
}

/*Botones*/
/* CSS */
.button-container {
  display: flex;
  flex-wrap: wrap;          /* en móvil permiten apilarse si no caben */
  justify-content: left;  /* centra los botones horizontalmente */
  gap:10px;                /* espacio entre botones */
  margin: 30px 0;           /* opcional: separación vertical */
}

.btn {
  display: inline-block;
  text-decoration: none;
  font-family: sans-serif;
  font-size: 1rem;
  padding: 0.5em 2.5em;
  border-radius: 50px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.btn:hover {
  transform: translateY(-2px);
  opacity: 0.9;
}

/* Botón principal relleno */
.btn.primary {
  background-color: #1f3695; /* ajusta al color que uses */
  color: #ffffff;
  border: 2px solid transparent;
}

/* Botón secundario sólo contorno */
.btn.outline {
  background-color: transparent;
  color: #ffffff;
  border: 2px solid #ffffff;
}


/*pie de página*/
.menuPie li { display: inline-block; margin:0 10px}

/*2 columnas movil*/
@media (max-width: 767px) {
  .dos-columnas-movil .et_pb_column {
    width: 50% !important;
    float: left;
    clear: none;
  }
}

/*efecto zoom en imagenes*/
.zoom-hover { overflow: hidden;}
.zoom-hover img {transition: transform 0.3s ease;}
.zoom-hover img:hover { transform: scale(1.1);}

/* Formulario contacto*/
.et-pb-contact-message { text-align: center; margin:20px auto }
#et_pb_contact_txt_servicios_0 option:first-child { font-size:120%!important}
.et_pb_contact_form_container .et_pb_contact_field_0.et_pb_contact_field .input { font-size:160%!important}
.et_pb_contact_form_container .et_pb_contact_field_0.et_pb_contact_field .input option{font-size:70%!important}

/*MENU NAVEGACIÓN*/

/*quitar padding arriba y abajo al menú de navegación*/
.et_pb_menu_inner_container {padding-top: 0 !important;padding-bottom: 0 !important; }

.et_pb_menu .et_mobile_menu { margin-top:13px; padding:0 5%!important; z-index:0}
.et_pb_menu .et_pb_menu__menu>nav>ul>li {margin: 0px 5px;}
.et_pb_menu .et_pb_menu__menu>nav>ul>li>a { padding: 10px 0;}
.et_pb_menu .et_pb_menu__menu>nav>ul>li.current-menu-item>a { color: #2b77b5 !important; border-bottom:1px solid #2b77b5;font-weight:600;}
.et_pb_menu .et-menu>li.inicio { display: none}
.et_pb_menu .et-menu>li.zonasocios a{ color: #1f3695!important}
.zonasocios img{ margin-right:8px; vertical-align: middle}
.et_pb_menu .et_mobile_menu>li.zonasocios a { color: #1f3695!important; border-bottom:none!important; padding-bottom:1rem}

.et_pb_menu .et-menu-nav li ul.sub-menu { margin-top: 2px;}
ul.et_mobile_menu>li.menu-item-has-children>a {font-weight: 300; }

/*PORTAFOLIO*/
.nav-previous a, .nav-next a{border: 1px solid #111!important; padding:10px 5px; color: #111}
.nav-single a { font-size: 13px!important}
.nav-previous a:hover, .nav-next a:hover{border: 1px solid #000!important; background-color:#000; color:#fff!important}

@media only screen and (max-width: 850px) {
	.nav-previous,.nav-next { float: none!important;}
	.nav-previous a, .nav-next a{border: 1px solid red!important}
}

.single-project.et_pb_pagebuilder_layout .nav-single { margin: 10px auto 30px!important;}

@media (max-width: 981px) {
.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item.on_last_row, .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row {
    margin: 0 0.5%;
    width: 24%;
}
}