/*
 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 POR DEFECTO
================================= */
:root {
  --c-negro: #000;
  --c-blanco: #FFFFFF;
  --c-primario: #209D50;
  --c-secundario: #1D231C;
  --c-grisclaro: #E1DFD9;
  --c-gris: #f9f9f9;
}

/* ================================
   OUTLINE
================================= */
*:focus {
  outline: 5px solid #FFFFFF21;
}

/* ================================
   ESTILOS COMUNES
================================= */
.zindex0 {
  z-index: 0;
}

.zindex1 {
  z-index: 1;
}

a {
  text-decoration: none;
}

a,
a:hover {
  transition: all 0.4s ease !important;
}

.main-navigation .main-nav ul li[class*="current-menu-"]>a {
  font-weight: 700;
}

/* ================================
   FORMULARIO DE CONTACTO
================================= */
input#nombre,
input#telefono,
input#email {
  background-color: var(--c-blanco) !important;
  border-bottom: 2px solid var(--c-primario);
  margin-top: 5px;
  width: 100%;
}

#form-contacto textarea.wpcf7-form-control {
  background-color: var(--c-blanco) !important;
  border-bottom: 2px solid var(--c-primario);
  margin-top: 5px;
  width: 100%;
  max-height: 150px;
}

/* ================================
   MEDIA QUERIES (VACÍAS)
================================= */
@media screen and (max-width: 1080px) {}

@media screen and (max-width: 780px) {}

@media screen and (max-width: 600px) {}

@media screen and (max-width: 560px) {}

/* ================================
   LOGO HOME
================================= */
.home .site-logo img {
  display: none;
}

.home .site-logo a::before {
  content: "";
  display: block;
  width: 280px;
  height: 131.95px;
  background-image: url('/wp-content/uploads/2025/12/IFS-Therapy-for-Men.png');
  background-size: contain;
  background-repeat: no-repeat;
}

.site-logo {
  z-index: 1;
}

/* ================================
   MENÚ PRINCIPAL
================================= */
.home .main-navigation .main-nav ul li a {
  color: #ffffff;
}

.home .main-navigation .main-nav ul li a:hover,
.home .main-navigation .main-nav ul li a:focus,
.home .main-navigation .main-nav ul li a:active,
.home .main-navigation .main-nav ul li a:visited {
  color: #ffffff;
  box-shadow: 0 3px #209D50;
}

.main-navigation li {
  margin: 0 10px;
}

.main-navigation .main-nav ul li[class*="current-menu-"]>a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover>a {
  box-shadow: 0 3px #209D50;
}

.main-navigation .main-nav ul li[class*="green"]>a {
  color: var(--base-3);
  background-color: #176F39;
  padding: 5px 17px;
  margin-left: 20px;
  border-radius: 10px
}

.menu-item-gtranslate {
  margin: 0 !important;
}

.menu-item-gtranslate>a {
  display: none !important;
}

.menu-item-gtranslate .dropdown-menu {
  padding-top: 0 !important;
  position: static !important;
  opacity: 1 !important;
  height: auto !important;
  visibility: visible !important;
  pointer-events: initial !important;
  display: flex;
  align-items: center;
  column-gap: 20px;
  width: auto !important;
  margin-left: 20px !important;
  box-shadow: none;
}

.menu-item-gtranslate .dropdown-menu li {
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: visible !important;
  padding: 0 !important;
  margin: 0;
}

.menu-item-gtranslate .dropdown-menu a {
  padding: 0 !important;
  width: auto !important;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-bottom: none !important;
}

.menu-item-gtranslate:hover:after,
.menu-item-gtranslate li:hover:after {
  width: 0 !important;
}

/* ================================
   BOTÓN MENÚ MÓVIL
================================= */
nav button.menu-toggle {
  font-size: 20px;
  background: transparent;
  padding: 0;
}

nav button.menu-toggle:hover,
nav button.menu-toggle:focus {
  background: transparent;
  color: #000000;
}

