/* =====================================================
   INTERNA DE ESTUDO
   3 breakpoints:
     - Desktop grande  : base (≥ 1441px)
     - MacBook Air M2  : @media (max-width: 1700px)
     - Mobile          : @media (max-width: 768px)
   ===================================================== */

/* ----- PAGE WRAPPER ---------------------------------- */
.ie-page {
    position: relative;
    background: #ffffff url('../images/ie-bg-watermark.png') top center / 100% repeat-y;
    text-align: initial;
}

/* ----- HERO BG (full-width, position:absolute) ------- */
.ie-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 770px;
    overflow: hidden;
    z-index: 0;
}

.ie-hero-bg__img {
    position: absolute;
    width: 100%;
    height: 111.71%;
    top: -11.71%;
    left: 0;
    object-fit: cover;
    max-width: none;
    display: block;
}

.ie-hero-bg__gradient {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 11.61%),
        linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%);
}

/* ----- HERO TEXT (parte superior da coluna esquerda) - */
.ie-hero-text {
    min-height: 770px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 50px;
    gap: 10px;
    text-align: left;
}

.ie-hero__badge {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    justify-content: center;
    background: #008f8c;
    color: #ffffff;
    font-family: 'Nunito', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    padding: 5px 10px;
    border-radius: 20px;
    text-decoration: none;
}

.ie-hero__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: normal;
    color: #ffffff;
    margin: 0;
    text-transform: none;
    text-align: left;
}

.ie-hero__subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 26px;
    color: #ffffff;
    margin: 0;
    text-align: left;
}

.ie-hero__sep {
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    width: 100%;
}

.ie-hero__meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ie-hero__date {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #ffffff;
    text-align: left;
}

.ie-hero__author {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #ffffff;
    display: flex;
    align-items: center;
    gap: 4px;
}

.ie-hero__clock {
    display: inline-block;
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}

/* ----- GRID: hero | sidebar | body (3 filhos diretos) - */
.ie-grid {
    display: grid;
    grid-template-columns: minmax(720px, 1fr) 360px;
    grid-template-rows: auto 1fr;
    column-gap: 40px;
    row-gap: 0;
    align-items: start;
    padding: 0 0 70px;
    position: relative;
    z-index: 1;
}

/* Col 1 row 1 */
.ie-hero-text {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
}

/* Col 2, abrange todas as linhas */
.ie-sidebar {
    grid-column: 2;
    grid-row: 1 / -1;
}

/* Col 1 row 2 */
.ie-body-content {
    grid-column: 1;
    grid-row: 2;
    min-width: 0;
}

/* ----- CONTEÚDO DO ARTIGO (abaixo do hero text) ------ */
.ie-body-content {
    padding-top: 50px;
    display: flex;
    flex-direction: column;
    gap: 50px;
}

/* ----- BLOCO GENÉRICO DE SEÇÃO ----------------------- */
.ie-block {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.ie-block--sep {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-bottom: 40px;
}

/* ----- CABEÇALHO DE SEÇÃO (pill) --------------------- */
.ie-section-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background: #ebebeb;
    padding: 10px 20px;
    /* TL reto; direita semicírculo; BL arco circular simétrico (máx. = metade da altura) */
    border-radius: 0 22px 22px 22px;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
}

.ie-section-header--resumo {
    padding-right: 56px;
}

.ie-section-header__text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 24px;
    color: #000000;
    flex: 1 0 0;
    min-width: 0;
    text-align: left;
    margin: 0;
}

.ie-section-header--resumo .ie-section-header__text {
    font-size: 20px;
}

.ie-section-header__badge {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 44px;
    display: block;
    flex-shrink: 0;
}

/* ----- TEXTO PRINCIPAL ------------------------------- */
.ie-section-text {
    padding-left: 20px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.ie-section-text p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0 0 18px;
    text-align: justify;
    overflow-wrap: break-word;
    word-break: break-word;
}

.ie-section-text p:last-child {
    margin-bottom: 0;
}

/* ----- LISTAS DIGITADAS NO EDITOR -------------------- */
/* O WYSIWYG grava <ul>/<ol> dentro do texto; sem estas regras o item fica sem
   marcador e sem recuo, parecendo um parágrafo solto. */
.ie-section-text ul,
.ie-section-text ol {
    margin: 0 0 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ie-section-text ul {
    list-style: none;
    padding-left: 16px;
}

.ie-section-text ol {
    list-style: decimal;
    padding-left: 22px;
}

.ie-section-text li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    text-align: justify;
    position: relative;
    overflow-wrap: break-word;
}

