/* Paulina Rangel â€” tokens de marca y UI kit */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap');

:root {
    --pr-fondo: #F8F7F5;
    --pr-fondo-2: #FFFFFF;
    --pr-texto: #1D1D1D;
    --pr-marca: #3D0026;
    --pr-apoyo: #B79AB5;
    --pr-enfasis: #C6A76B;
    --pr-fuente-titulo: 'Cormorant Garamond', Georgia, serif;
    --pr-fuente-cuerpo: 'Inter', system-ui, sans-serif;
    --pr-radio: 10px;
    --pr-radio-lg: 16px;
    --pr-sombra: 0 10px 28px rgba(61, 0, 38, 0.07);
    --pr-sombra-hover: 0 18px 40px rgba(61, 0, 38, 0.12);

    /* Escala tipogrÃ¡fica premium */
    --pr-fs-display: clamp(2.25rem, 4.5vw, 3.25rem);
    --pr-fs-h1: clamp(2rem, 4vw, 2.85rem);
    --pr-fs-h2: clamp(1.7rem, 3vw, 2.25rem);
    --pr-fs-h3: clamp(1.2rem, 1.8vw, 1.4rem);
    --pr-fs-lead: clamp(1rem, 1.4vw, 1.125rem);
    --pr-fs-body: 1rem;
    --pr-fs-small: 0.875rem;

    /* Ritmo vertical */
    --pr-space-section: clamp(4.5rem, 8vw, 7rem);
    --pr-space-block: clamp(1.5rem, 3vw, 2.25rem);
    --pr-measure: 38rem;
    --pr-measure-wide: 46rem;
    --pr-measure-hero: 34ch;

    /* Logos e imÃ¡genes â€” nav: PNG recortado (sin padding) + altura equilibrada */
    --pr-logo-nav-h: 64px;
    --pr-logo-nav-h-sticky: 52px;
    --pr-logo-nav-max-w: 220px;
    --pr-header-h: 80px;
    --pr-logo-hero-w: min(480px, 72vw);
    --pr-logo-footer-h: 206px;
    --pr-img-card: 16 / 10;
    --pr-img-portrait: 4 / 5;
    --pr-img-square: 1 / 1;

    /* Motion â€” acciones e interacciones suaves */
    --pr-ease-soft: cubic-bezier(0.22, 1, 0.36, 1);
    --pr-dur-fast: 0.2s;
    --pr-dur-med: 0.35s;
    --pr-dur-collapse: 0.4s;
}

html {
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-padding-top: calc(var(--pr-topbar-h, 3.75rem) + var(--pr-header-h, 80px) + 28px);
}

@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}

/* Decorados de secciÃ³n â€” botÃ¡nica / mariposa / oro (paleta Paulina) */
#home-paulina .pr-section:not(.pr-hero),
.mi-tribu-page .mi-tribu-seccion,
.mi-tribu-page .mi-tribu-hero,
.mi-tribu-page .mi-tribu-cierre-panel,
.mi-tribu-page .mi-tribu-cierre-media,
#section7.pr-contactanos {
    position: relative;
    overflow: hidden;
}

#home-paulina .pr-section:not(.pr-hero) > .container,
.mi-tribu-page .mi-tribu-seccion > .container,
.mi-tribu-page .mi-tribu-hero-inner,
#section7.pr-contactanos > .container {
    position: relative;
    z-index: 2;
}

/* Decor PNG con alpha: img o span (glow). AnimaciÃ³n al entrar por scroll. */
img.pr-decor,
span.pr-decor {
    position: absolute;
    display: block;
    pointer-events: none;
    user-select: none;
    /* Por encima del .container (z-index 2) para verse en la esquina real */
    z-index: 3;
    max-width: none;
    object-fit: contain;
    will-change: transform, opacity;
}

img.pr-decor {
    height: auto;
    opacity: 0;
    transform: translate3d(0, 28px, 0) scale(0.92);
    transition:
        opacity 0.95s cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.05s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--pr-decor-delay, 0ms);
}

img.pr-decor.is-inview {
    opacity: 0.55;
    transform: translate3d(0, 0, 0) scale(1);
}

img.pr-decor--tl.is-pending {
    transform: translate3d(-36px, 18px, 0) scale(0.92);
}

img.pr-decor--tr.is-pending {
    transform: translate3d(36px, 18px, 0) scale(0.92);
}

img.pr-decor--bl.is-pending {
    transform: translate3d(-28px, 36px, 0) scale(0.92);
}

img.pr-decor--br.is-pending {
    transform: translate3d(28px, 36px, 0) scale(0.92);
}

img.pr-decor--ml.is-pending {
    transform: translate3d(-36px, -50%, 0) scale(0.92);
}

img.pr-decor--mr.is-pending {
    transform: translate3d(36px, -50%, 0) scale(0.92);
}

img.pr-decor--tc.is-pending {
    transform: translate3d(-50%, 24px, 0) scale(0.94);
}

img.pr-decor--tl.is-inview,
img.pr-decor--tr.is-inview,
img.pr-decor--bl.is-inview,
img.pr-decor--br.is-inview {
    transform: translate3d(0, 0, 0) scale(1);
}

img.pr-decor--ml.is-inview,
img.pr-decor--mr.is-inview {
    transform: translate3d(0, -50%, 0) scale(1);
}

img.pr-decor--tc.is-inview {
    transform: translate3d(-50%, 0, 0) scale(1);
}

img.pr-decor--tr.pr-decor--flip-x.is-pending,
img.pr-decor--br.pr-decor--flip-x.is-pending {
    transform: translate3d(28px, 24px, 0) scaleX(-1) scale(0.92);
}

img.pr-decor--tl.pr-decor--flip-x.is-pending,
img.pr-decor--bl.pr-decor--flip-x.is-pending {
    transform: translate3d(-28px, 24px, 0) scaleX(-1) scale(0.92);
}

img.pr-decor--flip-x.is-inview {
    transform: translate3d(0, 0, 0) scaleX(-1) scale(1);
}

img.pr-decor--rot-180.is-pending {
    transform: translate3d(0, 28px, 0) rotate(180deg) scale(0.92);
}

img.pr-decor--bl.pr-decor--rot-180.is-pending,
img.pr-decor--br.pr-decor--rot-180.is-pending {
    transform: translate3d(0, 36px, 0) rotate(180deg) scale(0.92);
}

img.pr-decor--rot-180.is-inview {
    transform: translate3d(0, 0, 0) rotate(180deg) scale(1);
}

/*
 * decor-botanica-esquina.png: peso visual abajo-izquierda.
 * Mapear ese ancla a cada esquina de secciÃ³n (ignora flip-x / rot-180 del markup).
 */
img.pr-decor--botanica.pr-decor--tl.is-pending {
    transform: translate3d(-28px, 18px, 0) scale(0.92, -0.92);
}

img.pr-decor--botanica.pr-decor--tl.is-inview {
    transform: scaleY(-1);
}

img.pr-decor--botanica.pr-decor--tr.is-pending,
img.pr-decor--botanica.pr-decor--tr.pr-decor--flip-x.is-pending {
    transform: translate3d(28px, 18px, 0) scale(-0.92, -0.92);
}

img.pr-decor--botanica.pr-decor--tr.is-inview,
img.pr-decor--botanica.pr-decor--tr.pr-decor--flip-x.is-inview {
    transform: scale(-1);
}

img.pr-decor--botanica.pr-decor--bl.is-pending,
img.pr-decor--botanica.pr-decor--bl.pr-decor--rot-180.is-pending {
    transform: translate3d(-28px, 36px, 0) scale(0.92);
}

img.pr-decor--botanica.pr-decor--bl.is-inview,
img.pr-decor--botanica.pr-decor--bl.pr-decor--rot-180.is-inview {
    transform: scale(1);
}

img.pr-decor--botanica.pr-decor--br.is-pending,
img.pr-decor--botanica.pr-decor--br.pr-decor--flip-x.is-pending,
img.pr-decor--botanica.pr-decor--br.pr-decor--rot-180.is-pending {
    transform: translate3d(28px, 36px, 0) scale(-0.92, 0.92);
}

img.pr-decor--botanica.pr-decor--br.is-inview,
img.pr-decor--botanica.pr-decor--br.pr-decor--flip-x.is-inview,
img.pr-decor--botanica.pr-decor--br.pr-decor--rot-180.is-inview {
    transform: scaleX(-1);
}

.pr-decor--tl { top: -0.75rem; left: -0.75rem; }
.pr-decor--tr { top: -0.75rem; right: -0.75rem; }
.pr-decor--bl { bottom: -0.75rem; left: -0.75rem; }
.pr-decor--br { bottom: -0.75rem; right: -0.75rem; }

img.pr-decor--botanica {
    width: clamp(150px, 22vw, 280px);
}

img.pr-decor--mariposa {
    width: clamp(130px, 18vw, 220px);
}

/* Mariposa blanca del logo: visible sobre secciones opacas */
img.pr-decor--mariposa.is-inview {
    opacity: 0.78;
}

/*
 * El PNG mira a la izquierda (como el logo). En esquinas izquierdas
 * se voltea para que apunte hacia el contenido, no hacia afuera.
 */
img.pr-decor--mariposa.pr-decor--tl.is-pending,
img.pr-decor--mariposa.pr-decor--bl.is-pending,
img.pr-decor--mariposa.pr-decor--ml.is-pending {
    transform: translate3d(-28px, 36px, 0) scaleX(-1) scale(0.92);
}

img.pr-decor--mariposa.pr-decor--tl.is-pending {
    transform: translate3d(-36px, 18px, 0) scaleX(-1) scale(0.92);
}

img.pr-decor--mariposa.pr-decor--ml.is-pending {
    transform: translate3d(-36px, -50%, 0) scaleX(-1) scale(0.92);
}

img.pr-decor--mariposa.pr-decor--tl.is-inview,
img.pr-decor--mariposa.pr-decor--bl.is-inview,
img.pr-decor--mariposa.pr-decor--ml.is-inview {
    transform: translate3d(0, 0, 0) scaleX(-1) scale(1);
}

img.pr-decor--mariposa.pr-decor--ml.is-inview {
    transform: translate3d(0, -50%, 0) scaleX(-1) scale(1);
}

img.pr-decor--lavanda {
    width: clamp(70px, 11vw, 140px);
}

img.pr-decor--organica {
    width: clamp(180px, 28vw, 340px);
}

img.pr-decor--organica.is-inview {
    opacity: 0.38;
}

img.pr-decor--ornamento {
    width: clamp(140px, 24vw, 280px);
}

img.pr-decor--ornamento.is-inview {
    opacity: 0.58;
}

.pr-decor--glow {
    width: clamp(160px, 26vw, 320px);
    height: clamp(160px, 26vw, 320px);
    border-radius: 50%;
    background: radial-gradient(
        ellipse at center,
        rgba(198, 167, 107, 0.22) 0%,
        rgba(183, 154, 181, 0.12) 42%,
        transparent 72%
    );
    opacity: 0;
    filter: blur(1px);
    transform: scale(0.85);
    transition:
        opacity 1s ease,
        transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}

.pr-decor--glow.is-inview {
    opacity: 0.85;
    transform: scale(1);
}

.pr-decor--ml { top: 50%; left: 0; }
.pr-decor--mr { top: 50%; right: 0; }
.pr-decor--tc {
    top: 0.75rem;
    left: 50%;
}

.pr-section--clara > img.pr-decor--botanica.is-inview,
.pr-section--clara > img.pr-decor--lavanda.is-inview,
.mi-tribu-seccion--clara > img.pr-decor--botanica.is-inview,
.mi-tribu-seccion--clara > img.pr-decor--lavanda.is-inview {
    opacity: 0.52;
}

.pr-section--opaca > img.pr-decor.is-inview,
.mi-tribu-seccion--opaca > img.pr-decor.is-inview,
.mi-tribu-hero > img.pr-decor.is-inview,
#section7.pr-contactanos > img.pr-decor.is-inview {
    opacity: 0.42;
    filter: brightness(1.15) saturate(0.95);
}

.pr-section--opaca > img.pr-decor--mariposa.is-inview,
.mi-tribu-seccion--opaca > img.pr-decor--mariposa.is-inview,
.mi-tribu-hero > img.pr-decor--mariposa.is-inview,
#section7.pr-contactanos > img.pr-decor--mariposa.is-inview {
    opacity: 0.82;
    filter: none;
}

.pr-section--opaca > .container,
.mi-tribu-seccion--opaca > .container,
#section7.pr-contactanos > .container {
    z-index: 2;
}

.pr-section--opaca > .pr-contactanos__glow,
.pr-section--opaca > .pr-testimonios__glow {
    z-index: 1;
}

@media (max-width: 1199px) {
    img.pr-decor--botanica {
        width: clamp(130px, 20vw, 220px);
    }

    img.pr-decor--organica {
        width: clamp(150px, 24vw, 260px);
    }
}

@media (max-width: 991px) {
    img.pr-decor.is-inview {
        opacity: 0.34;
    }

    .pr-section--opaca > img.pr-decor.is-inview,
    .mi-tribu-seccion--opaca > img.pr-decor.is-inview {
        opacity: 0.28;
    }

    img.pr-decor--botanica {
        width: min(150px, 38vw);
    }

    img.pr-decor--mariposa {
        width: min(120px, 30vw);
    }

    img.pr-decor--lavanda {
        width: min(64px, 18vw);
    }

    img.pr-decor--organica {
        width: min(170px, 46vw);
    }

    img.pr-decor.pr-decor--hide-tablet,
    span.pr-decor.pr-decor--hide-tablet {
        display: none;
    }
}

@media (max-width: 767px) {
    img.pr-decor.pr-decor--hide-mobile,
    span.pr-decor.pr-decor--hide-mobile {
        display: none;
    }

    img.pr-decor--botanica {
        width: min(120px, 42vw);
    }

    img.pr-decor--botanica.is-inview {
        opacity: 0.28;
    }

    img.pr-decor--mariposa {
        width: min(96px, 34vw);
    }

    img.pr-decor--ornamento {
        width: min(160px, 55vw);
    }

    img.pr-decor--ornamento.is-inview {
        opacity: 0.4;
    }

    .pr-decor--glow {
        width: min(180px, 55vw);
        height: min(180px, 55vw);
    }

    .pr-decor--glow.is-inview {
        opacity: 0.55;
    }

    .pr-decor--tl,
    .pr-decor--tr {
        top: -4%;
    }

    .pr-decor--bl,
    .pr-decor--br {
        bottom: -4%;
    }
}

@media (prefers-reduced-motion: reduce) {
    img.pr-decor,
    .pr-decor--glow {
        transition: none !important;
        opacity: 0.5;
        transform: none;
    }

    img.pr-decor--ml,
    img.pr-decor--mr {
        transform: translateY(-50%);
    }

    img.pr-decor--tc {
        transform: translateX(-50%);
    }

    img.pr-decor--flip-x {
        transform: scaleX(-1);
    }

    img.pr-decor--mariposa.pr-decor--tl,
    img.pr-decor--mariposa.pr-decor--bl,
    img.pr-decor--mariposa.pr-decor--ml {
        transform: scaleX(-1);
    }

    img.pr-decor--mariposa.pr-decor--ml {
        transform: translateY(-50%) scaleX(-1);
    }

    img.pr-decor--rot-180 {
        transform: rotate(180deg);
    }

    img.pr-decor--botanica.pr-decor--tl {
        transform: scaleY(-1);
    }

    img.pr-decor--botanica.pr-decor--tr,
    img.pr-decor--botanica.pr-decor--tr.pr-decor--flip-x {
        transform: scale(-1);
    }

    img.pr-decor--botanica.pr-decor--bl,
    img.pr-decor--botanica.pr-decor--bl.pr-decor--rot-180 {
        transform: none;
    }

    img.pr-decor--botanica.pr-decor--br,
    img.pr-decor--botanica.pr-decor--br.pr-decor--flip-x,
    img.pr-decor--botanica.pr-decor--br.pr-decor--rot-180 {
        transform: scaleX(-1);
    }
}

body, html, p, a:not(.fab):not(.fas):not(.far):not(.fa):not([class^="icon-"]):not([class*=" icon-"]), button, input, select, textarea {
    font-family: var(--pr-fuente-cuerpo) !important;
}

body {
    background-color: var(--pr-fondo);
    color: var(--pr-texto);
    font-size: var(--pr-fs-body);
    line-height: 1.7;
    letter-spacing: 0.01em;
}

h1, h2, h3, h4, h5, h6,
.heading,
.pr-titulo {
    font-family: var(--pr-fuente-titulo) !important;
    color: var(--pr-marca);
    font-weight: 500;
    letter-spacing: 0.01em;
    line-height: 1.15;
}

h1 { font-size: var(--pr-fs-h1); }
h2 { font-size: var(--pr-fs-h2); }
h3 { font-size: var(--pr-fs-h3); }

/* Solo contenido editorial pÃºblico (no admin ni formularios densos) */
#home-paulina .pr-section p,
.mi-tribu-page .mi-tribu-seccion p {
    max-width: var(--pr-measure-wide);
}

/* Controles interactivos pÃºblicos â€” transiciÃ³n suave por defecto */
.pr-btn,
.btn-pr-primario,
.btn-pr-ghost,
.btn-pr-enfasis,
.mi-tribu-btn,
.nav-btn-unete,
.pr-option-card,
.recursos-card__toggle {
    transition:
        background-color var(--pr-dur-med) var(--pr-ease-soft),
        color var(--pr-dur-fast) var(--pr-ease-soft),
        border-color var(--pr-dur-med) var(--pr-ease-soft),
        box-shadow var(--pr-dur-med) var(--pr-ease-soft),
        transform var(--pr-dur-fast) var(--pr-ease-soft),
        opacity var(--pr-dur-med) var(--pr-ease-soft);
}

