/* 
Theme Name: espaciocajal
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 3.9
Text Domain: espaciocajal
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/*BIBLIO*/

.biblio-titulo{
    font-size: 20px;
    font-family: Merriweather;
    font-weight: 300;
    line-height: 1.3em;
    
}

.biblio-texto{
    font-size: 15px;
    font-family: Merriweather;
    font-weight: 300;
    line-height: 1.4em;
    
}



/*BIO*/

.person{
    margin-bottom: 10px;
    line-height: 1.2em;
}

.titulo-person{
    
}

.fecha-person{
    color: grey;
}

/*VISUAL*/

.contenedor-texto{
    padding: 200px 40px;
}


.carrusel-visual h4{
    
    font-size: 50px !important;
    color: #062e44 !important;
}

.carrusel-visual p{
    
    font-size: 30px !important;
    line-height: 1.1em;
    
}

@media (max-width: 767px) {
 .carrusel-visual p{
    
    font-size: 18px !important;
    
}
}

.flotar {
  animation: flotacion 2s ease-in-out infinite;
}

@keyframes flotacion {
  0%   { transform: translateY(0px); }
  50%  { transform: translateY(-15px); }
  100% { transform: translateY(0px); }
}
/* SELECTOR DE IDIOMA (popup menú) — shortcode [cajal_idiomas] */
.cajal-idiomas {
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: inherit;
    font-size: 18px;
    letter-spacing: 2px;
    color: #fff;
}
.cajal-idiomas__item {
    color: rgba(255, 255, 255, 0.55);
    text-decoration: none;
    padding-bottom: 3px;
    border-bottom: 1px solid transparent;
    transition: color .25s ease, border-color .25s ease;
}
.cajal-idiomas a.cajal-idiomas__item:hover,
.cajal-idiomas a.cajal-idiomas__item:focus-visible {
    color: #fff;
    border-bottom-color: #fff;
}
.cajal-idiomas__item.is-active {
    color: #fff;
    border-bottom-color: #fff;
}
.cajal-idiomas__sep {
    color: rgba(255, 255, 255, 0.35);
}

/* BOTÓN SIGUIENTE CAPÍTULO (capítulos visuales) — creado por js/siguiente-capitulo.js */
.cajal-next {
    position: fixed;
    left: 50%;
    bottom: 28px;
    z-index: 999990;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    color: #fff;
    text-decoration: none;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 12px);
    transition: opacity .5s ease, transform .5s ease;
}
.cajal-next.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}
.cajal-next__label {
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .3s ease, transform .3s ease;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .45);
}
.cajal-next__circle {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .7);
    background: rgba(2, 30, 46, .35);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s ease, color .3s ease, border-color .3s ease;
}
.cajal-next__circle svg {
    animation: cajal-next-bob 2.4s ease-in-out infinite;
}
.cajal-next:hover .cajal-next__label,
.cajal-next:focus-visible .cajal-next__label {
    opacity: 1;
    transform: translateY(0);
}
.cajal-next:hover .cajal-next__circle,
.cajal-next:focus-visible .cajal-next__circle {
    background: #fff;
    color: #002E45;
    border-color: #fff;
}
.cajal-next:focus-visible { outline: none; }
.cajal-next:focus-visible .cajal-next__circle { box-shadow: 0 0 0 3px rgba(255, 255, 255, .35); }

@keyframes cajal-next-bob {
    0%, 100% { transform: translateY(-2px); }
    50%      { transform: translateY(3px); }
}

/* Fundido al azul de la web al cambiar de capítulo */
.cajal-veil {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: #002E45;
    opacity: 0;
    pointer-events: none;
    transition: opacity .35s ease;
}
.cajal-veil.is-on { opacity: 1; }

@media (max-width: 767px) {
    .cajal-next { bottom: 20px; }
    .cajal-next__circle { width: 46px; height: 46px; }
    .cajal-next__label { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .cajal-next__circle svg { animation: none; }
    .cajal-next, .cajal-next__label, .cajal-veil { transition: none; }
}
