/* Identidade De Frente com a Notícia: azul-marinho, laranja e branco. */
:root {
  --brand-navy: #0c1c2b;
  --brand-orange: #fc6612;
  --accent: #16456b;
  --accent-hover: #0c2f4d;
}
.portal-defrente .portal-header-bar {
  background: #fff !important;
  color: var(--brand-navy);
  border-top: 0;
  border-bottom: 0;
}
.portal-defrente .portal-menu-left,
.portal-defrente .portal-search-btn { color: var(--brand-navy); }
.portal-defrente .portal-menu-left {
  color: #0c1c2b;
  background: transparent;
  padding: 4px 14px 4px 4px;
}
.portal-defrente .portal-menu-left .portal-menu-label { color: #0c1c2b; opacity: 1; font-family: 'Inter', Arial, sans-serif; font-weight: 400; }
.portal-defrente .portal-menu-left .portal-menu-glyph { color: #0c1c2b; background: transparent; }
.portal-defrente .portal-menu-glyph,
.portal-defrente .portal-menu-left:hover,
.portal-defrente .portal-menu-left:active { background: transparent; }
.portal-defrente .portal-menu-left:focus-visible { outline-color: var(--accent); }
.portal-defrente .portal-clima-chip {
  color: var(--brand-navy);
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 4px 6px;
  box-shadow: none;
}
.portal-defrente .portal-clima-chip:hover { color: var(--accent); background: transparent; }
.weather-scene { display: block; flex-shrink: 0; overflow: visible; }
.weather-scene > * { display: none; }
.weather-scene:is(.is-sun, .is-partly):not(.is-night) .weather-sun,
.weather-scene.is-night .weather-moon,
.weather-scene:is(.is-cloud, .is-partly, .is-rain, .is-storm, .is-snow, .is-fog) .weather-cloud,
.weather-scene:is(.is-rain, .is-storm) .weather-rain,
.weather-scene.is-storm .weather-lightning,
.weather-scene.is-snow .weather-snow,
.weather-scene.is-fog .weather-fog { display: block; }
.weather-scene.is-cloud .weather-cloud-back { display: block; animation: weather-cloud-drift 6s ease-in-out infinite reverse; }
.weather-scene.is-cloud .weather-cloud path { fill: #c0cfdd; stroke: #526b82; }
.weather-scene.is-partly .weather-sun,
.weather-scene.is-partly .weather-moon { transform: translate(-7px, -8px); }
.portal-clima-details { display: flex; flex-direction: column; gap: 1px; text-align: left; line-height: 1.2; }
.portal-defrente .portal-clima-condicao { color: #64748b; font-size: .67rem; font-weight: 400; }
.weather-rays { transform-origin: 26px 25px; animation: weather-sun-turn 18s linear infinite; }
.weather-cloud { animation: weather-cloud-drift 4s ease-in-out infinite; }
.weather-rain path { animation: weather-rain-fall 1s linear infinite; }
.weather-rain path:nth-child(2) { animation-delay: -.33s; }
.weather-rain path:nth-child(3) { animation-delay: -.66s; }
.weather-lightning { animation: weather-storm-flash 3s linear infinite; }
.weather-snow circle { animation: weather-snow-fall 2.5s ease-in-out infinite; }
.weather-snow circle:nth-child(2) { animation-delay: -.8s; }
.weather-snow circle:nth-child(3) { animation-delay: -1.6s; }
.weather-fog { animation: weather-cloud-drift 5s ease-in-out infinite; }
.weather-moon { animation: weather-moon-glow 4s ease-in-out infinite; }
@keyframes weather-sun-turn { to { transform: rotate(360deg); } }
@keyframes weather-cloud-drift { 0%,100% { transform: translateX(-2px); } 50% { transform: translateX(2px); } }
@keyframes weather-rain-fall { from { transform: translate(1px,-3px); opacity: 0; } 25% { opacity: 1; } to { transform: translate(-2px,5px); opacity: 0; } }
@keyframes weather-storm-flash { 0%,44%,54%,100% { opacity: .15; } 46%,50% { opacity: 1; } }
@keyframes weather-snow-fall { from { transform: translate(-1px,-2px); opacity: 0; } 30% { opacity: 1; } to { transform: translate(2px,6px); opacity: 0; } }
@keyframes weather-moon-glow { 0%,100% { opacity: .65; } 50% { opacity: 1; } }
.portal-defrente .portal-clima-temp { font-size: 1.05rem; font-weight: 700; }
.portal-defrente .portal-clima-cidade { color: #526478; }
.portal-defrente .portal-clima-chip:focus-visible { outline: 2px solid var(--brand-orange); outline-offset: 4px; border-radius: 4px; }
@media (prefers-reduced-motion: reduce) {
  .weather-scene * { animation: none !important; }
}
.portal-defrente .portal-header-inner { padding-block: 14px; }
.portal-defrente .portal-top-row { min-height: 70px; }
.portal-defrente .portal-logo-img { height: 62px; max-width: 150px; width: auto; background: transparent; border-radius: 0; padding: 0; }
.portal-defrente .portal-cats-row { background: #f5f7f9; }
body.portal-white.portal-defrente .portal-latest-bar {
  min-height: 54px;
  padding: 6px 20px 6px 6px;
  gap: 20px;
  border: 0;
  border-radius: 999px;
  background: #f1f5f9;
  box-shadow: none;
}
body.portal-white.portal-defrente .portal-latest-pill {
  align-self: center;
  min-height: 42px;
  padding: 11px 20px;
  border: 0;
  border-radius: 999px;
  background: var(--brand-orange);
  color: #fff;
  box-shadow: none;
  text-transform: none;
  letter-spacing: 0;
  font-size: .8rem;
}
body.portal-white.portal-defrente .portal-latest-item::after {
  content: '';
  width: 2px;
  height: 18px;
  flex-shrink: 0;
  margin-left: 24px;
  border-radius: 999px;
  background: linear-gradient(180deg, transparent, #fc661299, transparent);
  transform: rotate(18deg);
}
body.portal-white.portal-defrente .portal-latest-group { gap: 24px; padding-right: 24px; }
body.portal-white.portal-defrente .portal-latest-pill[aria-pressed="true"] { background: var(--brand-orange); }
@media (max-width: 575px) {
  body.portal-white.portal-defrente .portal-latest-bar { padding: 5px 12px 5px 5px; gap: 12px; min-height: 46px; }
  body.portal-white.portal-defrente .portal-latest-pill { padding: 9px 13px; min-height: 36px; font-size: .7rem; }
}
.portal-defrente .site-footer { background: var(--brand-navy); border-top: 4px solid var(--brand-orange); }
.portal-defrente .footer-v2-base { background: #08131e; }
.portal-defrente .footer-col-logo { width: 180px; max-width: 100%; height: auto; max-height: 100px; object-fit: contain; background: #fff; border-radius: 12px; padding: 8px; }
.portal-defrente .footer-v2-titulo { color: #fff; }
.portal-defrente .footer-v2-base-inner { padding-bottom: 22px; }
.portal-defrente .portal-search-input:focus { outline-color: var(--brand-orange); }
.portal-defrente .portal-cats-row {
  margin: 0;
  padding: 0;
  background: #fff;
  border-top: 0;
  border-bottom: 1px solid #e4e9ee;
}
.portal-defrente .portal-cats-nav {
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 26px;
  overflow: visible;
  padding: 0;
}
.portal-defrente .portal-cat-link {
  display: inline-flex;
  align-items: center;
  min-height: 54px;
  padding: 12px 0;
  border-radius: 0;
  border-bottom: 3px solid transparent;
  font-size: .94rem;
  font-weight: 500;
  color: var(--brand-navy);
}
.portal-defrente .portal-cat-link:hover,
.portal-defrente .portal-cat-link-active {
  color: var(--cat-color, var(--accent));
  border-bottom-color: var(--cat-color, var(--brand-orange));
}
.portal-defrente .portal-cat-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.portal-defrente .portal-search-wrap.is-open .portal-search-form {
  position: absolute;
  right: 0;
  top: calc(100% + 14px);
  max-width: none;
  padding: 10px;
  border-radius: 12px;
  background: var(--brand-navy);
  box-shadow: 0 8px 24px #0003;
}
.portal-defrente .portal-sidebar-links { display: flex; flex-direction: column; gap: 3px; }
.portal-defrente .portal-sidebar-link { min-height: 44px; display: flex; align-items: center; }
.portal-defrente .footer-v2-menu ul { columns: 2; column-gap: 18px; }
.portal-defrente .footer-v2-menu li { break-inside: avoid; }
/* Controles arredondados, sem relevo; azul principal e laranja nos detalhes. */
.noticia-autor { display: flex; align-items: center; gap: 12px; margin: 18px 0 24px; color: var(--brand-navy); }
.noticia-autor img { flex-shrink: 0; border-radius: 50%; object-fit: cover; object-position: 65% 25%; }
.noticia-autor strong { font-size: .95rem; }
.noticia-autor-rotulo { color: #64748b; font-size: .85rem; }
.noticia-autor p { margin: 4px 0 0; color: #64748b; font-size: .82rem; line-height: 1.5; white-space: pre-line; }
body.portal-white.portal-defrente .noticia-leitura-page .content.noticia-texto {
  max-width: 100%;
}
.portal-defrente .noticia-coluna-principal,
.portal-defrente .noticia-leitura-lateral { min-width: 0; }
.portal-defrente .noticia-leitura-page :is(.noticia-leitura-titulo, .noticia-leitura-resumo, .noticia-texto) { overflow-wrap: anywhere; }
.portal-defrente .noticia-texto :is(p, div, figure) { max-width: 100%; }
.portal-defrente .noticia-texto p { text-align: left; }
.portal-defrente .noticia-texto figure { margin: 24px 0; }
.portal-defrente .noticia-texto img { display: block; max-width: 100%; height: auto; margin-inline: auto; }
.portal-defrente .noticia-texto :is(figcaption, .import-caption) { color: #64748b; font-size: .8rem; line-height: 1.5; text-align: center; margin-top: 8px; }
.portal-defrente .noticia-texto .import-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 24px 0; }
.portal-defrente .noticia-texto .import-gallery :is(figure, .import-gallery-item) { margin: 0; min-width: 0; }
body.portal-white.portal-defrente .noticia-texto .import-gallery img { width: 100%; height: auto; margin: 0; border-radius: 12px; }
.portal-defrente .noticia-texto video { display: block; width: 100%; height: auto; margin-block: 24px; }
.portal-defrente .noticia-texto table { display: block; max-width: 100%; overflow-x: auto; }
@media (max-width: 575px) {
  .portal-defrente .noticia-texto .import-gallery { grid-template-columns: minmax(0, 1fr); }
}
.portal-video-modal-frame { position: relative; }
.portal-video-modal-frame [hidden] { display: none !important; }
.portal-video-intro { display: block; width: 100%; height: 100%; object-fit: contain; background: #000; }
.portal-intro-play {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  border: 1px solid var(--brand-orange);
  border-radius: 999px;
  padding: 12px 22px;
  background: var(--brand-navy);
  color: #fff;
}
.portal-defrente :is(.btn, .portal-pager-nav, .portal-rnd-pagebtn, .page-link, .enquete-votar, .enquete-resultado) {
  border-radius: 999px !important;
  box-shadow: none !important;
}
.portal-defrente :is(.portal-pager-num, .portal-pager-nav, .portal-rnd-pagebtn, .page-link):is(:hover, :focus, :active),
.portal-defrente :is(.portal-pager-num, .portal-pager-nav, .portal-rnd-pagebtn, .page-link) {
  box-shadow: none !important;
  transform: none;
}
.portal-defrente .portal-pager-num {
  width: 40px;
  height: 40px;
  min-width: 40px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--brand-navy);
  border: 1px solid #dce4eb;
  background: #fff;
}
.portal-defrente .portal-pager-num.is-atual,
.portal-defrente .page-item.active .page-link {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}
.portal-defrente .portal-pager-num:not(.is-atual):hover,
.portal-defrente .portal-pager-nav:not(.is-disabled):hover,
.portal-defrente .portal-rnd-pagebtn:not(.disabled):hover {
  background: #edf4f9;
  color: var(--accent);
  border-color: var(--brand-orange);
}
.portal-defrente :is(.portal-pager-num, .portal-pager-nav, .portal-rnd-pagebtn):focus-visible {
  outline: 2px solid var(--brand-orange);
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .portal-defrente .portal-top-row { min-height: 54px; gap: 8px; }
  .portal-defrente .portal-header-inner { padding: 12px 15px; }
  .portal-defrente .portal-logo-img { height: 46px; max-width: 120px; }
  .portal-defrente .portal-menu-label { display: none; }
  .portal-defrente .portal-clima-chip { display: none !important; }
}

/* Uma única régua para a home, navegação, páginas internas e rodapé. */
body.portal-white.portal-defrente {
  --portal-content-width: 1320px;
  --portal-gutter: 24px;
}
body.portal-white.portal-defrente .site-wrap {
  width: 100%;
  max-width: none !important;
  margin-inline: 0;
}
body.portal-white.portal-defrente .container,
body.portal-white.portal-defrente .news-container,
body.portal-white.portal-defrente .noticia-leitura-page > .container,
body.portal-white.portal-defrente #noticiasCat > .container,
body.portal-white.portal-defrente .site-footer--v2 .footer-v2-inner {
  box-sizing: border-box;
  width: 100%;
  max-width: calc(var(--portal-content-width) + 2 * var(--portal-gutter)) !important;
  margin-inline: auto;
  padding-inline: var(--portal-gutter) !important;
}
body.portal-white.portal-defrente .portal-top-row { padding-inline: 0; }
body.portal-white.portal-defrente .portal-home-videos {
  width: 100%;
  margin-inline: 0;
}
.portal-search-submit { display: none; }
@media (min-width: 992px) {
  .portal-defrente .portal-top-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    min-height: 68px;
    gap: 24px;
  }
  .portal-defrente .portal-menu-left { justify-self: start; }
  .portal-defrente .portal-logo-center { position: static; transform: none; }
  .portal-defrente .portal-logo-img { height: 68px; max-width: 160px; }
  .portal-defrente .portal-search-wrap { justify-self: end; gap: 12px; }
  .portal-defrente .portal-search-wrap .portal-search-form,
  .portal-defrente .portal-search-wrap.is-open .portal-search-form {
    display: flex;
    align-items: center;
    position: static;
    width: clamp(190px, 19vw, 250px);
    max-width: none;
    opacity: 1;
    padding: 4px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f5f8fb;
    box-shadow: none;
    transition: border-color .2s ease;
  }
  .portal-defrente .portal-search-form:focus-within { border-color: var(--brand-orange); }
  .portal-defrente .portal-search-input,
  .portal-defrente .portal-search-input:focus {
    flex: 1;
    width: 0;
    min-width: 0;
    padding: 8px 10px;
    border: 0;
    background: transparent;
    color: var(--brand-navy);
    font-size: .82rem;
  }
  .portal-defrente .portal-search-input::placeholder { color: #64748b; }
  .portal-defrente .portal-search-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    background: var(--brand-orange);
    color: #fff;
    transition: filter .2s;
  }
  .portal-defrente .portal-search-submit:hover { background: var(--brand-orange); filter: brightness(.9); }
  .portal-defrente .portal-search-submit:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
  .portal-defrente .portal-search-btn { display: none; }
  .portal-defrente .portal-search-wrap.is-open .portal-clima-chip:not([hidden]) { display: inline-flex; }
}
@media (max-width: 767px) {
  body.portal-white.portal-defrente { --portal-gutter: 16px; }
}

/* Tipografia editorial: interface e manchetes em Inter, leitura em Arial. */
body.portal-white.portal-defrente {
  font-family: 'Inter', Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.portal-white.portal-defrente :is(h1,h2,h3,h4,h5,h6,p,.lead,.portal-cat-link,.portal-sidebar-link,.portal-latest-title,.portal-rnd-h,.home-side-news-title,.home-featured-news-title,.portal-col3-item,.pv-item-titulo,.pv-destaque-titulo) {
  font-family: 'Inter', Arial, Helvetica, sans-serif;
}
body.portal-white.portal-defrente .noticia-leitura-titulo {
  font-size: clamp(1.9rem, 3.1vw, 2.8rem);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -.035em;
  margin: 0 0 18px;
  text-align: left;
}
body.portal-white.portal-defrente .noticia-leitura-resumo {
  font-size: clamp(1.05rem, 1.45vw, 1.2rem);
  font-weight: 400;
  line-height: 1.6;
  color: #536170;
  margin-bottom: 22px;
  text-align: left;
}
body.portal-white.portal-defrente .content.noticia-texto {
  font-family: Arial, Helvetica, sans-serif;
  font-size: var(--leitura-fonte, 19px);
  line-height: 1.75;
  font-weight: 400;
  letter-spacing: normal;
  color: #26313c;
  text-align: left;
}
body.portal-white.portal-defrente .content.noticia-texto :is(p,li,span,div) {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}
body.portal-white.portal-defrente .content.noticia-texto p {
  margin: 0 0 1.2em;
  text-align: left !important;
  text-indent: 0;
}
body.portal-white.portal-defrente .content.noticia-texto :is(h2,h3,h4,h5) {
  font-family: 'Inter', Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.02em;
  color: var(--brand-navy);
  margin: 1.6em 0 .7em;
  text-align: left;
}
body.portal-white.portal-defrente .content.noticia-texto h2 { font-size: 1.4em; }
body.portal-white.portal-defrente .content.noticia-texto h3 { font-size: 1.2em; }
body.portal-white.portal-defrente .content.noticia-texto :is(h4,h5) { font-size: 1.05em; }
body.portal-white.portal-defrente .content.noticia-texto :is(strong,b) { font-weight: 700; }
body.portal-white.portal-defrente .content.noticia-texto :is(figcaption,.import-caption,.noticia-fonte) {
  font-family: 'Inter', Arial, Helvetica, sans-serif !important;
  font-size: .8rem !important;
  line-height: 1.5 !important;
  color: #64748b;
}
.article-gallery,.article-channel { margin: 36px 0; }
.article-media-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.article-media-heading h2 { font: 700 1.35rem/1.3 'Inter',Arial,sans-serif; color: var(--brand-navy); margin: 0; letter-spacing: -.025em; }
.article-media-heading > span { flex-shrink: 0; padding: 6px 12px; border-radius: 999px; background: #edf4fa; color: var(--accent); font-size: .75rem; }
.article-gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.article-gallery-grid figure { margin: 0; min-width: 0; }
.article-gallery-grid a { display: block; position: relative; border-radius: 14px; overflow: hidden; background: #edf2f7; }
.article-gallery-grid img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .2s ease; }
.article-gallery-grid a:hover img { transform: scale(1.035); }
.article-gallery-zoom { position: absolute; bottom: 10px; right: 10px; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #0c1c2bd9; color: #fff; font-size: .8rem; }
.article-gallery-grid figcaption { padding: 8px 2px; font-size: .75rem; line-height: 1.5; color: #64748b; }
@media(max-width:767px) {
  .article-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
}
@media(prefers-reduced-motion:reduce) { .article-gallery-grid img { transition: none; } }

/* ===== Editor em destaque (Admin > Aparência > Editor em destaque) ===== */
.portal-defrente .portal-top-left { display: contents; }
.portal-editor { display: none; }
.portal-editor-foto {
  position: relative;
  flex-shrink: 0;
  display: block;
  width: 50px;
  height: 50px;
  padding: 2px;
  border-radius: 50%;
  background: var(--brand-orange);
}
.portal-editor-foto img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--portal-header-fundo, #fff);
  background: #e5e7eb;
}
.portal-editor-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.2; }
.portal-editor-nome {
  font-family: 'Poppins', 'Inter', sans-serif;
  font-size: .95rem;
  font-weight: 700;
  color: var(--brand-navy);
  white-space: nowrap;
}
.portal-editor-cargo {
  margin-top: 2px;
  font-size: .72rem;
  font-weight: 500;
  letter-spacing: .02em;
  color: #64748b;
  white-space: nowrap;
}
@media (min-width: 992px) {
  .portal-defrente .portal-top-left { display: flex; align-items: center; gap: 18px; justify-self: start; min-width: 0; }
  .portal-defrente .portal-editor {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
    padding-left: 18px;
    border-left: 1px solid rgba(12, 28, 43, .14);
    text-decoration: none;
  }
  .portal-defrente .portal-editor:hover .portal-editor-nome { color: var(--brand-orange); }
  .portal-defrente .portal-editor-txt { overflow: hidden; }
  .portal-defrente .portal-editor-nome,
  .portal-defrente .portal-editor-cargo { overflow: hidden; text-overflow: ellipsis; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .portal-defrente .portal-editor-cargo { display: none; }
}

/* Cartão do editor no menu lateral */
.portal-sidebar-editor {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 12px 12px 0;
  padding: 12px;
  border-radius: 14px;
  background: #f4f7fb;
  text-decoration: none;
}
.portal-sidebar-editor .portal-editor-foto { width: 56px; height: 56px; }
.portal-sidebar-editor .portal-editor-foto img { border-color: #f4f7fb; }
.portal-sidebar-editor .portal-editor-txt { flex: 1; }
.portal-sidebar-editor .portal-editor-nome { font-size: 1rem; white-space: normal; }
.portal-sidebar-editor .portal-editor-cargo { white-space: normal; }
.portal-sidebar-editor:hover .portal-sidebar-seta { transform: translateX(2px); color: var(--brand-orange); }

/* ===== Página do autor (noticias?autor=ID) ===== */
.autor-perfil {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-bottom: 32px;
  padding: 28px 32px;
  border-radius: 18px;
  background: var(--portal-header-fundo, #00112a);
  color: #fff;
}
.autor-perfil .autor-perfil-foto { width: 120px; height: 120px; padding: 3px; }
.autor-perfil .autor-perfil-foto img { border-width: 3px; }
.autor-perfil-txt { min-width: 0; }
.autor-perfil-rotulo { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--brand-orange); }
body.portal-white.portal-defrente .autor-perfil-nome { margin: 4px 0 2px; font-family: 'Poppins', 'Inter', sans-serif; font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 700; color: #fff; }
body.portal-white.portal-defrente .autor-perfil-cargo { margin: 0; font-size: 1rem; color: rgba(255, 255, 255, .75); }
body.portal-white.portal-defrente .autor-perfil-bio { max-width: 70ch; margin: 12px 0 0; font-size: .92rem; line-height: 1.6; color: rgba(255, 255, 255, .85); white-space: pre-line; }
.autor-perfil-total { display: inline-block; margin-top: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(255, 255, 255, .1); font-size: .82rem; color: rgba(255, 255, 255, .85); }
.autor-perfil-total strong { color: #fff; }
@media (max-width: 575px) {
  .autor-perfil { flex-direction: column; text-align: center; gap: 16px; padding: 24px 18px; }
  .autor-perfil .autor-perfil-foto { width: 104px; height: 104px; }
}

/* ===== Assinatura no topo da matéria ===== */
.noticia-autor { text-decoration: none; }
.noticia-autor .portal-editor-foto { width: 56px; height: 56px; }
.noticia-autor .portal-editor-foto img { border-color: #fff; }
.noticia-autor-nome { display: block; font-family: 'Poppins', 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: var(--brand-navy); transition: color .2s; }
.noticia-autor-cargo { display: block; margin-top: 1px; font-size: .82rem; color: #64748b; }
a.noticia-autor:hover .noticia-autor-nome { color: var(--brand-orange); }
.noticia-autor .noticia-autor-rotulo { display: block; font-size: .68rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }

/* ===== Editor: anel laranja animado ===== */
@property --editor-giro { syntax: '<angle>'; inherits: false; initial-value: 0deg; }
.portal-editor-foto.is-animado {
  background: conic-gradient(from var(--editor-giro),
    var(--brand-orange) 0deg, #ffb27a 70deg, var(--brand-orange) 140deg,
    rgba(252, 102, 18, .25) 220deg, var(--brand-orange) 300deg, #ffb27a 360deg);
  animation: editor-giro 6s linear infinite;
  box-shadow: 0 0 0 0 rgba(252, 102, 18, 0);
  transition: box-shadow .35s ease, transform .35s ease;
}
@keyframes editor-giro { to { --editor-giro: 360deg; } }
.portal-editor-foto img { transition: transform .45s cubic-bezier(.2, .8, .2, 1); }

/* Hover: brilho no anel e a foto aproxima */
.portal-editor:hover .portal-editor-foto.is-animado,
.portal-sidebar-editor:hover .portal-editor-foto.is-animado {
  box-shadow: 0 0 0 4px rgba(252, 102, 18, .18), 0 0 22px rgba(252, 102, 18, .45);
  animation-duration: 1.6s;
}
.portal-editor:hover .portal-editor-foto img,
.portal-sidebar-editor:hover .portal-editor-foto img { transform: scale(1.08); }

/* Entrada suave no carregamento (só no cabeçalho) */
@media (min-width: 992px) {
  .portal-defrente .portal-editor { animation: editor-entra .7s cubic-bezier(.2, .8, .2, 1) .15s both; }
}
@keyframes editor-entra { from { opacity: 0; transform: translateX(-10px); } to { opacity: 1; transform: none; } }

/* Página do autor: brilho difuso atrás da foto */
.autor-perfil { position: relative; overflow: hidden; }
.autor-perfil::before {
  content: "";
  position: absolute;
  left: -60px;
  top: 50%;
  width: 320px;
  height: 320px;
  transform: translateY(-50%);
  background: radial-gradient(circle, rgba(252, 102, 18, .28), transparent 65%);
  pointer-events: none;
}
.autor-perfil > * { position: relative; }

@media (prefers-reduced-motion: reduce) {
  .portal-editor-foto.is-animado, .portal-defrente .portal-editor { animation: none; }
}

/* ===== Publicidade: largura máxima do admin (centralizada), proporção real da imagem, cantos e selo =====
   Largura, raio e selo vêm de Admin > Aparência > Publicidade (--pub-largura, --pub-raio, --pub-selo-texto). */
body.portal-white.portal-defrente :is(.home-top-ad .home-top-ad-link, .banner-img-wrap .banner-box, .banner-box:not(.script-banner)) {
  position: relative;
  display: block;
  width: 100%;
  max-width: min(100%, var(--pub-largura, 1170px));
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  margin-inline: auto;
  padding: 0;
  border-radius: var(--pub-raio, 16px);
  overflow: hidden;
  background: transparent;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 8px 24px rgba(15, 23, 42, .07);
  isolation: isolate;
}
body.portal-white.portal-defrente .banner-img-wrap-natural .banner-box { display: inline-block; width: auto; }
body.portal-white.portal-defrente :is(.home-top-ad-img, .banner-box img, .banner-img-wrap picture img) {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  background: none;
  transition: transform .6s cubic-bezier(.2, .8, .2, 1);
}
body.portal-white.portal-defrente .banner-img-wrap-natural .banner-box img { width: auto; }
body.portal-white.portal-defrente .banner-box:not(.script-banner):hover img { transform: scale(1.015); }
body.portal-white.portal-defrente .banner-box.script-banner { height: auto; aspect-ratio: auto; max-width: 100%; border-radius: var(--pub-raio, 16px); }
body.portal-white.portal-defrente .publicidade-mural .carousel-inner { border-radius: var(--pub-raio, 16px) !important; } /* vence o .rounded do Bootstrap */
body.portal-white.portal-defrente .pub-mural-img { position: relative; }

/* Selo no estilo AdChoices: ícone "i" no canto que abre o texto ao passar o mouse */
body.portal-defrente :is(.banner-box:not(.script-banner), .pub-mural-img)::after {
  content: var(--pub-selo-texto, "Publicidade");
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  box-sizing: border-box;
  max-width: 25px;
  height: 22px;
  padding: 0 9px 0 25px;
  overflow: hidden;
  white-space: nowrap;
  border-bottom-left-radius: 10px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%2300112a' stroke-width='1.6'/%3E%3Ccircle cx='8' cy='4.8' r='1.1' fill='%2300112a'/%3E%3Crect x='7.1' y='6.8' width='1.8' height='5' rx='.9' fill='%2300112a'/%3E%3C/svg%3E") 6px 50% / 13px 13px no-repeat,
    rgba(255, 255, 255, .92);
  color: transparent;
  font: 600 10.5px/22px 'Inter', Arial, sans-serif;
  letter-spacing: .02em;
  box-shadow: -1px 1px 4px rgba(0, 0, 0, .12);
  pointer-events: none;
  transition: max-width .35s cubic-bezier(.2, .8, .2, 1), color .2s ease .05s;
}
body.portal-defrente :is(.banner-box:not(.script-banner), .pub-mural-img):hover::after,
body.portal-defrente .publicidade-mural:hover .pub-mural-img::after { max-width: 140px; color: #00112a; }
/* Celular: só o ícone (como o AdChoices), para não cobrir o anúncio; banners na largura do conteúdo. */
@media (max-width: 767px) {
  body.portal-white.portal-defrente { --pub-raio: var(--pub-raio-mobile, 6px); }
  body.portal-defrente :is(.banner-box:not(.script-banner), .pub-mural-img)::after { border-bottom-left-radius: var(--pub-raio-mobile, 6px); }
  body.portal-defrente :is(.banner-box:not(.script-banner), .pub-mural-img)::after { height: 20px; max-width: 23px; padding-left: 23px; background-position: 5px 50%, 0 0; background-size: 12px 12px, auto; }
  body.portal-white.portal-defrente :is(.home-top-ad, .banners-section, .banners-topo-noticias) { padding-left: 0; padding-right: 0; }
}


/* ===== Vídeos da reportagem: tela 16:9 com quadro do vídeo + lista com miniaturas ===== */
.article-channel-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.article-channel-grid.is-unico { grid-template-columns: minmax(0, 1fr); }
.article-channel-featured {
  position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 0;
  border-radius: 18px; overflow: hidden; background: #0c1c2b; color: #fff; text-align: left; cursor: pointer;
  box-shadow: 0 10px 30px rgba(12, 28, 43, .18);
}
.article-channel-tela, .article-channel-mini { position: absolute; inset: 0; display: block; background: #0c1c2b; }
.article-channel-tela > *, .article-channel-mini > img, .article-channel-mini > video {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block;
}
.article-channel-capa { filter: saturate(.9); }
.article-channel-quadro { opacity: 0; transition: opacity .4s ease; background: transparent; pointer-events: none; }
.article-channel-quadro.is-pronto { opacity: 1; }
.article-channel-tela::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0, 17, 42, 0) 40%, rgba(0, 17, 42, .55) 72%, rgba(0, 17, 42, .9) 100%);
}
.article-channel-featured > img.article-channel-thumb { display: none; }
.article-channel-play {
  position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%);
  display: grid; place-items: center; width: 72px; height: 72px; margin: 0; border-radius: 50%;
  background: var(--brand-orange); color: #fff; font-size: 2.3rem;
  box-shadow: 0 0 0 8px rgba(252, 102, 18, .25), 0 10px 26px rgba(0, 0, 0, .35);
  transition: transform .25s ease, box-shadow .25s ease;
}
.article-channel-play i { margin-left: 4px; }
.article-channel-featured:hover .article-channel-play { transform: translate(-50%, -50%) scale(1.08); box-shadow: 0 0 0 12px rgba(252, 102, 18, .22), 0 12px 30px rgba(0, 0, 0, .4); }
.article-channel-featured-info { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 18px; display: flex; flex-direction: column; gap: 4px; }
.article-channel-featured-info small { color: rgba(255, 255, 255, .78); font-size: .72rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.article-channel-featured-info small b { color: var(--brand-orange); }
.article-channel-featured-info strong { font: 700 1.25rem/1.3 'Inter', Arial, sans-serif; color: #fff; text-shadow: 0 2px 10px rgba(0, 0, 0, .35); }
.article-channel-duracao {
  position: absolute; z-index: 2; top: 12px; right: 12px; padding: 3px 8px; border-radius: 6px;
  background: rgba(0, 17, 42, .82); color: #fff; font: 600 .72rem/1.3 'Inter', Arial, sans-serif; font-variant-numeric: tabular-nums;
}
.article-channel-lista-wrap { position: relative; align-self: stretch; min-height: 240px; }
.article-channel-list { position: absolute; inset: 0; display: flex; flex-direction: column; gap: 8px; overflow-y: auto; padding-right: 4px; scrollbar-width: thin; }
.article-channel-item {
  display: flex; align-items: center; gap: 12px; width: 100%; padding: 8px; border: 0; border-radius: 12px;
  background: #f4f7fa; color: var(--brand-navy); text-align: left; cursor: pointer; transition: background .2s ease;
}
.article-channel-item:hover { background: #eaf1f8; }
.article-channel-item.is-selected { background: #e2edf8; box-shadow: inset 3px 0 0 var(--brand-orange); }
.article-channel-mini { position: relative; flex-shrink: 0; width: 128px; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; }
.article-channel-mini .article-channel-duracao { top: auto; bottom: 5px; right: 5px; padding: 1px 5px; font-size: .65rem; border-radius: 4px; }
.article-channel-mini-play {
  position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%);
  display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%;
  background: rgba(0, 17, 42, .6); color: #fff; font-size: 1.05rem; transition: background .2s ease;
}
.article-channel-mini-play i { margin-left: 2px; }
.article-channel-item:hover .article-channel-mini-play,
.article-channel-item.is-selected .article-channel-mini-play { background: var(--brand-orange); }
.article-channel-item-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.article-channel-item-txt strong { font-size: .88rem; }
.article-channel-item-txt small { color: #64748b; font-size: .74rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 767px) {
  .article-channel-grid { grid-template-columns: minmax(0, 1fr); }
  .article-channel-lista-wrap { min-height: 0; }
  .article-channel-list { position: static; max-height: none; overflow: visible; padding-right: 0; }
  .article-channel-play { width: 60px; height: 60px; font-size: 1.9rem; }
  .article-channel-featured-info { left: 16px; right: 16px; bottom: 12px; }
  .article-channel-featured-info strong { font-size: 1.05rem; }
  .article-channel-mini { width: 112px; }
}
@media (prefers-reduced-motion: reduce) { .article-channel-quadro, .article-channel-play { transition: none; } }

/* ===== Convite de notificações (Admin > Aparência > Notificações) ===== */
.push-convite {
  position: fixed; z-index: 10950; top: 16px; left: 50%;
  display: flex; align-items: flex-start; gap: 14px;
  width: min(440px, calc(100vw - 32px)); padding: 18px 18px 16px;
  border-radius: 16px; background: #fff; color: #0c1c2b;
  box-shadow: 0 2px 6px rgba(0, 17, 42, .08), 0 18px 48px rgba(0, 17, 42, .22);
  font-family: 'Inter', Arial, sans-serif;
  opacity: 0; transform: translate(-50%, -24px);
  transition: opacity .35s ease, transform .4s cubic-bezier(.2, .8, .2, 1);
}
.push-convite.is-visivel { opacity: 1; transform: translate(-50%, 0); }
.push-convite-icone {
  flex-shrink: 0; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%;
  background: var(--brand-orange, #fc6612); color: #fff; font-size: 1.25rem;
  box-shadow: 0 0 0 6px rgba(252, 102, 18, .14);
  animation: push-sino 2.4s ease-in-out .6s 2;
}
@keyframes push-sino { 0%, 60%, 100% { transform: rotate(0); } 10%, 30% { transform: rotate(14deg); } 20%, 40% { transform: rotate(-12deg); } }
.push-convite-corpo { flex: 1; min-width: 0; padding-right: 14px; }
.push-convite-corpo strong { display: block; font-size: .98rem; font-weight: 700; line-height: 1.3; }
.push-convite-corpo p { margin: 4px 0 0; font-size: .84rem; line-height: 1.45; color: #526478; }
.push-convite-acoes { display: flex; justify-content: flex-end; gap: 8px; margin-top: 14px; }
.push-convite-acoes button { border: 0; border-radius: 999px; padding: 9px 16px; font: 600 .84rem/1 'Inter', Arial, sans-serif; cursor: pointer; transition: background .2s, filter .2s; }
.push-convite-nao { background: #eef3f8; color: #0c1c2b; }
.push-convite-nao:hover { background: #e2eaf2; }
.push-convite-sim { display: inline-flex; align-items: center; gap: 6px; background: var(--portal-header-fundo, #00112a); color: #fff; }
.push-convite-sim:hover { filter: brightness(1.25); }
.push-convite-sim:disabled { opacity: .6; cursor: wait; }
.push-convite-fechar { position: absolute; top: 8px; right: 8px; display: grid; place-items: center; width: 28px; height: 28px; border: 0; border-radius: 50%; background: transparent; color: #94a3b8; font-size: .8rem; cursor: pointer; }
.push-convite-fechar:hover { background: #f1f5f9; color: #0c1c2b; }
.push-convite.is-ok .push-convite-icone { background: #16a34a; box-shadow: 0 0 0 6px rgba(22, 163, 74, .14); }
.push-convite :focus-visible { outline: 2px solid var(--brand-orange, #fc6612); outline-offset: 2px; }
@media (max-width: 575px) {
  .push-convite { top: 10px; width: calc(100vw - 24px); padding: 16px 14px 14px; }
  .push-convite-acoes button { flex: 1; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .push-convite, .push-convite-icone { transition: none; animation: none; } }

/* =====================================================================
   Celular com cara de app (Admin > Aparência > App no celular)
   ===================================================================== */
.portal-faixa-mobile, .app-barra, .portal-sidebar-app[hidden] { display: none; }

@media (max-width: 991px) {
  /* Cabeçalho fixo que some ao rolar para baixo e volta ao subir */
  body.portal-white.portal-defrente .portal-topo {
    position: sticky; top: 0; z-index: 1030;
    transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease;
    will-change: transform;
  }
  body.portal-white.portal-defrente .portal-topo.is-rolado { box-shadow: 0 6px 18px rgba(0, 17, 42, .18); }
  body.portal-white.portal-defrente .portal-topo.is-escondido { transform: translateY(-100%); box-shadow: none; }
  html.app-instalado body.portal-white.portal-defrente .portal-header-bar { padding-top: env(safe-area-inset-top); }

  /* Linha principal: menu | logo | busca */
  body.portal-white.portal-defrente .portal-header-inner { padding-block: 8px; }
  body.portal-white.portal-defrente .portal-menu-left { padding: 6px; min-height: 44px; }
  body.portal-white.portal-defrente .portal-menu-label { display: none; }
  body.portal-white.portal-defrente .portal-search-btn { width: 44px; height: 44px; font-size: 1.35rem; display: inline-grid; place-items: center; }

  /* Busca: barra de largura total logo abaixo do cabeçalho */
  body.portal-white.portal-defrente .portal-header-bar { position: relative; }
  body.portal-white.portal-defrente .portal-search-wrap { position: static; }
  body.portal-white.portal-defrente .portal-top-row { position: relative; }
  body.portal-white.portal-defrente .portal-search-wrap.is-open .portal-search-form {
    position: absolute; z-index: 5; top: calc(100% + 8px);
    left: calc(var(--portal-gutter, 16px) * -1); right: calc(var(--portal-gutter, 16px) * -1);
    transition: none;
    display: flex; align-items: center; gap: 8px; width: auto; max-width: none;
    margin: 0; padding: 10px 16px 12px; border: 0; border-radius: 0; opacity: 1; transform: none;
    background: var(--portal-header-fundo, #00112a); box-shadow: 0 10px 20px rgba(0, 17, 42, .25);
  }
  body.portal-white.portal-defrente .portal-search-wrap.is-open .portal-search-input {
    flex: 1; width: auto; max-width: none; height: 46px; padding: 0 16px; border: 0; border-radius: 999px;
    background: #fff; color: #0c1c2b; font-size: 16px; /* 16px evita o zoom automático do iPhone */
  }
  body.portal-white.portal-defrente .portal-search-wrap.is-open .portal-search-input::placeholder { color: #64748b; opacity: 1; }
  body.portal-white.portal-defrente .portal-search-wrap.is-open .portal-search-submit {
    display: inline-grid; place-items: center; flex-shrink: 0; width: 46px; height: 46px; border: 0; border-radius: 50%;
    background: var(--brand-orange, #fc6612); color: #fff; font-size: 1.1rem;
  }

  /* Faixa do celular: editor + clima (o que no computador fica no cabeçalho) */
  .portal-faixa-mobile { display: block; border-top: 1px solid rgba(255, 255, 255, .08); }
  .portal-faixa-mobile-inner { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding-block: 5px; }
  .portal-faixa-editor { display: flex; align-items: center; gap: 9px; min-width: 0; color: #fff; text-decoration: none; }
  .portal-faixa-editor .portal-editor-foto { width: 34px; height: 34px; padding: 2px; }
  .portal-faixa-editor-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.15; }
  .portal-faixa-editor-txt strong { font: 700 .82rem/1.2 'Poppins', 'Inter', sans-serif; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .portal-faixa-editor-txt small { font-size: .66rem; color: rgba(255, 255, 255, .62); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .portal-faixa-clima {
    display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; padding: 5px 11px; border-radius: 999px;
    background: rgba(255, 255, 255, .1); color: #fff; text-decoration: none; font-size: .78rem;
  }
  .portal-faixa-clima[hidden] { display: none; }
  .portal-faixa-clima i { color: #ffcf71; font-size: .95rem; }
  .portal-faixa-clima strong { font-weight: 700; }
  .portal-faixa-clima .portal-clima-cidade { display: inline; color: rgba(255, 255, 255, .75); max-width: 90px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

  /* Editorias como abas deslizantes (antes ficavam escondidas no celular) */
  body.portal-white.portal-defrente .portal-cats-row { display: block !important; background: #fff; border-bottom: 1px solid #e8eef4; }
  body.portal-white.portal-defrente .portal-cats-row .container { padding-inline: 0; max-width: none; }
  body.portal-white.portal-defrente .portal-cats-nav {
    display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 6px; overflow-x: auto;
    padding: 8px 16px; scroll-snap-type: x proximity; scrollbar-width: none; -webkit-overflow-scrolling: touch;
  }
  body.portal-white.portal-defrente .portal-cats-nav::-webkit-scrollbar { display: none; }
  body.portal-white.portal-defrente .portal-cat-link {
    flex-shrink: 0; scroll-snap-align: start; display: inline-flex; align-items: center;
    height: 34px; min-height: 0; padding: 0 14px; margin: 0; border-radius: 999px; line-height: 1;
    background: #f1f5f9; color: #1a2433; font-size: .82rem; white-space: nowrap; border: 0;
  }
  body.portal-white.portal-defrente .portal-cat-link::after { display: none; }
  body.portal-white.portal-defrente .portal-cat-link-active { background: var(--portal-header-fundo, #00112a); color: #fff; }

  /* Barra de navegação inferior */
  body.portal-white.portal-defrente:has(.app-barra) { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  .app-barra {
    position: fixed; z-index: 1040; left: 0; right: 0; bottom: 0;
    display: grid; grid-template-columns: repeat(5, 1fr); align-items: end;
    padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
    background: rgba(255, 255, 255, .96); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px);
    border-top: 1px solid #e5ebf1; box-shadow: 0 -6px 20px rgba(0, 17, 42, .06);
  }
  .app-barra-item {
    position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 3px;
    min-height: 52px; padding: 4px 2px; border: 0; background: none; color: #64748b; text-decoration: none;
    font: 600 .66rem/1.1 'Inter', Arial, sans-serif; -webkit-tap-highlight-color: transparent;
  }
  .app-barra-item i { font-size: 1.3rem; line-height: 1; transition: transform .2s ease; }
  .app-barra-item:active i { transform: scale(.88); }
  .app-barra-item.is-ativo { color: var(--portal-header-fundo, #00112a); }
  .app-barra-item.is-ativo::before {
    content: ""; position: absolute; top: 0; left: 50%; width: 22px; height: 3px; margin-left: -11px; border-radius: 0 0 3px 3px; background: var(--brand-orange, #fc6612);
  }
  .app-barra-destaque {
    display: grid; place-items: center; width: 48px; height: 48px; margin-top: -24px; border-radius: 50%;
    background: var(--brand-orange, #fc6612); color: #fff; box-shadow: 0 6px 16px rgba(252, 102, 18, .45), 0 0 0 4px #fff;
  }
  .app-barra-destaque i { font-size: 1.2rem; }
  .app-barra-busca { color: #0c1c2b; }
  /* O convite de notificações e o vídeo não ficam atrás da barra */
  .push-convite { z-index: 1050; }
}

/* "Instalar o app" no menu lateral: mesma linha simples dos outros itens */
.portal-sidebar-app {
  display: flex; align-items: center; gap: 12px; width: calc(100% - 24px); margin: 0 12px 10px; padding: 12px;
  border: 0; border-top: 1px solid #eef2f6; border-radius: 0; background: none; color: #1a2433;
  font: 600 .95rem/1.2 'Inter', Arial, sans-serif; text-align: left; cursor: pointer; transition: color .18s;
}
.portal-sidebar-app[hidden] { display: none; }
.portal-sidebar-app .portal-sidebar-nome { flex: 1; }
.portal-sidebar-app-seta { font-size: .9rem; color: rgba(0, 0, 0, .35); transition: color .18s, transform .18s; }
.portal-sidebar-app:hover { color: var(--brand-orange, #fc6612); }
.portal-sidebar-app:hover .portal-sidebar-app-seta { color: var(--brand-orange, #fc6612); transform: translateY(1px); }

/* ===== Prévia da busca do topo ===== */
.portal-defrente .portal-search-form { position: relative; }
.busca-previa {
  position: absolute; z-index: 1060; top: calc(100% + 10px); right: 0;
  width: min(440px, calc(100vw - 32px)); max-height: min(70vh, 520px); overflow-y: auto;
  padding: 8px; border-radius: 16px; background: #fff; color: #0c1c2b; text-align: left;
  box-shadow: 0 2px 6px rgba(0, 17, 42, .08), 0 20px 48px rgba(0, 17, 42, .24);
  font-family: 'Inter', Arial, sans-serif;
  animation: busca-previa-entra .18s ease-out;
}
.busca-previa[hidden] { display: none; }
@keyframes busca-previa-entra { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.busca-previa-titulo { padding: 6px 10px 4px; font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #94a3b8; }
.busca-previa-item {
  display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 12px;
  color: inherit; text-decoration: none; transition: background .15s ease;
}
.busca-previa-item:hover, .busca-previa-item.is-ativo { background: #f1f5f9; color: inherit; }
.busca-previa-img {
  flex-shrink: 0; display: grid; place-items: center; width: 72px; height: 48px; overflow: hidden;
  border-radius: 8px; background: #e2e8f0; color: #94a3b8;
}
.busca-previa-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.busca-previa-txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.busca-previa-txt small { font-size: .64rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--cat-color, var(--accent)); }
.busca-previa-txt strong {
  font-size: .86rem; font-weight: 600; line-height: 1.3; color: #0c1c2b;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.busca-previa-txt strong mark { padding: 0 1px; border-radius: 3px; background: rgba(252, 102, 18, .18); color: inherit; }
.busca-previa-txt em { font-style: normal; font-size: .7rem; color: #94a3b8; }
.busca-previa-todos {
  display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 6px; padding: 11px;
  border-radius: 12px; background: #f4f7fa; color: var(--portal-header-fundo, #00112a); font-size: .84rem; font-weight: 700; text-decoration: none;
}
.busca-previa-todos:hover, .busca-previa-todos.is-ativo { background: var(--brand-orange, #fc6612); color: #fff; }
.busca-previa-vazio { display: flex; align-items: center; gap: 8px; padding: 16px 12px; font-size: .86rem; color: #64748b; }
.busca-previa-spinner {
  width: 16px; height: 16px; border-radius: 50%; border: 2px solid #e2e8f0; border-top-color: var(--brand-orange, #fc6612);
  animation: busca-previa-gira .7s linear infinite;
}
@keyframes busca-previa-gira { to { transform: rotate(360deg); } }
@media (max-width: 991px) {
  /* No celular a busca já ocupa a largura toda: a prévia vem logo abaixo, também de ponta a ponta. */
  body.portal-white.portal-defrente .portal-search-wrap.is-open .busca-previa {
    left: 0; right: 0; top: 100%; width: auto; max-height: calc(100vh - 190px);
    border-radius: 0 0 16px 16px; padding: 8px 12px 12px;
  }
}
@media (prefers-reduced-motion: reduce) { .busca-previa { animation: none; } }
.portal-defrente .portal-search-form.tem-previa { overflow: visible !important; }
@media (max-width: 991px) { body.portal-white.portal-defrente .portal-search-wrap.is-open .portal-search-form { overflow: visible; } body.portal-white.portal-defrente .portal-header-bar { z-index: 2; } }

/* ===== Selos "Instalar o app" no rodapé (coluna da logo, lado a lado) ===== */
.footer-app { margin-top: 22px; }
.footer-app-titulo { display: block; margin-bottom: 10px; font-family: 'Inter', Arial, sans-serif; font-size: .82rem; font-weight: 500; letter-spacing: 0; text-transform: none; color: rgba(255, 255, 255, .72); }
.footer-app-selos { display: flex; flex-wrap: nowrap; gap: 8px; }
.app-selo {
  flex: 1 1 0; min-width: 0; max-width: 160px;
  display: inline-flex; align-items: center; gap: 8px; height: 46px; padding: 0 12px 0 10px;
  border: 1px solid rgba(255, 255, 255, .28); border-radius: 10px; background: #000; color: #fff;
  text-align: left; white-space: nowrap; cursor: pointer; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.app-selo i { flex-shrink: 0; font-size: 1.45rem; line-height: 1; }
.app-selo .bi-android2 { color: #3ddc84; }
.app-selo span { display: flex; flex-direction: column; min-width: 0; line-height: 1.1; }
.app-selo small { font-size: .58rem; letter-spacing: .02em; color: rgba(255, 255, 255, .78); }
.app-selo strong { font: 600 .95rem/1.15 'Inter', Arial, sans-serif; letter-spacing: -.01em; }
.app-selo:hover { transform: translateY(-2px); border-color: rgba(255, 255, 255, .55); box-shadow: 0 8px 20px rgba(0, 0, 0, .35); }
.app-selo:focus-visible { outline: 2px solid var(--brand-orange, #fc6612); outline-offset: 3px; }
.app-selo.is-seu { border-color: var(--brand-orange, #fc6612); box-shadow: 0 0 0 1px var(--brand-orange, #fc6612); }
html.app-instalado .footer-app { display: none; }

/* ===== Guia de instalação (folha que sobe no celular / janela no computador) ===== */
.app-guia { position: fixed; inset: 0; z-index: 11000; display: flex; align-items: center; justify-content: center; }
.app-guia[hidden] { display: none; }
.app-guia-fundo { position: absolute; inset: 0; background: rgba(0, 17, 42, .55); opacity: 0; transition: opacity .25s ease; }
.app-guia-caixa {
  position: relative; width: min(420px, calc(100vw - 32px)); max-height: 90vh; overflow-y: auto;
  padding: 24px 22px 22px; border-radius: 20px; background: #fff; color: #0c1c2b;
  font-family: 'Inter', Arial, sans-serif; box-shadow: 0 24px 60px rgba(0, 17, 42, .35);
  opacity: 0; transform: translateY(20px) scale(.98); transition: opacity .25s ease, transform .3s cubic-bezier(.2, .8, .2, 1);
}
.app-guia.is-aberto .app-guia-fundo { opacity: 1; }
.app-guia.is-aberto .app-guia-caixa { opacity: 1; transform: none; }
.app-guia-fechar { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 50%; background: #f1f5f9; color: #0c1c2b; }
.app-guia-topo { display: flex; align-items: center; gap: 12px; padding-right: 36px; margin-bottom: 18px; }
.app-guia-topo img { border-radius: 14px; box-shadow: 0 4px 12px rgba(0, 17, 42, .2); }
.app-guia-topo strong { display: block; font-size: 1.02rem; }
.app-guia-topo small { color: #64748b; font-size: .78rem; }
.app-guia-passos h3 { margin: 0 0 12px; font: 700 1.1rem/1.3 'Inter', Arial, sans-serif; color: #0c1c2b; }
.app-guia-passos ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.app-guia-passos li { display: flex; align-items: flex-start; gap: 12px; padding: 12px; border-radius: 12px; background: #f6f8fb; font-size: .9rem; line-height: 1.45; }
.app-guia-passos li > span { flex-shrink: 0; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--brand-orange, #fc6612); color: #fff; font-size: .8rem; font-weight: 700; }
.app-guia-passos li > div { flex: 1; min-width: 0; padding-top: 2px; }
.app-guia-passos li i { color: #0a84ff; }
.app-guia-passos p { margin: 0; font-size: .92rem; line-height: 1.55; color: #334155; }
@media (max-width: 575px) {
  .app-guia { align-items: flex-end; }
  .app-guia-caixa { width: 100%; max-width: none; border-radius: 22px 22px 0 0; padding-bottom: calc(22px + env(safe-area-inset-bottom)); transform: translateY(100%); }
}
@media (prefers-reduced-motion: reduce) { .app-guia-caixa, .app-guia-fundo, .app-selo { transition: none; } }

/* ===== Versículo do dia (Admin > Versículo do dia) — cartão claro, padrão das seções da lateral ===== */
.versiculo-dia { margin: 20px 0; }
.versiculo-dia-texto { margin: 6px 0 0; }
.versiculo-dia-texto p {
  margin: 0; font-family: 'Source Serif 4', Georgia, serif !important; font-size: 1.08rem !important;
  font-weight: 400 !important; font-style: normal; line-height: 1.6; color: #1e293b; text-wrap: pretty;
}
.versiculo-dia-rodape { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.versiculo-dia-rodape cite {
  font: 700 .76rem/1.2 'Inter', Arial, sans-serif; font-style: normal; letter-spacing: .05em; text-transform: uppercase;
  color: var(--brand-orange, #fc6612);
}
.versiculo-dia-rodape cite small { margin-left: 4px; font-weight: 600; font-size: .66rem; letter-spacing: .04em; color: #94a3b8; }
.versiculo-dia-compartilhar {
  display: inline-flex; align-items: center; gap: 5px; flex-shrink: 0;
  font: 600 .74rem/1 'Inter', Arial, sans-serif; color: #64748b; text-decoration: none; transition: color .2s ease;
}
.versiculo-dia-compartilhar i { color: #25d366; font-size: .9rem; }
.versiculo-dia-compartilhar:hover { color: #128c4a; }
/* Na editoria Gospel: no topo da lista, texto maior */
.versiculo-dia--destaque { margin: 0 0 24px; }
.versiculo-dia--destaque .versiculo-dia-texto p { font-size: 1.3rem !important; max-width: 52ch; }
@media (max-width: 575px) {
  .versiculo-dia--destaque .versiculo-dia-texto p { font-size: 1.14rem !important; }
}

/* ===== Acessibilidade (Admin > Aparência > Acessibilidade) ===== */
/* No meio da lateral; o painel do VLibras abre do lado oposto para não cobrir o botão. */
.isp-a11y { position: fixed; z-index: 1045; top: 50%; transform: translateY(-50%); font-family: 'Inter', Arial, sans-serif; }
.isp-a11y--direita { right: 16px; }
.isp-a11y--esquerda { left: 16px; }
.isp-a11y-main {
  display: grid; place-items: center; width: 50px; height: 50px; padding: 0; border: 2px solid #fff; border-radius: 50%;
  background: var(--portal-header-fundo, #00112a); color: #fff; cursor: pointer;
  box-shadow: 0 6px 18px rgba(0, 17, 42, .3); transition: transform .2s ease, background .2s ease;
}
.isp-a11y-main:hover, .isp-a11y.is-aberto .isp-a11y-main { transform: scale(1.06); background: var(--accent, #16456b); }
.isp-a11y-main:focus-visible, .isp-a11y-options button:focus-visible { outline: 3px solid var(--brand-orange, #fc6612); outline-offset: 3px; }
.isp-a11y-options {
  position: absolute; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; gap: 8px;
  margin: 0; padding: 0; list-style: none;
  animation: isp-a11y-entra .2s ease-out;
}
.isp-a11y--direita .isp-a11y-options { right: calc(100% + 10px); align-items: flex-end; }
.isp-a11y--esquerda .isp-a11y-options { left: calc(100% + 10px); align-items: flex-start; }
.isp-a11y-options[hidden] { display: none; }
@keyframes isp-a11y-entra { from { opacity: 0; } to { opacity: 1; } }
.isp-a11y-options button {
  display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px 0 12px; border: 0; border-radius: 999px;
  background: #fff; color: #0c1c2b; font: 600 .86rem/1 'Inter', Arial, sans-serif; white-space: nowrap; cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 17, 42, .2); transition: background .2s ease, color .2s ease;
}
.isp-a11y-options button svg { flex-shrink: 0; color: var(--accent, #16456b); }
.isp-a11y-options button:hover { background: #eef3f8; }
.isp-a11y-options button[aria-pressed="true"] { background: var(--portal-header-fundo, #00112a); color: #fff; }
.isp-a11y-options button[aria-pressed="true"] svg { color: #ffcf71; }
.isp-a11y-options button.is-carregando { opacity: .7; cursor: progress; }
.isp-a11y-options button.is-carregando svg { animation: isp-a11y-pulsa .9s ease-in-out infinite; }
@keyframes isp-a11y-pulsa { 50% { opacity: .3; } }
@media (max-width: 991px) {
  .isp-a11y--direita { right: 10px; }
  .isp-a11y--esquerda { left: 10px; }
  .isp-a11y-main { width: 46px; height: 46px; }
}
@media (prefers-reduced-motion: reduce) { .isp-a11y-options { animation: none; } }

/* O botão azul padrão do VLibras fica escondido: o botão "Libras" do portal abre o tradutor. */
#vlibras-access-wrapper { display: none !important; }

/* ===== Alto contraste: fundo preto, texto branco, links amarelos (padrão de acessibilidade) ===== */
html.alto-contraste body,
html.alto-contraste body *:not(:is(#vlibras-app-root, #vlibras-app-root *)) {
  background-color: #000 !important;
  color: #fff !important;
  border-color: #fff !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
html.alto-contraste body :is(a, a *, button:not(.isp-a11y-main):not(.isp-a11y-options button) *, .portal-cat-link, mark):not(:is(#vlibras-app-root, #vlibras-app-root *)) { color: #ff0 !important; }
html.alto-contraste body a:is(:hover, :focus) { text-decoration: underline !important; }
html.alto-contraste body :is(input, textarea, select) { border: 1px solid #fff !important; }
html.alto-contraste body :is(input, textarea)::placeholder { color: #ccc !important; }
html.alto-contraste body :is(img, video, iframe, picture) { background-color: transparent !important; }
html.alto-contraste body svg :is(path, circle, rect):not([fill="none"]) { fill: currentColor; }
html.alto-contraste body .isp-a11y-main { border-color: #ff0 !important; }
html.alto-contraste body .isp-a11y-options button[aria-pressed="true"] { outline: 2px solid #ff0; }

/* Avatar de autor sem foto (iniciais) */
.avatar-iniciais{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(145deg,#0b2a5b,var(--portal-header-fundo,#00112a));color:#fff;font-weight:700;letter-spacing:.02em;line-height:1;user-select:none}

/* Colunistas (home) — Admin > Colunas */
.portal-home-colunistas .colunistas-lista{list-style:none;margin:.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.5rem;text-align:center}
.colunista-item{min-width:0}
.colunista-link{display:block;text-decoration:none;color:inherit}
.colunista-foto{position:relative;display:block;width:118px;height:118px;margin:0 auto .9rem;border-radius:50%;padding:3px;background:conic-gradient(var(--brand-orange,#fc6612) 0 70%,var(--portal-header-fundo,#00112a) 70% 100%);font-size:2rem;transition:transform .25s}
.colunista-foto>*{border:3px solid #fff;border-radius:50%;width:100%;height:100%}
.colunista-foto img.colunista-img{display:block;object-fit:cover;object-position:65% 25%}
.colunista-link:hover .colunista-foto{transform:translateY(-3px)}
.colunista-nome{display:block;font-family:'Poppins','Segoe UI',system-ui,sans-serif;font-weight:700;font-size:1.05rem;line-height:1.25;color:#0b1a33;transition:color .2s}
.colunista-link:hover .colunista-nome{color:var(--brand-orange,#fc6612)}
.colunista-linha{display:block;width:28px;height:3px;border-radius:3px;background:var(--brand-orange,#fc6612);margin:.45rem auto}
.colunista-coluna{display:block;font-size:.85rem;line-height:1.35;color:rgba(0,0,0,.6)}
@media (max-width:767.98px){
  .portal-home-colunistas .colunistas-lista{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;margin:1.1rem -12px 0;padding:0 12px 4px;scroll-padding:0 12px;scrollbar-width:none}
  .portal-home-colunistas .colunistas-lista::-webkit-scrollbar{display:none}
  .colunista-item{flex:0 0 40%;scroll-snap-align:start}
  .colunista-foto{width:96px;height:96px;font-size:1.6rem}
  .colunista-nome{font-size:.95rem}
  .colunista-coluna{font-size:.8rem}
}

/* Página da coluna: foto no fundo claro */
.coluna-perfil .colunista-foto{width:96px;height:96px;font-size:1.6rem}
.coluna-perfil .colunista-foto>*{border-color:#f6f8fb}

/* Cabeçalho da página da coluna (noticias?coluna=ID) */
.coluna-perfil{display:flex;align-items:center;gap:1.1rem;padding:1.25rem;border-radius:16px;background:#f6f8fb;margin-bottom:1.5rem}
.coluna-perfil .colunista-foto{margin:0;flex-shrink:0}
.coluna-perfil-rotulo{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-orange,#fc6612)}
.coluna-perfil h1{font-family:'Poppins','Segoe UI',system-ui,sans-serif;font-size:1.6rem;font-weight:800;margin:.15rem 0 .2rem;color:#0b1a33}
.coluna-perfil p{margin:0;color:rgba(0,0,0,.68);font-size:.95rem}
.noticia-coluna-selo{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--brand-orange,#fc6612);text-decoration:none}
.noticia-coluna-selo:hover{text-decoration:underline}
.portal-editor-foto .avatar-iniciais{position:relative;z-index:1;font-size:.95rem;border:2px solid #fff}
.autor-perfil-foto .avatar-iniciais{font-size:2.2rem}

/* Colunistas: faixa clara + cartões brancos */
.portal-home-colunistas{background:#f3f6fa;margin:1rem 0}
.portal-home-colunistas.py-4{padding-top:2rem!important;padding-bottom:2.1rem!important}
.portal-home-colunistas .colunista-link{height:100%;padding:1.5rem 1rem 1.35rem;background:#fff;border:1px solid #e6ebf2;border-radius:16px;box-shadow:0 1px 2px rgba(0,17,42,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.portal-home-colunistas .colunista-link:hover{border-color:rgba(252,102,18,.45);box-shadow:0 12px 26px -16px rgba(0,17,42,.35);transform:translateY(-2px)}
.portal-home-colunistas .colunista-link:hover .colunista-foto{transform:none}
.portal-home-colunistas .colunista-item{display:flex}
.portal-home-colunistas .colunista-item>.colunista-link{flex:1}
@media (max-width:767.98px){
  .portal-home-colunistas .colunista-item{flex:0 0 46%}
  .portal-home-colunistas .colunista-link{padding:1.1rem .7rem 1rem}
}

/* Seções com degrau curvo (classe .secao-curvas; cor em --curvas-fundo): topo depois do meio, base espelhada.
   --curva-h: altura do degrau · --curva-x: onde o degrau começa · --curva-w: largura da subida */
.secao-curvas{--curva-h:44px;--curva-x:55%;--curva-w:96px;--curva-resto:calc(45% - 42px);position:relative;background:var(--curvas-fundo);margin-block:var(--curva-h)}
.secao-curvas::before,.secao-curvas::after{content:"";position:absolute;left:0;right:0;height:var(--curva-h);pointer-events:none;background:var(--curvas-fundo);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 44' preserveAspectRatio='none'%3E%3Cpath d='M0 44C24 44 32 38 40 28L54 12C61 4 69 0 96 0V44z'/%3E%3C/svg%3E") var(--curva-x) bottom/var(--curva-w) 100% no-repeat,linear-gradient(#000,#000) right top/var(--curva-resto) 100% no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 44' preserveAspectRatio='none'%3E%3Cpath d='M0 44C24 44 32 38 40 28L54 12C61 4 69 0 96 0V44z'/%3E%3C/svg%3E") var(--curva-x) bottom/var(--curva-w) 100% no-repeat,linear-gradient(#000,#000) right top/var(--curva-resto) 100% no-repeat}
.secao-curvas::before{bottom:calc(100% - 1px)}
.secao-curvas::after{top:calc(100% - 1px);transform:rotate(180deg)}
@media (max-width:767.98px){.secao-curvas{--curva-h:28px;--curva-x:45%;--curva-w:62px;--curva-resto:calc(55% - 33px)}}
.portal-home-colunistas{--curvas-fundo:#edf2f8}
.portal-home-videos.secao-curvas{--curvas-fundo:var(--videos-bg,#000);margin-top:var(--curva-h)!important;margin-bottom:var(--curva-h)!important}


.colunista-foto>img{background:#e9eef5}
.portal-home-colunistas .colunista-link{border-radius:26px}
/* Colunistas: setas de navegação (aparecem só quando a lista rola, ex.: celular) */
.portal-home-colunistas .portal-rnd-head{align-items:center}
.colunistas-setas{display:flex;gap:.5rem;flex-shrink:0}
.colunistas-setas[hidden]{display:none}
.colunistas-seta{width:40px;height:40px;border-radius:50%;border:1px solid #dde4ee;background:#fff;color:var(--portal-header-fundo,#00112a);display:inline-flex;align-items:center;justify-content:center;font-size:1rem;box-shadow:0 2px 6px -3px rgba(0,17,42,.25);transition:background .2s,color .2s,border-color .2s,opacity .2s}
.colunistas-seta:hover:not(:disabled),.colunistas-seta:focus-visible{background:var(--brand-orange,#fc6612);border-color:var(--brand-orange,#fc6612);color:#fff}
.colunistas-seta:disabled{opacity:.35;cursor:default}

/* Celular: notícias em 2 colunas (Destaques, grades de categoria, página de notícias e "Leia também") */
@media (max-width:575.98px){
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .row:has(> .col-sm-6){--bs-gutter-x:.75rem;--bs-gutter-y:.75rem}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .row > .col-sm-6{flex:0 0 auto;width:50%}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-card{border-radius:12px}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-img{height:auto!important;aspect-ratio:4/3}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-cat{top:7px;left:7px;font-size:.58rem;padding:3px 8px}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-body{padding:.6rem .65rem .6rem}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-h{font-size:.86rem!important;line-height:1.3;font-weight:600;-webkit-line-clamp:3}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-preview{display:none}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-meta{padding-top:.45rem;font-size:.68rem}
  :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-ler{display:none}
}

/* Computador: faixa principal do topo fixa em pílula ao rolar (Admin > Aparência > Cabeçalho) */
@keyframes pilulaEntra { from { transform: translate(-50%, -130%) scale(.96); opacity: 0; } 60% { opacity: 1; } to { transform: translate(-50%, 0) scale(1); opacity: 1; } }
@keyframes pilulaSai { from { transform: translate(-50%, 0) scale(1); opacity: 1; } to { transform: translate(-50%, -130%) scale(.96); opacity: 0; } }
@media (min-width: 992px) {
  body.portal-white.portal-defrente .portal-topo.is-pilula { padding-top: var(--pilula-espaco, 96px); }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-header-bar {
    position: fixed; top: 12px; left: 50%; z-index: 1040;
    width: min(calc(var(--portal-content-width, 1320px) - 2 * var(--portal-gutter, 24px)), calc(100% - 32px));
    transform: translate(-50%, 0);
    border-radius: 999px;
    box-shadow: 0 18px 40px -18px rgba(0, 17, 42, .6), 0 4px 12px -6px rgba(0, 17, 42, .35);
    outline: 1px solid rgba(255, 255, 255, .07); outline-offset: -1px;
    animation: pilulaEntra .7s cubic-bezier(.16, 1, .3, 1) both;
  }
  body.portal-white.portal-defrente .portal-topo.is-pilula-saindo .portal-header-bar { animation: pilulaSai .42s cubic-bezier(.55, 0, .7, .2) both; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-header-inner { max-width: none; width: 100%; padding: 7px 8px 7px 22px !important; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-top-row { min-height: 50px; gap: 18px; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-logo-img { height: 44px; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-editor-foto { width: 38px; height: 38px; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-editor-cargo { display: none; }
  body.portal-white.portal-defrente .portal-topo.is-pilula .portal-search-form { border-radius: 999px; }
}
@media (prefers-reduced-motion: reduce) { body.portal-white.portal-defrente .portal-topo.is-pilula .portal-header-bar, body.portal-white.portal-defrente .portal-topo.is-pilula-saindo .portal-header-bar { animation: none; } }

/* Rótulo "Publicidade" da lateral (não é título de conteúdo) */
.portal-random-two-cols p.portal-rnd-side-title { line-height: 1.2; }

/* ===== Aviso de cookies (Admin > Aparência > Cookies) — discreto, canto inferior esquerdo ===== */
.cookie-aviso {
  position: fixed; z-index: 1046; left: 16px; bottom: 16px;
  display: flex; align-items: center; gap: 10px; max-width: min(460px, calc(100vw - 32px));
  padding: 8px 8px 8px 14px; border-radius: 999px;
  background: rgba(255, 255, 255, .97); border: 1px solid rgba(12, 28, 43, .08);
  box-shadow: 0 8px 24px -10px rgba(0, 17, 42, .35);
  font-family: 'Inter', Arial, sans-serif; color: #33414f;
  opacity: 0; transform: translateY(8px); transition: opacity .25s ease, transform .25s ease;
}
.cookie-aviso.is-visivel { opacity: 1; transform: none; }
.cookie-aviso[hidden] { display: none; }
.cookie-aviso > i { flex: 0 0 auto; font-size: 1rem; color: var(--brand-orange, #fc6612); }
.cookie-aviso p { margin: 0; font-size: .78rem; line-height: 1.35; }
.cookie-aviso button {
  flex: 0 0 auto; padding: 6px 14px; border: 0; border-radius: 999px;
  background: var(--portal-header-fundo, #00112a); color: #fff;
  font: 600 .76rem/1 'Inter', Arial, sans-serif; cursor: pointer; transition: background .2s;
}
.cookie-aviso button:hover, .cookie-aviso button:focus-visible { background: var(--brand-orange, #fc6612); outline: none; }
@media (max-width: 991px) {
  body:has(.app-barra) .cookie-aviso { bottom: calc(76px + env(safe-area-inset-bottom)); }
}
@media (max-width: 575px) {
  .cookie-aviso { left: 10px; max-width: calc(100vw - 20px); border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) { .cookie-aviso { transition: none; } }
/* ===== Selos de categoria: fonte mais leve e mais respiro (home, listagens, notícia, sugestões) ===== */
body.portal-white.portal-defrente :is(.portal-rnd-cat, .home-side-news-cat:not(.home-portal-grid .home-side-news-cat), .home-featured-news-cat, .portal-col3-cat:not(.home-portal-grid .portal-col3-cat), .noticia-cat-pill) {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 13px !important;
  border-radius: 999px;
  font-family: 'Poppins', 'Segoe UI', system-ui, sans-serif !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .02em !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}
/* Rótulos de texto (sem fundo) na grade da home */
body.portal-white.portal-defrente .home-portal-grid :is(.portal-col3-cat, .home-side-news-cat) { font-weight: 600 !important; letter-spacing: .02em; text-transform: none !important; font-size: .74rem; }
body.portal-white.portal-defrente :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-cat { top: 12px; left: 12px; }
@media (max-width: 575px) {
  body.portal-white.portal-defrente :is(.portal-rnd-cat, .home-side-news-cat:not(.home-portal-grid .home-side-news-cat), .home-featured-news-cat, .noticia-cat-pill) { min-height: 24px; padding: 4px 11px !important; font-size: .68rem !important; }
  body.portal-white.portal-defrente :is(#rnd, #noticiasCat, .portal-home-cat-grade, .noticia-sugestoes) .portal-rnd-cat { top: 8px; left: 8px; }
}