@font-face {
    font-family: "Rubik News";
    src: url("../../fonts/Rubik-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: 300;
    font-display: swap;
}

.news-article {
    --article-blue: #0051ff;
    width: 100%;
    min-width: 0;
    margin: 0;
    background: #fff;
    color: #00142a;
    font: 400 16px/1.2 "Rubik News", "Rubik", sans-serif;
}

.news-article *, .news-article *::before, .news-article *::after { box-sizing: border-box; }
.news-article h1, .news-article h2, .news-article h3, .news-article p { font-family: inherit; text-align: left; }
.news-article h1, .news-article h2, .news-article h3 { text-transform: none; }
.news-article a:focus-visible, .news-article button:focus-visible, .news-article summary:focus-visible {
    outline: 3px solid var(--article-blue);
    outline-offset: 4px;
}
.news-article__inner { width: calc(100% - 52px); max-width: 1242px; margin-inline: auto; }
.news-article__breadcrumb { background: #eff6fd; }
.news-article__breadcrumb-row {
    position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 42px;
}
.news-article__breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 18px; margin: 0; padding: 11px 0; list-style: none; }
.news-article__breadcrumb li { min-width: 0; }
.news-article__breadcrumb li + li { display: flex; align-items: center; gap: 18px; }
.news-article__breadcrumb li + li::before {
    content: ""; width: 6px; height: 6px; border-top: 1px solid currentColor;
    border-right: 1px solid currentColor; transform: rotate(45deg); color: #00142a; flex-shrink: 0;
}
.news-article__breadcrumb a { color: #0067d5; font-size: 16px; text-decoration: none; overflow-wrap: anywhere; }
.news-article__breadcrumb a:hover { text-decoration: underline; }
.news-article summary::-webkit-details-marker { display: none; }
.news-article__progress { position: sticky; top: 0; z-index: 2; width: 100%; height: 9px; background: #dae0e6; overflow: hidden; pointer-events: none; }
.news-article__progress > span { display: block; width: 0; height: 100%; border-radius: 0 30px 30px 0; background: #007bff; }
.news-article__layout {
    display: grid; grid-template-columns: minmax(0, 685fr) minmax(0, 462fr);
    align-items: start; gap: clamp(32px, 5vw, 95px); padding-top: 32px;
}
.news-article__main { min-width: 0; }
.news-article .news-author__link { color: inherit; text-decoration: none; }
.news-article .news-author__link:hover { text-decoration: underline; }
.news-article .news-author__link:focus-visible { outline: 2px solid #0051ff; outline-offset: 3px; }
.news-article .news-author__initial { display: inline-grid; place-items: center; border-radius: 50%; background: #e5f0fc; color: #004793; font-size: 24px; }
.news-article__sidebar { min-width: 0; align-self: stretch; }
.news-article .news-article__sidebar-promotion { --promotion-ratio: 462 / 349; margin-bottom: 32px; background: #0a1e39; }
.news-article__header { display: flex; flex-direction: column; gap: 24px; margin-bottom: 24px; }
.news-article__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.news-article__tags a { padding: 4px 8px; border-radius: 4px; background: #007bff33; color: #004793; font-size: 16px; text-decoration: none; text-transform: uppercase; }
.news-article__tags a:nth-child(2n) { background: #fb00ff33; color: #3d0040; }
.news-article__tags a:hover { text-decoration: underline; }
.news-article__intro h1 { margin: 0; color: #081c37; font-size: 35.345px; font-weight: 600; line-height: 1.15; overflow-wrap: anywhere; }
.news-article__intro > p { margin: 16px 0 0; font-size: 16px; line-height: 1.45; }
.news-article__byline {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
    gap: 16px; padding: 19px 0; border-block: 1px solid #00000040;
}
.news-article__author { display: flex; flex: 1 1 240px; align-items: center; gap: 8px; min-width: 0; }
.news-article__author > div { min-width: 0; }
.news-article__avatar { display: block; flex-shrink: 0; width: 35px; height: 35px; border-radius: 50%; background: #191717; object-fit: cover; }
.news-article__avatar--fasul { padding: 4px; background: #fff; object-fit: contain; object-position: center; }
.news-article__author p { margin: 0; font-size: 16px; line-height: 1.2; }
.news-article__author .news-article__publication-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 4px; margin-top: 3px; color: rgb(0 20 42 / 75%); font-size: 14px; font-weight: 300; line-height: 1.2; }
.news-article__publication-meta time { display: inline; color: inherit; font: inherit; }
.news-article__reading-time { white-space: nowrap; }
.news-article__social { display: flex; align-items: center; gap: 22.63px; flex-shrink: 0; }
.news-article__social a, .news-article__social picture, .news-article__social img { display: block; }
.news-article__social img { width: 33.5789px; height: 33.5789px; }
.news-article__content { color: #00142a; font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; }
.news-article__content strong { color: #000; font-weight: 600; }
.news-article__content p { margin: 24px 0; font-size: inherit; line-height: inherit; }
.news-article__content h2, .news-article__content h3, .news-article__content h4 { color: #081c37; font-weight: 400; line-height: 1.45; scroll-margin-top: 28px; }
.news-article__content h2 { margin: 24px 0; font-size: 24px; }
.news-article__content h3 { margin: 24px 0 14px; font-size: 20px; }
.news-article__content h4 { margin: 22px 0 12px; font-size: 18px; }
.news-article__content > :first-child { margin-top: 0; }
.news-article__content [data-news-topic-anchor] { scroll-margin-top: 28px; }
.news-article__content a { color: #0067d5; font-weight: 600; text-decoration: underline; text-underline-offset: .15em; }
.news-article__content a:hover { color: #0051ff; text-decoration: underline; }
/* Reserva espaço para os marcadores; as linhas seguintes alinham com o texto. */
.news-article__content ul, .news-article__content ol { margin: 0 0 24px; padding-left: 1.75em; list-style-position: outside; font-size: 18px; }
.news-article__content li + li { margin-top: 4px; }
.news-article__content blockquote { margin: 24px 0; padding: 8px 20px; border-left: 4px solid #007bff; background: #eff6fd; }
.news-article__content .news-article__quick-answer { display: grid; gap: 8px; margin-block: 24px; padding: 16px; border-left: 4px solid #007bff; border-radius: 12px; background: rgb(0 123 255 / 5%); }
.news-article__content .news-article__quick-answer > * { margin: 0; }
.news-article__content .news-article__quick-answer > .news-article__quick-answer-label { margin: 0; color: inherit; font-size: 16px; font-weight: 300; line-height: 1.3; text-transform: none; }
.news-article__content .news-article__quick-answer > ul, .news-article__content .news-article__quick-answer > ol { padding: 0; font-size: inherit; line-height: inherit; }
.news-article__content figure { max-width: 100%; margin: 24px 0; }
.news-article__content img { display: block; max-width: 100%; height: auto; border-radius: 0; }
.news-article__content .news-article__cover img { width: 100%; }
.news-article__content .news-article__cover > p { margin: 0; }
.news-article__content figcaption { margin-top: 8px; font-size: 14px; font-weight: 300; }
.news-article__content pre { max-width: 100%; overflow: auto; white-space: pre; }
.news-article__promotion { --promotion-ratio: 685 / 121; margin: 24px 0; }
.news-article__faq { margin-block: 24px; }
.news-article__content .news-article__faq, .news-article__content .news-article__faq * { text-align: left !important; }
.news-article__content .news-article__faq > h2 { margin: 0 0 8px; font-size: 28px; font-weight: 500; line-height: 1.15; }
.news-article__faq-intro > :last-child { margin-bottom: 24px; }
.news-article__faq-list { display: grid; gap: 8px; }
.news-article__faq-item { min-width: 0; border-radius: 12px; background: #e6f0fb; }
.news-article__faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px; list-style: none; cursor: pointer; }
.news-article__content .news-article__faq-item summary h3 { flex: 1; min-width: 0; margin: 0; color: #000; font-size: 18px; font-weight: 400; line-height: 24px; }
.news-article__faq-item summary img { display: block; flex: 0 0 auto; border-radius: 0; }
.news-article__faq-item[open] summary img { transform: rotate(180deg); }
.news-article__faq-answer { padding: 0 24px 24px; }
.news-article__faq-answer > :last-child { margin-bottom: 0; }
.news-article__toc {
    position: sticky; top: 24px; min-width: 0; max-height: calc(100dvh - 48px);
    border: 1px solid #00000021; border-radius: 16px; padding: 20px; background: #fff;
}
.news-article__toc[open] { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 20px; }
/* O conteudo nativo de details nao deve agrupar lista e acao numa unica linha do grid. */
.news-article__toc[open]::details-content { display: contents; }
.news-article__toc summary { display: flex; align-items: center; list-style: none; color: #081737; cursor: pointer; }
.news-article__toc-heading { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 500; }
.news-article__toc-heading img, .news-article__toc-mobile-label, .news-article__toc-current, .news-article__toc-close { display: none; }
.news-article__toc nav { min-height: 0; max-height: calc(100dvh - 200px); margin: 0; overflow: auto; scrollbar-width: thin; }
.news-article__toc ol { margin: 0; padding: 0; border-left: 6px solid #08173729; list-style: none; }
.news-article__toc li { margin: 0; }
.news-article__toc a { position: relative; display: block; padding: 10px 0 10px 15px; color: #000; font-size: 16px; font-weight: 300; line-height: 1.2; text-decoration: none; overflow-wrap: anywhere; }
.news-article__toc a:hover { color: #0051ff; text-decoration: underline; }
.news-article__toc a[aria-current="location"] { color: #0051ff; font-weight: 500; text-decoration: none; }
.news-article__toc a[aria-current="location"]::before { content: ""; position: absolute; top: 0; bottom: 0; left: -6px; width: 6px; border-radius: 6px; background: #0051ff; }
.news-article__toc a.news-article__topic--nested { padding-left: 20px; }
.news-article-js .news-article__toc:not([data-news-toc-expanded]) [data-news-topic-extra] { display: none; }
.news-article__toc-more { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; margin: 0; padding: 0 25px; border: 0; background: transparent; color: #0051ff; font: 700 18px/1.1 "Rubik News", "Rubik", sans-serif; text-transform: uppercase; cursor: pointer; }
.news-article__toc-more img { display: block; transform: rotate(-90deg); }
.news-article__toc[data-news-toc-expanded] .news-article__toc-more img { transform: rotate(90deg); }
/* Fallback sem margens para navegadores antigos sem ::details-content. */
@supports not selector(::details-content) {
    .news-article__toc[open] { display: block; }
    .news-article__toc[open] summary { padding-bottom: 20px; }
    .news-article__toc-more { padding-top: 20px; }
}
.news-article__author-card {
    display: flex; align-items: center; justify-content: space-between; gap: 20px;
    width: 100%; margin-top: 24px;
    padding: 14px; border-radius: 12px; background: #0067d51a;
}
.news-article__author-card-person { display: flex; align-items: center; gap: 20px; min-width: 0; }
.news-article__author-card .news-article__avatar { width: 105px; height: 105px; border-radius: 9.906px; }
.news-article__author-card .news-article__avatar.news-article__avatar--fasul { padding: 12px; border-radius: 50%; }
.news-article__author-card p { margin: 0 0 2px; font-size: 14px; font-weight: 300; text-transform: uppercase; }
.news-article__author-card h2 { margin: 0; font-size: 22px; font-weight: 400; line-height: 1.2; }
.news-article__author-card > a { flex-shrink: 0; padding: 12px; border: 1px solid #0051ff80; border-radius: 8px; color: #0051ff; font-size: 16px; line-height: 1.2; text-align: center; text-decoration: none; }
.news-article__author-card > a:hover { background: #dceafe; text-decoration: underline; }
.news-article__related { margin-top: 45px; padding: 24px 0 32px; border-top: 1px solid #0003; background: #fff; }
.news-home.news-article__related .news-home__section-title { margin-bottom: 24px; text-transform: uppercase; }
.news-article__related .news-home__tag { text-transform: uppercase; }
.news-article__related .news-home__meta { flex-wrap: wrap; }
.news-article__related .news-home__meta time { color: rgb(0 0 0 / 50%); }
.news-article__related .news-home__cover { border-radius: 8px; }
.news-article__related .news-home__card-title { min-height: 2.6em; font-size: 16px; line-height: 1.3; }
.news-article__related .news-home__excerpt { min-height: 2.6em; font-size: 14px; line-height: 1.3; }
.news-article__related .news-home__card-title, .news-article__related .news-home__excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.news-article-js .news-article__related .news-home__initially-hidden, .news-article [hidden] { display: none !important; }

@media (max-width: 1024px) {
    .news-article__breadcrumb-row { min-height: 32px; }
    .news-article__breadcrumb a { font-size: 12px; text-decoration: underline; }
    .news-article__breadcrumb ol { gap: 4px 14px; padding-block: 0; }
    .news-article__breadcrumb li + li { gap: 14px; }
    .news-article__layout { display: block; padding-top: 16px; }
    .news-article__sidebar { display: contents; }
    .news-article .news-article__sidebar-promotion { display: none; }
    .news-article__promotion { --promotion-ratio: 513 / 159; }
    .news-article__header { gap: 16px; }
    .news-article__tags a { font-size: 16px; line-height: 1.1; text-transform: uppercase; }
    .news-article__intro h1 { font-size: 24px; line-height: 1.1; }
    .news-article__intro > p { display: block; margin-top: 12px; overflow: visible; }
    .news-article__content ul, .news-article__content ol { margin-bottom: 16px; }
    .news-article__content ul, .news-article__content ol { font-size: 16px; }
    .news-article__content h2 { font-size: 24px; }
    .news-article__content .news-article__quick-answer { border-left-width: 3px; }
    .news-article__header { margin-bottom: 16px; }
    .news-article__faq { margin-block: 16px; }
    .news-article__content .news-article__faq > h2 { margin-bottom: 16px; }
    .news-article__faq-answer > :last-child { margin-bottom: 0; }
    .news-article__toc {
        position: fixed; top: auto; right: 0; bottom: 0; left: 0; z-index: 1035;
        max-height: 70dvh; padding: 20px 20px calc(20px + env(safe-area-inset-bottom, 0px));
        border-radius: 16px 16px 0 0; box-shadow: 0 -3px 16px #081c3710;
    }
    .news-article__toc:not([open]) { min-height: 88px; border: 0; border-radius: 0; background: #eff6fd; }
    .news-article__toc summary { min-height: 40px; gap: 14px; }
    .news-article__toc-heading { flex-shrink: 0; color: #004793; }
    .news-article__toc-heading img { display: block; width: 24px; height: 24px; }
    .news-article__toc-mobile-label { display: inline; }
    .news-article__toc-desktop-label { display: none; }
    .news-article__toc-current { display: -webkit-box; flex: 1; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #000c19; font-size: 16px; line-height: 1.25; }
    .news-article__toc[open] summary { justify-content: space-between; min-height: 22px; }
    .news-article__toc[open] .news-article__toc-desktop-label { display: inline; color: #081737; }
    .news-article__toc[open] .news-article__toc-mobile-label, .news-article__toc[open] .news-article__toc-heading img, .news-article__toc[open] .news-article__toc-current { display: none; }
    .news-article__toc[open] .news-article__toc-close { display: inline; color: #0051ff; font-size: 14px; text-decoration: underline; }
    .news-article__toc nav { max-height: calc(70dvh - 84px - env(safe-area-inset-bottom, 0px)); }
    .news-article__toc a { color: #000; }
    .news-article__toc a[aria-current="location"] { color: #0051ff; }
    .news-article-js .news-article__toc:not([data-news-toc-expanded]) [data-news-topic-extra] { display: list-item; }
    .news-article__toc-more { display: none; }
    .news-article__author-card { width: 100%; margin-top: 16px; }
    .news-article__related { margin-top: 16px; padding-bottom: 24px; }
    .news-article__related .news-home__card-title { min-height: 2.4em; font-size: 20px; line-height: 1.2; }
    .news-article__related .news-home__excerpt { min-height: 2.4em; font-size: 16px; line-height: 1.2; }
    .fasul-news-document--article-index { padding-bottom: calc(var(--news-toc-height, 88px) + env(safe-area-inset-bottom, 0px)); }
    .fasul-news-document--article-index .floaterWpp__button { bottom: calc(var(--news-toc-height, 88px) + 20px); }
    .fasul-news-document--article-index .floaterWpp__canais-digitais_options { bottom: calc(var(--news-toc-height, 88px) + 95px); }
}

@media (max-width: 768px) {
    .news-article__author-card { flex-direction: column; align-items: stretch; gap: 14px; }
    .news-article__author-card-person { gap: 16px; }
    .news-article__author-card .news-article__avatar { width: 100px; height: 100px; border-radius: 9.434px; }
    .news-article__author-card p { font-size: 16px; }
    .news-article__author-card h2 { font-size: 26px; overflow-wrap: anywhere; }
    .news-article__author-card > a { padding: 8px 12px; border-radius: 6px; }
    .news-article__related .news-home__section-title { font-size: 24px; }
}

@media (max-width: 360px) {
    .news-article__author-card .news-article__avatar { width: 80px; height: 80px; }
    .news-article__author-card h2 { font-size: 22px; }
}

.news-article__key-question { font-weight: 600; }
.news-article__anchor-alias { display: block; height: 0; scroll-margin-top: 28px; }
.news-article__content .fasul-news__table-scroll { position: relative; }
@media (max-width: 550px) {
    .news-article .news-article__sidebar-promotion[data-news-sidebar-inline] { display: block; width: 100%; max-width: none; margin: 24px auto; }
}
.news-article__content .news-article__table-hint { margin: 8px 0 0; color: #33475c; font-size: 14px; }
.news-article__content caption { caption-side: top; color: #00142a; font-weight: 600; text-align: left; }
.news-article__content th { font-weight: 600; }
@media (max-width: 1024px) {
    .fasul-news-document--article-index .floaterWpp__canais-digitais_options { max-height: calc(100dvh - var(--news-toc-height, 88px) - 110px); overflow-y: auto; }
}
