.elementor-493 .elementor-element.elementor-element-972cfb6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-493 .elementor-element.elementor-element-483a081{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-493 .elementor-element.elementor-element-3523fc5 .elementor-icon-list-icon{width:14px;}.elementor-493 .elementor-element.elementor-element-3523fc5 .elementor-icon-list-icon i{font-size:14px;}.elementor-493 .elementor-element.elementor-element-3523fc5 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-493 .elementor-element.elementor-element-7d92a11{--display:flex;}.elementor-493 .elementor-element.elementor-element-71fb2a1{--display:flex;}/* Start custom CSS for container, class: .elementor-element-972cfb6 *//* ================================
   ESPAÇO INTEGER — TEMPLATE BLOG SINGLE
   Escopo: .integer-blog-single
================================ */

.integer-blog-single {
    width: 100%;
    background:
        linear-gradient(180deg, #FFF9F6 0%, #FFFFFF 44%, #FFF9F6 100%);
    color: #031D44;
    overflow-x: hidden;
}

/* HERO DO ARTIGO */
.integer-blog-single .integer-blog-hero {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 64px 28px 40px;
    box-sizing: border-box;
}

/* DATA / META */
.integer-blog-single .integer-blog-meta {
    margin: 0 0 18px;
    font-family: "DM Sans", Arial, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    color: rgba(3, 29, 68, 0.68);
}

.integer-blog-single .integer-blog-meta a,
.integer-blog-single .integer-blog-meta span {
    color: rgba(3, 29, 68, 0.68);
    text-decoration: none;
}

/* TÍTULO */
.integer-blog-single .integer-blog-title,
.integer-blog-single .integer-blog-title h1 {
    width: min(100%, 860px);
    margin: 0 0 34px;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(42px, 4.4vw, 60px) !important;
    font-weight: 500 !important;
    line-height: 1.02 !important;
    letter-spacing: -0.035em;
    color: #031D44 !important;
}

/* IMAGEM DESTACADA */
.integer-blog-single .integer-blog-featured-image {
    width: min(100%, 900px);
    margin: 0 auto;
}

.integer-blog-single .integer-blog-featured-image img {
    width: 100%;
    height: clamp(320px, 42vw, 480px);
    display: block;
    object-fit: cover;
    object-position: center;
    border-radius: 28px;
    box-shadow: 0 20px 52px rgba(3, 29, 68, 0.11);
}

/* ÁREA DO CONTEÚDO */
.integer-blog-single .integer-blog-content-wrap {
    width: 100%;
    max-width: 820px;
    margin: 0 auto;
    padding: 50px 28px 24px;
    box-sizing: border-box;
}

/* TEXTO DO ARTIGO */
.integer-blog-single .integer-blog-content {
    font-family: "DM Sans", Arial, sans-serif;
    color: rgba(3, 29, 68, 0.86);
}

/* PARÁGRAFOS */
.integer-blog-single .integer-blog-content p {
    margin: 0 0 21px;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.76;
    letter-spacing: -0.005em;
    color: rgba(3, 29, 68, 0.84);
}

/* PRIMEIRO PARÁGRAFO COMO INTRO */
.integer-blog-single .integer-blog-content p:first-child {
    margin-bottom: 30px;
    font-size: 20px;
    line-height: 1.62;
    color: rgba(3, 29, 68, 0.78);
}

/* TÍTULOS DO CONTEÚDO */
.integer-blog-single .integer-blog-content h2 {
    margin: 52px 0 20px;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(31px, 3.4vw, 40px);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -0.025em;
    color: #031D44;
}

.integer-blog-single .integer-blog-content h3 {
    margin: 32px 0 12px;
    font-family: "DM Sans", Arial, sans-serif;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -0.01em;
    color: #03807F;
}

/* CASO OS SUBTÍTULOS VENHAM COMO NEGRITO DO WORD */
.integer-blog-single .integer-blog-content p > strong:only-child,
.integer-blog-single .integer-blog-content p > b:only-child {
    display: block;
    margin: 42px 0 14px;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: -0.025em;
    color: #031D44;
}

.integer-blog-single .integer-blog-content strong,
.integer-blog-single .integer-blog-content b {
    font-weight: 800;
    color: #031D44;
}

/* LISTAS */
.integer-blog-single .integer-blog-content ul,
.integer-blog-single .integer-blog-content ol {
    margin: 0 0 28px 24px;
    padding: 0;
}

.integer-blog-single .integer-blog-content li {
    margin: 0 0 10px;
    font-size: 17px;
    line-height: 1.7;
    color: rgba(3, 29, 68, 0.84);
}

/* LINKS */
.integer-blog-single .integer-blog-content a {
    color: #03807F;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.integer-blog-single .integer-blog-content a:hover {
    color: #031D44;
}

/* IMAGENS DENTRO DO CONTEÚDO */
.integer-blog-single .integer-blog-content img {
    max-width: 100%;
    height: auto;
    border-radius: 20px;
    margin: 22px 0;
}

/* CTA FINAL */
.integer-blog-single .integer-blog-final-cta {
    width: min(100%, 820px) !important;
    max-width: 820px !important;
    margin: 48px auto 24px !important;
    padding: 36px 40px !important;
    box-sizing: border-box;
    background:
        radial-gradient(circle at 14% 18%, rgba(232, 204, 160, 0.28), transparent 34%),
        linear-gradient(135deg, #FFF9F6 0%, #F7E6DC 100%);
    border: 1px solid rgba(3, 128, 127, 0.14);
    border-radius: 28px;
    box-shadow: 0 18px 46px rgba(3, 29, 68, 0.08);
}

.integer-blog-single .integer-blog-final-cta p {
    max-width: 680px;
    margin: 0 0 22px;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 500;
    line-height: 1.12;
    letter-spacing: -0.025em;
    color: #031D44;
}

/* BOTÃO CTA */
.integer-blog-single .integer-blog-cta-button .elementor-button,
.integer-blog-single .integer-blog-cta-button a.elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 15px 26px;
    border-radius: 999px;
    background: #03807F !important;
    border: 1px solid #03807F !important;
    color: #FFF9F6 !important;
    font-family: "DM Sans", Arial, sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
    text-decoration: none !important;
    box-shadow: 0 14px 30px rgba(3, 128, 127, 0.24);
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.integer-blog-single .integer-blog-cta-button .elementor-button:hover,
.integer-blog-single .integer-blog-cta-button a.elementor-button:hover {
    transform: translateY(-2px);
    background: #031D44 !important;
    border-color: #031D44 !important;
    box-shadow: 0 18px 38px rgba(3, 29, 68, 0.22);
}

/* VOLTAR PARA BLOG */
.integer-blog-single .integer-blog-back {
    width: min(100%, 820px) !important;
    max-width: 820px !important;
    margin: 0 auto 72px !important;
    padding: 0 28px !important;
    box-sizing: border-box;
}

.integer-blog-single .integer-blog-back .elementor-button,
.integer-blog-single .integer-blog-back a.elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 13px 22px;
    border-radius: 999px;
    background: transparent !important;
    border: 1px solid rgba(3, 128, 127, 0.32) !important;
    color: #03807F !important;
    font-family: "DM Sans", Arial, sans-serif;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
}

.integer-blog-single .integer-blog-back .elementor-button:hover,
.integer-blog-single .integer-blog-back a.elementor-button:hover {
    background: #03807F !important;
    border-color: #03807F !important;
    color: #FFF9F6 !important;
}

/* TABLET */
@media (max-width: 1024px) {
    .integer-blog-single .integer-blog-hero {
        padding: 58px 24px 38px;
    }

    .integer-blog-single .integer-blog-featured-image {
        width: min(100%, 820px);
    }

    .integer-blog-single .integer-blog-featured-image img {
        height: clamp(300px, 48vw, 460px);
        border-radius: 24px;
    }

    .integer-blog-single .integer-blog-content-wrap {
        max-width: 800px;
        padding-top: 44px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .integer-blog-single .integer-blog-hero {
        padding: 42px 18px 28px;
    }

    .integer-blog-single .integer-blog-meta {
        margin-bottom: 14px;
        font-size: 12.5px;
    }

    .integer-blog-single .integer-blog-title,
    .integer-blog-single .integer-blog-title h1 {
        margin-bottom: 24px;
        font-size: clamp(34px, 10vw, 46px) !important;
        line-height: 1.03 !important;
    }

    .integer-blog-single .integer-blog-featured-image {
        width: 100%;
    }

    .integer-blog-single .integer-blog-featured-image img {
        height: 320px;
        border-radius: 20px;
    }

    .integer-blog-single .integer-blog-content-wrap {
        padding: 36px 18px 20px;
    }

    .integer-blog-single .integer-blog-content p,
    .integer-blog-single .integer-blog-content li {
        font-size: 16.2px;
        line-height: 1.72;
    }

    .integer-blog-single .integer-blog-content p:first-child {
        font-size: 18px;
        line-height: 1.62;
    }

    .integer-blog-single .integer-blog-content h2 {
        margin-top: 40px;
        font-size: 30px;
    }

    .integer-blog-single .integer-blog-content h3 {
        margin-top: 26px;
        font-size: 17px;
    }

    .integer-blog-single .integer-blog-content p > strong:only-child,
    .integer-blog-single .integer-blog-content p > b:only-child {
        margin-top: 36px;
        font-size: 28px;
    }

    .integer-blog-single .integer-blog-final-cta {
        width: auto !important;
        max-width: none !important;
        margin: 38px 18px 22px !important;
        padding: 28px 24px !important;
        border-radius: 24px;
    }

    .integer-blog-single .integer-blog-final-cta p {
        font-size: 27px;
    }

    .integer-blog-single .integer-blog-back {
        width: auto !important;
        max-width: none !important;
        margin: 0 18px 56px !important;
        padding: 0 !important;
    }
}

/* ================================
   AJUSTES FINOS — BLOG SINGLE
================================ */

/* Título um pouco mais controlado no desktop */
.integer-blog-single .integer-blog-title,
.integer-blog-single .integer-blog-title h1 {
    max-width: 900px;
    font-size: clamp(40px, 4vw, 56px) !important;
    line-height: 1.04 !important;
}

/* Imagem com altura levemente mais editorial */
.integer-blog-single .integer-blog-featured-image img {
    height: clamp(300px, 40vw, 450px);
}

/* CTA final mais alinhado à largura do conteúdo */
.integer-blog-single .integer-blog-final-cta {
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    padding: 34px 38px !important;
}

/* Texto do CTA um pouco menor */
.integer-blog-single .integer-blog-final-cta p {
    max-width: 620px;
    font-size: clamp(25px, 2.7vw, 32px);
    line-height: 1.14;
}

/* Botão voltar com respiro inferior mais seguro */
.integer-blog-single .integer-blog-back {
    margin-bottom: 84px !important;
}

/* Mobile: mantém leitura confortável */
@media (max-width: 767px) {
    .integer-blog-single .integer-blog-title,
    .integer-blog-single .integer-blog-title h1 {
        font-size: clamp(33px, 9.5vw, 44px) !important;
    }

    .integer-blog-single .integer-blog-featured-image img {
        height: 300px;
    }

    .integer-blog-single .integer-blog-final-cta {
        width: auto !important;
        max-width: none !important;
        padding: 28px 22px !important;
    }

    .integer-blog-single .integer-blog-final-cta p {
        font-size: 26px;
    }

    .integer-blog-single .integer-blog-back {
        margin-bottom: 64px !important;
    }
}/* End custom CSS */