.site-shell > #conteudo-principal > main { margin-bottom: clamp(32px, 4vw, 56px); }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 1000; padding: 14px; background: #fff; color: #042953; }
.skip-link:focus { top: 12px; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid #a36b00; outline-offset: 3px; }
.site-footer a:focus-visible { outline-color: #c99b45; }
.editorial-banner picture { display: block; width: 100%; height: 100%; }
.editorial-banner img { object-fit: contain; background: #fff; }
.hero-card { overflow: hidden; }
.hero-card .hero-copy { position: relative; width: 100%; align-self: stretch; }
.hero-card .hero-copy > :not(picture) { position: relative; z-index: 1; max-width: 82%; }
.hero-slide-image { position: absolute; inset: 0 0 -52px; }
.hero-slide-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-slide-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,41,83,.88), rgba(4,41,83,.58)); }
.editorial-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 20px 0; }
.editorial-pagination a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border: 1px solid #ccd3df; border-radius: 6px; color: #042953; font-size: 14px; }
.news-search { margin: 24px 0; max-width: 720px; }
.news-search label { display: block; margin-bottom: 8px; font-weight: 700; color: #042953; }
.news-search__controls { display: flex; gap: 10px; }
.news-search input { flex: 1; min-width: 0; min-height: 46px; padding: 10px 14px; border: 1px solid #ccd3df; border-radius: 6px; font: inherit; }
.news-search button { min-height: 46px; padding: 10px 22px; border: 0; border-radius: 6px; background: #042953; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.news-search button:hover { background: #0b3b70; }
.news-search__summary { margin: 0 0 20px; color: #334155; }
.news-search__summary a { color: #042953; text-decoration: underline; }
.news-index-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.news-index-grid .editorial-card { min-width: 0; overflow-wrap: anywhere; }
.news-index-grid .editorial-card p { font-size: 16px; line-height: 1.6; }
.news-index-grid .article-image { width: 100%; }
.image-caption, .image-credit, .editorial-author { font-size: 14px; color: #334155; }
.footer-legal-links { display: flex; flex-wrap: wrap; gap: 12px; }
.footer-legal-links a { font-size: 12px; min-height: 24px; }
.site-footer .socials a { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid #c99b45; border-radius: 50%; color: #c99b45; }
.radio-bar__inner, .live-player { min-width: 0; }
.live-title { overflow-wrap: anywhere; }
.error-page { margin: 0; padding: 24px; min-height: 100vh; display: grid; place-items: center; background: #f5f7fb; color: #042953; font: 16px/1.6 Arial,sans-serif; }
.error-page main { max-width: 640px; }
.error-page nav { display: flex; flex-wrap: wrap; gap: 16px; }
.error-page a { color: #042953; }
@media(max-width: 1000px) { .news-index-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 700px) {
  .news-index-grid { grid-template-columns: minmax(0,1fr); }
  .news-search__controls { flex-direction: column; }
  .hero-card .hero-copy > :not(picture) { max-width: 100%; }
  .live-title { max-width: 45vw; }
  .footer-copyright-row { flex-wrap: wrap; gap: 12px; }
}