#home-paulina .form-control,
.recursos-page .form-control,
.mi-tribu-page .form-control {
    transition:
        border-color var(--pr-dur-fast) var(--pr-ease-soft),
        box-shadow var(--pr-dur-fast) var(--pr-ease-soft),
        background-color var(--pr-dur-fast) var(--pr-ease-soft);
}

/* Botones */
.btn-pr-primario,
a.btn-pr-primario {
    display: inline-block;
    background-color: var(--pr-marca);
    color: #FFFFFF;
    border: 2px solid var(--pr-marca);
    border-radius: 999px;
    padding: 12px 28px;
    font-family: var(--pr-fuente-cuerpo);
    font-weight: 600;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
    text-decoration: none;
    cursor: pointer;
    transition: background-color var(--pr-dur-med) var(--pr-ease-soft), color var(--pr-dur-fast) var(--pr-ease-soft), border-color var(--pr-dur-med) var(--pr-ease-soft);
}

.btn-pr-primario:hover,
a.btn-pr-primario:hover {
    background-color: var(--pr-enfasis);
    border-color: var(--pr-enfasis);
    color: var(--pr-marca);
}

.btn-pr-ghost,
a.btn-pr-ghost {
    display: inline-block;
    background-color: transparent;
    color: var(--pr-marca);
    border: 2px solid var(--pr-marca);
    border-radius: 999px;
    padding: 12px 28px;
    font-family: var(--pr-fuente-cuerpo);
    font-weight: 600;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.btn-pr-ghost:hover,
a.btn-pr-ghost:hover {
    background-color: var(--pr-marca);
    color: #FFFFFF;
}

.btn-pr-enfasis,
a.btn-pr-enfasis {
    display: inline-block;
    background-color: var(--pr-enfasis);
    color: var(--pr-marca);
    border: 2px solid var(--pr-enfasis);
    border-radius: 999px;
    padding: 12px 28px;
    font-family: var(--pr-fuente-cuerpo);
    font-weight: 600;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.btn-pr-enfasis:hover,
a.btn-pr-enfasis:hover {
    background-color: #b89655;
    border-color: #b89655;
    color: var(--pr-marca);
}

/* Cards blancas */
.card-pr,
.pr-card {
    background-color: var(--pr-fondo-2);
    border: 1px solid rgba(183, 154, 181, 0.35);
    border-radius: var(--pr-radio);
    box-shadow: var(--pr-sombra);
    padding: 1.5rem;
    color: var(--pr-texto);
}

.card-pr h3,
.pr-card h3 {
    font-family: var(--pr-fuente-titulo);
    color: var(--pr-marca);
    margin-top: 0;
}

/* Footer marca */
#footer,
footer#footer,
.pr-footer {
    background-color: var(--pr-marca);
    color: #FFFFFF;
}

#footer a,
.pr-footer a {
    color: rgba(255, 255, 255, 0.9);
}

#footer h4,
#footer h5,
.pr-footer h4,
.pr-footer h5 {
    color: #FFFFFF;
    font-family: var(--pr-fuente-titulo);
}

/* Watermark mariposa (opcional) */
.pr-watermark {
    position: relative;
    overflow: hidden;
}

.pr-watermark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: url('../imagenes/logo/isotipo-mariposa.png');
    background-repeat: no-repeat;
    background-position: right 4% bottom 8%;
    background-size: min(180px, 28vw);
    opacity: 0.06;
    z-index: 0;
}

.pr-watermark > * {
    position: relative;
    z-index: 1;
}

/* Utilidades de marca */
.pr-texto-marca { color: var(--pr-marca); }
.pr-texto-apoyo { color: var(--pr-apoyo); }
.pr-texto-enfasis { color: var(--pr-enfasis); }
.pr-bg-fondo { background-color: var(--pr-fondo); }
.pr-bg-blanco { background-color: var(--pr-fondo-2); }
.pr-section--clara { background-color: var(--pr-fondo); } /* #F8F7F5 */
.pr-section--opaca { background-color: var(--pr-marca); } /* #3D0026 */

/* Logos proporcionales */
.footer-logo-pr,
#footer .footer-logo-pr,
#footer img.logo-height2 {
    max-height: var(--pr-logo-footer-h) !important;
    width: auto !important;
    height: auto !important;
    max-width: min(520px, 100%);
    object-fit: contain;
}

/* MÃ¡s aire entre logo del pie y columnas de texto */
#footer .footer-content .row > [class*="col-"]:first-child {
    padding-right: 1.75rem;
}

#footer .footer-content .row > [class*="col-"]:first-child > p {
    margin-bottom: 0.75rem;
    padding-right: 0.5rem;
}

@media (min-width: 992px) {
    #footer .footer-content .row > [class*="col-"]:first-child {
        padding-right: 2.5rem;
    }
}

#logo .pr-nav-brand,
.pr-nav-brand {
    height: var(--pr-logo-nav-h) !important;
    max-width: var(--pr-logo-nav-max-w) !important;
    width: auto !important;
    object-fit: contain;
    display: inline-block !important;
    filter: drop-shadow(0 2px 8px rgba(61, 0, 38, 0.08));
}

#header.header-sticky.sticky-active #logo .pr-nav-brand {
    height: var(--pr-logo-nav-h-sticky) !important;
    max-width: 220px !important;
}

@media (max-width: 991px) {
    #logo .pr-nav-brand,
    .pr-nav-brand {
        height: 48px !important;
        max-width: 168px !important;
    }
}

/* Scroll reveal premium (visible por defecto si JS falla) */
.pr-reveal {
    opacity: 1;
    transform: none;
    filter: none;
    transition:
        opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.85s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.85s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--pr-delay, 0ms);
    will-change: opacity, transform;
}

.pr-reveal.js-pending {
    opacity: 0;
    transform: translateY(28px);
    filter: blur(2px);
}

.pr-reveal.pr-reveal--left.js-pending {
    transform: translateX(-28px);
}

.pr-reveal.pr-reveal--right.js-pending {
    transform: translateX(28px);
}

.pr-reveal.pr-reveal--scale.js-pending {
    transform: translateY(16px) scale(0.96);
}

.pr-reveal.is-visible {
    opacity: 1;
    transform: none;
    filter: none;
}

/* Las bandas de secciÃ³n nunca se ocultan por reveal (solo su contenido interno) */
.pr-section.pr-reveal.js-pending,
.pr-section.pr-reveal,
.mi-tribu-seccion.pr-reveal.js-pending,
.mi-tribu-seccion.pr-reveal,
.mi-tribu-hero.pr-reveal.js-pending,
.mi-tribu-hero.pr-reveal,
#section7.pr-reveal.js-pending,
#section7.pr-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
}

/* Acento dorado bajo tÃ­tulos */
.mi-tribu-h2::after {
    content: "";
    display: block;
    width: 3.25rem;
    height: 2px;
    margin: 0.85rem auto 0;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, var(--pr-enfasis, #C6A76B), transparent);
    transform-origin: center;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.7s ease;
}

.mi-tribu-h2.pr-reveal.js-pending::after {
    transform: scaleX(0.2);
    opacity: 0.35;
}

.mi-tribu-h2.pr-reveal.is-visible::after,
.mi-tribu-h2::after {
    transform: scaleX(1);
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .pr-reveal,
    .pr-reveal.js-pending,
    .pr-reveal.is-visible {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;
    }

    .pr-hero__bg {
        animation: none !important;
    }

    .btn-pr-primario,
    .btn-pr-ghost,
    .btn-pr-enfasis,
    a.btn-pr-primario,
    a.btn-pr-ghost,
    a.btn-pr-enfasis {
        transition: none;
    }
}

/* === SITE-WIDE BRAND AUDIT ===
   Overrides globales (pÃºblico): anula azul/cyan Crese y tipografÃ­as legacy.
   Carga despuÃ©s de css.css + light.css; re-enlazar tras shop.css en tienda.
   Paleta: #F8F7F5 #FFFFFF #1D1D1D #3D0026 #B79AB5 #C6A76B
*/

/* TipografÃ­a: css.css fuerza Roboto/Encode con !important */
body,
html,
p,
a,
li,
label,
input,
textarea,
select,
button,
.form-control,
.btn,
.btncrese,
#mainMenu nav > ul > li > a,
.header-extras > ul > li > a:not(.btn) {
    font-family: var(--pr-fuente-cuerpo) !important;
}

h1, h2, h3, h4, h5, h6,
.heading,
.pr-titulo,
.taller .titulo a,
.title-quienes,
.error-page-title,
.carrito-product-title,
.carrito-total-text {
    font-family: var(--pr-fuente-titulo) !important;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
.heading,
.pr-titulo,
.taller .titulo a,
.title-quienes,
.error-page-title {
    color: var(--pr-marca) !important;
}

/* Pie y secciones oscuras: tÃ­tulos claros (evitar marca sobre marca) */
#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6,
.footer-content h1,
.footer-content h2,
.footer-content h3,
.footer-content h4,
.footer-content h5,
.footer-content h6,
#section7:not(.pr-contactanos) h2,
#section7:not(.pr-contactanos) h4,
.pr-modal-correo h1,
.pr-modal-correo h2,
.pr-modal-correo h3,
.pr-modal-correo h4,
.pr-modal-correo h5,
.pr-modal-correo h6 {
    color: #FFFFFF !important;
}

body {
    background-color: var(--pr-fondo) !important;
    color: var(--pr-texto) !important;
}

p,
.descripcion,
.testimonial-content p,
.text-quienes {
    color: var(--pr-texto) !important;
}

/* ExcepciÃ³n legibilidad: pÃ¡rrafos sobre fondos oscuros de marca */
#home-paulina .pr-hero p,
#home-paulina .pr-section--opaca > .container > .pr-section__lead,
#home-paulina .pr-section--opaca .pr-empty,
#home-paulina .pr-section--opaca .pr-empty--center,
#home-paulina .pr-section--opaca .pr-programas__nota,
#footer p,
.pr-footer p,
.pr-modal-correo p,
body.recursos-page .recursos-hero p,
body.recursos-page .recursos-hero__lead {
    color: #FFFFFF !important;
}

body.recursos-page .recursos-hero h1,
body.recursos-page .recursos-hero__titulo {
    color: #FFFFFF !important;
}

body.programa-detalle-page .programa-detalle__hero,
body.programa-detalle-page .programa-detalle__hero p,
body.programa-detalle-page .programa-detalle__hero .programa-detalle__precio {
    color: #FFFFFF !important;
}

body.programa-detalle-page .programa-detalle__hero .programa-detalle__eyebrow {
    color: var(--pr-enfasis, #C6A76B) !important;
}

body.programa-detalle-page .programa-detalle__hero .programa-detalle__titulo {
    color: #FFFFFF !important;
}

body.programa-detalle-page .programa-detalle__hero .programa-detalle__precio span {
    color: var(--pr-enfasis, #C6A76B) !important;
}

.pr-modal-correo .pr-modal-correo__etiqueta {
    color: #C6A76B !important;
}

.pr-modal-correo .pr-modal-correo__descripcion {
    color: rgba(255, 255, 255, 0.88) !important;
}

.pr-modal-correo .pr-modal-correo__nota {
    color: rgba(255, 255, 255, 0.78) !important;
}

#home-paulina .pr-section--opaca .pr-programas__eyebrow,
#home-paulina .pr-section--opaca .pr-video__eyebrow,
#home-paulina .pr-section--opaca .pr-testimonios__eyebrow {
    color: rgba(198, 167, 107, 0.95) !important;
}

#home-paulina .pr-hero .pr-hero__tagline {
    color: #F0E4EE !important;
}

/* Chrome compartido: topbar + menú siempre visibles al scroll */
:root {
    --pr-topbar-h: 3.75rem;
    --pr-header-bar-h: 80px;
}

@media (max-width: 1399px) {
    :root {
        --pr-header-bar-h: 60px;
    }
}

#topbar {
    background: #2a001b !important;
    border-bottom: 1px solid rgba(198, 167, 107, 0.28) !important;
}

#topbar.pr-topbar-sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1055 !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
    min-height: var(--pr-topbar-h);
}

#topbar.pr-topbar-sticky > .container {
    display: flex;
    align-items: center;
    min-height: 2.5rem;
}

#topbar.pr-topbar-sticky > .container > .pr-topbar-row {
    width: 100%;
}

/* Reserva topbar + barra de menú (el menú va fixed y sale del flujo) */
html body {
    padding-top: calc(var(--pr-topbar-h) + var(--pr-header-bar-h)) !important;
}

/* Menú fijo bajo el topbar: en <lg el tema Inspiro solo sticky con
   data-responsive-fixed; sin eso la barra desaparece al hacer scroll. */
html body #header,
#header {
    height: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
}

html body #header .header-inner,
html body #header #header-wrap,
html body #header.header-sticky .header-inner,
html body #header.header-sticky #header-wrap,
html body #header.header-sticky.sticky-active .header-inner,
html body #header.header-sticky.sticky-active #header-wrap,
#header .header-inner,
#header #header-wrap,
#header.header-sticky .header-inner,
#header.header-sticky #header-wrap,
#header.header-sticky.sticky-active .header-inner,
#header.header-sticky.sticky-active #header-wrap {
    position: fixed !important;
    top: var(--pr-topbar-h) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: var(--pr-header-bar-h) !important;
    min-height: var(--pr-header-bar-h) !important;
    max-height: none !important;
    z-index: 1050 !important;
    margin: 0 !important;
    overflow: visible !important;
    transition: none !important;
}

/* Menú desplegado: la barra fija debe poder crecer */
html body.mainMenu-open #header .header-inner,
html body.mainMenu-open #header #header-wrap,
body.mainMenu-open #header .header-inner,
body.mainMenu-open #header #header-wrap {
    height: auto !important;
    min-height: var(--pr-header-bar-h) !important;
    max-height: none !important;
    overflow: visible !important;
}

#topbar .pr-topbar-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    min-height: 2.5rem;
    padding: 0;
    width: 100%;
}

/* Escritorio: Bienvenido a la izquierda */
#topbar .pr-topbar-welcome {
    display: block;
    flex: 0 1 auto;
    min-width: 0;
    max-width: min(42vw, 22rem);
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #FFFFFF !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif);
    font-size: 0.84rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.25;
    text-align: left;
}

/* Derecha: buscar + carrito + Salir/Entrar (Salir al borde) */
#topbar .pr-topbar-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex: 0 0 auto;
    margin-left: auto;
    min-width: 0;
    gap: 0.45rem;
}

#topbar .pr-topbar-buscar {
    flex: 0 1 15rem;
    margin: 0;
    max-width: 17rem;
    min-width: 0;
    display: flex;
    align-items: center;
}

#topbar .pr-topbar-buscar .pr-nav-buscar__form {
    width: 100%;
}

#topbar .pr-topbar-acciones {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem 0.85rem;
    flex: 0 0 auto;
    flex-shrink: 0;
    min-height: 2.35rem;
}

#topbar .pr-topbar-acciones__salir {
    margin-right: 0;
    flex-shrink: 0;
}

#topbar .pr-topbar-acciones__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 2.35rem;
    color: #FFFFFF !important;
    text-decoration: none !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif);
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1.2;
    white-space: nowrap;
}

#topbar .pr-topbar-acciones__link:hover,
#topbar .pr-topbar-acciones__link:focus {
    color: var(--pr-enfasis, #C6A76B) !important;
    text-decoration: none !important;
}

#topbar .pr-topbar-acciones .pr-nav-ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.05rem;
    height: 1.05rem;
    color: inherit;
    opacity: 0.95;
}

#topbar .pr-topbar-acciones .pr-nav-ico svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
}

#topbar .pr-topbar-acciones #cantidad_carrito {
    margin-left: 0;
}

@media (max-width: 700px) {
    #topbar .pr-topbar-acciones__txt {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    #topbar .pr-topbar-acciones__link {
        gap: 0.3rem;
    }
}

.lines,
.lines:after,
.lines:before,
#mainMenu-trigger .lines,
#mainMenu-trigger .lines:after,
#mainMenu-trigger .lines:before {
    background-color: #C6A76B !important;
}

/* No pintar la barra central cuando el botÃ³n ya es X */
.lines-button.x.toggle-active .lines,
#mainMenu-trigger .lines-button.x.toggle-active .lines {
    background: transparent !important;
    background-color: transparent !important;
}

#header.dark .lines,
#header.dark .lines:after,
#header.dark .lines:before,
.header-extras .fa-cart-arrow-down,
.header-extras i.fa-cart-arrow-down {
    color: #C6A76B !important;
    background-color: transparent !important;
}

.header-extras .fa-cart-arrow-down {
    color: #FFFFFF !important;
}

#cantidad_carrito,
span#cantidad_carrito {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 1.35em;
    background-color: #C6A76B !important;
    color: #3D0026 !important;
    font-weight: 700 !important;
    font-size: 0.72rem !important;
    line-height: 1 !important;
    border-radius: 999px !important;
    padding: 0.2em 0.45em !important;
    margin-left: 0.2rem !important;
}

#theme-toggle {
    background: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

#theme-toggle:has(.css-bulb.on) {
    background: var(--pr-enfasis) !important;
    color: var(--pr-marca) !important;
}

/* Pie: azul navy â†’ marca */
.footer-content,
#footer .footer-content,
footer .footer-content {
    background: var(--pr-marca) !important;
    background-image: none !important;
    color: #FFFFFF !important;
}

