/* =========================================================
   VEDAS STUDIO · "FLOR EN EL PELO" v2.3
   Embellecimiento global, discreto y reversible
   ========================================================= */

:root {
    --vedas-vino: #7b3f46;
    --vedas-azafran: #b58a45;
    --vedas-tinta: #2f2c29;
    --vedas-suave: #756e67;
    --vedas-marfil: #faf8f4;
    --vedas-linea: rgba(66, 54, 46, 0.16);
}

/* ---------------------------------------------------------
   Cabeceras editoriales
   --------------------------------------------------------- */

.cabecera-pagina-vedas {
    position: relative;
}

.cabecera-pagina-vedas h1 {
    position: relative;
    display: inline-block;
    margin-bottom: 0.52em;
}

.cabecera-pagina-vedas h1::after {
    content: "❦";
    display: block;
    width: max-content;
    margin: 0.42em auto 0;
    color: var(--vedas-azafran);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.34em;
    font-weight: 400;
    line-height: 1;
    opacity: 0.88;
}

.cabecera-pagina-vedas .sobretitulo {
    letter-spacing: 0.16em;
}

.cabecera-pagina-vedas .introduccion {
    max-width: 850px;
}

/* ---------------------------------------------------------
   Secciones: profundidad mínima
   --------------------------------------------------------- */

.pagina-vedas .grupo-textos-vedas {
    transition:
        background-color 180ms ease,
        border-color 180ms ease;
}

.pagina-vedas .grupo-textos-vedas:hover {
    background-color: var(--vedas-marfil);
}

.pagina-vedas .numero-seccion {
    color: var(--vedas-azafran);
    font-variant-numeric: lining-nums tabular-nums;
}

.pagina-vedas .contenido-seccion h2 {
    text-wrap: balance;
}

/* Línea corta de acento bajo los títulos de sección. */
.pagina-vedas .contenido-seccion h2::after {
    content: "";
    display: block;
    width: 42px;
    height: 1px;
    margin-top: 14px;
    background: var(--vedas-azafran);
    opacity: 0.7;
}

/* En Esquemas ya existe su propio lenguaje de líneas y color. */
.esquemas-vedas .contenido-seccion h2::after {
    display: none;
}

/* ---------------------------------------------------------
   Enlaces: menos "web azul", más edición
   --------------------------------------------------------- */

.pagina-vedas a {
    color: var(--vedas-vino);
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.2em;
    text-decoration-color: rgba(123, 63, 70, 0.34);
    transition:
        color 150ms ease,
        text-decoration-color 150ms ease;
}

.pagina-vedas a:hover,
.pagina-vedas a:focus {
    color: #5f2f35;
    text-decoration-color: var(--vedas-azafran);
}

.pagina-vedas a:focus-visible {
    outline: 1px solid var(--vedas-azafran);
    outline-offset: 4px;
}

/* ---------------------------------------------------------
   Listas de términos
   --------------------------------------------------------- */

.pagina-vedas .lista-horizontal span {
    position: relative;
}

.pagina-vedas .lista-estudios p {
    border-bottom-color: var(--vedas-linea);
}

/* ---------------------------------------------------------
   Navegación principal
   GeneratePress + fallback genérico
   --------------------------------------------------------- */

.main-navigation .main-nav ul li a,
#site-navigation .main-nav ul li a {
    position: relative;
}

.main-navigation .main-nav ul li a::after,
#site-navigation .main-nav ul li a::after {
    content: "";
    position: absolute;
    left: 50%;
    right: 50%;
    bottom: 7px;
    height: 1px;
    background: var(--vedas-azafran);
    transition: left 160ms ease, right 160ms ease;
}

.main-navigation .main-nav ul li:hover > a::after,
.main-navigation .main-nav ul li.current-menu-item > a::after,
.main-navigation .main-nav ul li.current_page_item > a::after,
#site-navigation .main-nav ul li:hover > a::after,
#site-navigation .main-nav ul li.current-menu-item > a::after,
#site-navigation .main-nav ul li.current_page_item > a::after {
    left: 18%;
    right: 18%;
}

/* ---------------------------------------------------------
   Footer: un poco más vestido
   --------------------------------------------------------- */

