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

/* ----- SCROLL DEL NAVEGADOR ------ */
/* Firefox */
html {
    scrollbar-width: thin;
    scrollbar-color: var(--c-azul) var(--c-negro);
}

/* Chrome, Edge, Safari */
::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

::-webkit-scrollbar-track {
    background: var(--c-negro);
}

::-webkit-scrollbar-thumb {
    border: 3px solid var(--c-negro);
    border-radius: 999px;
    background-image: linear-gradient(180deg, var(--c-azul-claro) 0%, var(--c-azul) 50%, var(--c-azul-oscuro) 100%);
}

::-webkit-scrollbar-thumb:hover {
    background-image: linear-gradient(180deg, var(--c-azul-claro) 0%, var(--c-azul) 100%);
}

::-webkit-scrollbar-corner {
    background: var(--c-negro);
}

/* la selección de texto también en los colores de la web */
::selection {
    background: var(--c-azul);
    color: var(--c-blanco);
}


html { scroll-behavior: smooth; }
 
body {
    font-family: var(--f-general);
    font-size: 1.0625rem;
    line-height: 1.7;
    font-weight: 400;
    color: var(--c-negro);
    -webkit-font-smoothing: antialiased;
 
    @media (max-width: 767px) {
        font-size: 1rem;
    } 
    
    p {
        font-size: 1.0625rem;
        line-height: 1.7;
        margin-bottom: 20px;

        &:last-child {
            margin-bottom: 0;
        }
 
        strong { font-weight: 700; }
 
        @media (max-width: 767px) {
            font-size: 1rem;
        }
    }
}
  
h1, h2, h3, h4, h5, h6 { font-family: var(--f-titulos); }

h1 {
    font-size: clamp(2.5rem, 5.2vw, 4.5rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -0.035em;
}

h2 {
    font-size: clamp(1.9rem, 3.4vw, 3rem);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -0.025em;

    &.subtitulo-hero {
        font-size: clamp(1.4rem, 2.5vw, 2.1rem);
        font-weight: 600;
        line-height: 1.25;
        letter-spacing: -0.02em;
    }
}

h3 {
    font-size: clamp(1.35rem, 2.1vw, 1.85rem);
    font-weight: 600;
    line-height: 1.22;
    letter-spacing: -0.015em;

    &.titulo-card {
        font-size: 1.3125rem;
        font-weight: 600;
        line-height: 1.3;
    }
}

h4 {
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.01em;
}

h5 {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.35;
}

h6 {
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* ANIMACIONES */ 
@keyframes ev-flotar {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
    50%      { transform: translate3d(-40px, 50px, 0) scale(1.12); }
}
@keyframes ev-flotar-inverso {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1.05); }
    50%      { transform: translate3d(50px, -40px, 0) scale(0.92); }
}
@keyframes ev-rejilla {
    from { background-position: 0 0, 0 0; }
    to   { background-position: 64px 64px, 64px 64px; }
}
 
.anim-flotar          { animation: ev-flotar 16s ease-in-out infinite; }
.anim-flotar-inverso  { animation: ev-flotar-inverso 20s ease-in-out infinite; }
.anim-rejilla         { animation: ev-rejilla 14s linear infinite; }
 
@media (prefers-reduced-motion: reduce) {
    .anim-flotar,
    .anim-flotar-inverso,
    .anim-rejilla { animation: none; }
}

/* ----- RESPONSIVE ------ */

@media screen and (max-width:1024px) {

}

@media screen and (max-width:767px) {

}