.copyright-content,
#footer .copyright-content {
    background: #2a001a !important;
    color: rgba(255, 255, 255, 0.92) !important;
    text-align: center !important;
}

#footer .copyright-content .container,
#footer .copyright-text,
#footer .footer-presticorp-credito {
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
}

#footer .footer-presticorp-credito {
    margin-top: 0.35rem;
    margin-bottom: 0;
}

#footer a,
.footer-content a,
.copyright-content a {
    color: rgba(255, 255, 255, 0.9) !important;
}

#footer h4,
#footer h5,
.footer-content h4,
.footer-content h5 {
    color: #FFFFFF !important;
    font-family: var(--pr-fuente-titulo) !important;
}

/* Botones Crese / tema azul â†’ marca */
.btncrese,
a.btncrese,
button.btncrese {
    background: var(--pr-marca) !important;
    border-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
    border-radius: 999px !important;
}

.btncrese:hover,
a.btncrese:hover {
    background: #2a001a !important;
    border-color: #2a001a !important;
}

.btn,
a.btn:not([href]):not([tabindex]),
.btn-primary,
a.btn-primary,
button.btn-primary,
.btn.btn-primary {
    background-color: var(--pr-marca) !important;
    border-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

.btn:hover,
.btn:focus,
.btn-primary:hover,
.btn-primary:focus,
a.btn-primary:hover {
    background-color: #2a001a !important;
    border-color: #2a001a !important;
    color: #FFFFFF !important;
}

.btn.btn-outline,
a.btn.btn-outline,
.btn-outline-primary {
    border-color: var(--pr-marca) !important;
    color: var(--pr-marca) !important;
    background-color: transparent !important;
}

.btn.btn-outline:hover,
.btn-outline-primary:hover {
    background-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

.btn-dark,
a.btn-dark,
button.btn-dark {
    background-color: var(--pr-marca) !important;
    border-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

.btn-light,
a.btn-light {
    background-color: var(--pr-fondo-2) !important;
    border-color: rgba(183, 154, 181, 0.45) !important;
    color: var(--pr-marca) !important;
}

.btncarrito,
a.btncarrito {
    background: var(--pr-marca) !important;
    background-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

.btncarrito:hover,
a.btncarrito:hover {
    background: #2a001a !important;
    background-color: #2a001a !important;
    color: #FFFFFF !important;
}

/* Buscadores unificados (estilo Programas: input + botÃ³n lupa) */
.widget-newsletter .input-group,
.widget .input-group:has(input[name="busqueda"]),
.widget .input-group:has(input[type="search"]),
.pr-busqueda,
.seccion_buscador {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: stretch;
    width: 100%;
    max-width: 36rem;
    margin: 0;
}

.widget-newsletter .input-group > .form-control,
.widget .input-group > .form-control.widget-search-form,
.widget .input-group > input[name="busqueda"],
.pr-busqueda__input,
.seccion_buscador .busqueda,
.seccion_buscador input[name="busqueda"],
#busqueda.form-control {
    flex: 1 1 auto;
    width: 1% !important;
    min-width: 0;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0.5rem 0.9rem !important;
    border: 1px solid #ddd !important;
    border-right: 0 !important;
    border-radius: 4px 0 0 4px !important;
    background: #FFFFFF !important;
    color: var(--pr-texto, #1D1D1D) !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif) !important;
    font-size: 0.95rem !important;
    line-height: 1.35 !important;
    box-shadow: none !important;
}

.widget-newsletter .input-group > .form-control:focus,
.widget .input-group > .form-control.widget-search-form:focus,
.widget .input-group > input[name="busqueda"]:focus,
.pr-busqueda__input:focus,
.seccion_buscador .busqueda:focus,
.seccion_buscador input[name="busqueda"]:focus,
#busqueda.form-control:focus {
    outline: none !important;
    border-color: rgba(183, 154, 181, 0.75) !important;
    box-shadow: none !important;
    z-index: 1;
}

.widget-newsletter .input-group-btn,
.widget-newsletter .input-group-append,
.widget .input-group-btn,
.widget .input-group-append,
.pr-busqueda__btn-wrap,
.seccion_buscador .btnbuscar {
    margin: 0 !important;
    display: flex !important;
}

.widget-newsletter .btn,
.widget .input-group-btn .btn,
.widget .input-group-append .btn,
#widget-subscribe-submit-button,
.pr-busqueda__btn,
.seccion_buscador .btnbuscar,
.seccion_buscador input[type="submit"].btnbuscar {
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--pr-marca) !important;
    border-radius: 0 4px 4px 0 !important;
    background-color: var(--pr-marca) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 1.15rem 1.15rem !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    box-shadow: none !important;
    cursor: pointer;
}

.widget-newsletter .btn i,
.widget .input-group-btn .btn i,
.widget .input-group-append .btn i,
#widget-subscribe-submit-button i,
.pr-busqueda__btn i {
    display: none !important;
}

.widget-newsletter .btn:hover,
.widget .input-group-btn .btn:hover,
.widget .input-group-append .btn:hover,
#widget-subscribe-submit-button:hover,
.pr-busqueda__btn:hover,
.seccion_buscador .btnbuscar:hover,
.seccion_buscador input[type="submit"].btnbuscar:hover {
    background-color: #2a001a !important;
    border-color: #2a001a !important;
    color: transparent !important;
}

/* Precios tienda */
.product-price,
.product .product-price,
.product-price2,
.shop .product-price,
.price,
span.price,
.sale-price,
.product-price ins,
.product .product-price ins,
.product-price del + ins {
    color: var(--pr-marca) !important;
}

/* Badges / NUEVO (anula cyan #00c0e9) */
.badge,
.badge-primary,
.badge-info,
.label,
.product-new,
.product .product-new,
.product .new,
.new-badge,
span.new {
    background-color: var(--pr-apoyo) !important;
    background: var(--pr-apoyo) !important;
    color: var(--pr-marca) !important;
    border-color: var(--pr-apoyo) !important;
    text-shadow: none !important;
}

.linkcontrasena,
a.linkcontrasena {
    color: var(--pr-marca) !important;
}

.linkcontrasena:hover,
a.linkcontrasena:hover {
    color: var(--pr-apoyo) !important;
}

/* ExcepciÃ³n: botÃ³n Google */
.pr-google-auth__btn,
a.pr-google-auth__btn,
button.pr-google-auth__btn {
    background-color: #FFFFFF !important;
    border: 1px solid rgba(29, 29, 29, 0.18) !important;
    color: var(--pr-texto) !important;
}

.pr-google-auth__btn:hover,
a.pr-google-auth__btn:hover,
button.pr-google-auth__btn:hover {
    background-color: var(--pr-fondo) !important;
    border-color: var(--pr-apoyo) !important;
    color: var(--pr-texto) !important;
}

/* Enlaces y acentos tema (#2250fc / #275B9C); excluir CTAs home .pr-btn */
a:not(.btn):not(.btncrese):not(.btncarrito):not(.btn-pr-primario):not(.btn-pr-ghost):not(.btn-pr-enfasis):not(.pr-btn):not(.pr-alerta__btn):not(.pr-comenzar__card):not(.mi-tribu-btn):not(.nav-btn-unete):not(.pr-google-auth__btn) {
    color: var(--pr-marca);
}

a:not(.btn):not(.btncrese):not(.btncarrito):not(.pr-btn):not(.pr-alerta__btn):not(.pr-comenzar__card):not(.mi-tribu-btn):hover,
a:not(.btn):not(.btncrese):not(.btncarrito):not(.pr-btn):not(.pr-alerta__btn):not(.pr-comenzar__card):not(.mi-tribu-btn):focus {
    color: #2a001a;
}

/* Contacto: sin mapa (DOCX). Fondo marca sÃ³lido salvo rediseÃ±o premium .pr-contactanos */
#section7:not(.pr-contactanos) {
    border-top-color: var(--pr-enfasis) !important;
    background-image: none !important;
    background-color: var(--pr-marca) !important;
    background-attachment: scroll !important;
}

/* CTAs home: primary blanco; accent dorado lleva texto marca */
a.pr-btn.pr-btn--primary,
a.pr-btn.pr-btn--primary:link,
a.pr-btn.pr-btn--primary:visited {
    color: #FFFFFF !important;
}

a.pr-btn.pr-btn--accent,
a.pr-btn.pr-btn--accent:link,
a.pr-btn.pr-btn--accent:visited {
    color: #3D0026 !important;
}

a.pr-btn.pr-btn--ghost,
a.pr-btn.pr-btn--ghost:link,
a.pr-btn.pr-btn--ghost:visited {
    color: var(--pr-marca) !important;
}

a.pr-btn.pr-btn--ghost:hover {
    color: #FFFFFF !important;
}

#home-paulina .pr-comenzar.pr-section--opaca a.pr-comenzar__card {
    color: #FFFFFF !important;
}

#home-paulina .pr-comenzar.pr-section--clara a.pr-comenzar__card {
    color: #3D0026 !important;
}

/* Light theme leftovers */
.title-quienes {
    color: var(--pr-marca) !important;
}

.contenedor_talleres {
    background-color: var(--pr-fondo) !important;
    background-image:
        radial-gradient(rgba(183, 154, 181, 0.45) 0.5px, transparent 0.5px),
        radial-gradient(rgba(183, 154, 181, 0.45) 0.5px, var(--pr-fondo) 0.5px) !important;
}

/* Formularios login / registro / carrito */
.background-white.b-r-6,
.col-lg-5.center.p-50.background-white {
    background: var(--pr-fondo-2) !important;
    border: 1px solid rgba(183, 154, 181, 0.35);
    border-radius: var(--pr-radio-lg) !important;
    box-shadow: var(--pr-sombra);
}

.form-control:focus,
input:focus,
textarea:focus,
select:focus,
#price-from:focus,
#price-to:focus {
    border-color: var(--pr-apoyo) !important;
    box-shadow: 0 0 0 0.15rem rgba(183, 154, 181, 0.35) !important;
}

#page-title,
.page-title,
.breadcrumb {
    background-color: var(--pr-fondo) !important;
}

/* Videos YouTube — ficha (videotecaid); video_programa usa css/video_programa.css */
.pr-videotecaid,
.videotecaid {
    background-color: transparent;
}

.pr-videotecaid h1,
.pr-videotecaid .pr-videotecaid__titulo,
.videotecaid h1,
.videotecaid .descripcion,
.videotecaid .text-light {
    color: #FFFFFF !important;
}

.error-page-title,
.carrito-total-text {
    color: var(--pr-marca) !important;
}

.carrito-product-title {
    color: var(--pr-texto) !important;
}

.carrito-th,
th.carrito-th {
    background: linear-gradient(135deg, var(--pr-marca) 0%, #5a1a45 100%) !important;
    background-image: linear-gradient(135deg, var(--pr-marca) 0%, #5a1a45 100%) !important;
    color: #FFFFFF !important;
}

/* Shop / productos / talleres listado */
.shop .product .product-title a,
.product .product-title a,
.taller .titulo a {
    color: var(--pr-marca) !important;
}

/* Notificaciones Crese (si custom.css se enlaza o clases existen) */
.crese-notify {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8F7F5 100%) !important;
    border-top: 6px solid var(--pr-marca) !important;
    color: var(--pr-texto) !important;
    font-family: var(--pr-fuente-cuerpo) !important;
}

.crese-notify .crese-title,
.crese-notify-title {
    color: var(--pr-marca) !important;
}

.crese-notify .crese-accept,
.crese-notify-accept,
.crese-notify .btn-accept {
    background: var(--pr-marca) !important;
    border-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
}

/* Dropzone / uploads pÃºblicos con azul */
.dz-message,
.dropzone {
    border-color: var(--pr-apoyo) !important;
}

.dropzone:hover {
    background: rgba(183, 154, 181, 0.08) !important;
    border-color: var(--pr-marca) !important;
}

/* Contraste texto sobre fondos oscuros de secciÃ³n */
#section7:not(.pr-contactanos) h2,
#section7:not(.pr-contactanos) p,
#section7:not(.pr-contactanos) address,
#section7:not(.pr-contactanos) h4,
.footer-content,
.footer-content p,
.copyright-content {
    color: #FFFFFF !important;
}

/* MÃ³vil: chrome y tipografÃ­a legible */
@media (max-width: 991px) {
    body {
        font-size: 0.95rem;
    }

    h1 {
        font-size: clamp(1.85rem, 7vw, 2.4rem) !important;
    }

    h2 {
        font-size: clamp(1.5rem, 5.5vw, 2rem) !important;
    }

    #mainMenu-trigger .lines,
    #mainMenu-trigger .lines:after,
    #mainMenu-trigger .lines:before {
        background-color: var(--pr-marca) !important;
    }

    .header-extras .fa-cart-arrow-down {
        color: var(--pr-marca) !important;
    }

    .btncrese,
    a.btncrese,
    .btn,
    a.btn,
    .btncarrito,
    a.btncarrito,
    .btn-pr-primario,
    .btn-pr-ghost,
    .btn-pr-enfasis,
    a.btn-pr-primario,
    a.btn-pr-ghost,
    a.btn-pr-enfasis,
    .pr-google-auth__btn,
    button.pr-google-auth__btn {
        min-height: 44px;
    }

    input.form-control,
    .form-control {
        min-height: 44px !important;
        height: auto !important;
        font-size: 16px !important;
        padding-top: 0.65rem !important;
        padding-bottom: 0.65rem !important;
    }

    /* Refuerzo contraste hero (light.css p{#666}) */
    #home-paulina .pr-hero p,
    #home-paulina .pr-hero .pr-hero__subtitle {
        color: #FFFFFF !important;
    }

    #home-paulina .pr-hero .pr-hero__tagline {
        color: #F0E4EE !important;
    }

    /* Login: tarjeta mÃ¡s usable en pantallas estrechas */
    .col-lg-5.center.p-50.background-white {
        padding: 1.5rem !important;
        margin-left: 0.75rem;
        margin-right: 0.75rem;
        width: auto;
        max-width: calc(100% - 1.5rem);
    }

    .col-lg-5.center.p-50.background-white .btncrese,
    .col-lg-5.center.p-50.background-white a.btncrese,
    .col-lg-5.center.p-50.background-white .pr-google-auth__btn,
    .col-lg-5.center.p-50.background-white button.pr-google-auth__btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 576px) {
    body {
        font-size: 0.9375rem;
    }

    .col-lg-5.center.p-50.background-white {
        padding: 1.25rem !important;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
        max-width: calc(100% - 1rem);
        border-radius: 12px;
    }

    .card-pr,
    .pr-card {
        padding: 1.15rem;
    }
}

.btncarrito,
a.btncarrito {
    background-color: var(--pr-marca) !important;
    color: #FFFFFF !important;
    text-align: center;
    display: block;
    border-radius: 7px;
    font-family: var(--pr-fuente-cuerpo);
    font-weight: 600;
}

.btncarrito--adquirido,
a.btncarrito--adquirido {
    background-color: var(--pr-apoyo) !important;
    color: var(--pr-marca) !important;
}

.btncarrito--admin {
    background: #999 !important;
    color: #FFFFFF !important;
    cursor: not-allowed;
    text-align: center;
    display: block;
    pointer-events: none;
    opacity: 0.7;
}

#section7:not(.pr-contactanos) {
    background-image: none !important;
    background-color: var(--pr-marca) !important;
}

.footer-content {
    background: var(--pr-marca) !important;
}

/* === FASE B REVISOR â€” contraste superficies oscuras + CTAs ===
   Paleta: #F8F7F5 #FFFFFF #1D1D1D #3D0026 #B79AB5 #C6A76B
   Anula body h1/p !important y a:not(.btn) sobre hero/testimonios/comenzar.
*/

/* Hero home: texto y CTA legibles sobre overlay #3D0026 */
#home-paulina .pr-hero .pr-hero__title,
#home-paulina h1.pr-hero__title {
    color: #FFFFFF !important;
}

#home-paulina .pr-hero .pr-hero__tagline,
#home-paulina .pr-hero p.pr-hero__tagline {
    color: #F0E4EE !important;
    font-family: var(--pr-fuente-titulo) !important;
    font-style: italic;
}

#home-paulina .pr-hero .pr-hero__subtitle,
#home-paulina .pr-hero p.pr-hero__subtitle {
    color: #FFFFFF !important;
}

#home-paulina .pr-hero a.pr-btn.pr-btn--primary,
#home-paulina .pr-hero a.pr-btn.pr-btn--accent {
    color: #3D0026 !important;
    background-color: var(--pr-enfasis, #C6A76B) !important;
    border-color: var(--pr-enfasis, #C6A76B) !important;
}

#home-paulina .pr-hero a.pr-btn.pr-btn--primary:hover,
#home-paulina .pr-hero a.pr-btn.pr-btn--accent:hover {
    color: #FFFFFF !important;
    background-color: var(--pr-marca, #3D0026) !important;
    border-color: var(--pr-marca, #3D0026) !important;
}

/* Secciones opacas: tipografÃ­a clara sobre #3D0026 */
#home-paulina .pr-section--opaca:not(.pr-hero) > .container > .pr-section__title,
#home-paulina .pr-section--opaca:not(.pr-hero) .pr-quien__texto .pr-section__title,
#home-paulina .pr-comenzar.pr-section--opaca .pr-section__title {
    color: #FFFFFF !important;
}

#home-paulina .pr-comenzar.pr-section--clara .pr-section__title,
#home-paulina .pr-comenzar.pr-section--clara a.pr-comenzar__card {
    color: #3D0026 !important;
}

#home-paulina a.pr-comenzar__card:hover,
#home-paulina .pr-comenzar__card:hover {
    color: #3D0026 !important;
}

