/* =============================================================
   IBFRAGATA — CSS CUSTOMIZADO (custom + topo + sounovoporaqui)
   ============================================================= */

/* ---- custom.css ---- */

#mainnav ul li a,
#mainnav ul li::before {
    color: #000 !important;
}

.endereco {
    display: inline;
}

.site-header-inner {
    padding: 10px !important;
}

.mobile-header-item:nth-child(1) {
    margin-top: -15px !important;
}

.mobile-header-item:nth-child(2) {
    margin: 0;
    margin-top: -10px !important;
}

.mobile-header-item #primary-menu a {
    color: #fff !important;
}

.mobile-header-item #primary-menu .menu-ministerios>a {
    pointer-events: none;
}

.mobile-header-item .site-branding {
    display: none;
}

.single-post article .entry-thumb {
    display: none;
}

.home .elementor-element-f06311e .elementor-widget-wrap {
    padding: 0 !important;
}

.home .elementor-repeater-item-f514283 {
    width: 100% !important;
}

.home .slide-inner h2 {
    font-size: 35px;
}

.home .slide-inner .subtitle {
    font-size: 20px;
}

.home .slide-inner .button-slider {
    display: none;
}

.home .menu-ministerios.current_page_item {
    border-bottom: 0 !important;
}

.footer-widgets-grid p,
.footer-widgets-grid a {
    color: #fff !important;
}

.page-id-747 .is-provider-youtube,
.page-id-749 .is-provider-youtube,
.page-id-759 .is-provider-youtube {
    margin-top: 7px;
}

.sidebar-column #media_image-1 {
    display: none;
}

#sidebar-footer .footer-widgets-grid {
    padding: 20px 0;
}

.sidebar-column {
    text-align: center;
}

#sidebar-footer .widget-title:after {
    margin: 0 auto;
    margin-top: 17px;
}

#sidebar-footer .widget-title {
    margin: 0 0 5px 0 !important;
}

.elementor-13 .elementor-element.elementor-element-d9a9f4e {
    margin: 0 auto;
}

.home-ministerios .elementor-icon-box-icon,
.home-ministerios h2,
.home-ministerios p {
    text-align: center;
}

@media (min-width: 992px) {
    .site-logo {
        max-height: 70px !important;
    }
}

#page .page-wrap {
    padding-top: 0;
}

.wpcf7 p {
    color: #000;
}

.wpcf7 input,
.wpcf7 textarea {
    border: 1px solid #000 !important;
}

.wpcf7 input[type=submit] {
    width: 420px;
}

#post-796 figure {
    max-width: 500px;
}

.elementor-element-2d93a0c {
    padding-bottom: 20px;
}

.elementor-element-6a053d8 .eael-load-more-button-wrap {
    margin-bottom: 11px;
}

.elementor-element-0232e55 {
    padding-bottom: 50px;
}

.footer-widgets-grid .menu-principal-container .sub-menu {
    display: none;
}

.ancora-ministerios {
    opacity: 0;
    height: 0;
    margin-top: -20px;
    pointer-events: none;
}

.home .slide-item .subtitle {
    font-size: 17px;
}

.home .slide-item .subtitle strong {
    font-size: 20px;
}

.home .elementor-element-72a3969 {
    margin-top: 50px !important;
}

.home .elementor-element-0232e55 {
    padding-bottom: 55px !important;
}

.page-id-444 input {
    max-width: 100%;
}

.page-id-716 .entry-content figure {
    margin-bottom: 20px;
}

.home #conhecaebd .elementor-button-content-wrapper {
    flex-direction: column;
}

.home #conhecaebd .elementor-button-icon {
    font-size: 30px;
    margin: 0;
}

#conhecaebd .elementor-button-text {
    font-size: 17px;
}

.home #conhecaebd .elementor-button-text {
    line-height: 1.3;
}

@media (min-width: 993px) {
    #conhecaebd .elementor-button-text {
        font-size: 18px;
    }
}