.ie-section-text ul > li::before {
    content: "";
    position: absolute;
    left: -16px;
    top: 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #008f8c;
}

.ie-section-text ul:last-child,
.ie-section-text ol:last-child {
    margin-bottom: 0;
}

/* ----- SEÇÃO COM IMAGEM ACIMA ----------------------- */
.ie-section-with-image {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.ie-section-img {
    height: 405px;
    border-radius: 14px 14px 14px 0;
    display: block;
    width: 100%;
    object-fit: cover;
    flex-shrink: 0;
}

/* ----- CORPO DE SEÇÃO (texto + blocos) --------------- */
.ie-section-body {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* ----- SUB-SEÇÃO (título sem pill) ------------------- */
.ie-subsection {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-left: 20px;
}

.ie-subsection .ie-section-text {
    padding-left: 0;
}

/* ----- MESMO PONTO DE PARTIDA ------------------------ */
/* O recuo que só o texto e o subtítulo tinham passa a valer pra todo bloco:
   lista, gráfico, imagem, destaque e citação começavam 20px à esquerda, e a
   coluna inteira parecia desalinhada. Bloco dentro de bloco não soma recuo. */
.ie-highlight,
.ie-citation,
.ie-bullets-group,
.ie-bullet-list,
.ie-figure,
.ie-chart {
    margin-left: 20px;
}

.ie-subsection .ie-bullets-group,
.ie-subsection .ie-bullet-list,
.ie-highlight .ie-bullet-list {
    margin-left: 0;
}

.ie-subsection__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    color: #000000;
    margin: 0;
    text-transform: none;
    text-align: left;
}

.ie-subsection__title--h4 {
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    color: #000000;
}

/* ----- GRÁFICO --------------------------------------- */
.ie-chart {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.ie-chart__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    color: #333333;
    margin: 0;
    text-align: left;
}

.ie-chart__img {
    width: 100%;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
}

.ie-chart__img canvas {
    width: 100% !important;
    max-width: 100%;
}

.ie-map-outer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 60px;
}

/* ===== mapa brasil estático ===== */
.ie-brazil-map {
    position: relative;
    width: 323px;
    height: 320px;
    flex-shrink: 0;
    overflow: hidden;
}

.ie-brazil-map__r {
    position: absolute;
    display: block;
}

.ie-brazil-map__r--norte       { left: 0%;     top: 0%;     width: 70.61%; height: 48.27%; }
.ie-brazil-map__r--nordeste    { left: 66.16%; top: 16.0%;  width: 33.86%; height: 44.53%; }
.ie-brazil-map__r--centro-oeste { left: 32.04%; top: 32.91%; width: 38.23%; height: 41.89%; }
.ie-brazil-map__r--sul         { left: 42.92%; top: 71.20%; width: 21.40%; height: 28.80%; }
.ie-brazil-map__r--sudeste     { left: 54.13%; top: 50.38%; width: 31.61%; height: 27.62%; }

.ie-brazil-map__label {
    position: absolute;
    transform: translate(-50%, -50%);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    pointer-events: none;
}

/* ===== legenda ===== */
.ie-map-legend {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-shrink: 0;
}

.ie-map-legend__item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #54555a;
    white-space: nowrap;
}

.ie-map-legend__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
}

.ie-chart__img--doughnut {
    height: 280px;
    min-height: 0;
}

/* ----- GRÁFICO ROSCA: wrapper + legenda HTML ----------------- */
.ie-chart__body {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

.ie-chart__body .ie-chart__img--doughnut {
    flex: 0 0 280px;
    width: 280px;
}

.ie-pie-legend {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 0 0 auto;
    min-width: 0;
}

.ie-pie-legend li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #555555;
}

.ie-pie-legend__dot {
    width: 12px;
    height: 12px;
    border-radius: 2px;
    flex-shrink: 0;
    display: inline-block;
}

/* ----- FLUXOGRAMA (Gráfico 1) -------------------------------- */
.ie-flow-chart {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 10px 0;
}

/* Cada altura da jornada: uma etapa sozinha, ou as opções de uma bifurcação */
.ie-flow-chart__linha {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 10px;
    width: 100%;
}

.ie-flow-chart__linha--bifurca {
    max-width: 620px;
}