/* Primary/marca: blanco sobre #3D0026. Accent/dorado: marca sobre oro (contraste) */
a.pr-btn.pr-btn--primary,
button.pr-btn.pr-btn--primary,
a.mi-tribu-btn.mi-tribu-btn-primario,
button.mi-tribu-btn.mi-tribu-btn-primario {
    color: #FFFFFF !important;
}

a.pr-btn.pr-btn--accent,
a.mi-tribu-btn.mi-tribu-btn-oro,
button.mi-tribu-btn.mi-tribu-btn-oro {
    color: #3D0026 !important;
}

a.pr-btn.pr-btn--primary:hover,
a.mi-tribu-btn.mi-tribu-btn-primario:hover,
button.mi-tribu-btn.mi-tribu-btn-primario:hover {
    color: #3D0026 !important;
}

a.mi-tribu-btn.mi-tribu-btn-oro:hover,
button.mi-tribu-btn.mi-tribu-btn-oro:hover {
    color: #3D0026 !important;
}

a.pr-btn.pr-btn--accent:hover {
    color: #FFFFFF !important;
}

/* Pie: tipografÃ­a de marca (evita Poppins legacy) */
#footer,
#footer p,
#footer a,
#footer li,
.footer-content,
.footer-content p,
.footer-content a,
.copyright-content,
.copyright-content p,
.copyright-content a {
    font-family: var(--pr-fuente-cuerpo) !important;
}

#footer h4,
#footer h5,
.footer-content h4,
.footer-content h5 {
    font-family: var(--pr-fuente-titulo) !important;
}

@media (prefers-reduced-motion: reduce) {
    .pr-hero__bg,
    .pr-hero__content,
    .mi-tribu-hero-logo,
    .mi-tribu-hero-titulo,
    .mi-tribu-hero-sub {
        animation: none !important;
    }

    .pr-btn,
    .btn-pr-primario,
    .btn-pr-ghost,
    .btn-pr-enfasis,
    .mi-tribu-btn,
    .nav-btn-unete,
    .pr-option-card,
    .recursos-card__toggle,
    .pr-comenzar__card,
    .pr-creo__card,
    .pr-pilar,
    .pr-evento,
    .pr-programa,
    .pr-colab,
    .mi-tribu-plan,
    .mi-tribu-beneficio,
    #home-paulina .form-control,
    .recursos-page .form-control,
    .mi-tribu-page .form-control {
        transition: none !important;
        transform: none !important;
    }
}

/* === /FASE B REVISOR === */

/* === NEUTRALIZAR dark.css + layout pÃºblico legible ===
   dark.css (vÃ­a #theme-stylesheet + localStorage) fuerza:
   section/main/.body-inner { background:#0f172a !important }
   brand audit luego pinta h1â€“h3 #3D0026 â†’ ilegible.
*/
html,
body,
.body-inner,
#wrapper,
#home-paulina,
main {
    background: #F8F7F5 !important;
    background-color: #F8F7F5 !important;
    color: #1D1D1D !important;
}

/* Ritmo opaca/clara en home; resto de pÃ¡ginas mantienen fondo base */
body section:not(.pr-hero):not(.pr-testimonios):not(.pr-comenzar):not(#section7):not(.mi-tribu-hero):not(.mi-tribu-cierre):not(.recursos-hero):not(.recursos-catalogo):not(.programa-detalle__hero):not(.pr-auth):not(.pr-section--clara):not(.pr-section--opaca):not(.mi-tribu-seccion--clara):not(.mi-tribu-seccion--opaca):not(.pr-recibo-wrap),
.mi-tribu-page,
.contenedor_talleres,
.shop,
.shop-cart,
.product {
    background: #F8F7F5 !important;
    background-color: #F8F7F5 !important;
    color: #1D1D1D !important;
}

/* Mi Tribu: ritmo explÃ­cito clara / opaca (mismo patrÃ³n home) */
.mi-tribu-page .mi-tribu-seccion--clara {
    background: #F8F7F5 !important;
    background-color: #F8F7F5 !important;
    color: #1D1D1D !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca {
    background-color: #3D0026 !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    color: #FFFFFF !important;
}

/* Cierre Mi Tribu: split editorial (sin foto full-bleed de portada) */
.mi-tribu-page .mi-tribu-cierre {
    background: #3D0026 !important;
    background-color: #3D0026 !important;
    background-image: none !important;
    color: #FFFFFF !important;
}

body.recursos-page .recursos-hero {
    background:
        radial-gradient(ellipse 70% 80% at 15% 20%, rgba(183, 154, 181, 0.24), transparent 55%),
        radial-gradient(ellipse 50% 60% at 90% 80%, rgba(198, 167, 107, 0.18), transparent 50%),
        linear-gradient(165deg, #4a0a32 0%, #3D0026 48%, #2a001a 100%) !important;
    background-color: #3D0026 !important;
    color: #FFFFFF !important;
}

.mi-tribu-page .mi-tribu-bienvenida.mi-tribu-seccion--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-video.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

.mi-tribu-page .mi-tribu-incluye.mi-tribu-seccion--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-creo.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

.mi-tribu-page .mi-tribu-planes.mi-tribu-seccion--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-programas.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-h2,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-eyebrow,
.mi-tribu-page .mi-tribu-seccion--opaca > .container > p,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-bienvenida-inner > p:not(.mi-tribu-texto-destacado),
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-seccion-intro {
    color: #FFFFFF !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-eyebrow {
    color: rgba(198, 167, 107, 0.95) !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-texto-destacado {
    color: #C6A76B !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-beneficio,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-incluye-bloque,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-plan,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-cita {
    background: #FFFFFF !important;
    color: #1D1D1D !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-beneficio .mi-tribu-h3,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-incluye-bloque .mi-tribu-h3,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-plan .mi-tribu-h3,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-plan-precio {
    color: #3D0026 !important;
}

.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-beneficio p,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-incluye-bloque li,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-plan-lista li,
.mi-tribu-page .mi-tribu-seccion--opaca .mi-tribu-cita p {
    color: #1D1D1D !important;
}

/* Ritmo paleta: clara #F8F7F5 Â· opaca #3D0026 */
#home-paulina .pr-section.pr-section--clara,
#home-paulina .pr-section--clara,
#section7.pr-contactanos.pr-section--clara {
    background: #F8F7F5 !important;
    background-color: #F8F7F5 !important;
    background-image: none !important;
    color: #1D1D1D !important;
}

#home-paulina .pr-section.pr-section--opaca:not(.pr-hero),
#home-paulina .pr-section--opaca:not(.pr-hero),
#section7.pr-contactanos.pr-section--opaca {
    background-color: #3D0026 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    color: #FFFFFF !important;
}

#home-paulina .pr-creo.pr-section--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-creo.png") !important;
}

#home-paulina .pr-video.pr-section--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-video.png") !important;
}

#home-paulina .pr-testimonios.pr-section--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-testimonios.png") !important;
}

#home-paulina .pr-programas.pr-section--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-programas.png") !important;
}

#home-paulina #section7.pr-contactanos.pr-section--opaca,
#section7.pr-contactanos.pr-section--opaca {
    background-image: url("../imagenes/sitio/fondo-opaca-contacto.png") !important;
}

/* Header marca (paleta: menÃº amatista + links claros) */
#header.header-always-light,
#header.header-always-light .header-inner,
#header.header-always-light #header-wrap,
#header.header-always-light.header-sticky.sticky-active,
#header.header-always-light.header-sticky.sticky-active .header-inner,
#header.header-always-light.header-sticky.sticky-active #header-wrap {
    background: #3D0026 !important;
    background-color: #3D0026 !important;
}

#header.header-always-light #mainMenu nav > ul > li > a {
    color: rgba(255, 255, 255, 0.92) !important;
}

/* Mi Tribu: intro como secciÃ³n (no portada); tipografÃ­a clara sobre marca */
.mi-tribu-page .mi-tribu-hero {
    min-height: 0 !important;
    background-color: #3D0026 !important;
    background-image:
        linear-gradient(165deg, rgba(61, 0, 38, 0.88) 0%, rgba(61, 0, 38, 0.78) 45%, rgba(61, 0, 38, 0.9) 100%),
        url("../imagenes/sitio/fondo-psicologia.png") !important;
    background-size: auto, cover !important;
    background-position: center, center !important;
    background-repeat: no-repeat, no-repeat !important;
    color: #FFFFFF !important;
}

.mi-tribu-hero .mi-tribu-hero-titulo,
.mi-tribu-hero .mi-tribu-hero-sub,
.mi-tribu-hero .mi-tribu-eyebrow {
    color: #FFFFFF !important;
}

.mi-tribu-hero .mi-tribu-hero-sub {
    color: rgba(248, 247, 245, 0.9) !important;
}

.mi-tribu-cierre .mi-tribu-h2,
.mi-tribu-cierre .mi-tribu-cierre-marca,
.mi-tribu-cierre .mi-tribu-eyebrow {
    color: #FFFFFF !important;
}

.mi-tribu-cierre .mi-tribu-cierre-panel-inner > p {
    color: rgba(248, 247, 245, 0.9) !important;
}

.mi-tribu-page .mi-tribu-seccion .container {
    text-align: left !important;
}

/* Centrado solo fuera de recuadros; dentro de cards = izquierda */
.mi-tribu-page .mi-tribu-seccion > .container > .mi-tribu-eyebrow,
.mi-tribu-page .mi-tribu-seccion > .container > .mi-tribu-h2,
.mi-tribu-page .mi-tribu-seccion > .container > .mi-tribu-rule,
.mi-tribu-page .mi-tribu-seccion > .container > .mi-tribu-texto-destacado,
.mi-tribu-page .mi-tribu-seccion > .container > .mi-tribu-seccion-intro,
.mi-tribu-page .mi-tribu-bienvenida-inner > .mi-tribu-eyebrow,
.mi-tribu-page .mi-tribu-bienvenida-inner > .mi-tribu-h2,
.mi-tribu-page .mi-tribu-bienvenida-inner > .mi-tribu-rule,
.mi-tribu-page .mi-tribu-bienvenida-inner > p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Cierre split: tipografÃ­a alineada al panel (no centrado de portada) */
.mi-tribu-page .mi-tribu-cierre-panel-inner,
.mi-tribu-page .mi-tribu-cierre-panel-inner > .mi-tribu-eyebrow,
.mi-tribu-page .mi-tribu-cierre-panel-inner > .mi-tribu-h2,
.mi-tribu-page .mi-tribu-cierre-panel-inner > .mi-tribu-cierre-marca,
.mi-tribu-page .mi-tribu-cierre-panel-inner > p,
.mi-tribu-page .mi-tribu-cierre-panel-inner > .mi-tribu-cierre-cta,
.mi-tribu-page .mi-tribu-cierre-panel-inner > a.mi-tribu-btn {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.mi-tribu-page .mi-tribu-cierre-panel-inner > .mi-tribu-cierre-cta,
.mi-tribu-page .mi-tribu-cierre-panel-inner > a.mi-tribu-btn {
    display: inline-flex !important;
    align-self: flex-start !important;
    float: none !important;
}

.mi-tribu-page .mi-tribu-incluye-bloque,
.mi-tribu-page .mi-tribu-incluye-bloque .mi-tribu-h3,
.mi-tribu-page .mi-tribu-incluye-bloque p,
.mi-tribu-page .mi-tribu-incluye-bloque ul,
.mi-tribu-page .mi-tribu-incluye-bloque li,
.mi-tribu-page .mi-tribu-plan,
.mi-tribu-page .mi-tribu-plan .mi-tribu-h3,
.mi-tribu-page .mi-tribu-plan p,
.mi-tribu-page .mi-tribu-plan ul,
.mi-tribu-page .mi-tribu-plan li,
.mi-tribu-page .mi-tribu-beneficio,
.mi-tribu-page .mi-tribu-beneficio .mi-tribu-h3,
.mi-tribu-page .mi-tribu-beneficio p,
.mi-tribu-page .mi-tribu-faq-item,
.mi-tribu-page .mi-tribu-faq-item summary,
.mi-tribu-page .mi-tribu-faq-item p {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.mi-tribu-cita p,
.mi-tribu-cita blockquote p {
    text-align: center !important;
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif) !important;
    font-style: italic !important;
    font-size: clamp(1.2rem, 2.2vw, 1.4rem) !important;
    line-height: 1.5 !important;
    color: var(--pr-marca, #3D0026) !important;
}

/* Alternancia nth-child desactivada: usan mi-tribu-seccion--clara/--opaca */

#home-paulina .pr-colab,
#home-paulina .pr-descargas__card,
.mi-tribu-plan,
.mi-tribu-beneficio,
.product,
.white-box,
.card-pr,
.pr-card {
    background: #FFFFFF !important;
    color: #1D1D1D !important;
}

#home-paulina .pr-section--clara .pr-creo__card,
#home-paulina .pr-section--clara .pr-pilar,
#home-paulina .pr-section--clara .pr-evento,
#home-paulina .pr-section--clara .pr-programa,
#home-paulina .pr-section--opaca .pr-creo__card,
#home-paulina .pr-section--opaca .pr-pilar,
#home-paulina .pr-section--opaca .pr-evento,
#home-paulina .pr-section--opaca .pr-programa,
#home-paulina .pr-section--opaca .pr-descargas__box,
#home-paulina .pr-section--clara .pr-testimonio,
#home-paulina .pr-section--opaca .pr-testimonio {
    color: #1D1D1D !important;
}

#home-paulina .pr-section--clara h1,
#home-paulina .pr-section--clara h2,
#home-paulina .pr-section--clara h3,
#home-paulina .pr-section--clara .pr-section__title,
#home-paulina .pr-creo__card h3,
#home-paulina .pr-pilar h3,
#home-paulina .pr-evento h3,
#home-paulina .pr-programa h3,
#home-paulina .pr-colab h3,
#home-paulina .pr-nivel__titulo {
    color: #3D0026 !important;
}

#home-paulina .pr-section--opaca:not(.pr-hero) > .container > h2,
#home-paulina .pr-section--opaca:not(.pr-hero) > .container > .pr-section__title,
#home-paulina .pr-section--opaca:not(.pr-hero) .pr-quien__texto .pr-section__title {
    color: #FFFFFF !important;
}

#home-paulina .pr-section--clara p,
#home-paulina .pr-creo__card p,
#home-paulina .pr-pilar p,
#home-paulina .pr-evento p,
#home-paulina .pr-programa p,
#home-paulina .pr-colab p,
#home-paulina .pr-section--clara .pr-section__lead {
    color: #1D1D1D !important;
}

#home-paulina .pr-section--opaca:not(.pr-hero) > .container > .pr-section__lead,
#home-paulina .pr-section--opaca .pr-quien__historia,
#home-paulina .pr-section--opaca .pr-quien__eyebrow {
    color: rgba(248, 247, 245, 0.9) !important;
}

#home-paulina .pr-section--opaca .pr-programas__eyebrow {
    color: rgba(198, 167, 107, 0.95) !important;
    text-align: center !important;
}

/* Hero: texto blanco sobre marca */
#home-paulina .pr-hero {
    background-color: #3D0026 !important;
    color: #FFFFFF !important;
}

#home-paulina .pr-hero h1,
#home-paulina .pr-hero p {
    color: #FFFFFF !important;
}

#home-paulina .pr-comenzar.pr-section--opaca .pr-section__title,
#home-paulina .pr-comenzar.pr-section--opaca .pr-comenzar__card {
    color: #FFFFFF !important;
}

/* Header: amatista profundo (ejemplo de menÃº en paleta). Sticky igual. */
html body #header,
html body #header.dark,
html body #header.header-sticky,
html body #header.header-sticky.sticky-active,
html body #header.dark.header-sticky.sticky-active,
html body #header .header-inner,
html body #header.dark .header-inner,
html body #header.header-sticky.sticky-active .header-inner,
html body #header.dark.header-sticky.sticky-active .header-inner,
html body #header #header-wrap,
html body #header.dark #header-wrap,
html body #header.header-sticky.sticky-active #header-wrap,
html body #header.dark.header-sticky.sticky-active #header-wrap,
html body #header .header-inner > .container,
html body #header.dark .header-inner > .container,
html body #header.header-sticky.sticky-active .header-inner > .container,
html body #header.dark.header-sticky.sticky-active .header-inner > .container,
#header,
#header.dark,
#header.header-sticky.sticky-active,
#header.dark.header-sticky.sticky-active,
#header .header-inner,
#header.dark .header-inner,
#header.header-sticky.sticky-active .header-inner,
#header.dark.header-sticky.sticky-active .header-inner,
#header #header-wrap,
#header.dark #header-wrap,
#header.header-sticky.sticky-active #header-wrap,
#header.dark.header-sticky.sticky-active #header-wrap {
    background: #3D0026 !important;
    background-color: #3D0026 !important;
    box-shadow: 0 1px 0 rgba(198, 167, 107, 0.18), 0 10px 28px rgba(0, 0, 0, 0.18) !important;
    border-bottom: 1px solid rgba(198, 167, 107, 0.22) !important;
}

/* El .container del menÃº no hereda borde/sombra de la barra (evita lÃ­nea fantasma en mÃ³vil).
   light.css pinta #mainMenu en blanco: con links blancos de marca quedan invisibles. */
html body #header:not(.dark),
html body #header.header-always-light,
html body #header.header-always-light:not(.dark),
#header:not(.dark),
#header.header-always-light {
    background: #3D0026 !important;
    background-color: #3D0026 !important;
    background-image: none !important;
}

#header #mainMenu,
#header #mainMenu > .container,
#header #mainMenu nav,
#header.dark #mainMenu,
#header.dark #mainMenu > .container,
#header.dark #mainMenu nav,
html body #header #mainMenu,
html body #header #mainMenu > .container,
html body #header #mainMenu nav {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

