/*
 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
*/

/* FUENTE */

/* Silka */
@font-face {
  font-family: 'Silka';
  src: url('./fonts/Silka-Regular.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Silka';
  src: url('./fonts/Silka-Medium.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'Silka';
  src: url('./fonts/Silka-MediumItalic.otf') format('opentype');
  font-weight: 600;
  font-style: italic;
}

@font-face {
  font-family: 'Silka';
  src: url('./fonts/Silka-SemiBold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
}

/* VARIABLES POR DEFECTO */

:root {
  --c-negro: #000;
  --c-blanco: #FFFFFF;

  --c-primario: #686766;
  --c-primario-light: #999898;
  --c-secundario: #dbdede;

  --c-grisclaro: #EFEFEF;
  --c-gris: #f9f9f9;

  --font-main: 'Silka', sans-serif;

  /* Tipografía fluida */

  --fs-h1: clamp(2rem, 4vw + 1rem, 3.875rem); /* 32px - 62px */
  --fs-h2: clamp(1.75rem, 3vw + 0.5rem, 2.625rem); /* 28px - 42px */
  --fs-h3: clamp(1.5rem, 2.5vw + 0.5rem, 2.25rem); /* 24px - 36px */
  --fs-p: clamp(0.875rem, 1vw + 0.5rem, 1.125rem); /* 14px - 18px */
}

/* OUTLINE */

*:focus { outline: 0px solid orange; }

::selection {
  background-color: var(--c-secundario); 
  color: var(--c-negro); 
}

/* ESTILOS COMUNES */

body {
  font-family: var(--font-main) !important;
  color: var(--c-primario);
  font-size: var(--fs-p);
  line-height: 1.6875rem ;
}

h1, h2, h3 {
  font-family: var(--font-main) !important;
}

h1 {
  font-size: var(--fs-h1);
}

h2 {
  font-size: var(--fs-h2);
  color: var(--c-primario) !important;
  font-weight: 600 !important;
}

h3 {
  font-size: var(--fs-h3);
  font-weight: 400 !important;
}

p {
  margin-bottom: 0px;
  line-height: 1.4em;
}

.gran-p p {
  font-size: 20px;
}

a {
  color: var(--c-primario);
  text-decoration: none;
}

a, a:hover {
  transition: all 0.4s ease !important;
}

/* Disposición */

.zindex0 {
  z-index:0;
}

.zindex1 {
  z-index:1;
}

.flex-60 {
  flex: 0 0 60%  !important;
}

.flex-70 {
  flex: 0 0 70%  !important;
}

@media screen and (max-width:768px) {
  .flex-60, .flex-70 {
    flex: 0 0 100% !important;
  }
}

/* Navegación */

#hide-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;

  transition: all .5s ease !important;
}

.main-navigation .main-nav ul li[class*="current-menu-"] > a {
  color: var(--c-primario);
  font-weight: 700;
}

#menu-derecha ul li:last-child a {
  background-color: #424242;
  border-radius: 50px;
  color: var(--c-blanco);
  border: 1px solid;
  border-color: var(--c-primario-light);
  padding-top: 0px;
  padding-bottom: 0px;
  padding-inline: 20px;
  letter-spacing: 0.1em;
  font-size: 18px;
  box-shadow: 0 0 0 1px var(--c-secundario) !important;
  cursor: pointer;
  transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1) !important;

  &:hover {
    box-shadow: 0 0 0 12px transparent  !important;
    background-color: transparent !important;
    color: #686766;
    border-color: var(--c-secundario);
  }
}

#menu-derecha nav.elementor-nav-menu--main > ul.elementor-nav-menu{
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 0;
}

/* Por si Elementor mete márgenes/padding */
#menu-derecha nav.elementor-nav-menu--main > ul.elementor-nav-menu{
  padding: 0;
  margin: 0;
}

#menu-iz .elementor-nav-menu--layout-horizontal, #menu-derecha .elementor-nav-menu--layout-horizontal {
    display: block !important;
}

#menu-iz .elementor-nav-menu,  #menu-derecha .elementor-nav-menu {
  justify-content: space-between !important;
  margin-inline-end: 0px !important;


}

.ico-menu {
  a {
    svg {
      transition: all 0.3s ease;
    }
  }
}

/* HOME */

.tratamiento .elementor-element p a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}

.tratamiento .elementor-element {
    position: static;
}

@media screen and (max-width:768px) {

  .tratamiento {

    div.elementor-element:first-child {
      flex: 0 0 80%;
    }
  }
  .tratamiento p {
    font-size: 25px;
  }


}



/* FORMUALRIO */

.formulario {
  input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    
    padding-left: 0px !important;
    padding-bottom: 5px !important;
    transition: all 0.2s ease-in;

    &:focus {
      padding-left: 10px !important;
    }
    
  }   
}

.form-field-politica {
  text-transform: uppercase !important;
}

/* BARRA DE SCROLL */

::-webkit-scrollbar {
  cursor: pointer;
  width: 10px; 
}

::-webkit-scrollbar-track {
  background: var(--c-fondo); 
  cursor: pointer;
}

::-webkit-scrollbar-thumb {
  background: var(--c-secundario); 
  transition: all 0.3s ease-in;
  cursor: pointer;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--c-primario); 
  transition: all 0.3s ease-in;
}

/* CAPTCHA */

.grecaptcha-badge {
  display: none;
}