.ie-flow-chart__linha--bifurca .ie-flow-chart__step {
    flex: 1 1 0;
    width: auto;
    max-width: none;
    padding-left: 16px;
    padding-right: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ie-flow-chart__step {
    background: var(--fc, #008f8c);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.2;
    padding: 12px 32px;
    border-radius: 50px;
    text-align: center;
    width: 300px;
    max-width: 90%;
}

.ie-flow-chart__connector {
    width: 2px;
    height: 18px;
    background: #cccccc;
    position: relative;
}

.ie-flow-chart__connector::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #cccccc;
}

/* ----- DESTAQUE (highlight box) ---------------------- */
.ie-highlight {
    background: #ebffff;
    padding: 15px;
    border-radius: 14px;
    text-align: left;
}

.ie-highlight__text {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0;
}

.ie-highlight__text strong {
    font-weight: 700;
    color: #008f8c;
}

/* Destaque rico: com título, tags e imagem */
.ie-highlight--rich {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
    text-align: left;
}

.ie-highlight__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: normal;
    color: #008f8c;
    margin: 0;
    text-transform: none;
    text-align: left;
}

.ie-highlight__body {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0;
    text-align: left;
}

.ie-highlight__sub {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-bottom: 0;
    text-align: left;
    width: 100%;
}

.ie-highlight__sub-label {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0;
    text-align: left;
}

.ie-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 5px;
    width: 100%;
}

.ie-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #008f8c;
    color: #ffffff;
    font-family: 'Nunito', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    padding: 5px 10px;
    border-radius: 20px;
    white-space: nowrap;
}

.ie-highlight__image {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 0 14px 14px 14px;
    display: block;
    object-fit: cover;
    margin-top: 10px;
}

/* ----- BULLETS DESTACADOS (pills coloridas) ---------- */
.ie-bullet-list__rotulo {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0 0 10px;
    text-align: left;
}

.ie-bullet-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.ie-bullet-tag {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    background: #008f8c;
    padding: 5px 10px 5px 5px;
    border-radius: 20px;
}

.ie-bullet-tag span {
    font-family: 'Nunito', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    color: #ffffff;
    padding-left: 22px;
    position: relative;
    text-align: left;
}

.ie-bullet-tag span::before {
    content: '•';
    position: absolute;
    left: 6px;
    font-size: 20px;
    line-height: 22px;
}

/* ----- BULLETS COM FUNDO (grupo) -------------------- */
.ie-bullets-group {
    background: #ebebeb;
    border-radius: 14px;
    padding: 15px 15px 20px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.ie-bullets-group__cat {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    justify-content: center;
    background: #008f8c;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    padding: 5px 15px;
    border-radius: 0 1000px 1000px 150px;
}

.ie-bullets-group__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.ie-bullets-group__list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.ie-bullets-group__list li img {
    flex-shrink: 0;
    margin-top: 4px;
    width: 8px;
    height: 15px;
}

.ie-bullets-group__list li span {
    font-family: 'Nunito', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    color: #333333;
    flex: 1 0 0;
    min-width: 0;
    text-align: left;
}

/* ----- TABELA ---------------------------------------- */
.ie-table-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ie-table__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    color: #333333;
    margin: 0;
}

.ie-table-scroll {
    border-radius: 12px;
    overflow: hidden;
}

.ie-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Nunito', sans-serif;
    font-size: 16px;
    line-height: 22px;
    color: #333333;
}

.ie-table thead th {
    background: #009ca6;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 20px;
    padding: 12px 16px;
    text-align: left;
}

.ie-table tbody tr:nth-child(odd) {
    background: #ffffff;
}

.ie-table tbody tr:nth-child(even) {
    background: rgba(0, 156, 166, 0.07);
}

.ie-table tbody td {
    padding: 12px 16px;
    vertical-align: top;
    border-bottom: 1px solid rgba(0, 156, 166, 0.12);
}

.ie-table tbody tr:last-child td {
    border-bottom: none;
}

.ie-table--destaca tbody td:first-child {
    font-weight: 700;
    color: #333333;
}

.ie-table__fonte {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #6b7280;
    margin: 0;
}