@media (max-width: 1399px) {
    body.mainMenu-open #header #mainMenu,
    body.mainMenu-open #header #mainMenu nav {
        background: #3D0026 !important;
        background-color: #3D0026 !important;
    }
}

html body #header.header-sticky.sticky-active #mainMenu nav > ul > li > a,
html body #header.dark.header-sticky.sticky-active #mainMenu nav > ul > li > a,
#header.header-sticky.sticky-active #mainMenu nav > ul > li > a,
#header.dark.header-sticky.sticky-active #mainMenu nav > ul > li > a {
    color: rgba(255, 255, 255, 0.92) !important;
}

html body #header.header-sticky.sticky-active #mainMenu nav > ul > li.nav-cta-tribu > a,
#header.header-sticky.sticky-active #mainMenu nav > ul > li.nav-cta-tribu > a {
    color: #3D0026 !important;
    background: #C6A76B !important;
}

html body #header.header-sticky.sticky-active #mainMenu nav > ul > li.nav-cta-tribu > a:hover,
#header.header-sticky.sticky-active #mainMenu nav > ul > li.nav-cta-tribu > a:hover {
    color: #FFFFFF !important;
    background: #B79AB5 !important;
}

/* Logo blanco sobre menÃº oscuro (como isotipo en paleta) */
#header #logo .logo-default,
#header.dark #logo .logo-default,
#header.header-sticky.sticky-active #logo .logo-default,
body.mainMenu-open #header #logo .logo-default,
body.mainMenu-open #header #logo [class*="logo-"].logo-default {
    display: none !important;
}

#header #logo .logo-dark,
#header.dark #logo .logo-dark,
#header.header-sticky.sticky-active #logo .logo-dark,
body.mainMenu-open #header #logo .logo-dark {
    display: inline-block !important;
}

#header #logo .pr-nav-brand,
#header.dark #logo .pr-nav-brand,
#header #logo a .pr-nav-brand,
#header.dark .header-inner #logo a .pr-nav-brand {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: var(--pr-logo-nav-h) !important;
    width: auto !important;
    max-width: var(--pr-logo-nav-max-w) !important;
    filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.25)) !important;
}

#header #mainMenu nav > ul > li > a,
#header.dark #mainMenu nav > ul > li > a,
#header #mainMenu nav > ul > li > a:link,
#header #mainMenu nav > ul > li > a:visited,
.dark #header #mainMenu nav > ul > li > a {
    color: rgba(255, 255, 255, 0.9) !important;
    position: relative !important;
}

/* IconografÃ­a menÃº â€” trazo fino redondeado (outline) */
.pr-nav-sprite {
    position: absolute !important;
    left: -9999px !important;
    top: 0 !important;
    width: 24px !important;
    height: 24px !important;
    overflow: visible !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

#header #mainMenu nav > ul > li > a,
#header #mainMenu nav > ul > li > a.pr-nav-cart-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.55rem !important;
}

#header #mainMenu .pr-nav-ico {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 1.2rem !important;
    height: 1.2rem !important;
    color: inherit !important;
    opacity: 0.95 !important;
}

#header #mainMenu .pr-nav-ico svg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    fill: none !important;
    stroke: currentColor !important;
}

#header #mainMenu .pr-nav-txt {
    display: inline-block !important;
    line-height: 1.2 !important;
}

#header #mainMenu nav > ul > li.nav-cta-tribu > a .pr-nav-ico {
    width: 1.05rem !important;
    height: 1.05rem !important;
}

#header #mainMenu nav > ul > li.pr-nav-cart > a {
    gap: 0.4rem !important;
}

#header #mainMenu nav > ul > li.pr-nav-cart .pr-nav-txt--cart {
    display: none !important;
}

@media (max-width: 1399px) {
    body.mainMenu-open #header #mainMenu nav > ul {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.2rem !important;
        padding: 0.75rem 0.85rem 1.5rem !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li {
        width: 100% !important;
        height: auto !important;
        float: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.7rem !important;
        width: 100% !important;
        padding: 0.55rem 0.9rem !important;
        font-size: 0.82rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        border-radius: 10px !important;
        color: #F8F7F5 !important;
        background: transparent !important;
    }

    body.mainMenu-open #header #mainMenu .pr-nav-ico {
        width: 1.1rem !important;
        height: 1.1rem !important;
        color: rgba(248, 247, 245, 0.92) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li > a:hover,
    body.mainMenu-open #header #mainMenu nav > ul > li.active > a {
        color: #C6A76B !important;
        background: rgba(198, 167, 107, 0.1) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li > a:hover .pr-nav-ico,
    body.mainMenu-open #header #mainMenu nav > ul > li.active > a .pr-nav-ico {
        color: #C6A76B !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.nav-cta-tribu > a {
        justify-content: center !important;
        margin-top: 0.45rem !important;
        color: #3D0026 !important;
        background: #C6A76B !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.nav-cta-tribu > a .pr-nav-ico {
        color: #3D0026 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.pr-nav-cart .pr-nav-txt--cart {
        display: inline-block !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.active:not(.dropdown) > a::after,
    body.mainMenu-open #header #mainMenu nav > ul > li.current:not(.dropdown) > a::after,
    body.mainMenu-open #header #mainMenu nav > ul > li > a .pr-nav-txt::after,
    body.mainMenu-open #header #mainMenu nav > ul > li.pr-nav-cart > a::after {
        display: none !important;
    }

    /* Administración móvil: li en columna, submenú completo, flecha en el <a> */
    body.mainMenu-open #header #mainMenu {
        overflow: visible !important;
        max-height: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        position: relative !important;
        height: auto !important;
        overflow: visible !important;
    }

    /* Ocultar caret del tema Inspiro (se desalinea al abrir el bloque) */
    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown:before,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu:before {
        content: none !important;
        display: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown > a {
        position: relative !important;
        padding-right: 2.6rem !important;
    }

    /* Chevron propio alineado a la fila Administración */
    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown > a::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        right: 1rem !important;
        top: 50% !important;
        width: 0.42rem !important;
        height: 0.42rem !important;
        margin: 0 !important;
        border: none !important;
        border-right: 2px solid rgba(248, 247, 245, 0.9) !important;
        border-bottom: 2px solid rgba(248, 247, 245, 0.9) !important;
        background: none !important;
        box-shadow: none !important;
        transform: translateY(-65%) rotate(45deg) !important;
        transition: transform 0.2s ease, border-color 0.2s ease !important;
        pointer-events: none !important;
        opacity: 1 !important;
        z-index: 2;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown.hover-active > a::after {
        border-color: #C6A76B !important;
        transform: translateY(-20%) rotate(225deg) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu {
        position: static !important;
        float: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0.15rem 0 0 !important;
        padding: 0.2rem 0 !important;
        border: none !important;
        border-radius: 8px !important;
        box-shadow: none !important;
        background: rgba(0, 0, 0, 0.22) !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    /* Solo abre/cierra con .hover-active (no con :hover pegajoso en touch) */
    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown:not(.hover-active):hover > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown:not(.hover-active) > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu:not(.hover-active):hover > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu:not(.hover-active) > .dropdown-menu {
        display: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.dropdown.hover-active > .dropdown-menu,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu.hover-active > .dropdown-menu {
        display: block !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li {
        display: block !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        position: relative !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li.dropdown-submenu {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > span {
        display: flex !important;
        align-items: center !important;
        gap: 0.55rem !important;
        position: relative !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 0.65rem 2.4rem 0.65rem 1.15rem !important;
        color: rgba(248, 247, 245, 0.95) !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid rgba(183, 154, 181, 0.12) !important;
        font-size: 0.8rem !important;
        font-weight: 600 !important;
        letter-spacing: 0.04em !important;
        text-transform: none !important;
        line-height: 1.35 !important;
        border-radius: 0 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-ico,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-ico {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: 1.05rem !important;
        height: 1.05rem !important;
        color: inherit !important;
        opacity: 0.92 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-ico svg,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-ico svg {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        fill: none !important;
        stroke: currentColor !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-txt,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-txt {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        line-height: 1.3 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu > a::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        right: 1rem !important;
        top: 50% !important;
        width: 0.38rem !important;
        height: 0.38rem !important;
        border-right: 2px solid rgba(248, 247, 245, 0.85) !important;
        border-bottom: 2px solid rgba(248, 247, 245, 0.85) !important;
        transform: translateY(-65%) rotate(45deg) !important;
        pointer-events: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-submenu.hover-active > a::after {
        border-color: #C6A76B !important;
        transform: translateY(-20%) rotate(225deg) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu {
        margin: 0 !important;
        padding: 0.1rem 0 0.25rem !important;
        border-radius: 0 !important;
        background: rgba(0, 0, 0, 0.18) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a {
        padding: 0.55rem 1.1rem 0.55rem 1.55rem !important;
        font-size: 0.76rem !important;
        font-weight: 500 !important;
        color: rgba(248, 247, 245, 0.88) !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li:last-child > a,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li:last-child > a {
        border-bottom: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a:hover,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu > li > a:focus,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a:hover,
    body.mainMenu-open #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a:focus {
        color: #C6A76B !important;
        background: rgba(198, 167, 107, 0.12) !important;
    }
}

/* Escritorio: grupos Administración — flyout a la IZQUIERDA (menú al borde derecho) */
@media (min-width: 1400px) {
    #header #mainMenu,
    #header #mainMenu > .container,
    #header #mainMenu nav,
    #header #mainMenu nav > ul,
    #header #mainMenu nav > ul > li.dropdown {
        overflow: visible !important;
    }

    #header #mainMenu nav > ul > li.dropdown > .dropdown-menu {
        min-width: 15rem !important;
        padding: 0.45rem 0 !important;
        background: #3D0026 !important;
        border: 1px solid rgba(183, 154, 181, 0.25) !important;
        border-radius: 10px !important;
        box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22) !important;
        overflow: visible !important;
        z-index: 110 !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu {
        position: relative !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu:before {
        content: none !important;
        display: none !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu > a {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.55rem !important;
        padding: 0.65rem 1.85rem 0.65rem 1rem !important;
        color: #FFFFFF !important;
        font-weight: 600 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    #header #mainMenu nav > ul > li .dropdown-menu > li > a,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a {
        display: flex !important;
        align-items: center !important;
        gap: 0.55rem !important;
        padding: 0.6rem 1rem !important;
    }

    #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-ico,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-ico {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        width: 1.05rem !important;
        height: 1.05rem !important;
        color: inherit !important;
        opacity: 0.92 !important;
    }

    #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-ico svg,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-ico svg {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        fill: none !important;
        stroke: currentColor !important;
    }

    #header #mainMenu nav > ul > li .dropdown-menu > li > a .pr-nav-txt,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a .pr-nav-txt {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        line-height: 1.3 !important;
    }

    /* Chevron a la izquierda: el flyout abre hacia allá */
    #header #mainMenu nav > ul > li .dropdown-submenu > a::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 0.55rem !important;
        right: auto !important;
        top: 50% !important;
        width: 0.35rem !important;
        height: 0.35rem !important;
        border-right: 2px solid rgba(248, 247, 245, 0.8) !important;
        border-bottom: 2px solid rgba(248, 247, 245, 0.8) !important;
        transform: translateY(-50%) rotate(135deg) !important;
        pointer-events: none !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu > a {
        padding-left: 1.55rem !important;
        padding-right: 1rem !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu > .dropdown-menu {
        position: absolute !important;
        top: 0 !important;
        right: calc(100% - 2px) !important;
        left: auto !important;
        margin: 0 !important;
        min-width: 14rem !important;
        padding: 0.4rem 0 !important;
        background: #2a001a !important;
        border: 1px solid rgba(183, 154, 181, 0.22) !important;
        border-radius: 10px !important;
        box-shadow: 0 14px 32px rgba(0, 0, 0, 0.2) !important;
        display: block !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(-6px) !important;
        z-index: 130 !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu:hover > .dropdown-menu,
    #header #mainMenu nav > ul > li .dropdown-submenu.hover-active > .dropdown-menu {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
    }

    #header #mainMenu nav > ul > li .dropdown-menu > li > a,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a {
        color: rgba(248, 247, 245, 0.95) !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    #header #mainMenu nav > ul > li .dropdown-submenu:hover > a,
    #header #mainMenu nav > ul > li .dropdown-menu > li > a:hover,
    #header #mainMenu nav > ul > li .dropdown-menu .dropdown-menu > li > a:hover {
        color: #C6A76B !important;
        background: rgba(198, 167, 107, 0.12) !important;
    }
}

#header #mainMenu nav > ul > li > a:hover,
#header.dark #mainMenu nav > ul > li > a:hover {
    color: #C6A76B !important;
}

#header #mainMenu nav > ul > li.current > a,
#header #mainMenu nav > ul > li.active > a {
    color: #FFFFFF !important;
}

/* Sin pastilla/contorno azul del tema (menu-outline / focus) */
#header #mainMenu.menu-outline nav > ul > li > a,
#header #mainMenu.menu-lines nav > ul > li > a,
#header #mainMenu.menu-outline nav > ul > li:hover > a,
#header #mainMenu.menu-outline nav > ul > li.current > a,
#header #mainMenu.menu-outline nav > ul > li.active > a,
#header #mainMenu.menu-outline nav > ul > li:focus > a,
#header #mainMenu.menu-lines nav > ul > li:hover > a,
#header #mainMenu.menu-lines nav > ul > li.current > a,
#header #mainMenu.menu-lines nav > ul > li.active > a,
#header #mainMenu.menu-lines nav > ul > li:focus > a,
#header #mainMenu nav > ul > li > a:focus,
#header #mainMenu nav > ul > li > a:focus-visible,
#header.dark #mainMenu nav > ul > li > a:focus,
#header.dark #mainMenu nav > ul > li > a:focus-visible {
    border: none !important;
    border-width: 0 !important;
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;
    background-color: transparent !important;
}

/* Desactivar ::after del <a> (tema azul / subrayado chueco) */
#header #mainMenu nav > ul > li > a::after,
#header #mainMenu.menu-lines nav > ul > li > a::after,
#header #mainMenu.menu-outline nav > ul > li > a::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    background: transparent !important;
}

/* LÃ­nea dorada alineada bajo el texto del Ã­tem */
#header #mainMenu .pr-nav-txt {
    position: relative !important;
}

#header #mainMenu nav > ul > li > a .pr-nav-txt::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -0.32rem !important;
    height: 2px !important;
    background: #C6A76B !important;
    border-radius: 2px !important;
    transform: scaleX(0) !important;
    transform-origin: center center !important;
    transition: transform 0.25s ease !important;
    pointer-events: none !important;
}

#header #mainMenu nav > ul > li:hover > a .pr-nav-txt::after,
#header #mainMenu nav > ul > li.current > a .pr-nav-txt::after,
#header #mainMenu nav > ul > li.active > a .pr-nav-txt::after {
    transform: scaleX(1) !important;
}

/* CTA pastilla: sin subrayado */
#header #mainMenu nav > ul > li.nav-cta-tribu > a .pr-nav-txt::after {
    display: none !important;
}

/* Carrito (texto oculto en desktop): lÃ­nea centrada bajo el icono */
#header #mainMenu nav > ul > li.pr-nav-cart > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0.35rem !important;
    width: 0 !important;
    height: 2px !important;
    background: #C6A76B !important;
    border-radius: 2px !important;
    transform: translateX(-50%) !important;
    transition: width 0.25s ease !important;
}

#header #mainMenu nav > ul > li.pr-nav-cart:hover > a::after,
#header #mainMenu nav > ul > li.pr-nav-cart.current > a::after,
#header #mainMenu nav > ul > li.pr-nav-cart.active > a::after {
    width: 1.1rem !important;
}

#header #mainMenu nav > ul > li .icon-holder a,
#header.dark #mainMenu nav > ul > li .icon-holder a {
    color: rgba(255, 255, 255, 0.92) !important;
}

#header #mainMenu nav > ul > li .fa-cart-arrow-down,
#header.dark #mainMenu nav > ul > li .fa-cart-arrow-down {
    color: rgba(255, 255, 255, 0.92) !important;
}

/* Badge dorado: texto marca (blanco sobre dorado casi no se lee) */
#header #mainMenu nav > ul > li #cantidad_carrito,
#header #mainMenu nav > ul > li span#cantidad_carrito,
#header.dark #mainMenu nav > ul > li #cantidad_carrito {
    color: #3D0026 !important;
    background-color: #C6A76B !important;
}

#header #mainMenu nav > ul > li.nav-cta-tribu > a,
#header.dark #mainMenu nav > ul > li.nav-cta-tribu > a,
#header #mainMenu nav > ul > li.nav-cta-tribu > a.nav-btn-unete {
    color: #3D0026 !important;
    background: #C6A76B !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22) !important;
}

#header #mainMenu nav > ul > li.nav-cta-tribu > a:hover,
#header.dark #mainMenu nav > ul > li.nav-cta-tribu > a:hover,
#header #mainMenu nav > ul > li.nav-cta-tribu.active > a {
    background: #FFFFFF !important;
    color: #3D0026 !important;
}

#header #mainMenu nav > ul > li.nav-cta-tribu > a::after,
#header #mainMenu nav > ul > li.nav-cta-tribu.active > a::after {
    display: none !important;
}

#header.dark .lines,
#header.dark .lines:after,
#header.dark .lines:before,
#mainMenu-trigger .lines,
#mainMenu-trigger .lines:after,
#mainMenu-trigger .lines:before,
#header .lines,
#header .lines:after,
#header .lines:before {
    background-color: #C6A76B !important;
}