@media (max-width: 992px) {

    .home .elementor-repeater-item-f514283 .slide-content-wrapper h2,
    .home .elementor-repeater-item-f514283 .slide-content-wrapper p {
        text-align: left !important;
    }

    #masthead-mobile {
        position: fixed;
        width: 100%;
    }

    .home .slide-item .maintitle {
        padding-bottom: 20px;
        display: block;
    }

    .home .slide-item .subtitle {
        margin-top: 5px;
    }

    .home .slide-item .subtitle strong {
        margin-top: 15px;
        display: block;
    }

    .home .sydney-hero-area {
        padding-top: 95px;
    }

    .content-area {
        padding-top: 95px;
    }

    .elementor-element-bb883c1 {
        padding: 0 !important;
        margin-bottom: -65px !important;
    }

    .site-branding img {
        max-width: 140px;
    }

    .page-template #main h1,
    .page-template #main p,
    .page-template figure,
    .page-template input {
        text-align: center;
        margin: 0 auto;
    }

    .page-template .wpcf7-spinner {
        display: block;
    }

    #post-796 figure {
        border-radius: 5px;
    }

    #post-796 figure {
        max-width: 992px;
    }

    .page-id-716 .entry-content figure {
        margin-top: 10px;
        margin-bottom: 20px;
        width: 100% !important;
        border-radius: 5px;
    }

    .page-id-716 .entry-content img {
        max-width: 300px !important;
    }
}

.eael-grid-post-excerpt p {
    text-align: left !important;
}

.eael-entry-footer,
.eael-entry-footer .eael-entry-meta {
    padding: 0 !important;
}

.eael-grid-post-excerpt .eael-post-elements-readmore-btn {
    font-size: 16px;
    color: #D83A3A !important;
}

.eael-post-appender-6a053d8 .eael-entry-footer .eael-entry-meta {
    font-size: 13px !important;
    color: #888 !important;
}

.category-noticias .entry-meta-below .byline {
    display: none;
}

#post-863 .wp-block-media-text__content p {
    color: #000 !important;
}

@media (max-width: 1024px) {
    .eael-post-appender-6a053d8 .eael-grid-post-holder {
        border: 1px solid rgba(0, 0, 0, 0.2) !important;
    }
}

@media (max-width: 767px) {
    .home .elementor-element-560a5ae {
        margin-top: 25px;
    }
}

@media (min-width: 601px) {
    .blog .entry-thumb {
        text-align: left;
    }
}

@media (max-width: 600px) {

    .home .elementor-repeater-item-f514283 .slide-content-wrapper h2,
    .home .elementor-repeater-item-f514283 .slide-content-wrapper p {
        text-align: center !important;
    }

    .home .elementor-repeater-item-f514283 .slide-content-wrapper .roll-button {
        margin: 0 auto;
        display: block;
        max-width: 160px;
        margin-top: 30px;
    }

    .home .elementor-element-7479f1c h3 {
        font-size: 18px;
    }

    .blocks-gallery-grid,
    .tiled-gallery__row {
        flex-direction: column !important;
    }

    .tiled-gallery__item {
        height: auto !important;
    }

    .tiled-gallery__col {
        margin-bottom: 20px !important;
    }

    .wp-block-gallery.is-cropped .blocks-gallery-item,
    .tiled-gallery__item {
        width: 100% !important;
    }

    #post-863 .wp-block-media-text__content {
        margin-top: 30px;
    }
}

@media (max-width: 479px) {
    .home .slide-item .subtitle {
        margin-top: 12px;
        font-size: 16px;
    }
}

@media (min-width: 1025px) {
    .home .header-slider {
        margin-top: -25px !important;
    }
}

.quero-visitar {
    border: 1px solid #fff;
    padding: 0 15px;
    border-radius: 15px;
    margin-top: 5px;
    margin-bottom: 10px;
    display: inline-block;
    color: #fff;
}

.quero-visitar:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.2);
}

.page-id-1384 .title-post {
    text-align: center;
}