@media (max-width: 768px) {
    .ie-table {
        display: block;
    }

    .ie-table thead {
        display: block;
    }

    .ie-table thead tr {
        display: block;
    }

    .ie-table thead th {
        display: none;
    }

    .ie-table thead th:first-child {
        display: block;
    }

    .ie-table tbody {
        display: block;
    }

    .ie-table tbody tr {
        display: block;
        padding: 14px 16px;
        border-bottom: 1px solid rgba(0, 156, 166, 0.15);
    }

    .ie-table tbody tr:last-child {
        border-bottom: none;
    }

    .ie-table tbody td {
        display: block;
        padding: 0;
        border: none;
        font-size: 15px;
        line-height: 21px;
    }

    .ie-table tbody td:first-child {
        font-family: 'Montserrat', sans-serif;
        font-weight: 700;
        font-size: 16px;
        line-height: 22px;
        color: #333333;
        margin-bottom: 6px;
    }

    .ie-table tbody td:not(:first-child) {
        color: #555555;
    }

    .ie-table tbody td.ie-table__cell--labeled {
        margin-top: 8px;
        padding-top: 8px;
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    .ie-table tbody td.ie-table__cell--labeled::before {
        display: block;
        content: attr(data-label) ":";
        font-family: 'Montserrat', sans-serif;
        font-weight: 600;
        font-size: 12px;
        line-height: 16px;
        color: #888888;
        margin-bottom: 2px;
    }
}

/* ----- IMAGEM SOLTA ---------------------------------- */
.ie-figure {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ie-figure__img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
}

/* Complemento da imagem: bem menor que o texto do corpo, pra não competir */
.ie-figure__legenda {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #6b7280;
    text-align: left;
}

/* ----- VÍDEO ----------------------------------------- */

.ie-video {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: 14px;
    overflow: hidden;
    background: #000;
    cursor: pointer;
}

.ie-video__thumb {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ie-video__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    background: rgba(0, 0, 0, 0.55);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, transform 0.2s;
}

.ie-video__play:hover,
.ie-video:hover .ie-video__play {
    background: rgba(200, 0, 0, 0.85);
    transform: translate(-50%, -50%) scale(1.08);
}

.ie-video__play svg {
    width: 26px;
    height: 26px;
    margin-left: 4px;
}

.ie-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ----- CITAÇÃO --------------------------------------- */
.ie-citation {
    background: #ebffff;
    padding: 20px;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.ie-citation__icon {
    width: 43px;
    height: 34px;
    display: block;
    flex-shrink: 0;
}

.ie-citation__text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-style: italic;
    font-size: 20px;
    line-height: 28px;
    color: #333333;
    margin: 0;
    border: none;
    padding: 0;
    background: none;
    text-align: left;
}

.ie-citation__author {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #008f8c;
    font-style: normal;
    text-align: left;
}

/* ----- CARD SAIU NA MÍDIA (compacto) ----------------- */
.ie-media-card {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 24px;
    overflow: hidden;
}

.ie-media-card__hero {
    position: relative;
    height: 120px;
    overflow: hidden;
    border-radius: 24px 24px 0 24px;
    display: flex;
    align-items: center;
}

.ie-media-card__hero-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.ie-media-card__hero-bg img {
    position: absolute;
    left: 0;
    width: 100%;
    height: 203.88%;
    top: -39.94%;
    object-fit: cover;
    max-width: none;
}

.ie-media-card__hero-gradient {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.54));
}

.ie-media-card__hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 20px;
}

.ie-media-card__hero-text {
    flex: 1 0 0;
    min-width: 0;
}

.ie-media-card__hero-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 22px;
    color: #ffffff;
    margin: 0;
    text-align: left;
    text-transform: none;
    line-height: normal;
}

.ie-media-card__hero-btn {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    padding: 5px 20px;
    border: 1px solid #ffffff;
    border-radius: 50px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #ffffff;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.2s;
}

.ie-media-card__hero-btn:hover {
    background: rgba(255, 255, 255, 0.15);
}

.ie-media-card__logos {
    overflow: hidden;
}

.ie-media-card__logos-inner {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 64px;
    width: max-content;
    padding: 24px 30px 16px;
    transition: transform 0.35s ease;
    will-change: transform;
    cursor: grab;
}

.ie-media-card__logos-inner:active {
    cursor: grabbing;
}

.ie-media-card__logos-inner .ep-media__logo-wrap {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.ie-media-card__logos-inner .ep-media__logo-wrap img {
    max-height: 38px;
    max-width: none;
    width: auto;
    height: auto;
    display: block;
    object-fit: contain;
}

.ie-media-card__logos-inner .ep-media__logo-wrap:first-child {
    margin-right: -10px;
}

.ie-media-card__logos-inner .ep-media__logo-wrap:first-child img {
    max-height: 46px;
    max-width: 46px;
}

.ie-media-card__logos-inner .ep-media__logo-wrap:nth-child(5) img {
    height: 38px;
    width: auto;
    max-height: none;
}

.ie-media-card__logos-inner .ep-media__logo-wrap:last-child img {
    max-height: 46px;
    max-width: 62px;
}

/* Dots de navegação do carrossel (mesmo padrão da listagem) */
.ie-media-card .ep-media__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 0 12px;
}

.ie-media-card .ep-media__nav-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #d0d0d0;
    cursor: pointer;
    padding: 0;
    transition: background-color 0.2s, width 0.2s, border-radius 0.2s;
}