/* MenÃº abierto: ocultar barra central del hamburguesa (si no, se ve X con lÃ­nea al medio) */
#mainMenu-trigger .lines-button.x.toggle-active .lines,
#header #mainMenu-trigger .lines-button.x.toggle-active .lines,
body.mainMenu-open #mainMenu-trigger .lines-button.x .lines,
body.mainMenu-open #header #mainMenu-trigger .lines {
    background: transparent !important;
    background-color: transparent !important;
}

#mainMenu-trigger .lines-button.x.toggle-active .lines::before,
#mainMenu-trigger .lines-button.x.toggle-active .lines::after,
#header #mainMenu-trigger .lines-button.x.toggle-active .lines::before,
#header #mainMenu-trigger .lines-button.x.toggle-active .lines::after,
body.mainMenu-open #mainMenu-trigger .lines::before,
body.mainMenu-open #mainMenu-trigger .lines::after,
body.mainMenu-open #header #mainMenu-trigger .lines::before,
body.mainMenu-open #header #mainMenu-trigger .lines::after {
    background-color: #C6A76B !important;
}

/* Desktop amplio: menú en una fila legible (hamburger hasta 1399px) */
@media (min-width: 1400px) {
    #header #mainMenu .pr-nav-ico {
        display: inline-flex !important;
        width: 0.95rem !important;
        height: 0.95rem !important;
        opacity: 0.9 !important;
    }

    #header #mainMenu nav > ul > li > a,
    #header #mainMenu nav > ul > li > a.pr-nav-cart-link {
        gap: 0.4rem !important;
        align-items: center !important;
    }

    #header #mainMenu-trigger {
        display: none !important;
    }

    #header,
    #header.dark {
        height: 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #header .header-inner,
    #header.dark .header-inner,
    #header #header-wrap,
    #header.dark #header-wrap {
        height: var(--pr-header-h) !important;
        min-height: var(--pr-header-h) !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #header .header-inner > .container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 1.25rem !important;
        height: var(--pr-header-h) !important;
        max-width: 100% !important;
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    #header #logo,
    #header.dark #logo {
        float: none !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        height: var(--pr-header-h) !important;
        display: flex !important;
        align-items: center !important;
        padding-right: 1.25rem !important;
        border-right: none !important;
    }

    #header #logo a {
        display: flex !important;
        align-items: center !important;
        line-height: 0 !important;
    }

    #header.header-sticky.sticky-active #logo .pr-nav-brand,
    #header.dark.header-sticky.sticky-active #logo .pr-nav-brand {
        height: var(--pr-logo-nav-h-sticky) !important;
        max-width: 172px !important;
    }

    #header #mainMenu,
    #header.dark #mainMenu {
        float: none !important;
        flex: 1 1 auto !important;
        height: var(--pr-header-h) !important;
        max-width: none !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    #header #mainMenu > .container {
        width: 100% !important;
        max-width: none !important;
        padding: 0 !important;
        height: var(--pr-header-h) !important;
        display: flex !important;
        align-items: center !important;
    }

    #header #mainMenu nav,
    #header.dark #mainMenu nav {
        height: var(--pr-header-h) !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
    }

    #header #mainMenu nav > ul,
    #header.dark #mainMenu nav > ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 0.15rem !important;
        height: var(--pr-header-h) !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        float: none !important;
    }

    #header #mainMenu nav > ul > li {
        float: none !important;
        display: flex !important;
        align-items: center !important;
        height: var(--pr-header-h) !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #header #mainMenu nav > ul > li > a,
    #header.dark #mainMenu nav > ul > li > a {
        display: inline-flex !important;
        align-items: center !important;
        font-size: 0.76rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.05em !important;
        text-transform: uppercase !important;
        padding: 0.55rem 0.55rem !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        transition: color 0.25s ease, opacity 0.25s ease !important;
    }

    #header #mainMenu nav > ul > li.nav-cta-tribu > a,
    #header.dark #mainMenu nav > ul > li.nav-cta-tribu > a.nav-btn-unete {
        padding: 0.55rem 1.05rem !important;
        font-size: 0.72rem !important;
        margin-left: 0.35rem !important;
        text-transform: uppercase !important;
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
        transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease !important;
    }

    #header #mainMenu nav > ul > li.nav-cta-tribu > a:hover {
        transform: translateY(-1px);
        box-shadow: 0 12px 26px rgba(0, 0, 0, 0.34);
    }

    #header #mainMenu nav > ul > li.acceder_menu > a {
        opacity: 0.85;
    }
}

/* Tablet + laptop <1400: hamburger (evita menÃº apretado / ilegible) */
@media (max-width: 1399px) {
    /* Extiende colapso del tema Inspiro (antes solo â‰¤991) */
    #mainMenu-trigger {
        position: relative !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    #mainMenu:not(.menu-overlay) {
        max-height: 0 !important;
        clear: both !important;
        display: block !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    body.mainMenu-open #mainMenu:not(.menu-overlay) {
        max-height: none !important;
        overflow: auto !important;
    }

    /* #header solo reserva en body padding; la barra visible es .header-inner fixed */
    #header,
    #header.dark {
        height: 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #header .header-inner,
    #header.dark .header-inner,
    #header #header-wrap,
    #header.dark #header-wrap {
        height: var(--pr-header-bar-h) !important;
        min-height: var(--pr-header-bar-h) !important;
        max-height: none !important;
        overflow: visible !important;
    }

    /* Barra mÃ³vil: hamburguesa a la izquierda + logo centrado en el viewport */
    #header .header-inner > .container {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-rows: 60px auto !important;
        align-items: center !important;
        justify-content: stretch !important;
        flex-wrap: nowrap !important;
        height: auto !important;
        min-height: 60px !important;
        max-width: 100% !important;
        padding-left: 0.65rem !important;
        padding-right: 0.65rem !important;
        gap: 0 !important;
        row-gap: 0 !important;
        column-gap: 0.5rem !important;
    }

    body.mainMenu-open #header .header-inner > .container,
    body.mainMenu-open #header,
    body.mainMenu-open #header .header-inner,
    body.mainMenu-open #header #header-wrap {
        border-bottom: none !important;
        box-shadow: none !important;
    }

    #header .header-inner > .container::after {
        content: "" !important;
        grid-column: 3 !important;
        grid-row: 1 !important;
        width: 48px !important;
        height: 48px !important;
        display: block !important;
    }

    /* Anula theme (#header #logo { left:10%; width:80% }) que desvÃ­a el centro */
    #header #logo,
    #header.dark #logo,
    #header .header-inner #logo,
    #header #header-wrap #logo {
        position: absolute !important;
        left: 50% !important;
        right: auto !important;
        top: 0 !important;
        float: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        grid-column: auto !important;
        grid-row: auto !important;
        flex: none !important;
        width: auto !important;
        max-width: min(200px, 58vw) !important;
        height: 60px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: translateX(-50%) !important;
        z-index: 5 !important;
        overflow: visible !important;
        text-align: center !important;
        pointer-events: auto !important;
    }

    #header #logo a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 auto !important;
        max-width: 100% !important;
        height: 100% !important;
    }

    #header #logo .pr-nav-brand {
        height: 44px !important;
        max-width: min(168px, 52vw) !important;
        width: auto !important;
        object-fit: contain !important;
        margin: 0 auto !important;
    }

    #header #mainMenu-trigger {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        float: none !important;
        position: relative !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        flex: none !important;
        width: 48px !important;
        height: 48px !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 210 !important;
        margin: 0 !important;
    }

    #header #mainMenu-trigger .lines-button {
        color: #C6A76B !important;
    }

    #header #mainMenu,
    #header.dark #mainMenu {
        float: none !important;
        flex: none !important;
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }

    #header #mainMenu > .container {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    /* Sin lÃ­nea #eee ni padding fantasma del tema al abrir el menÃº */
    body.mainMenu-open #header #mainMenu,
    body.mainMenu-open #header #mainMenu.menu-outline,
    body.mainMenu-open #header #mainMenu.menu-lines,
    body.mainMenu-open #header #mainMenu:not(.menu-overlay) {
        border: none !important;
        border-top: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        position: relative !important;
        top: auto !important;
        background: #3D0026 !important;
    }

    body.mainMenu-open #header #mainMenu nav {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        width: 100% !important;
        white-space: normal !important;
        float: none !important;
        background: #3D0026 !important;
        padding: 0.2rem 0 0.5rem !important;
        margin: 0 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        min-height: 0 !important;
        width: 100% !important;
        white-space: normal !important;
        float: none !important;
        background: #3D0026 !important;
        padding: 0.1rem 0.55rem 0.55rem !important;
        margin: 0 !important;
        gap: 0 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li {
        display: block !important;
        float: none !important;
        height: auto !important;
        width: 100% !important;
        border-bottom: 0 !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li > a,
    body.mainMenu-open #header.dark #mainMenu nav > ul > li > a {
        font-family: "Inter", system-ui, sans-serif !important;
        font-size: 0.82rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        padding: 0.55rem 0.9rem !important;
        min-height: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.7rem !important;
        color: rgba(255, 255, 255, 0.92) !important;
        line-height: 1.25 !important;
        border: 0 !important;
        border-left: 3px solid transparent !important;
    }

    body.mainMenu-open #header #mainMenu .pr-nav-ico {
        width: 1.1rem !important;
        height: 1.1rem !important;
        flex: 0 0 1.1rem !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.active > a,
    body.mainMenu-open #header #mainMenu nav > ul > li.current > a {
        color: #C6A76B !important;
        background: rgba(183, 154, 181, 0.14) !important;
        font-weight: 600 !important;
        border-bottom: 0 !important;
        border-left-color: #C6A76B !important;
        box-shadow: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.active:not(.dropdown) > a::after,
    body.mainMenu-open #header #mainMenu nav > ul > li.current:not(.dropdown) > a::after,
    body.mainMenu-open #header #mainMenu nav > ul > li > a .pr-nav-txt::after,
    body.mainMenu-open #header #mainMenu nav > ul > li.pr-nav-cart > a::after {
        display: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul > li.nav-cta-tribu > a,
    body.mainMenu-open #header.dark #mainMenu nav > ul > li.nav-cta-tribu > a {
        display: flex !important;
        width: calc(100% - 1.2rem) !important;
        margin: 0.45rem auto 0.55rem !important;
        padding: 0.65rem 1rem !important;
        border-radius: 999px !important;
        background: #C6A76B !important;
        color: #3D0026 !important;
        border-bottom: 0 !important;
        justify-content: center !important;
        font-size: 0.78rem !important;
        font-weight: 700 !important;
        box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22) !important;
    }

    body.mainMenu-open #header #mainMenu.menu-outline,
    body.mainMenu-open #header #mainMenu.menu-lines,
    body.mainMenu-open #header #mainMenu nav,
    body.mainMenu-open #header #mainMenu nav > ul {
        background: #3D0026 !important;
    }
}

@media (max-width: 576px) {
    body.mainMenu-open #header #mainMenu nav {
        padding-top: 0.2rem !important;
        padding-bottom: 0.45rem !important;
    }

    body.mainMenu-open #header #mainMenu nav::before {
        content: none !important;
        display: none !important;
    }

    body.mainMenu-open #header #mainMenu nav > ul {
        padding-top: 0 !important;
    }
}

#theme-toggle {
    display: none !important;
}

/* Widget WhatsApp + scrollTop: posiciÃ³n (diseÃ±o visual en css/chat.css) */
a.blantershow-chat {
    right: 84px !important;
    z-index: 98;
}

#scrollTop {
    right: 28px !important;
    background-color: rgba(61, 0, 38, 0.55) !important;
}

#scrollTop:after,
#scrollTop:before {
    background-color: #3D0026 !important;
}

@media (max-width: 767px) {
    /* Pila móvil: FAB WA abajo, scrollTop encima, sin solape */
    a.blantershow-chat {
        right: 14px !important;
        bottom: 14px !important;
        left: auto !important;
        width: 56px !important;
        height: 56px !important;
        max-width: 56px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        font-size: 0 !important;
        line-height: 0 !important;
        justify-content: center !important;
        align-items: center !important;
        overflow: hidden !important;
        box-shadow: 0 10px 24px rgba(61, 0, 38, 0.22) !important;
        z-index: 98 !important;
    }

    a.blantershow-chat svg {
        transform: scale(1.15) !important;
        margin: 0 !important;
        flex-shrink: 0;
        width: 26px !important;
        height: 26px !important;
    }

    #scrollTop {
        right: 22px !important;
        bottom: 82px !important; /* 14 + 56 + 12 */
        z-index: 97 !important;
    }

    #whatsapp-chat {
        right: 12px !important;
        left: 12px !important;
        width: auto !important;
        max-width: calc(100vw - 24px);
        /* Encima de scrollTop (82+40) + aire */
        bottom: 136px !important;
        max-height: calc(100vh - 160px);
        z-index: 100 !important;
    }

    /* Chat abierto: el panel usa el espacio inferior; FAB y scrollTop se ocultan */
    body.pr-chat-open a.blantershow-chat,
    body.pr-chat-open #scrollTop {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    body.pr-chat-open #whatsapp-chat {
        bottom: 16px !important;
        max-height: calc(100vh - 32px);
    }

    /* Aire inferior para chip WA / scrollTop */
    #home-paulina {
        padding-bottom: 4.5rem;
    }

    #home-paulina .pr-colaboradores .flickity-page-dots,
    #home-paulina .pr-testimonios .flickity-page-dots {
        margin-bottom: 0.75rem;
    }
}

/* ImÃ¡genes del sitio: a color; en hover pasan a B/N en 1s (excepto logos y decorados) */
body img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]),
#wrapper img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]) {
    transition: filter 1s ease;
}

body img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]):hover,
#wrapper img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]):hover,
.pr-colab:hover .pr-colab__foto,
.pr-quien__media:hover img,
.pr-evento:hover img,
.pr-testimonio:hover img,
.pr-programa:hover .pr-programa__media img {
    filter: grayscale(1);
}

@media (prefers-reduced-motion: reduce) {
    body img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]),
    #wrapper img:not(.pr-nav-brand):not(.pr-hero__logo):not(.pr-mariposa-intro__wordmark-img):not(.footer-logo-pr):not(.logo-height):not(.logo-height2):not(.mi-tribu-hero-logo):not(.pr-decor):not(.pr-video__cta-mariposa):not([src*="imagenes/logo/"]):not([src*="iconos/correo"]) {
        transition: none;
    }
}

/* Formularios premium â€” focus y bordes consistentes */
.pr-contactanos input[type="text"],
.pr-contactanos input[type="email"],
.pr-contactanos input[type="tel"],
.pr-contactanos select,
.pr-contactanos textarea,
.pr-login-card input[type="text"],
.pr-login-card input[type="email"],
.pr-login-card input[type="password"],
.pr-login-card select {
    border: 1.5px solid #D4C6D0;
    border-radius: var(--pr-radio);
    padding: 0.75rem 1rem;
    font-family: var(--pr-fuente-cuerpo);
    font-size: 0.95rem;
    color: var(--pr-texto);
    background: #FFFFFF;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
    outline: none;
}

.pr-contactanos input:focus,
.pr-contactanos select:focus,
.pr-contactanos textarea:focus,
.pr-login-card input:focus,
.pr-login-card select:focus {
    border-color: var(--pr-apoyo);
    box-shadow: 0 0 0 3px rgba(183, 154, 181, 0.18);
}

.pr-contactanos label,
.pr-login-card label {
    font-family: var(--pr-fuente-cuerpo);
    font-weight: 500;
    font-size: 0.88rem;
    color: var(--pr-marca);
    margin-bottom: 0.35rem;
}

/* Override tema base: focus azul â†’ apoyo marca */
.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    border-color: var(--pr-apoyo) !important;
    box-shadow: 0 0 0 3px rgba(183, 154, 181, 0.18) !important;
}

/* Centrar y estilizar eyebrows del home */
#home-paulina .pr-video__eyebrow,
.pr-video__eyebrow,
#home-paulina .pr-descargas__eyebrow,
.pr-descargas__eyebrow,
#home-paulina .pr-testimonios__eyebrow,
.pr-testimonios__eyebrow,
#home-paulina .pr-programas__eyebrow,
.pr-programas__eyebrow {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.12em !important;
}

/* Centrar y corregir testimonios */
#home-paulina .pr-testimonio,
.mi-tribu-cita {
    align-items: center !important;
    text-align: center !important;
}

#home-paulina .pr-testimonio__quote,
.pr-testimonio__quote {
    flex-shrink: 0 !important;
    align-self: center !important;
    width: 2.5rem !important;
    height: 2.5rem !important;
    aspect-ratio: 1 / 1 !important;
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.mi-tribu-cita-icon {
    flex-shrink: 0 !important;
    align-self: center !important;
    width: 2.5rem !important;
    height: 2.5rem !important;
    aspect-ratio: 1 / 1 !important;
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#home-paulina .pr-testimonio__stars,
.mi-tribu-estrellas {
    text-align: center !important;
    width: 100% !important;
}

#home-paulina .pr-testimonio__texto {
    text-align: center !important;
    font-size: 0.95rem !important;
    font-family: var(--pr-fuente-cuerpo) !important;
    font-style: normal !important;
    line-height: 1.6 !important;
    max-width: none !important;
    color: inherit !important;
}

#home-paulina .pr-testimonio__footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    gap: 0.4rem !important;
    padding-top: 0.75rem !important;
}

#home-paulina .pr-testimonio__media {
    margin: 0 auto !important;
}

#home-paulina .pr-testimonio__autor {
    text-align: center !important;
}

