/*

 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

*/



/* ========================================

   VARIABLES

======================================== */

:root {

  --c-negro: #132201;

  --c-blanco: #ffffff;

  --c-primario: #19B859;

  --c-secundario: #228748;

  --c-grisclaro: #ECF1F3;

  --c-gris: #484D49;

}



/* ========================================

   RESET & BASE

======================================== */

a {

  text-decoration: none;

  transition: all 0.4s ease !important;

}



a:hover {

  transition: all 0.4s ease !important;

}



strong {

  font-weight: 700;

}



ol,

ul {

  margin: 0 0 1.5em 1em;

}



ol li {

  margin-bottom: 0.5em;

}



/* Outline para accesibilidad */

*:focus {

  outline: 5px solid orange;

}



/* ========================================

   UTILIDADES

======================================== */

.zindex0 {

  z-index: 0;

}



.zindex1 {

  z-index: 1;

}



.small-text li {

  font-size: 14px;

  font-weight: 500;

}



.lowercase h2 {

  text-transform: none;

}



.text-center {

  text-align: center;

}



/* ========================================

   ENCABEZADO Y NAVEGACIÓN

======================================== */

.inside-header {

  margin-bottom: -90px;

}



.site-logo {

  z-index: 2;

}



.nav-float-right #site-navigation {

  margin-top: -30px;

}



.main-navigation .main-nav ul li[class*="current-menu-"]>a {

  font-weight: 700;

}



.menu-toggle {

  padding: 0;

  font-size: 20px !important;

  margin-top: -35px;

}



.mobile-menu-control-wrapper .menu-toggle,

.mobile-menu-control-wrapper .menu-toggle:hover,

.mobile-menu-control-wrapper .menu-toggle:focus {

  background-color: transparent;

}



.mobile-menu-open .inside-header {

  margin-bottom: 0;

}



/* ================================

   FORMULARIO DE CONTACTO

================================= */



.default-form label {

  font-weight: 500;

  display: inline-block;

  margin-bottom: 10px;

}



.default-form input[type="text"],

.default-form input[type="email"],

.default-form input[type="url"],

.default-form input[type="password"],

.default-form input[type="search"],

.default-form input[type="tel"],

.default-form input[type="number"],

.default-form textarea,

.default-form select {

  color: var(--contrast);

  background-color: #ffffff;

  border-color: var(--base);

  border-radius: 15px;

  width: 100%;

}



.default-form textarea {

  max-height: 150px;

}



.default-form input[type="text"]:focus,

.default-form input[type="email"]:focus,

.default-form input[type="url"]:focus,

.default-form input[type="password"]:focus,

.default-form input[type="search"]:focus,

.default-form input[type="tel"]:focus,

.default-form input[type="number"]:focus,

.default-form textarea:focus,

.default-form select:focus {

  background-color: #ffffff;

}



.default-form .datos {

  display: flex;

  flex-wrap: wrap;

  justify-content: space-between;

}



.default-form .datos>div {

  flex: 0 0 48%;

  max-width: 48%;

}



.default-form .datos>div.full-w {

  flex: 0 0 100%;

  max-width: 100%;

}



.default-form .datos>div.full-w input {

  width: 100%;

}



.wpcf7-not-valid-tip {

  font-size: 13px;

  line-height: 1.4;

  color: #ffffff;

}



input.wpcf7-submit {

  background-color: #228748;

  color: var(--c-blanco);

  border-radius: 50px;

}



input.wpcf7-submit:hover {

  color: #ffffff;

  background-color: #1f7a41;

}



.wpcf7-response-output {

  font-size: 14px;

  border-radius: 50px;

}



.rgpd p {

  margin-bottom: 10px;

}



.rgpd .wpcf7-list-item {

  margin-left: 0;

}



.rgpd input {

  width: auto !important;

}



.txt-legal {

  margin-bottom: 0;

  font-size: 0.8rem;

}



.txt-legal .tab-legal {

  display: flex;

  flex-direction: row-reverse;

  align-items: center;

  justify-content: flex-end;

  column-gap: 4px;

  /* margin-bottom: 15px; */

}



.txt-legal .tab-legal p {

  font-size: 1.2em;

  margin-bottom: 10px;

}



.txt-legal .tab-legal:hover {

  cursor: pointer;

}



.txt-legal .tab-legal .plus-icon {

  margin-top: 4px;

}



.txt-legal .tab-legal .plus-icon svg {

  max-width: 13px;

  transform: rotate(45deg);

}



.txt-legal .let-peq {

  margin: 0;

  padding-left: 1px;

  max-height: 0;

  overflow: hidden;

  transition: max-height 0.5s ease-in-out;

}



.txt-legal .let-peq>p {

  font-size: 0.8rem;

  line-height: 1.25em !important;

  color: var(--texto) !important;

}



/* ========================================

   BOTONES

======================================== */

.vce-button--style-basic.vce-button--style-basic--size-medium {

  font-size: 14px;

  padding: 19px 43px;

  font-weight: 700;

}



/* ========================================

   ELEMENTOS CON ICONOS

======================================== */

.h2-icon h2 {

  margin-bottom: 5px;

}



.h2-icon h2::before {

  content: "";

  background-image: url("https://davidpiedra.rildev03.eu/wp-content/uploads/2025/07/Dietista-online-y-presencial.png");

  width: 60px;

  height: 60px;

  background-repeat: no-repeat;

  background-size: contain;

  display: inline-flex;

  align-items: center;

  margin-bottom: 9px;

  vertical-align: middle;

}



/* ========================================

   ICONOS

======================================== */







.ico .vce-single-image-inner {

  padding: 0 !important;

}



.ico img {

  position: static !important;

  max-width: 50px !important;

  width: 100% !important;

  max-height: 50px;

  height: 50px !important;

  object-fit: contain !important;

}

/* ========================================

   IMAGENES PLATOS SALUDABLES

======================================== */

.img-platos a.vce-image-gallery-item-inner {
  border-radius: 30px;
}

/* ========================================

   RESPONSIVE

======================================== */

@media screen and (max-width: 1080px) {



  /* Formulario */



  .default-form .datos {

    flex-direction: column;

  }



  .default-form .datos>div {

    max-width: 100%;

    flex: 0 0 100%;

  }

}



@media screen and (max-width: 780px) {

  /* Agrega estilos si es necesario */

}



@media screen and (max-width: 600px) {

  /* Agrega estilos si es necesario */

}



@media screen and (max-width: 560px) {

  /* Agrega estilos si es necesario */

}



@media screen and (max-width: 767px) {

  .top-bar {

    text-align: center;

  }



  .image-left .vce-single-image--align-center {

    text-align: left !important;

  }



  .image-left .ico.vce-single-image--align-center {

    text-align: center !important;

  }



  .text-center {

    text-align: center;

  }

  .privacy-policy table {
    display: block;
    overflow-x: scroll;
  }

}

/* Create and position :after pseudo-element */
	
	.vce-col.clickable a:after {
	   content: "";
	   display: block; 
	   position: absolute;
	   top: 0;
	   left: 0;
	   right: 0;
	   bottom: 0;
	   z-index: 2; 
	}
	/* Remove relatively-positioned parent elements in column */
	
	.clickable .vce-col-content, .clickable .vce-col-inner {
	   position: static;
	}