.ie-media-card .ep-media__nav-dot--active {
    background: #008f8c;
    width: 24px;
    border-radius: 4px;
}

/* ----- NEWSLETTER: RECEBA NOSSOS CONTEÚDOS ----------- */
.ie-newsletter-section {
    padding: 50px 0 60px;
}

.ie-newsletter {
    display: flex;
    border: 1px solid #cccccc;
    border-radius: 20px;
    overflow: hidden;
}

.ie-newsletter__image {
    flex: 0 0 auto;
    width: 42%;
    position: relative;
    overflow: hidden;
}

.ie-newsletter__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ie-newsletter__form {
    flex: 1 0 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 31px 31px 31px 30px;
    background: #ffffff;
}

.ie-newsletter__inner {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: flex-end;
    width: 100%;
}

.ie-newsletter__desc {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 19px;
    line-height: 22.8px;
    color: #333333;
    margin: 0;
    text-align: left;
    width: 100%;
}

.ie-newsletter__input {
    width: 100%;
    height: 46px;
    border: 1px solid #cccccc;
    border-radius: 8px;
    padding: 0 17px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #333333;
    background: #ffffff;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s;
    -webkit-appearance: none;
    appearance: none;
}

.ie-newsletter__input::placeholder {
    color: #777777;
}

.ie-newsletter__input:focus {
    border-color: #7eb339;
}

.ie-newsletter__btn {
    width: 100%;
    height: 46px;
    background: #7eb339;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 21.6px;
    text-transform: capitalize;
    border: none;
    border-radius: 45px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.ie-newsletter__btn:hover {
    opacity: 0.85;
}

/* ----- AUTOR ----------------------------------------- */
.ie-author {
    border-top: 1px solid #999999;
    padding-top: 61px;
    padding-bottom: 60px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.ie-author__top {
    display: flex;
    align-items: center;
}

.ie-author__date {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 21.6px;
    color: #333333;
}

.ie-author__card {
    display: flex;
    align-items: center;
    gap: 20px;
}

.ie-author__avatar {
    flex-shrink: 0;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 7px solid #3CB8B4;
    overflow: hidden;
    padding: 0;
    box-sizing: border-box;
}

.ie-author__avatar-img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: block;
    object-fit: cover;
}

.ie-author__info {
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-left: 16px;
    border-left: 1px solid #555555;
    padding-top: 12px;
}

.ie-author__name {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 20px;
    color: #000000;
    text-transform: uppercase;
    margin: 0;
    text-align: left;
}

.ie-author__bio {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 20px;
    color: #555555;
    margin: 0;
    text-align: left;
}

.ie-author__btn {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    justify-content: center;
    background: #fd8204;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    padding: 12px 30px;
    border-radius: 20px;
    text-decoration: none;
    transition: opacity 0.2s;
}

.ie-author__btn:hover {
    opacity: 0.85;
}

/* ----- POSTS RELACIONADOS ---------------------------- */
.ie-related {
    border-top: 1px solid #999999;
    padding-top: 61px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.ie-related__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 30px;
    color: #333333;
    margin: 0;
    text-transform: none;
    text-align: left;
}

.ie-related__grid {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding-bottom: 30px;
}

.ie-related__card {
    flex: 1 0 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    text-decoration: none;
    color: inherit;
}

.ie-related__card:hover .ie-related__thumb {
    opacity: 0.85;
}

.ie-related__thumb {
    aspect-ratio: 243 / 149.5;
    border-radius: 14px;
    width: 100%;
    display: block;
    object-fit: cover;
    transition: opacity 0.2s;
}

.ie-related__info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 4px;
}

.ie-related__cat {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 12px;
    line-height: 14.4px;
    color: #002e5a;
    text-transform: uppercase;
}

.ie-related__headline {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 21.6px;
    color: #333333;
    margin: 0;
    text-transform: none;
    text-align: left;
}

/* ----- COMENTÁRIOS ----------------------------------- */
.ie-comments {
    border-top: 1px solid #999999;
    padding-top: 61px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.ie-comments__title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 30px;
    color: #000000;
    margin: 0;
    text-transform: none;
    text-align: left;
}

.ie-comments__form {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-end;
}

.ie-comments__input,
.ie-comments__textarea {
    width: 100%;
    background: #ffffff;
    border: 1px solid #b7b6b6;
    border-radius: 10px;
    padding: 14px 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: normal;
    color: #333333;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s;
    -webkit-appearance: none;
    appearance: none;
}