#home-paulina .pr-testimonio__nombre,
#home-paulina .pr-testimonio__cargo {
    text-align: center !important;
    display: block !important;
}

/* Empty centrado: caja compacta (no full-bleed) */
#home-paulina .pr-empty--center,
.pr-empty--center {
    text-align: center !important;
    max-width: 28rem !important;
    width: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}

/* Empty en secciÃ³n opaca: mensaje legible (no caja tipo botÃ³n) */
#home-paulina .pr-section--opaca .pr-empty,
#home-paulina .pr-section--opaca .pr-empty--center,
#home-paulina .pr-section--opaca p.pr-empty,
#home-paulina .pr-section--opaca p.pr-empty--center {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: rgba(248, 247, 245, 0.92) !important;
    padding: 0.5rem 1rem 1.25rem !important;
}

/* Hero: subir un poco el bloque sin dejar hueco inferior excesivo */
#home-paulina .pr-hero__content,
.pr-hero__content {
    margin-top: -2.25rem !important;
}

@media (max-width: 991px) {
    #home-paulina .pr-hero__content,
    .pr-hero__content {
        margin-top: -1.25rem !important;
    }
}

/* PÃ¡ginas de Documentos (Privacidad / Condiciones) Premium */
.pr-documento-section {
    background-color: var(--pr-fondo, #F8F7F5) !important;
    padding: clamp(3rem, 6vh, 5rem) 0 !important;
    min-height: 70vh;
}

.pr-documento-card {
    background: #FFFFFF !important;
    border-radius: var(--pr-radio-lg, 16px) !important;
    border: 1px solid rgba(183, 154, 181, 0.25) !important;
    box-shadow: 0 14px 32px rgba(61, 0, 38, 0.05) !important;
    padding: clamp(2rem, 4vw, 3.5rem) !important;
    max-width: 800px;
    margin: 0 auto;
}

.pr-documento-card h1 {
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(2rem, 3.5vw, 2.6rem) !important;
    color: var(--pr-marca, #3D0026) !important;
    text-align: center !important;
    margin-bottom: 0.5rem !important;
    text-transform: none !important;
}

.pr-documento-card .pr-documento-separator {
    width: 60px;
    height: 3px;
    background: var(--pr-enfasis, #C6A76B);
    margin: 1.5rem auto 2.5rem;
    border-radius: 2px;
}

.pr-documento-card h2,
.pr-documento-card h3 {
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif) !important;
    font-size: 1.45rem !important;
    color: var(--pr-marca, #3D0026) !important;
    margin-top: 2rem !important;
    margin-bottom: 0.75rem !important;
    font-weight: 600 !important;
}

.pr-documento-card p {
    font-family: var(--pr-fuente-cuerpo, "Inter", sans-serif) !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    color: rgba(29, 29, 29, 0.8) !important;
    margin-bottom: 1.25rem !important;
    max-width: none !important;
}

/* === /SITE-WIDE BRAND AUDIT === */

/* Diálogo / alerta de marca (guardado, errores, carrito, login) */
body.pr-alerta-open {
    overflow: hidden !important;
}

.pr-alerta-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    background: rgba(61, 0, 38, 0.55);
    box-sizing: border-box;
    animation: pr-alerta-fade-in 0.22s ease;
}

@keyframes pr-alerta-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

.pr-alerta {
    position: relative;
    z-index: 100000;
    width: min(100%, 440px);
    margin: 0 auto;
    padding: 1.75rem 1.5rem 1.5rem;
    text-align: center;
    background: var(--pr-fondo-2, #fff);
    border-radius: var(--pr-radio-lg, 16px);
    border-top: 5px solid var(--pr-marca, #3D0026);
    box-shadow: 0 24px 64px rgba(61, 0, 38, 0.28);
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif);
    color: var(--pr-texto, #1D1D1D);
    box-sizing: border-box;
}

.pr-alerta--success {
    border-top-color: var(--pr-enfasis, #C6A76B);
}

.pr-alerta--warning {
    border-top-color: var(--pr-apoyo, #B79AB5);
}

.pr-alerta--danger {
    border-top-color: #8b1e3f;
}

.pr-alerta--info {
    border-top-color: var(--pr-marca, #3D0026);
}

.pr-alerta__cerrar {
    position: absolute;
    top: -0.65rem;
    right: -0.65rem;
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 2px solid var(--pr-fondo-2, #fff);
    border-radius: 50%;
    background: var(--pr-marca, #3D0026);
    color: #fff;
    font-size: 1.35rem;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(61, 0, 38, 0.25);
    transition: background var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease),
        transform var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease);
}

.pr-alerta__cerrar:hover,
.pr-alerta__cerrar:focus {
    background: var(--pr-apoyo, #B79AB5);
    outline: none;
    transform: scale(1.04);
}

.pr-alerta__logo-wrap {
    margin: 0 0 1rem;
    padding: 0 0 1rem;
    border-bottom: 1px solid rgba(183, 154, 181, 0.35);
}

.pr-alerta__logo {
    display: block;
    height: 72px;
    max-height: 72px;
    width: auto;
    max-width: 220px;
    margin: 0 auto;
    object-fit: contain;
}

.pr-alerta__titulo {
    display: block;
    margin: 0 0 0.65rem;
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif);
    font-size: clamp(1.45rem, 3.5vw, 1.75rem);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.02em;
    color: var(--pr-marca, #3D0026);
    text-transform: none;
}

.pr-alerta__mensaje {
    display: block;
    margin: 0 0 1.35rem;
    font-size: 0.98rem;
    line-height: 1.65;
    color: rgba(29, 29, 29, 0.82);
}

.pr-alerta__mensaje strong {
    color: var(--pr-marca, #3D0026);
    font-weight: 600;
}

.pr-alerta__acciones {
    display: grid;
    gap: 0.65rem;
    width: 100%;
}

.pr-alerta__acciones--duo {
    grid-template-columns: 1fr 1fr;
}

.pr-alerta__acciones--login {
    grid-template-columns: 1fr;
}

.pr-alerta__acciones--login .pr-alerta__fila {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.65rem;
}

.pr-alerta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 2.85rem;
    padding: 0.7rem 1rem;
    border: 2px solid transparent;
    border-radius: 999px;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif);
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
    transition: background var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease),
        color var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease),
        border-color var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease),
        box-shadow var(--pr-dur-fast, 0.2s) var(--pr-ease-soft, ease);
}

.pr-alerta__btn--marca {
    background: var(--pr-marca, #3D0026);
    color: #fff;
    box-shadow: 0 8px 20px rgba(61, 0, 38, 0.22);
}

.pr-alerta__btn--marca:hover,
.pr-alerta__btn--marca:focus {
    background: #520034;
    color: #fff;
    text-decoration: none;
}

.pr-alerta__btn--enfasis {
    background: var(--pr-enfasis, #C6A76B);
    color: var(--pr-marca, #3D0026);
    box-shadow: 0 8px 20px rgba(198, 167, 107, 0.35);
}

.pr-alerta__btn--enfasis:hover,
.pr-alerta__btn--enfasis:focus {
    background: #d4b87a;
    color: var(--pr-marca, #3D0026);
    text-decoration: none;
}

.pr-alerta__btn--ghost {
    background: transparent;
    color: var(--pr-marca, #3D0026);
    border-color: rgba(61, 0, 38, 0.22);
}

.pr-alerta__btn--ghost:hover,
.pr-alerta__btn--ghost:focus {
    background: var(--pr-fondo, #F8F7F5);
    border-color: var(--pr-apoyo, #B79AB5);
    color: var(--pr-marca, #3D0026);
    text-decoration: none;
}

.pr-alerta__btn--apoyo {
    background: var(--pr-apoyo, #B79AB5);
    color: #fff;
}

.pr-alerta__btn--apoyo:hover,
.pr-alerta__btn--apoyo:focus {
    background: #a687a5;
    color: #fff;
    text-decoration: none;
}

.pr-alerta__btn--peligro {
    background: #8b1e3f;
    color: #fff;
}

.pr-alerta__btn--peligro:hover,
.pr-alerta__btn--peligro:focus {
    background: #6e1832;
    color: #fff;
}

@media (max-width: 420px) {
    .pr-alerta {
        padding: 1.5rem 1.15rem 1.25rem;
    }

    .pr-alerta__acciones--duo,
    .pr-alerta__acciones--login .pr-alerta__fila {
        grid-template-columns: 1fr;
    }

    .pr-alerta__logo {
        height: 60px;
        max-height: 60px;
    }
}

/* Admin — columna Orden arrastrable (listas consultar) */
.pr-admin-orden-tabla tbody tr.pr-admin-orden-fila {
    cursor: grab;
}

.pr-admin-orden-tabla tbody tr.pr-admin-orden-fila.is-dragging {
    opacity: 0.55;
    cursor: grabbing;
}

.pr-admin-orden-tabla tbody tr.pr-admin-orden-fila.is-drag-over {
    outline: 2px dashed var(--pr-marca, #3D0026);
    outline-offset: -2px;
}

.pr-admin-orden-handle {
    width: 4.5rem;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    user-select: none;
}

.pr-admin-orden-handle__grip {
    display: inline-block;
    margin-right: 0.35rem;
    color: var(--pr-apoyo, #B79AB5);
    font-size: 1.1rem;
    line-height: 1;
    letter-spacing: -0.12em;
}

.pr-admin-orden-handle__num {
    display: inline-block;
    min-width: 1.25rem;
    font-weight: 600;
    color: var(--pr-marca, #3D0026);
}

.pr-admin-orden-estado {
    min-height: 1.25rem;
    margin: 0.35rem 0 0.75rem;
    font-size: 0.9rem;
    color: var(--pr-apoyo, #B79AB5);
}

.pr-admin-orden-estado.is-ok {
    color: #2f6b3a;
}

.pr-admin-orden-estado.is-error {
    color: #8a1f2b;
}

/* Buscador en topbar */
.pr-nav-buscar {
    position: relative;
    list-style: none;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
}

.pr-nav-buscar__label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.pr-nav-buscar__form {
    position: relative;
    margin: 0;
    width: 100%;
}

.pr-nav-buscar__row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
    height: 2.35rem;
    padding: 0 0.85rem;
    border: 0;
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.14);
    box-shadow: none;
    overflow: hidden;
    transition: background 0.18s ease;
}

.pr-nav-buscar__row:focus-within {
    background: rgba(255, 255, 255, 0.24);
}

.pr-nav-buscar__lupa {
    flex: 0 0 1rem;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
    opacity: 0.85;
}

.pr-nav-buscar__submit-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.pr-nav-buscar__btn {
    display: none !important;
}

.pr-nav-buscar__input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif);
    font-size: 0.9rem;
    font-weight: 400;
    color: #fff !important;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}

.pr-nav-buscar__input::placeholder {
    color: rgba(255, 255, 255, 0.62);
    opacity: 1;
}

.pr-nav-buscar__input::-webkit-search-decoration,
.pr-nav-buscar__input::-webkit-search-cancel-button,
.pr-nav-buscar__input::-webkit-search-results-button,
.pr-nav-buscar__input::-webkit-search-results-decoration {
    -webkit-appearance: none;
}

.pr-nav-buscar__sugerencias {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 0.45rem);
    z-index: 1200;
    margin: 0;
    padding: 0.4rem 0;
    list-style: none;
    background: #fff;
    border: 1px solid rgba(183, 154, 181, 0.28);
    border-radius: 12px;
    box-shadow: 0 12px 28px rgba(61, 0, 38, 0.16);
    max-height: 16rem;
    overflow: auto;
}

.pr-nav-buscar__sugerencias[hidden] {
    display: none !important;
}

.pr-nav-buscar__item {
    margin: 0;
}

.pr-nav-buscar__link {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    padding: 0.55rem 0.85rem;
    color: var(--pr-marca, #3D0026) !important;
    text-decoration: none;
    font-size: 0.86rem;
    line-height: 1.25;
}

.pr-nav-buscar__link:hover,
.pr-nav-buscar__link:focus,
.pr-nav-buscar__item.is-active .pr-nav-buscar__link {
    background: rgba(183, 154, 181, 0.14);
    text-decoration: none;
}

.pr-nav-buscar__tipo {
    font-size: 0.65rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--pr-apoyo, #B79AB5);
}

@media (max-width: 991px) {
    :root {
        --pr-topbar-h: 3.75rem;
    }

    #topbar.pr-topbar-sticky {
        padding-top: 0.4rem;
        padding-bottom: 0.4rem;
        overflow: visible;
    }

    #topbar.pr-topbar-sticky > .container {
        min-height: 0;
        max-width: 100%;
        padding-left: 0.65rem;
        padding-right: 0.65rem;
    }

    #topbar .pr-topbar-row {
        justify-content: flex-end;
        min-height: 0;
        width: 100%;
    }

    #topbar .pr-topbar-right {
        width: 100%;
        gap: 0.35rem;
        flex-wrap: nowrap;
        justify-content: flex-end;
    }

    #topbar .pr-topbar-buscar {
        flex: 1 1 auto;
        max-width: none;
        min-width: 0;
    }

    #topbar .pr-topbar-buscar .pr-nav-buscar__form,
    #topbar .pr-topbar-buscar .pr-nav-buscar__row {
        width: 100%;
    }

    /* Móvil: sin Bienvenido; solo buscar + iconos a la derecha */
    #topbar .pr-topbar-welcome {
        display: none !important;
    }

    #topbar .pr-topbar-row {
        justify-content: flex-end;
    }

    #topbar .pr-topbar-acciones {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center;
        min-height: 2.2rem;
        gap: 0.15rem 0.4rem;
        flex: 0 0 auto;
    }

    #topbar .pr-topbar-acciones__link {
        min-height: 2.2rem;
        flex-shrink: 0;
        white-space: nowrap !important;
    }

    #topbar .pr-topbar-acciones__txt {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    #topbar .pr-nav-buscar__row {
        height: 2.2rem;
        padding: 0 0.7rem;
        width: 100%;
        box-sizing: border-box;
    }

    #topbar .pr-nav-buscar__input {
        font-size: 0.9rem;
        min-width: 0;
    }

    #header #mainMenu-trigger {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    #header #mainMenu-trigger .lines,
    #header #mainMenu-trigger .lines:after,
    #header #mainMenu-trigger .lines:before {
        background-color: #C6A76B !important;
    }
}

@media (max-width: 575px) {
    #topbar .pr-topbar-right {
        gap: 0.3rem 0.35rem;
    }

    #topbar .pr-topbar-acciones {
        gap: 0.1rem 0.3rem;
    }
}

/* --------------------------------------------------------------------------
   Administración — tipografía de marca (igual que landing) + listados
   -------------------------------------------------------------------------- */
#page-content.no-sidebar,
#page-content.sidebar-left,
#page-content.no-sidebar p,
#page-content.sidebar-left p,
#page-content.no-sidebar li,
#page-content.sidebar-left li,
#page-content.no-sidebar label,
#page-content.sidebar-left label,
#page-content.no-sidebar span:not([class*="icon-"]):not(.fab):not(.fas):not(.far):not(.fa),
#page-content.sidebar-left span:not([class*="icon-"]):not(.fab):not(.fas):not(.far):not(.fa),
#page-content.no-sidebar a:not(.fab):not(.fas):not(.far):not(.fa):not([class^="icon-"]):not([class*=" icon-"]),
#page-content.sidebar-left a:not(.fab):not(.fas):not(.far):not(.fa):not([class^="icon-"]):not([class*=" icon-"]),
#page-content.no-sidebar button,
#page-content.sidebar-left button,
#page-content.no-sidebar input,
#page-content.sidebar-left input,
#page-content.no-sidebar select,
#page-content.sidebar-left select,
#page-content.no-sidebar textarea,
#page-content.sidebar-left textarea,
#page-content.no-sidebar .form-control,
#page-content.sidebar-left .form-control,
#page-content.no-sidebar .btn,
#page-content.sidebar-left .btn,
#page-content.no-sidebar .btncrese,
#page-content.sidebar-left .btncrese,
#page-content.no-sidebar .table,
#page-content.sidebar-left .table,
#page-content.no-sidebar .table td,
#page-content.sidebar-left .table td,
#page-content.no-sidebar .table th,
#page-content.sidebar-left .table th,
#page-content.no-sidebar .dataTables_wrapper,
#page-content.sidebar-left .dataTables_wrapper,
#page-content.no-sidebar .dataTables_info,
#page-content.sidebar-left .dataTables_info,
#page-content.no-sidebar .dataTables_filter,
#page-content.sidebar-left .dataTables_filter,
#page-content.no-sidebar .dataTables_length,
#page-content.sidebar-left .dataTables_length,
#page-content.no-sidebar .dataTables_paginate,
#page-content.sidebar-left .dataTables_paginate,
#page-content.no-sidebar .paginate_button,
#page-content.sidebar-left .paginate_button,
#page-content.no-sidebar .breadcrumb,
#page-content.sidebar-left .breadcrumb,
#page-content.no-sidebar .alert,
#page-content.sidebar-left .alert,
#page-content.no-sidebar .card,
#page-content.sidebar-left .card,
#page-content.no-sidebar .modal,
#page-content.sidebar-left .modal {
    font-family: var(--pr-fuente-cuerpo, 'Inter', system-ui, sans-serif) !important;
}