.quero-visitar-atividades-da-semana {
    max-width: 500px;
    margin: 0 auto;
}

@media (max-width: 767px) {
    .quero-visitar {
        margin-top: 10px;
        padding: 5px 15px;
    }
}

.quero-visitar-gtag_report_conversion {
    cursor: pointer;
    color: #d65050;
    text-align: center;
    margin: 0 auto;
    display: block;
    width: fit-content;
    transition-duration: 0.4s;
}

.quero-visitar-gtag_report_conversion:hover {
    color: #251d1d;
}

.wpcf7-spinner {
    display: block;
    margin: 0 auto;
    margin-top: 2px;
}

.page-id-444 .sd-social {
    text-align: center;
}

.youtube-gtag_report_conversion,
.facebook-gtag_report_conversion,
.instagram-gtag_report_conversion {
    padding: 0 12px;
    margin-top: 10px;
    margin-bottom: 10px;
    display: inline-block;
    color: #fff;
    cursor: pointer;
    transition-duration: 0.4s;
    border-radius: 10px;
}

.youtube-gtag_report_conversion,
.instagram-gtag_report_conversion {
    margin-left: 5px;
}

.youtube-gtag_report_conversion:hover,
.facebook-gtag_report_conversion:hover,
.instagram-gtag_report_conversion:hover {
    color: #fff;
    background: #eeae66ab;
}

@media (max-width: 767px) {
    .home .slide-item .subtitle strong::before {
        display: none !important;
    }

    .youtube-gtag_report_conversion,
    .facebook-gtag_report_conversion,
    .instagram-gtag_report_conversion {
        margin-top: 10px;
        padding: 5px 15px;
    }
}

.familia-pastoral {
    grid-template-columns: 30% 70% 1fr !important;
}

.familia-pastoral img {
    max-width: 400px;
}

.familia-pastoral .wp-block-media-text__content {
    padding: 0 0 0 30px;
}

.page-id-1461 .entry-title {
    margin-bottom: -30px;
}

.home .fitVids-wrapper {
    margin: 0 auto;
    margin-top: 20px;
}

.home .elementor-element-58574c1 .elementor-widget-wrap {
    padding: 0 !important;
}

.home .elementor-element-fa30165 {
    margin-bottom: -10px !important;
}

.home .elementor-element-7bdf360 {
    margin: 0 auto;
    margin-top: -20px;
}

.home .elementor-element-a89ee73 {
    margin-top: 30px;
    height: 320px;
}

.home .iframe-criancas {
    height: 300px;
}

@media (max-width: 600px) {
    .familia-pastoral .wp-block-media-text__media {
        margin: 0 auto;
        text-align: center;
    }

    .familia-pastoral .wp-block-media-text__content {
        margin-top: 20px;
    }

    .page-id-1461 .entry-title {
        text-align: center;
    }

    .familia-pastoral img {
        max-width: 80%;
    }

    .home .elementor-element-fa30165 {
        margin-top: 0 !important;
        margin-bottom: -10px !important;
    }
}

.elementor-element-a89ee73 {
    display: none;
}


/* ---- topo.css ---- */

.slide-inner {
    --hero-text: #ffffff;
    --hero-accent: #f5c842;
    --hero-accent-rgb: 245, 200, 66;
    --hero-max-width: 1000px;
    --hero-padding-h: 48px;
    --hero-padding-inline: max(24px, calc((100% - var(--hero-max-width)) / 2 + var(--hero-padding-h)));
}

.slide-inner {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    text-align: left !important;
    padding: 0 var(--hero-padding-inline) 20vh !important;
    min-height: 100vh !important;
    box-sizing: border-box !important;
}

.slide-inner::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to top,
            rgba(8, 10, 14, 0.88) 0%,
            rgba(8, 10, 14, 0.55) 25%,
            rgba(8, 10, 14, 0.20) 55%,
            rgba(8, 10, 14, 0.05) 80%,
            transparent 100%) !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.slide-inner::after {
    display: none !important;
}