.ie-comments__input {
    height: 46px;
}

.ie-comments__textarea {
    height: 117px;
    resize: vertical;
    min-height: 80px;
}

.ie-comments__input:focus,
.ie-comments__textarea:focus {
    border-color: #008f8c;
}

.ie-comments__input::placeholder,
.ie-comments__textarea::placeholder {
    color: #777777;
}

.ie-comments__btn {
    background: #fd8204;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 12px;
    line-height: 14.4px;
    text-transform: uppercase;
    padding: 11px 59px 12px;
    border-radius: 20px;
    border: none;
    cursor: pointer;
    min-width: 190px;
    transition: opacity 0.2s;
}

.ie-comments__btn:hover {
    opacity: 0.9;
}

/* ----- SIDEBAR --------------------------------------- */
.ie-sidebar {
    padding-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-self: start;
    /* sticky via JS: body overflow do tema impede CSS position:sticky nativo */
}

/* Ficha técnica */
.ie-ficha-wrap {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.ie-ficha__header {
    background: #ebffff;
    height: 44px;
    padding: 0 10px 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 0 22px 22px 22px;
}

.ie-ficha__header-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    color: #008f8c;
}

.ie-ficha__header-icon {
    width: 32px;
    height: 32px;
    background: #008f8c;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ie-ficha {
    background: #ebebeb;
    border-radius: 14px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ie-ficha__row {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 20px;
    color: #333333;
    margin: 0;
    text-align: left;
}

.ie-ficha__label {
    font-weight: 700;
}

.ie-ficha__label::after {
    content: ':';
    font-weight: 700;
}

.ie-ficha__value {
    font-weight: 400;
}

/* Big numbers */
.ie-bignumbers {
    background: #ebffff;
    border-radius: 14px;
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.ie-bignumber {
    display: flex;
    align-items: center;
    gap: 15px;
}

.ie-bignumber__value {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: normal;
    color: #008f8c;
    width: 90px;
    flex-shrink: 0;
    /* Uma linha só: o JS (estudos-pesquisas.js) reduz a fonte se o valor passar da largura */
    white-space: nowrap;
    overflow: hidden;
}

.ie-bignumber__num {
    font-style: normal;
}

.ie-bignumber__word {
    font-weight: 600;
}

.ie-bignumber__text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #333333;
    flex: 1 0 0;
    min-width: 0;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

/* Sumário */
.ie-sumario {
    overflow: visible;
}

.ie-share-btn {
    display: none;
}

.ie-sumario__btn {
    -webkit-appearance: none;
    appearance: none;
    background: #005c5a;
    height: 44px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    position: relative;
    width: 100%;
    border: none;
    cursor: pointer;
    /* TL reto; direita semicírculo; BL arco circular simétrico (máx. = metade da altura) */
    border-radius: 0 22px 22px 22px;
    text-align: left;
}

.ie-sumario__btn-label {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 17px;
    color: #ffffff;
}

.ie-sumario__btn-icon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 44px;
    display: block;
    flex-shrink: 0;
}

.ie-sumario__list {
    list-style: none;
    margin: 0;
    padding: 0 0 12px;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    counter-reset: sumario;
    overflow-y: auto;
    max-height: 150px;
    scrollbar-width: thin;
    scrollbar-color: #d0d0d0 transparent;
}

.ie-sumario__list::-webkit-scrollbar {
    width: 4px;
}

.ie-sumario__list::-webkit-scrollbar-track {
    background: transparent;
}

.ie-sumario__list::-webkit-scrollbar-thumb {
    background: #d0d0d0;
    border-radius: 4px;
}

.ie-sumario__list li {
    counter-increment: sumario;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

.ie-sumario__list li:last-child {
    border-bottom: none;
}

.ie-sumario__list a {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 8px 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #333333;
    text-decoration: none;
    text-align: left;
    transition: color 0.2s;
}

.ie-sumario__list a::before {
    content: counter(sumario) ".";
    font-weight: 700;
    color: #008f8c;
    flex-shrink: 0;
    min-width: 18px;
}

.ie-sumario__list a:hover {
    color: #008f8c;
}

#ie-sumario-list {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    visibility: hidden;
    transition: grid-template-rows 0.35s ease, opacity 0.25s ease, visibility 0s 0.35s;
}

#ie-sumario-list > .ie-sumario__list {
    min-height: 0;
}

#ie-sumario-list.ie-sumario__nav--open {
    grid-template-rows: 1fr;
    opacity: 1;
    visibility: visible;
    transition: grid-template-rows 0.35s ease, opacity 0.25s ease, visibility 0s 0s;
}