#page-content.no-sidebar h1,
#page-content.no-sidebar h2,
#page-content.no-sidebar h3,
#page-content.no-sidebar h4,
#page-content.no-sidebar h5,
#page-content.no-sidebar h6,
#page-content.sidebar-left h1,
#page-content.sidebar-left h2,
#page-content.sidebar-left h3,
#page-content.sidebar-left h4,
#page-content.sidebar-left h5,
#page-content.sidebar-left h6,
#page-content.no-sidebar .heading,
#page-content.sidebar-left .heading,
#page-content.no-sidebar .pr-titulo,
#page-content.sidebar-left .pr-titulo {
    font-family: var(--pr-fuente-titulo, 'Cormorant Garamond', Georgia, serif) !important;
    color: var(--pr-marca, #3D0026) !important;
}

#page-content.no-sidebar,
#page-content.sidebar-left {
    padding-top: 1.75rem !important;
    padding-bottom: 2.5rem !important;
    background: var(--pr-fondo, #F8F7F5) !important;
    color: var(--pr-texto, #1D1D1D) !important;
}

#page-content.no-sidebar > .container,
#page-content.sidebar-left > .container {
    max-width: 1140px;
}

#page-content.no-sidebar > .container > h1,
#page-content.no-sidebar > .container > h2,
#page-content.no-sidebar > .container > h3,
#page-content.no-sidebar > .container > h4,
#page-content.sidebar-left > .container > h1,
#page-content.sidebar-left > .container > h2,
#page-content.sidebar-left > .container > h3,
#page-content.sidebar-left > .container > h4,
#page-content.no-sidebar .row.mb-3 h4,
#page-content.sidebar-left .row.mb-3 h4 {
    margin: 0 0 1rem !important;
    padding: 0 !important;
    color: var(--pr-marca, #3D0026) !important;
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(1.45rem, 4.2vw, 2rem) !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    text-align: left !important;
}

#page-content.no-sidebar > .container > h1.text-center,
#page-content.no-sidebar > .container > h1.m-b-50 {
    text-align: left !important;
    margin-bottom: 1rem !important;
}

#page-content.no-sidebar .row.mb-3,
#page-content.sidebar-left .row.mb-3 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0.75rem 1rem !important;
    margin: 0 0 1.35rem !important;
    padding: 1rem 1.1rem !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(183, 154, 181, 0.28) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(61, 0, 38, 0.05) !important;
}

#page-content.no-sidebar .row.mb-3 > [class*="col-"],
#page-content.sidebar-left .row.mb-3 > [class*="col-"] {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}

#page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(.seccion_buscador),
#page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(.seccion_buscador) {
    flex: 1 1 16rem !important;
    min-width: min(100%, 16rem) !important;
}

#page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(.btncrese),
#page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(.btncrese),
#page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(a.btncrese),
#page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(form .btncrese) {
    flex: 0 0 auto !important;
}

#page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(#export_buttons):not(:has(.btncrese)):not(:has(.seccion_buscador)),
#page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(#export_buttons):not(:has(.btncrese)):not(:has(.seccion_buscador)),
#page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(.p-dropdown):empty,
#page-content.no-sidebar .row.mb-3 .p-dropdown:empty {
    display: none !important;
}

#page-content.no-sidebar .btncrese,
#page-content.sidebar-left .btncrese,
#page-content.no-sidebar a.btncrese,
#page-content.sidebar-left a.btncrese,
#page-content.no-sidebar input.btncrese,
#page-content.sidebar-left input.btncrese {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 8.5rem !important;
    min-height: 2.55rem !important;
    margin: 0 !important;
    padding: 0.65rem 1.35rem !important;
    border-radius: 999px !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    box-shadow: 0 6px 16px rgba(61, 0, 38, 0.16) !important;
}

#page-content.no-sidebar .row.mb-3 form,
#page-content.sidebar-left .row.mb-3 form {
    margin: 0 !important;
}

#page-content.no-sidebar .row.mb-3 form > p,
#page-content.sidebar-left .row.mb-3 form > p {
    margin: 0 !important;
}

#page-content.no-sidebar .seccion_buscador,
#page-content.sidebar-left .seccion_buscador {
    max-width: none !important;
    width: 100% !important;
}

#page-content.no-sidebar .seccion_buscador .busqueda,
#page-content.sidebar-left .seccion_buscador .busqueda,
#page-content.no-sidebar .seccion_buscador input[name="busqueda"],
#page-content.sidebar-left .seccion_buscador input[name="busqueda"] {
    height: 2.55rem !important;
    min-height: 2.55rem !important;
    border-color: rgba(183, 154, 181, 0.45) !important;
    border-radius: 999px 0 0 999px !important;
    background: var(--pr-fondo, #F8F7F5) !important;
}

#page-content.no-sidebar .seccion_buscador .btnbuscar,
#page-content.sidebar-left .seccion_buscador .btnbuscar,
#page-content.no-sidebar .seccion_buscador input[type="submit"].btnbuscar,
#page-content.sidebar-left .seccion_buscador input[type="submit"].btnbuscar {
    flex: 0 0 2.55rem !important;
    width: 2.55rem !important;
    min-width: 2.55rem !important;
    height: 2.55rem !important;
    min-height: 2.55rem !important;
    border-radius: 0 999px 999px 0 !important;
}

#page-content.no-sidebar .table,
#page-content.sidebar-left .table {
    background: #FFFFFF !important;
    border-color: rgba(183, 154, 181, 0.28) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

#page-content.no-sidebar .table thead th,
#page-content.sidebar-left .table thead th,
#page-content.no-sidebar .table thead th a,
#page-content.sidebar-left .table thead th a {
    color: var(--pr-marca, #3D0026) !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif) !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    background: rgba(183, 154, 181, 0.12) !important;
    border-color: rgba(183, 154, 181, 0.22) !important;
    vertical-align: middle !important;
}

#page-content.no-sidebar .table tbody td,
#page-content.sidebar-left .table tbody td {
    color: var(--pr-texto, #1D1D1D) !important;
    border-color: rgba(183, 154, 181, 0.18) !important;
    vertical-align: middle !important;
}

#page-content.no-sidebar .table tbody td a:not(.btn):not(.btncrese):not(.pr-btn),
#page-content.sidebar-left .table tbody td a:not(.btn):not(.btncrese):not(.pr-btn),
#page-content.no-sidebar .table tbody td .icon-edit,
#page-content.no-sidebar .table tbody td .icon-trash-2,
#page-content.sidebar-left .table tbody td .icon-edit,
#page-content.sidebar-left .table tbody td .icon-trash-2 {
    color: var(--pr-marca, #3D0026) !important;
}

#page-content.no-sidebar .table tbody td a.btn,
#page-content.sidebar-left .table tbody td a.btn,
#page-content.no-sidebar .table tbody td button.btn,
#page-content.sidebar-left .table tbody td button.btn {
    color: #FFFFFF !important;
    margin: 0.15rem 0.25rem 0.15rem 0;
    white-space: nowrap;
}

#page-content.no-sidebar .table tbody td a.btn-info,
#page-content.sidebar-left .table tbody td a.btn-info,
#page-content.no-sidebar .table tbody td button.btn-info,
#page-content.sidebar-left .table tbody td button.btn-info {
    background-color: var(--pr-apoyo, #B79AB5) !important;
    border-color: var(--pr-apoyo, #B79AB5) !important;
    color: #FFFFFF !important;
}

#page-content.no-sidebar .table-hover tbody tr:hover,
#page-content.sidebar-left .table-hover tbody tr:hover {
    background: rgba(183, 154, 181, 0.1) !important;
    color: var(--pr-texto, #1D1D1D) !important;
}

#page-content.no-sidebar .table-hover tbody tr:hover td,
#page-content.sidebar-left .table-hover tbody tr:hover td {
    color: var(--pr-texto, #1D1D1D) !important;
}

#page-content.no-sidebar .pr-admin-orden-estado,
#page-content.sidebar-left .pr-admin-orden-estado {
    margin: 0 0 0.75rem !important;
    color: rgba(29, 29, 29, 0.72) !important;
    font-size: 0.88rem !important;
}

@media (max-width: 991px) {
    #page-content.no-sidebar,
    #page-content.sidebar-left {
        padding-top: 1.25rem !important;
        padding-bottom: 2rem !important;
    }

    #page-content.no-sidebar > .container,
    #page-content.sidebar-left > .container {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #page-content.no-sidebar > .container > h1,
    #page-content.no-sidebar > .container > h2,
    #page-content.no-sidebar > .container > h3,
    #page-content.no-sidebar > .container > h4,
    #page-content.sidebar-left > .container > h1,
    #page-content.sidebar-left > .container > h2,
    #page-content.sidebar-left > .container > h3,
    #page-content.sidebar-left > .container > h4,
    #page-content.no-sidebar .row.mb-3 h4,
    #page-content.sidebar-left .row.mb-3 h4 {
        margin-bottom: 0.85rem !important;
        font-size: clamp(1.25rem, 6.5vw, 1.65rem) !important;
        letter-spacing: 0.03em !important;
    }

    #page-content.no-sidebar .row.mb-3,
    #page-content.sidebar-left .row.mb-3 {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.85rem !important;
        margin-bottom: 1.15rem !important;
        padding: 0.95rem !important;
    }

    #page-content.no-sidebar .row.mb-3 > [class*="col-"],
    #page-content.sidebar-left .row.mb-3 > [class*="col-"],
    #page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(.seccion_buscador),
    #page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(.seccion_buscador),
    #page-content.no-sidebar .row.mb-3 > [class*="col-"]:has(.btncrese),
    #page-content.sidebar-left .row.mb-3 > [class*="col-"]:has(.btncrese) {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    #page-content.no-sidebar .btncrese,
    #page-content.sidebar-left .btncrese,
    #page-content.no-sidebar a.btncrese,
    #page-content.sidebar-left a.btncrese,
    #page-content.no-sidebar input.btncrese,
    #page-content.sidebar-left input.btncrese {
        width: 100% !important;
        min-width: 0 !important;
    }

    #page-content.no-sidebar .seccion_buscador,
    #page-content.sidebar-left .seccion_buscador,
    #page-content.no-sidebar .seccion_buscador .busqueda,
    #page-content.sidebar-left .seccion_buscador .busqueda,
    #page-content.no-sidebar .seccion_buscador .btnbuscar,
    #page-content.sidebar-left .seccion_buscador .btnbuscar {
        width: auto !important;
        margin-top: 0 !important;
    }

    #page-content.no-sidebar .seccion_buscador .busqueda,
    #page-content.sidebar-left .seccion_buscador .busqueda {
        width: 1% !important;
        flex: 1 1 auto !important;
    }

    #page-content.no-sidebar .table-responsive,
    #page-content.sidebar-left .table-responsive,
    #page-content.no-sidebar .row > .col-lg-12,
    #page-content.sidebar-left .row > .col-lg-12 {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    #page-content.no-sidebar .table,
    #page-content.sidebar-left .table {
        min-width: 28rem;
        margin-bottom: 0 !important;
    }

    #page-content.no-sidebar .table thead th,
    #page-content.sidebar-left .table thead th,
    #page-content.no-sidebar .table tbody td,
    #page-content.sidebar-left .table tbody td {
        padding: 0.7rem 0.65rem !important;
        font-size: 0.86rem !important;
        white-space: nowrap;
    }
}

/* Selects: flecha visible (el tema oculta appearance y apunta a un PNG inexistente) */
select,
select.form-control,
#page-content select,
.pr-login-card select,
.pr-contactanos select {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-color: #FFFFFF !important;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--pr-marca, #3D0026) 50%),
        linear-gradient(135deg, var(--pr-marca, #3D0026) 50%, transparent 50%) !important;
    background-position:
        calc(100% - 1.15rem) calc(50% - 0.12rem),
        calc(100% - 0.85rem) calc(50% - 0.12rem) !important;
    background-size: 6px 6px, 6px 6px !important;
    background-repeat: no-repeat !important;
    padding-right: 2.35rem !important;
}

select::-ms-expand {
    display: none;
}

select[multiple] {
    background-image: none !important;
    padding-right: 0.85rem !important;
}

/* Checkboxes → switch (excluye vendor RevSlider) */
input[type="checkbox"]:not(.tp-moderncheckbox):not(.rs-ingore-save):not(.rs-reset-slide-setting) {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 2.75rem !important;
    height: 1.5rem !important;
    margin: 0.15rem 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(183, 154, 181, 0.55) !important;
    border-radius: 999px !important;
    background: rgba(183, 154, 181, 0.28) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2) !important;
    cursor: pointer !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
    opacity: 1 !important;
    flex: 0 0 auto !important;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease !important;
}

input[type="checkbox"]:not(.tp-moderncheckbox):not(.rs-ingore-save):not(.rs-reset-slide-setting)::after {
    content: "" !important;
    position: absolute !important;
    top: 2px !important;
    left: 2px !important;
    width: calc(1.5rem - 6px) !important;
    height: calc(1.5rem - 6px) !important;
    border-radius: 50% !important;
    background: #FFFFFF !important;
    box-shadow: 0 1px 3px rgba(61, 0, 38, 0.25) !important;
    transition: transform 0.2s ease !important;
}

input[type="checkbox"]:not(.tp-moderncheckbox):not(.rs-ingore-save):not(.rs-reset-slide-setting):checked {
    background: var(--pr-marca, #3D0026) !important;
    border-color: var(--pr-marca, #3D0026) !important;
}

input[type="checkbox"]:not(.tp-moderncheckbox):not(.rs-ingore-save):not(.rs-reset-slide-setting):checked::after {
    transform: translateX(1.25rem) !important;
}

input[type="checkbox"]:not(.tp-moderncheckbox):not(.rs-ingore-save):not(.rs-reset-slide-setting):focus-visible {
    outline: 2px solid rgba(198, 167, 107, 0.75) !important;
    outline-offset: 2px !important;
}

.custom-control-input {
    z-index: 2 !important;
}

.custom-control-label::before,
.custom-control-label::after,
.form-check-input + .form-check-label::before,
.form-check-input + .form-check-label::after {
    display: none !important;
}

.custom-control,
.form-check {
    display: flex !important;
    align-items: center !important;
    gap: 0.65rem !important;
}

#home-paulina .pr-field--check input[type="checkbox"],
.recursos-page .pr-field--check input[type="checkbox"],
.pr-login-card input[type="checkbox"] {
    width: 2.75rem !important;
    height: 1.5rem !important;
}

/* Dropzone de archivos: arrastrar o seleccionar (catálogos admin) */
.pr-file-drop,
#page-content .drag-drop-zone {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    width: 100% !important;
    min-height: 8.5rem !important;
    margin: 0 0 0.75rem !important;
    padding: 1.35rem 1.1rem !important;
    border: 2px dashed rgba(183, 154, 181, 0.65) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(248, 247, 245, 0.95), rgba(255, 255, 255, 0.98)) !important;
    box-shadow: 0 8px 22px rgba(61, 0, 38, 0.05) !important;
    text-align: center !important;
    cursor: pointer !important;
    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease !important;
}

.pr-file-drop:hover,
.pr-file-drop.is-dragover,
#page-content .drag-drop-zone:hover,
#page-content .drag-drop-zone.dragover {
    border-color: var(--pr-marca, #3D0026) !important;
    background: rgba(183, 154, 181, 0.14) !important;
    box-shadow: 0 12px 28px rgba(61, 0, 38, 0.1) !important;
    transform: translateY(-1px);
}

.pr-file-drop input[type="file"],
.pr-file-drop__input,
#page-content .drag-drop-zone input[type="file"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    cursor: pointer !important;
    z-index: 2 !important;
}

.pr-file-drop__ui {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    pointer-events: none;
    max-width: 100%;
}

.pr-file-drop__icon,
#page-content .drag-drop-zone > i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    margin: 0 0 0.15rem !important;
    border-radius: 999px !important;
    background: var(--pr-marca, #3D0026) !important;
    color: #FFFFFF !important;
    font-size: 1.1rem !important;
    box-shadow: 0 8px 18px rgba(61, 0, 38, 0.18) !important;
}

.pr-file-drop__icon::before {
    content: "";
    display: block;
    width: 1.05rem;
    height: 1.2rem;
    border: 2px solid currentColor;
    border-radius: 0.2rem;
    box-shadow: 0 0.35rem 0 -0.15rem currentColor;
}

.pr-file-drop__titulo,
#page-content .drag-drop-zone > p {
    margin: 0 !important;
    font-family: var(--pr-fuente-titulo, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(1.15rem, 2vw, 1.35rem) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    color: var(--pr-marca, #3D0026) !important;
    text-transform: none !important;
}

.pr-file-drop__hint,
#page-content .drag-drop-zone > small {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0.15rem 0 0 !important;
    padding: 0.45rem 1rem !important;
    border-radius: 999px !important;
    background: var(--pr-marca, #3D0026) !important;
    color: #FFFFFF !important;
    font-family: var(--pr-fuente-cuerpo, Inter, sans-serif) !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    box-shadow: 0 6px 14px rgba(61, 0, 38, 0.16) !important;
}

.pr-file-drop__nombre,
#page-content .drag-drop-zone .file-name-display {
    display: block !important;
    margin: 0.35rem 0 0 !important;
    max-width: 100% !important;
    padding: 0 0.5rem !important;
    color: rgba(29, 29, 29, 0.72) !important;
    font-size: 0.86rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    word-break: break-word !important;
}

.pr-file-drop.has-file .pr-file-drop__nombre,
#page-content .drag-drop-zone.has-file .file-name-display {
    color: var(--pr-marca, #3D0026) !important;
    font-weight: 600 !important;
}

/* Precarga de imágenes: placeholder → original al completar */
img.pr-img-loading {
    background-color: transparent;
    transition: opacity 0.35s ease;
}

img.pr-img-loaded {
    opacity: 1;
    background-color: transparent;
}

/* Decoraciones con transparencia: nunca caja de fondo */
img.pr-decor {
    background: transparent !important;
}
