/* ==========================================================
   EL PODER DE LA ORACIÓN
   HOME V2 — CSS CONSOLIDADO
   ========================================================== */

.epo-home-v2 {
    --epo-bg: #071421;
    --epo-surface: #102233;
    --epo-surface-2: #142a3d;
    --epo-border: #31516c;

    --epo-text: #f8fafc;
    --epo-text-soft: #d5dde8;
    --epo-muted: #aab8c8;

    --epo-blue: #4ca6ed;
    --epo-blue-dark: #173f67;

    --epo-coral: #ff6854;
    --epo-spotify: #1ed760;

    --epo-radius-lg: 34px;
    --epo-radius-md: 24px;
    --epo-radius-sm: 16px;

    background: var(--epo-bg) !important;
    color: var(--epo-text) !important;
    overflow: hidden;
}

.epo-home-v2,
.epo-home-v2 *,
.epo-home-v2 *::before,
.epo-home-v2 *::after {
    box-sizing: border-box;
}

.epo-home-v2 p,
.epo-home-v2 h1,
.epo-home-v2 h2,
.epo-home-v2 h3,
.epo-home-v2 span,
.epo-home-v2 strong {
    opacity: 1 !important;
    filter: none !important;
}


/* ==========================================================
   LAYOUT
   ========================================================== */

.epo-home-v2__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.epo-home-v2__narrow {
    width: min(800px, calc(100% - 40px));
    margin-inline: auto;
}

.epo-home-v2__section {
    padding: 110px 0;
}


/* ==========================================================
   TYPOGRAPHY
   ========================================================== */

.epo-home-v2 h1,
.epo-home-v2 h2,
.epo-home-v2 h3 {
    margin: 0 !important;
    color: #ffffff !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em;
}

.epo-home-v2 h1 {
    font-size: clamp(44px, 7vw, 86px) !important;
    font-weight: 800 !important;
}

.epo-home-v2 h2 {
    font-size: clamp(38px, 5vw, 62px) !important;
    font-weight: 800 !important;
}

.epo-home-v2 h2 span {
    color: #8dc4ff !important;
}

.epo-home-v2 p {
    color: var(--epo-text-soft) !important;
    line-height: 1.75 !important;
    font-size: 21px !important;
}

.epo-home-v2 strong {
    color: #ffffff !important;
    font-weight: 800 !important;
}

.epo-home-v2__eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.epo-home-v2__eyebrow--blue {
    color: #84bdff !important;
}


/* ==========================================================
   HERO
   ========================================================== */

.epo-home-v2__hero {
    position: relative;
    min-height: 760px;
    display: flex;
    align-items: center;
    padding: 100px 0;

background:
    linear-gradient(
        180deg,
        rgba(5, 15, 26, .76),
        rgba(5, 15, 26, .90)
    ),
    url("https://elpoderdelaoracion.net/wp-content/uploads/2026/08/kjsdhfnv.png")
    26% center / cover no-repeat;

isolation: isolate;
}

.epo-home-v2__hero-overlay {
    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle at 50% 15%,
            rgba(72, 145, 220, .18),
            transparent 48%
        );

    z-index: -1;
}

.epo-home-v2__hero-content {
    text-align: center;
}

.epo-home-v2__hero h1 {
    max-width: 950px;
    margin-inline: auto !important;
}

.epo-home-v2__hero-text {
    max-width: 760px;
    margin: 36px auto 0 !important;
    color: #ffffff !important;
    font-size: clamp(20px, 3vw, 28px) !important;
}

.epo-home-v2__social-proof {
    margin: 36px auto 0;
    color: #a8c9ff !important;
    font-size: 18px;
    font-weight: 700;
}

.epo-home-v2__hero-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px !important;
    margin-top: 36px;
}


/* ==========================================================
   BUTTONS
   ========================================================== */

.epo-home-v2__button {
    width: 92%;
    max-width: 520px;
    min-height: 48px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 9px 16px;

    border-radius: 999px;

    text-decoration: none !important;

    font-size: 15px;
    font-weight: 800;
    line-height: 1.15;

    margin-left: auto;
    margin-right: auto;

    transition:
        transform 180ms ease,
        box-shadow 180ms ease;
}

.epo-home-v2__button:hover {
    transform: translateY(-2px);
}

.epo-home-v2__button--spotify {
    background: var(--epo-spotify) !important;
    color: #ffffff !important;
    box-shadow: 0 16px 38px rgba(30, 215, 96, .22);
    white-space: nowrap;
}