/* =====================================================
   MACBOOK AIR M2 — max-width: 1700px
   ===================================================== */
@media (max-width: 1700px) {
    /* Hero bg */
    .ie-hero-bg {
        height: 578px;
    }

    /* Hero text */
    .ie-hero-text {
        min-height: 578px;
        padding-bottom: 42px;
    }

    .ie-hero__title {
        font-size: 28px;
    }

    .ie-hero__subtitle {
        font-size: 16px;
    }

    /* Grid */
    .ie-grid {
        grid-template-columns: minmax(620px, 1fr) 360px;
        gap: 32px;
        padding-bottom: 60px;
    }

    /* Body content */
    .ie-body-content {
        padding-top: 42px;
    }

    /* Section header */
    .ie-section-header__text {
        font-size: 20px;
    }

    .ie-section-header--resumo .ie-section-header__text {
        font-size: 18px;
    }

    /* Text */
    .ie-section-text p {
        font-size: 16px;
        line-height: 22px;
        margin-bottom: 16px;
    }

    .ie-section-img {
        height: 340px;
    }

    /* Subsection title */
    .ie-subsection__title {
        font-size: 18px;
    }

    .ie-subsection__title--h4 {
        font-size: 16px;
    }

    /* Tag */
    .ie-tag {
        font-size: 16px;
    }

    /* Highlight */
    .ie-highlight__title {
        font-size: 18px;
    }

    .ie-highlight__body,
    .ie-highlight__text {
        font-size: 16px;
    }

    /* Bullets */
    .ie-bullet-tag span {
        font-size: 16px;
    }

    .ie-bullets-group__list li span {
        font-size: 16px;
    }

    /* Citation */
    .ie-citation__text {
        font-size: 18px;
        line-height: 26px;
    }

    /* Media card */
    .ie-media-card__hero-btn {
        font-size: 14px;
        height: 40px;
    }

    /* Author */
    .ie-author__avatar {
        width: 120px;
        height: 120px;
    }

    .ie-author__bio {
        font-size: 15px;
    }

    /* Related */
    .ie-related__headline {
        font-size: 16px;
    }

    /* Sidebar */
    .ie-bignumber__value {
        font-size: 32px;
        width: 96px;
    }
}


/* =====================================================
   TABLET — max-width: 1024px
   ===================================================== */
@media (max-width: 1024px) {
    .ie-chart__body {
        flex-direction: column;
        align-items: stretch;
    }

    .ie-chart__body .ie-chart__img--doughnut {
        flex: none;
        width: 100%;
    }
}

/* =====================================================
   MOBILE — max-width: 768px
   ===================================================== */