.site-footer,
.site-info {
    position: relative;
}

.site-footer::before {
    content: "❦";
    display: block;
    margin: 0 auto -2px;
    color: var(--vedas-azafran);
    text-align: center;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    line-height: 1;
    opacity: 0.8;
}

.site-info,
.site-footer .site-info {
    border-top: 1px solid var(--vedas-linea);
}

.site-info a {
    text-underline-offset: 0.18em;
}

/* ---------------------------------------------------------
   Ajustes móviles
   --------------------------------------------------------- */

@media (max-width: 768px) {

    .cabecera-pagina-vedas h1::after {
        margin-top: 0.35em;
    }

    .pagina-vedas .contenido-seccion h2::after {
        width: 34px;
        margin-top: 11px;
    }

    .main-navigation .main-nav ul li a::after,
    #site-navigation .main-nav ul li a::after {
        display: none;
    }
}

/* Respeto a usuarios que prefieren menos movimiento. */
@media (prefers-reduced-motion: reduce) {

    .pagina-vedas .grupo-textos-vedas,
    .pagina-vedas a,
    .main-navigation .main-nav ul li a::after,
    #site-navigation .main-nav ul li a::after {
        transition: none;
    }
}


/* ---------------------------------------------------------
   Red interna · cruces de estudio
   Una sola línea editorial, sin cajas ni tarjetas.
   --------------------------------------------------------- */

.pagina-vedas .vedas-cruces {
    margin: 26px 0 4px;
    padding-top: 13px;
    border-top: 1px solid var(--vedas-linea);
    font-size: 14px;
    line-height: 1.75;
    color: var(--vedas-suave);
}

.pagina-vedas .vedas-cruces-titulo {
    margin-right: 10px;
    color: var(--vedas-azafran);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.pagina-vedas .vedas-cruces-separador {
    margin: 0 8px;
    color: var(--vedas-azafran);
    opacity: 0.72;
}

.pagina-vedas .vedas-cruces a {
    font-size: 14px;
    text-decoration-color: rgba(123, 63, 70, 0.24);
}

@media (max-width: 768px) {
    .pagina-vedas .vedas-cruces-titulo {
        display: block;
        margin: 0 0 4px;
    }

    .pagina-vedas .vedas-cruces-separador {
        margin: 0 6px;
    }
}


/* ---------------------------------------------------------
   Volver arriba · final de página
   --------------------------------------------------------- */

.pagina-vedas .vedas-volver-arriba-wrap,
body.home .site-main > .vedas-volver-arriba-wrap {
    display: flex;
    justify-content: flex-end;
    margin: 34px 0 8px;
    padding-top: 18px;
    border-top: 1px solid var(--vedas-linea);
}

.pagina-vedas .vedas-volver-arriba,
body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px 6px;
    border: 1px solid rgba(181, 138, 69, 0.34);
    border-radius: 999px;
    color: var(--vedas-suave);
    background: transparent;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.02em;
    text-decoration: none;
    transition:
        color 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease,
        transform 150ms ease;
}

.pagina-vedas .vedas-volver-arriba span,
body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba span {
    color: var(--vedas-azafran);
    font-size: 16px;
    line-height: 1;
}

.pagina-vedas .vedas-volver-arriba:hover,
.pagina-vedas .vedas-volver-arriba:focus,
body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba:hover,
body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba:focus {
    color: var(--vedas-vino);
    border-color: var(--vedas-azafran);
    background: var(--vedas-marfil);
    text-decoration: none;
    transform: translateY(-1px);
}

.pagina-vedas .vedas-volver-arriba:focus-visible,
body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba:focus-visible {
    outline: 1px solid var(--vedas-azafran);
    outline-offset: 3px;
}

@media (max-width: 768px) {
    .pagina-vedas .vedas-volver-arriba-wrap,
    body.home .site-main > .vedas-volver-arriba-wrap {
        justify-content: center;
        margin-top: 28px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pagina-vedas .vedas-volver-arriba,
    body.home .site-main > .vedas-volver-arriba-wrap .vedas-volver-arriba {
        transition: none;
    }
}