.slide-inner .contain.text-slider {
    position: relative !important;
    z-index: 1 !important;
    max-width: min(720px, 52vw) !important;
    margin: 0 !important;
}

.slide-inner .contain.text-slider::before {
    content: "" !important;
    display: block !important;
    width: 48px !important;
    height: 3px !important;
    background: var(--hero-accent) !important;
    margin-bottom: 20px !important;
    border-radius: 2px !important;
}

.slide-inner .contain.text-slider h2,
.slide-inner .contain.text-slider p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.slide-inner .maintitle {
    margin: 0 0 16px 0 !important;
    font-size: clamp(4.2rem, 7.5vw, 7.2rem) !important;
    font-weight: 900 !important;
    line-height: 1.0 !important;
    letter-spacing: -0.03em !important;
    color: var(--hero-text) !important;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5) !important;
}

.slide-inner .inicio-subtitulo {
    display: block !important;
    font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
    font-weight: 400 !important;
    color: var(--hero-text) !important;
    margin-top: 12px !important;
    line-height: 1.5 !important;
    letter-spacing: 0.01em !important;
}

.slide-inner .subtitle {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 10px !important;
    row-gap: 18px !important;
    width: 100% !important;
    margin-top: 28px !important;
    margin-bottom: 0 !important;
    padding-top: 24px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.slide-inner .subtitle br {
    display: none !important;
}

.slide-inner .endereco {
    flex: 0 0 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 1.45rem !important;
    font-weight: 400 !important;
    color: var(--hero-text) !important;
    line-height: 1.4 !important;
    margin: 0 0 -6px 0 !important;
    letter-spacing: 0.01em !important;
}

.slide-inner .endereco::before {
    content: "📍" !important;
    flex-shrink: 0 !important;
    font-size: 0.95rem !important;
}

.slide-inner .endereco strong {
    color: var(--hero-text) !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Botões de redes sociais no hero — sem backdrop-filter (GPU intensivo) */
.slide-inner .facebook-gtag_report_conversion,
.slide-inner .instagram-gtag_report_conversion,
.slide-inner .youtube-gtag_report_conversion {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    padding: 0 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    border-radius: 6px !important;
    font-size: 1.0rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--hero-text) !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: background 0.2s ease, border-color 0.2s ease !important;
}

.slide-inner .instagram-gtag_report_conversion::before,
.slide-inner .youtube-gtag_report_conversion::before {
    display: none !important;
}

.slide-inner .facebook-gtag_report_conversion:hover,
.slide-inner .instagram-gtag_report_conversion:hover,
.slide-inner .youtube-gtag_report_conversion:hover {
    background: rgba(var(--hero-accent-rgb), 0.30) !important;
    border-color: rgba(var(--hero-accent-rgb), 0.60) !important;
    color: var(--hero-text) !important;
}

/* "Role a página" — pulsa 3x ao carregar, depois para */
.slide-inner .subtitle>strong {
    flex: 0 0 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 1.3rem !important;
    font-weight: 500 !important;
    color: var(--hero-text) !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    margin-top: 10px !important;
    text-shadow:
        0 0 12px rgba(0, 0, 0, 1),
        0 2px 8px rgba(0, 0, 0, 0.9) !important;
    animation: ibfPulse 3s ease-in-out 3 !important;
}

.slide-inner .subtitle>strong::before {
    content: "" !important;
    display: block !important;
    width: 24px !important;
    height: 1px !important;
    background: rgba(255, 255, 255, 0.50) !important;
    flex-shrink: 0 !important;
}

@keyframes ibfPulse {

    0%,
    100% {
        opacity: 0.70;
    }

    50% {
        opacity: 1;
    }
}

.slide-inner .roll-button.button-slider {
    display: none !important;
}

.slide-inner .contain.animated.fadeInRightBig {
    animation: ibfHeroIn 1s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}

@keyframes ibfHeroIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .slide-inner .contain.animated.fadeInRightBig {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }

    .slide-inner .subtitle>strong {
        animation: none !important;
        opacity: 1 !important;
    }
}