@media (max-width: 768px) {
    /* Hero bg */
    .ie-hero-bg {
        height: 660px;
    }

    /* Hero text */
    .ie-hero-text {
        min-height: 660px;
        padding-bottom: 28px;
    }

    .ie-hero__title {
        font-size: 24px;
        overflow-wrap: break-word;
        word-break: break-word;
    }

    .ie-hero__subtitle {
        font-size: 15px;
        line-height: 22px;
        overflow-wrap: break-word;
    }

    .ie-hero__date,
    .ie-hero__author {
        font-size: 13px;
    }

    /* Grid: coluna única — hero → sidebar → body — restaura padding horizontal */
    .ie-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        column-gap: 0;
        padding: 0 15px 40px;
    }

    .ie-hero-text  { grid-column: 1; grid-row: auto; order: 1; }
    .ie-sidebar    { grid-column: 1; grid-row: auto; order: 2; padding-top: 20px; }
    .ie-body-content { grid-column: 1; grid-row: auto; order: 3; padding-top: 28px; gap: 36px; }

    /* Ficha técnica mobile */
    .ie-ficha__row {
        font-size: 14px;
        line-height: 18px;
    }

    /* Section header */
    .ie-section-header__text {
        font-size: 18px;
    }

    /* Text */
    /* Justificado só onde a linha é larga: no celular a coluna é estreita demais
       e o texto abre buracos entre as palavras. */
    .ie-section-text p,
    .ie-section-text li {
        text-align: left;
    }

    .ie-section-text p {
        font-size: 15px;
        line-height: 22px;
    }

    .ie-section-text li {
        font-size: 15px;
        line-height: 22px;
    }

    .ie-section-img {
        height: 220px;
    }

    .ie-subsection__title {
        font-size: 17px;
    }

    .ie-subsection__title--h4 {
        font-size: 15px;
    }

    /* Chart */
    .ie-chart__img {
        height: 220px;
    }

    /* A jornada cresce com o número de etapas: presa na altura fixa acima, ela
       transbordava pros dois lados e passava por cima do título do bloco. */
    .ie-chart__img--flow {
        height: auto;
        min-height: 0;
    }

    .ie-chart__img--pie {
        height: 420px;
    }

    .ie-chart__img--doughnut {
        height: 260px;
    }

    /* Mapa Brasil */
    .ie-map-outer {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
        min-height: 0;
        height: auto;
    }

    .ie-brazil-map {
        width: 75%;
        max-width: 280px;
        height: auto;
        aspect-ratio: 323 / 320;
        flex-shrink: 1;
    }

    .ie-brazil-map__label {
        font-size: 13px;
    }

    .ie-map-legend {
        align-self: stretch;
        align-items: flex-start;
        padding-left: 20px;
    }

    .ie-pie-legend {
        padding-left: 20px;
    }

    .ie-map-legend__item {
        white-space: normal;
    }

    .ie-figure__legenda {
        font-size: 12px;
        line-height: 16px;
    }

    .ie-flow-chart__linha--bifurca {
        gap: 6px;
    }

    .ie-flow-chart__linha--bifurca .ie-flow-chart__step {
        padding: 10px 10px;
        font-size: 13px;
        line-height: 1.25;
    }

    /* Tags */
    .ie-tag {
        font-size: 15px;
    }

    /* Bullets */
    .ie-bullet-tag span,
    .ie-bullets-group__list li span {
        font-size: 15px;
    }

    /* Citation */
    .ie-citation__text {
        font-size: 17px;
        line-height: 24px;
    }

    /* Media card */
    .ie-media-card__logos-inner {
        gap: 40px;
        padding: 18px 15px 14px;
    }

    .ie-media-card__logos-inner .ep-media__logo-wrap img {
        max-height: 30px;
    }

    .ie-media-card__logos-inner .ep-media__logo-wrap:first-child img {
        max-height: 42px;
        max-width: 42px;
    }

    .ie-media-card__logos-inner .ep-media__logo-wrap:nth-child(5) img {
        height: 30px;
    }

    .ie-media-card__logos-inner .ep-media__logo-wrap:last-child img {
        max-height: 44px;
        max-width: 62px;
    }

    /* Banner */
    .ie-banner {
        height: 90px;
    }

    /* Author */
    .ie-author {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .ie-author__card {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .ie-author__avatar {
        width: 80px;
        height: 80px;
    }

    .ie-author__info {
        padding-left: 0;
        border-left: none;
        border-top: 1px solid #555555;
        padding-top: 12px;
    }

    .ie-author__bio {
        font-size: 14px;
    }

    /* Related */
    .ie-related {
        padding-top: 40px;
    }

    .ie-related__grid {
        flex-direction: column;
        gap: 24px;
    }

    .ie-related__headline {
        font-size: 16px;
    }

    /* Sidebar cards */
    .ie-bignumber__value {
        font-size: 28px;
        width: 84px;
    }

    /* Newsletter */
    .ie-newsletter {
        flex-direction: column;
        border-radius: 14px;
    }

    .ie-newsletter__image {
        width: 100%;
        height: 220px;
        border-radius: 14px 14px 0 0;
    }

    .ie-newsletter__form {
        border-radius: 0 0 14px 14px;
        padding: 24px 20px;
    }

    .ie-newsletter__desc {
        font-size: 16px;
    }

    /* Barra inferior fixa: sumário + compartilhar */
    .ie-mobile-bar {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 200;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        padding: 50px 15px 15px;
        background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.95) 50%);
        pointer-events: none;
        transition: transform 0.3s ease;
    }

    .ie-mobile-bar--hidden {
        transform: translateY(100%);
    }

    .ie-mobile-bar > * {
        pointer-events: auto;
    }

    /* Sumário dentro da barra: posicionamento estático, expande para cima */
    .ie-sumario {
        position: static;
        width: 299px;
        display: flex;
        flex-direction: column-reverse;
        overflow: visible;
    }

    .ie-sumario__btn {
        width: 100%;
    }

    .ie-sumario__list {
        border-radius: 14px 14px 0 0;
        box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.12);
    }

    /* Banner — oculto no mobile (placeholder vazio geraria espaço morto) */
    .ie-banner {
        display: none;
    }

    /* Botão compartilhar */
    .ie-share-btn {
        display: flex;
        width: 46px;
        height: 46px;
        background: #7eb339;
        border: none;
        border-radius: 50%;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        flex-shrink: 0;
    }
}

.ie-body-content .google-preferred-source-wrap {
    margin: 0;
}