.epo-home-v2__spotify-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
}

.epo-home-v2__spotify-icon svg {
    display: block;
    width: 20px;
    height: 20px;
    fill: currentColor;
}

.epo-home-v2__button--secondary {
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, .45);

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .16),
            rgba(255, 255, 255, .05)
        ) !important;
}

.epo-home-v2__button--primary {
    margin-top: 28px;

    background:
        linear-gradient(
            135deg,
            #185c95,
            #2287cf
        ) !important;

    color: #ffffff !important;
}


/* ==========================================================
   ABOUT
   ========================================================== */

.epo-home-v2__about {
    text-align: center;
}

.epo-home-v2__portrait {
    width: 230px;
    height: 230px;
    margin: 0 auto 40px;

    border-radius: 50%;
    overflow: hidden;

    border: 5px solid rgba(255, 255, 255, .12);

    box-shadow:
        0 30px 70px rgba(0, 0, 0, .35);
}

.epo-home-v2__portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.epo-home-v2__story {
    margin-top: 45px;
    padding: 60px;

    border: 1px solid var(--epo-border);
    border-radius: var(--epo-radius-lg);

    background: var(--epo-surface);
}

.epo-home-v2__story p {
    margin: 0 0 34px !important;
}

.epo-home-v2__story p:last-child {
    margin-bottom: 0 !important;
}

.epo-home-v2__story-highlight {
    color: #ffffff !important;
    font-weight: 800 !important;
    font-size: 25px !important;
}

.epo-home-v2__story-ending {
    color: #8ebeff !important;
    font-weight: 800 !important;
    font-size: 25px !important;
}


/* ==========================================================
   GIFT
   ========================================================== */

.epo-home-v2__gift-section {
    padding-top: 20px;
}

.epo-home-v2__gift-card {
    padding: 65px;
    text-align: center;

    border-radius: var(--epo-radius-lg);
    border: 1px solid var(--epo-border);

    background: var(--epo-surface);
}

.epo-home-v2__gift-badge {
    display: inline-flex;
    padding: 15px 30px;
    margin-bottom: 40px;

    border-radius: 999px;

    background: #edf5ff;

    color: #214a84 !important;

    font-weight: 800;
    font-size: 15px;
    letter-spacing: .11em;
}

.epo-home-v2__gift-card h2 span {
    display: block;
    margin-top: 12px;
    color: #ffffff !important;
}

.epo-home-v2__gift-intro {
    margin-top: 38px !important;
}


/* ==========================================================
   SENDFOX
   ========================================================== */

.epo-home-v2__sendfox {
    margin-top: 44px;
    padding: 34px;

    border-radius: var(--epo-radius-md);

    background: #0a1926;
    border: 1px solid var(--epo-border);
}

.epo-home-v2__sendfox input {
    width: 100% !important;
    min-height: 58px !important;

    margin-bottom: 18px !important;
    padding: 0 20px !important;

    border-radius: 14px !important;
    border: 1px solid #46647e !important;

    background: #071624 !important;
    color: #ffffff !important;

    font-size: 18px !important;
}

.epo-home-v2__sendfox input::placeholder {
    color: #9fb0c1 !important;
}

.epo-home-v2__sendfox button,
.epo-home-v2__sendfox input[type="submit"] {
    width: 100% !important;
    min-height: 64px !important;

    border: 0 !important;
    border-radius: 14px !important;

    background: var(--epo-coral) !important;
    color: #ffffff !important;

    font-size: 19px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
}


/* ==========================================================
   PROOF
   ========================================================== */

.epo-home-v2__proof-box {
    margin-top: 32px;
    padding: 24px;

    border-radius: var(--epo-radius-sm);

    background: #eef5ff;
    color: #20488b !important;

    font-size: 19px;
    font-weight: 800;
}

.epo-home-v2__privacy {
    margin-top: 30px !important;
    font-size: 17px !important;
    color: var(--epo-muted) !important;
}


/* ==========================================================
   CLOSING
   ========================================================== */

.epo-home-v2__closing {
    padding-bottom: 140px;
    text-align: center;
}

.epo-home-v2__closing p {
    max-width: 650px;
    margin: 28px auto 0 !important;
}


/* ==========================================================
   MOBILE — ÚNICO BLOQUE
   ========================================================== */