@media (max-width: 767px) {
    .slide-inner {
        padding: 0 6% 32vh !important;
        min-height: 100svh !important;
        align-items: center !important;
        text-align: center !important;
    }

    .slide-inner::after {
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: auto !important;
        width: 100% !important;
        height: 42% !important;
        border-radius: 0 !important;
        -webkit-mask-image: linear-gradient(to bottom, black 60%, transparent 100%) !important;
        mask-image: linear-gradient(to bottom, black 60%, transparent 100%) !important;
    }

    .slide-inner .contain.text-slider {
        max-width: 100% !important;
    }

    .slide-inner .contain.text-slider::before {
        display: none !important;
    }

    .slide-inner .maintitle {
        font-size: clamp(2.8rem, 9vw, 4rem) !important;
        padding-bottom: 12px !important;
    }

    .slide-inner .inicio-subtitulo {
        font-size: 1.7rem !important;
        margin-top: 0 !important;
    }

    .slide-inner .subtitle {
        justify-content: center !important;
    }

    .slide-inner .endereco {
        font-size: 1.5rem !important;
        margin-top: 17px !important;
        margin-bottom: 15px !important;
        justify-content: center !important;
    }

    .slide-inner .subtitle>strong {
        justify-content: center !important;
    }

    .slide-inner .endereco strong {
        margin-top: 0 !important;
        font-size: 1.5rem !important;
        font-weight: 400 !important;
    }

    .slide-inner .facebook-gtag_report_conversion,
    .slide-inner .instagram-gtag_report_conversion,
    .slide-inner .youtube-gtag_report_conversion {
        font-size: 1.1rem !important;
        padding: 8px 12px !important;
    }

    .slide-inner .subtitle>strong {
        font-size: 1.3rem !important;
    }

    .slide-inner .inicio-subtitulo {
        margin-top: 5px !important;
    }
}


/* ---- sounovoporaqui.css ---- */

.elementor-element-4db179b {
    border-top: 5px solid #b03f3f;
    border-bottom: 2px solid rgba(34, 49, 77, 0.5);
    padding-top: 50px !important;
    padding-bottom: 50px !important;
}

.elementor-element-4db179b {
    position: relative !important;
    overflow: hidden !important;
    padding: 96px 48px !important;
    background:
        radial-gradient(ellipse at 8% 15%, rgba(176, 63, 63, 0.09) 0%, transparent 38%),
        radial-gradient(ellipse at 92% 85%, rgba(34, 49, 77, 0.07) 0%, transparent 40%),
        linear-gradient(150deg, #faf8f4 0%, #f3f0ea 55%, #eae6dd 100%) !important;
}

.elementor-element-4db179b::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(100deg,
            rgba(255, 255, 255, 0.55) 0%,
            rgba(255, 255, 255, 0.15) 28%,
            transparent 55%) !important;
    pointer-events: none !important;
}

.elementor-element-4db179b::after {
    content: "" !important;
    position: absolute !important;
    right: -100px !important;
    top: -100px !important;
    width: 500px !important;
    height: 500px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle,
            rgba(34, 49, 77, 0.065) 0%,
            transparent 68%) !important;
    pointer-events: none !important;
}

.elementor-element-4db179b>.elementor-container {
    position: relative !important;
    z-index: 2 !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
    align-items: center !important;
    gap: 56px !important;
}


.elementor-element-4db179b .elementor-element-b97b2bb>.elementor-widget-wrap {
    position: relative !important;
    padding-left: 20px !important;
}

.elementor-element-4db179b .elementor-element-b97b2bb>.elementor-widget-wrap::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 3px !important;
    height: 260px !important;
    border-radius: 2px !important;
    background: linear-gradient(180deg,
            #b03f3f 0%,
            rgba(34, 49, 77, 0.25) 70%,
            transparent 100%) !important;
}