#site-navigation.main-navigation.sub-menu-right.toggled {
  background-color: transparent;
}

/* ================================
   CONTACT FORM 7
================================= */
.wpcf7-form label {
  font-size: 14px;
}

.wpcf7-form-control.wpcf7-submit[type="submit"] {
  padding: 10px 35px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
  width: 100%;
  background-color: #FFFFFF54;
  border-color: #FFFFFF21;
}

.default-form p {
  margin: 0;
}

.default-form .datos {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 20px;
}

.default-form .datos>div {
  flex: 0 0 47%;
}

.default-form .datos>div.full-w {
  flex: 0 0 100%;
}

.default-form textarea {
  max-height: 150px;
}

.rgpd .wpcf7-list-item {
  margin: 0;
}

.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: 10px;
  /* margin-bottom: 15px; */
  margin-top: 10px;
}

.txt-legal .tab-legal p {
  color: var(--c-primario) !important;
  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 {
  transform: rotate(45deg);
  fill: var(--c-primario);
}

.txt-legal .let-peq {
  margin: 0;
  padding-left: 20px;
  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(--c-negro) !important;
  margin-bottom: 20px;
}

/* ================================
   FOOTER
================================= */

.site-footer .footer-widgets {
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.site-footer aside {
  margin: 0 !important;
  padding: 0 !important;
}

.inside-footer-widgets {
  margin-left: 0 !important;
  align-items: stretch;
}

.inside-footer-widgets>div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  margin: 0 !important;
}

.footer-widget-1 img {
  max-width: 100px !important;
}

.footer-widget-2 {
  text-align: right;
}

.footer-widget-2 .custom-html-widget {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  gap: 40px;
}

p.widget-title {
  font-family: Gilda Display, serif;
  margin-bottom: 20px !important;
}

.copyright-bar {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  gap: 7px;
}

.copyright-bar .copy {
  text-align: left;
}

.copyright-bar .links {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
}

.copyright-bar .links a {
  text-align: right;
  text-decoration: none;
  transition: var(--all-transition);
}

/* ================================
   RESPONSIVE
================================= */

@media screen and (max-width: 1024px) {
  .site-logo {
    margin-top: -9px;
  }

  .main-navigation li {
    margin: 0;
  }

  .elementor-element.elementor-element-6f3cf040 {
    margin-top: -410px;
    padding-top: 300px;
  }

  .main-navigation .main-nav ul li[class*="current-menu-"]>a,
  .main-navigation .main-nav ul li:not([class*="current-menu-"]):hover>a {
    margin-bottom: 8px;
  }

  .main-navigation .main-nav ul li[class*="green"]>a {
    color: var(--base-3);
    background-color: var(--accent);
    margin-top: 10px;
    margin-left: 0;
  }

  .main-navigation .main-nav ul li[class*="green"]:hover>a {
    color: #ffffff;
  }

  .menu-item-gtranslate>a {
    display: none !important;
  }

  .menu-item-gtranslate .dropdown-menu {
    margin-top: 20px !important;
    margin-left: 0 !important;
  }

  .gp-icon svg {
    font-size: 20px;
  }

  .home .gp-icon svg {
    color: #ffffff;
  }

  .inside-footer-widgets {
    flex-direction: row;
  }

  .copyright-bar {
    flex-direction: column;
  }
}

@media screen and (max-width: 600px) {

  .default-form .datos {
    flex-direction: column;
  }

  .privacy-policy table {
    display: block;
    overflow-x: scroll;
  }

  .inside-footer-widgets {
    flex-direction: column;
  }

  .inside-footer-widgets>div {
    gap: 20px;
  }

  .inside-footer-widgets>.footer-widget-1 {
    margin-bottom: 20px !important;
  }

  .footer-widget-2 {
    text-align: left;
  }

  .copyright-bar .links {
    gap: 10px;
    flex-direction: column;
  }

  .copyright-bar .links a {
    text-align: center;
  }


}