@media (max-width: 767px) {

    /* ---------- CONTENEDORES ---------- */

    .epo-home-v2__container,
    .epo-home-v2__narrow {
        width: calc(100% - 32px) !important;
        max-width: none !important;
        margin-inline: auto !important;
    }

    .epo-home-v2 {
        overflow-x: hidden;
    }

    .epo-home-v2 section {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .epo-home-v2__section {
        padding-top: 52px !important;
        padding-bottom: 52px !important;
    }


    /* ---------- TIPOGRAFÍA GENERAL ---------- */

    .epo-home-v2 h1 {
        font-size: 31px !important;
        line-height: 1.12 !important;
        letter-spacing: -0.02em !important;
    }

    .epo-home-v2 h2 {
        font-size: 31px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.025em !important;
    }

    .epo-home-v2 h3 {
        font-size: 25px !important;
        line-height: 1.15 !important;
    }

    .epo-home-v2 p {
        font-size: 17px !important;
        line-height: 1.55 !important;
    }

    .epo-home-v2__eyebrow {
        font-size: 11px !important;
        line-height: 1.3 !important;
        letter-spacing: .19em !important;
        margin-bottom: 18px !important;
    }


    /* ---------- HERO ---------- */

    .epo-home-v2__hero {
        min-height: auto !important;
        padding-top: 54px !important;
        padding-bottom: 54px !important;
    }

    .epo-home-v2__hero-content {
        width: 100% !important;
        margin-inline: auto !important;
    }

    .epo-home-v2__hero h1 {
        max-width: 390px !important;
        margin: 0 auto !important;

        font-size: 31px !important;
        font-weight: 800 !important;
        line-height: 1.12 !important;
        letter-spacing: -0.02em !important;

        text-wrap: balance;
    }

    .epo-home-v2__hero-text {
        max-width: 390px !important;
        margin: 22px auto 0 !important;

        font-size: 18px !important;
        line-height: 1.45 !important;
    }

    .epo-home-v2__social-proof {
        max-width: 390px !important;
        margin: 22px auto 0 !important;

        font-size: 16px !important;
        line-height: 1.35 !important;
    }

    .epo-home-v2__hero-actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;

        width: 100% !important;

        gap: 12px !important;
        margin-top: 22px !important;
    }


    /* ---------- BOTONES HERO ---------- */

    .epo-home-v2__hero-actions .epo-home-v2__button {
        width: 100% !important;
        max-width: 100% !important;

        min-height: 48px !important;
        padding: 12px 23px !important;

        gap: 8px !important;

        font-size: 15px !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;
        text-align: center !important;

        border-radius: 999px !important;
    }


    /* ---------- NUESTRA HISTORIA ---------- */

    .epo-home-v2__about {
        padding-top: 52px !important;
        padding-bottom: 52px !important;
    }

    .epo-home-v2__portrait,
    .epo-home-v2__portrait-wrap {
        width: 140px !important;
        height: 140px !important;

        margin: 0 auto 24px !important;

        border-width: 3px !important;
    }

    .epo-home-v2__portrait img,
    .epo-home-v2__portrait-wrap img {
        width: 100% !important;
        height: 100% !important;

        object-fit: cover !important;

        border-radius: 50% !important;

        display: block !important;
    }

    .epo-home-v2__about h2,
    .epo-home-v2__section-title {
        max-width: 390px !important;
        margin-inline: auto !important;

        font-size: 32px !important;
        line-height: 1.07 !important;
        letter-spacing: -0.025em !important;

        text-wrap: balance;
    }

    .epo-home-v2__story,
    .epo-home-v2__about-card {
        margin-top: 28px !important;
        padding: 28px 22px !important;
        border-radius: 22px !important;
    }

    .epo-home-v2__story p,
    .epo-home-v2__about-card p {
        margin: 0 0 20px !important;

        font-size: 17px !important;
        line-height: 1.55 !important;
    }

    .epo-home-v2__story-highlight,
    .epo-home-v2__story-ending {
        font-size: 18px !important;
        line-height: 1.45 !important;
    }

    .epo-home-v2__story p:last-child {
        margin-bottom: 0 !important;
    }


    /* ---------- DEVOCIONAL ---------- */

    .epo-home-v2__gift-section,
    .epo-home-v2__gift {
        padding-top: 18px !important;
        padding-bottom: 52px !important;
    }

    .epo-home-v2__gift-card {
        padding: 30px 20px !important;
        border-radius: 22px !important;
    }

    .epo-home-v2__gift-badge {
        width: auto !important;
        max-width: 100% !important;

        margin-bottom: 24px !important;
        padding: 11px 16px !important;

        font-size: 11px !important;
        line-height: 1.25 !important;
        letter-spacing: .08em !important;
    }

    .epo-home-v2__gift-card h2,
    .epo-home-v2__gift h2 {
        max-width: 390px !important;
        margin-inline: auto !important;

        font-size: 31px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.025em !important;

        text-wrap: balance;
    }

    .epo-home-v2__gift-card h2 span {
        margin-top: 7px !important;
    }

    .epo-home-v2__gift-intro,
    .epo-home-v2__gift p {
        margin-top: 22px !important;

        font-size: 17px !important;
        line-height: 1.55 !important;
    }


    /* ---------- SENDFOX ---------- */

    .epo-home-v2__sendfox,
    .epo-home-v2__form {
        margin-top: 26px !important;
        padding: 20px 16px !important;
        border-radius: 18px !important;
    }

    .epo-home-v2__sendfox label,
    .epo-home-v2__form label {
        font-size: 14px !important;
        line-height: 1.3 !important;
    }

    .epo-home-v2__sendfox input,
    .epo-home-v2__form input {
        min-height: 50px !important;

        margin-bottom: 14px !important;
        padding: 0 15px !important;

        border-radius: 11px !important;

        font-size: 16px !important;
    }

    .epo-home-v2__sendfox button,
    .epo-home-v2__sendfox input[type="submit"],
    .epo-home-v2__form button,
    .epo-home-v2__form input[type="submit"] {
        min-height: 54px !important;

        padding: 12px 14px !important;

        border-radius: 11px !important;

        font-size: 16px !important;
        line-height: 1.2 !important;
    }


    /* ---------- PRUEBA SOCIAL ---------- */

    .epo-home-v2__proof-box {
        margin-top: 22px !important;
        padding: 17px 15px !important;

        border-radius: 13px !important;

        font-size: 16px !important;
        line-height: 1.35 !important;
    }

    .epo-home-v2__privacy {
        margin-top: 20px !important;

        font-size: 15px !important;
        line-height: 1.5 !important;
    }


    /* ---------- CIERRE ---------- */

    .epo-home-v2__closing,
    .epo-home-v2__continue {
        padding-top: 52px !important;
        padding-bottom: 65px !important;
    }

    .epo-home-v2__closing h2,
    .epo-home-v2__continue h2 {
        max-width: 390px !important;
        margin-inline: auto !important;

        font-size: 34px !important;
        line-height: 1.06 !important;

        text-wrap: balance;
    }

    .epo-home-v2__closing p,
    .epo-home-v2__continue p {
        max-width: 390px !important;

        margin: 20px auto 0 !important;

        font-size: 17px !important;
        line-height: 1.5 !important;
    }

    .epo-home-v2__button--primary {
        margin-top: 22px !important;
    }


    /* ---------- HEADER DIVI ---------- */

    body.page-template-page-epo-home-v2 #main-header,
    body.page-template-page-epo-home-v2 .et-l--header,
    body.page-template-page-epo-home-v2 #top-header {
        background: #081827 !important;
    }

    body.page-template-page-epo-home-v2 #main-header {
        min-height: 68px !important;
        box-shadow: none !important;
    }

    body.page-template-page-epo-home-v2 #main-header .container {
        min-height: 68px !important;
        width: 90% !important;
    }

    body.page-template-page-epo-home-v2 #logo {
        max-height: 47px !important;
        opacity: 1 !important;
        filter: none !important;
    }

    body.page-template-page-epo-home-v2 #et_mobile_nav_menu,
    body.page-template-page-epo-home-v2 .mobile_menu_bar {
        opacity: 1 !important;
        visibility: visible !important;
    }

    body.page-template-page-epo-home-v2 .mobile_menu_bar::before {
        color: #42b6ff !important;
        font-size: 34px !important;
    }

    body.page-template-page-epo-home-v2 #et_mobile_nav_menu::before {
        color: #ffffff !important;
    }


    /* ---------- FOOTER ---------- */

    .epo-home-v2 footer,
    .epo-home-v2__footer {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }
}


/* ==========================================================
   TELÉFONOS MUY ESTRECHOS
   Solo ajusta ancho disponible; NO vuelve a cambiar
   título ni botones.
   ========================================================== */

@media (max-width: 390px) {

    .epo-home-v2__container,
    .epo-home-v2__narrow {
        width: calc(100% - 28px) !important;
    }

    .epo-home-v2__about h2,
    .epo-home-v2__gift-card h2 {
        font-size: 29px !important;
    }

    .epo-home-v2__closing h2,
    .epo-home-v2__continue h2 {
        font-size: 31px !important;
    }
}