.elementor-element-4db179b .elementor-element-76b10fe h4 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 20px 0 !important;
    padding: 6px 14px 6px 12px !important;
    border-radius: 100px !important;
    border: 1px solid rgba(176, 63, 63, 0.28) !important;
    background: rgba(176, 63, 63, 0.07) !important;
    color: #b03f3f !important;
    font-size: 1.0rem !important;
    letter-spacing: 0.18em !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
}

.elementor-element-4db179b .elementor-element-76b10fe h4::before {
    content: "" !important;
    display: inline-block !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #b03f3f !important;
    flex-shrink: 0 !important;
}

.elementor-element-4db179b .elementor-element-8edbf05 h2 {
    margin: 0 0 22px 0 !important;
    font-size: clamp(4.0rem, 5.2vw, 6.2rem) !important;
    font-weight: 900 !important;
    letter-spacing: -0.06em !important;
    line-height: 0.92 !important;
    color: #22314d !important;
    text-shadow:
        0 2px 0 rgba(34, 49, 77, 0.04),
        0 12px 32px rgba(34, 49, 77, 0.07) !important;
}

.elementor-element-4db179b .elementor-element-15593c0 .elementor-widget-container {
    margin-bottom: 32px !important;
}

.elementor-element-4db179b .elementor-element-15593c0 div {
    color: #4a5568 !important;
    font-size: 1.5rem !important;
    line-height: 1.6 !important;
    max-width: 580px !important;
    margin: 0 !important;
    font-weight: 400 !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 54px !important;
    padding: 0 28px !important;
    border-radius: 10px !important;
    background: #22314d !important;
    border: none !important;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow:
        0 4px 14px rgba(34, 49, 77, 0.28),
        0 1px 3px rgba(34, 49, 77, 0.18) !important;
    transition:
        background 0.22s ease,
        box-shadow 0.22s ease,
        transform 0.18s ease !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button::before,
.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button::after {
    display: none !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .cretive-button-text {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    color: #ffffff !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button .creative-button-inner::after {
    content: "→" !important;
    font-size: 1.3rem !important;
    color: rgba(255, 255, 255, 0.75) !important;
    transition: transform 0.2s ease !important;
    display: inline-block !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button:hover {
    background: #b03f3f !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow:
        0 8px 24px rgba(176, 63, 63, 0.32),
        0 2px 6px rgba(176, 63, 63, 0.2) !important;
    transform: translateY(-2px) !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button:hover .cretive-button-text {
    color: #ffffff !important;
}

.elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button:hover .creative-button-inner::after {
    transform: translateX(4px) !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

.elementor-element-4db179b .elementor-element-d4bbc59>.elementor-widget-wrap {
    position: relative !important;
    overflow: visible !important;
}

.elementor-element-4db179b .elementor-element-d4bbc59>.elementor-widget-wrap::before {
    content: "" !important;
    position: absolute !important;
    top: 16px !important;
    left: -14px !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 28px !important;
    background: rgba(34, 49, 77, 0.12) !important;
    z-index: 0 !important;
}

.elementor-element-4db179b .elementor-element-d4bbc59>.elementor-widget-wrap::after {
    content: "" !important;
    position: absolute !important;
    bottom: -10px !important;
    right: -10px !important;
    width: 55% !important;
    height: 45% !important;
    border-radius: 0 0 24px 0 !important;
    background: rgba(176, 63, 63, 0.13) !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.elementor-element-4db179b .elementor-element-6396f1c .elementor-widget-container {
    position: relative !important;
    z-index: 1 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow:
        0 32px 64px rgba(0, 0, 0, 0.14),
        0 8px 24px rgba(0, 0, 0, 0.08),
        0 2px 6px rgba(0, 0, 0, 0.06) !important;
}

.elementor-element-4db179b .elementor-element-6396f1c .elementor-widget-container::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(160deg,
            rgba(255, 255, 255, 0.06) 0%,
            transparent 40%,
            rgba(0, 0, 0, 0.15) 100%) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

.elementor-element-4db179b .elementor-element-6396f1c img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    filter: contrast(1.06) saturate(1.08) brightness(1.01) !important;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.elementor-element-4db179b .elementor-element-6396f1c:hover img {
    transform: scale(1.04) !important;
}

@media (max-width: 1024px) {
    .elementor-element-4db179b {
        padding: 68px 28px !important;
    }

    .elementor-element-4db179b>.elementor-container {
        max-width: 94% !important;
        gap: 32px !important;
    }

    .elementor-element-4db179b .elementor-element-76b10fe h4 {
        font-size: 0.9rem !important;
    }

    .elementor-element-4db179b .elementor-element-15593c0 div {
        font-size: 1.3rem !important;
        max-width: 100% !important;
    }
}

@media (max-width: 767px) {
    .eael-post-appender-6a053d8 .eael-entry-footer {
        margin-top: -23px !important;
        text-align: right !important;
    }

    .eael-post-appender-6a053d8 .eael-entry-footer .eael-entry-meta {
        width: 100% !important;
        text-align: right !important;
    }

    .elementor-element-4db179b {
        padding: 60px 24px !important;
    }

    .elementor-element-4db179b>.elementor-container {
        max-width: 100% !important;
        gap: 44px !important;
    }

    .elementor-element-4db179b .elementor-element-b97b2bb>.elementor-widget-wrap::before {
        display: none !important;
    }

    .elementor-element-4db179b .elementor-element-b97b2bb>.elementor-widget-wrap {
        padding-left: 0 !important;
    }

    .elementor-element-4db179b .elementor-element-76b10fe h4 {
        font-size: 0.95rem !important;
        letter-spacing: 0.16em !important;
        margin: 0 auto 18px auto !important;
        display: inline-flex !important;
    }

    .elementor-element-4db179b .elementor-element-76b10fe .elementor-widget-container {
        text-align: center !important;
    }

    .elementor-element-4db179b .elementor-element-8edbf05 h2 {
        font-size: clamp(3.4rem, 11vw, 4.4rem) !important;
        text-align: center !important;
        margin-bottom: 20px !important;
        line-height: 0.95 !important;
        letter-spacing: -0.045em !important;
    }

    .elementor-element-4db179b .elementor-element-15593c0 .elementor-widget-container {
        margin-bottom: 36px !important;
    }

    .elementor-element-4db179b .elementor-element-15593c0 div {
        font-size: 1.55rem !important;
        text-align: center !important;
        line-height: 1.58 !important;
        max-width: 100% !important;
    }

    .elementor-element-4db179b .elementor-element-44bb5bc .elementor-widget-container {
        text-align: center !important;
    }

    .elementor-element-4db179b .elementor-element-44bb5bc .eael-creative-button {
        width: 100% !important;
        max-width: 340px !important;
        min-height: 58px !important;
        padding: 0 24px !important;
        margin: 0 auto !important;
        justify-content: center !important;
    }

    .elementor-element-4db179b .elementor-element-44bb5bc .creative-button-inner {
        min-height: 58px !important;
        justify-content: center !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .elementor-element-4db179b .elementor-element-44bb5bc .cretive-button-text {
        font-size: 1.3rem !important;
        padding-left: 0 !important;
        text-align: center !important;
    }

    .elementor-element-4db179b .elementor-element-d4bbc59>.elementor-widget-wrap::after {
        display: none !important;
    }

    .elementor-element-4db179b .elementor-element-d4bbc59>.elementor-widget-wrap::before {
        top: 14px !important;
        left: -12px !important;
    }
}


/* =========================================================
   SEÇÃO MINISTÉRIOS — HOME
   ========================================================= */

/* Altura igual em todos os cards + botão sempre no rodapé */
.home-ministerios .elementor-column>.elementor-widget-wrap {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: 36px 24px 28px !important;
    border-radius: 0 !important;
    transition: box-shadow 0.25s ease, transform 0.25s ease !important;
}

.home-ministerios .elementor-column>.elementor-widget-wrap:hover {
    box-shadow: 0 10px 36px rgba(34, 49, 77, 0.13) !important;
    transform: translateY(-4px) !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Ícone — círculo refinado */
.home-ministerios .elementor-icon-box-icon {
    margin-bottom: 0 !important;
}

.home-ministerios .elementor-icon {
    width: 76px !important;
    height: 76px !important;
    background: linear-gradient(135deg, #fde8e8 0%, #f5c5c5 100%) !important;
    border: 2px solid rgba(176, 63, 63, 0.15) !important;
    box-shadow: 0 4px 14px rgba(176, 63, 63, 0.18) !important;
    transition: box-shadow 0.25s ease, transform 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.home-ministerios .elementor-column>.elementor-widget-wrap:hover .elementor-icon {
    box-shadow: 0 6px 20px rgba(176, 63, 63, 0.30) !important;
    transform: scale(1.06) !important;
}

.home-ministerios .elementor-icon i {
    font-size: 28px !important;
    color: #b03f3f !important;
    line-height: 1 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Título */
.home-ministerios .elementor-icon-box-title {
    margin-top: 14px !important;
    margin-bottom: 10px !important;
}

.home-ministerios .elementor-widget-icon-box>.elementor-widget-container {
    padding: 0 !important;
}

.home-ministerios .elementor-icon-box-wrapper {
    gap: 0 !important;
}

.home-ministerios .elementor-icon-box-title span {
    font-size: 2.0rem !important;
    font-weight: 800 !important;
    color: #22314d !important;
    letter-spacing: -0.02em !important;
}

/* Descrição — empurra o botão para o rodapé */
.home-ministerios .elementor-widget-icon-box {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.home-ministerios .elementor-icon-box-wrapper {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.home-ministerios .elementor-icon-box-content {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.home-ministerios .elementor-icon-box-description {
    flex: 1 !important;
    font-size: 1.5rem !important;
    line-height: 1.65 !important;
    color: #4a5568 !important;
    margin-bottom: 0 !important;
}

.home-ministerios .elementor-button-wrapper {
    text-align: center !important;
    display: block !important;
}

.home-ministerios .elementor-button {
    display: inline-flex !important;
    width: auto !important;
    min-width: 120px !important;
    background: #b03f3f !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    padding: 10px 28px !important;
    box-shadow: 0 3px 10px rgba(176, 63, 63, 0.25) !important;
    transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
}

.home-ministerios .elementor-button:hover {
    background: #c9564a !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(176, 63, 63, 0.35) !important;
}

/* Desktop: card inteiro clicável */
@media (min-width: 1025px) {
    .home-ministerios .elementor-column > .elementor-widget-wrap {
        position: relative !important;
    }

    /* overlay <a> injetado via JS */
    .ministerio-card-overlay {
        position: absolute !important;
        inset: 0 !important;
        z-index: 5 !important;
        display: block !important;
        cursor: pointer !important;
    }

    /* botão visível acima do overlay */
    .home-ministerios .elementor-widget-button {
        position: relative !important;
        z-index: 6 !important;
    }

    /* hover no card ativa o estilo do botão */
    .home-ministerios .elementor-column > .elementor-widget-wrap:hover .elementor-button {
        background: #c9564a !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 6px 18px rgba(176, 63, 63, 0.35) !important;
    }
}

/* Mobile: 2 colunas */
@media (max-width: 767px) {
    .home-ministerios .elementor-column {
        width: 50% !important;
        padding-bottom: 16px !important;
    }

    .home-ministerios .elementor-column>.elementor-widget-wrap {
        padding: 28px 18px 22px !important;
    }

    .home-ministerios .elementor-icon-box-title span {
        font-size: 1.8rem !important;
    }

    .home-ministerios .elementor-icon-box-description {
        font-size: 1.35rem !important;
    }
}

/* Mobile pequeno: 1 coluna */
@media (max-width: 479px) {
    .home-ministerios .elementor-column {
        width: 100% !important;
    }
}