:root{--sol-yellow:#FFD200;--sol-yellow-strong:#E6BE00;--sol-black:#111111;--sol-text:#222222;--sol-muted:#6d675f;--sol-bg:#f3f4f6;--sol-card:#ffffff;--sol-line:#ece5d8;--sol-shadow:0 16px 40px rgba(17,17,17,.06);--sol-shadow-soft:0 10px 24px rgba(17,17,17,.05);}
.article-wrap{width:min(1180px, calc(100% - 32px));margin:0 auto;padding:clamp(56px, 7vw, 96px) 0 72px;}
.article-layout{display:grid;grid-template-columns:minmax(0, 1fr) 320px;gap:32px;align-items:stretch;}
.article-side-sticky{position:sticky;top:207px;display:flex;flex-direction:column;gap:18px;}
.article-main{background:var(--sol-card);border:1px solid var(--sol-line);border-radius:16px;overflow:hidden;box-shadow:var(--sol-shadow);min-width:0;}
.article-hero{width:100%;height:420px;background:#ece6da center/cover no-repeat;}
.article-body{padding:34px 40px 40px;}
.article-cat{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;background:var(--sol-yellow);color:var(--sol-black);font-size:12px;font-weight:800;margin-bottom:16px;}
.article-title{margin:0 0 12px;font-size:42px;line-height:1.1;color:var(--sol-black);font-weight:900;text-wrap:balance;overflow-wrap:anywhere;}
.article-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--sol-muted);font-size:14px;margin-bottom:22px;}
.article-excerpt{font-size:var(--fs-conteudo-md);line-height:1.7;color:#433f39;margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--sol-line);}

/* Corpo do artigo (HTML vindo do painel).
   Hierarquia 18/16/14 pt do manual de marca para conteúdos de notícia. */
.article-content{font-size:var(--fs-conteudo-sm);line-height:1.85;color:#1f1f1f;overflow-wrap:anywhere;}
.article-content > :first-child{margin-top:0;}
.article-content > :last-child{margin-bottom:0;}
.article-content p{margin:0 0 1.15em;}
.article-content h2{font-size:var(--fs-conteudo-lg);line-height:1.25;font-weight:800;color:var(--sol-black);margin:1.7em 0 .6em;}
.article-content h3{font-size:var(--fs-conteudo-md);line-height:1.3;font-weight:800;color:var(--sol-black);margin:1.5em 0 .5em;}
.article-content h4{font-size:var(--fs-conteudo-sm);font-weight:800;color:var(--sol-black);margin:1.3em 0 .4em;}
.article-content ul, .article-content ol{margin:0 0 1.15em;padding-left:1.4em;}
.article-content li{margin-bottom:.4em;}
.article-content a{color:#8b6f1d;text-decoration:underline;text-underline-offset:3px;}
.article-content a:hover{color:var(--sol-black);}
.article-content img, .article-content video, .article-content iframe{max-width:100%;height:auto;display:block;border-radius:18px;margin:22px 0;}
.article-content iframe{aspect-ratio:16 / 9;width:100%;height:auto;border:0;}
.article-content blockquote{margin:1.5em 0;padding:16px 22px;border-left:4px solid var(--sol-yellow);background:#fffbe8;border-radius:0 14px 14px 0;color:#3f3a34;font-size:var(--fs-conteudo-sm);}
.article-content blockquote p:last-child{margin-bottom:0;}
.article-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.5em 0;font-size:15px;}
.article-content th, .article-content td{padding:10px 14px;border-bottom:1px solid var(--sol-line);text-align:left;vertical-align:top;}
.article-content th{background:#faf6ea;font-weight:800;color:var(--sol-black);white-space:nowrap;}
.article-content hr{border:0;border-top:1px solid var(--sol-line);margin:2em 0;}

/* Comunicados e outra informação oficial — 11 pt do manual de marca. */
.article-content--oficial{font-size:var(--fs-institucional);line-height:1.75;}
.article-content--oficial h2{font-size:var(--fs-conteudo-md);}
.article-content--oficial h3{font-size:var(--fs-conteudo-sm);}
.article-content--oficial h4{font-size:var(--fs-institucional);}

/* Navegação entre notícias (anterior / seguinte) */
.article-pagenav{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--sol-line);border-top:1px solid var(--sol-line);}
.article-pagenav__link{display:flex;flex-direction:column;gap:6px;padding:22px 40px;background:var(--sol-card);text-decoration:none;transition:background .15s ease;}
.article-pagenav__link:hover{background:#fffbe8;}
.article-pagenav__link--next{text-align:right;align-items:flex-end;}
.article-pagenav__label{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8a6d00;}
.article-pagenav__title{font-size:15px;font-weight:700;color:var(--sol-black);line-height:1.4;}

/* Barra lateral */
.side-card{background:var(--sol-card);border:1px solid var(--sol-line);border-radius:12px;padding:20px;box-shadow:var(--sol-shadow-soft);}
.side-card h3,.bottom-card h3{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--sol-muted);}
.side-card h3::before,.bottom-card h3::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--sol-yellow-strong);}
.share-bar{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px;}
.share-btn{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:8px;border:1px solid #eadfca;background:#fffdfa;display:inline-flex;align-items:center;justify-content:center;font-size:22px;color:var(--sol-black);text-decoration:none;cursor:pointer;box-shadow:0 4px 12px rgba(17,17,17,.03);}
.share-btn:hover, .share-btn.is-copied{background:var(--sol-yellow);border-color:var(--sol-yellow-strong);}

/* Tooltip dos botões de partilha */
.share-btn::after{
  content:attr(data-tip);
  position:absolute;
  bottom:calc(100% + 12px);
  left:50%;
  transform:translate(-50%, 4px);
  background:var(--sol-black);
  color:#fff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.01em;
  white-space:nowrap;
  padding:6px 11px;
  border-radius:6px;
  opacity:0;
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease;
  z-index:30;
}
.share-btn::before{
  content:"";
  position:absolute;
  bottom:calc(100% + 6px);
  left:50%;
  transform:translateX(-50%) rotate(45deg);
  width:9px;
  height:9px;
  background:var(--sol-black);
  opacity:0;
  pointer-events:none;
  transition:opacity .16s ease;
  z-index:29;
}
.share-btn:hover::after,
.share-btn:hover::before,
.share-btn:focus-visible::after,
.share-btn:focus-visible::before{opacity:1;}
.share-btn:hover::after,
.share-btn:focus-visible::after{transform:translate(-50%, 0);}
.related-item{display:block;text-decoration:none;color:var(--sol-black);padding:14px 0;border-top:1px solid #f0eadf;}
.related-item:first-of-type{border-top:0;padding-top:0;}
.related-item:hover .related-title{color:#8b6f1d;}
.related-title{font-weight:800;line-height:1.45;margin-bottom:6px;}
.related-meta{font-size:13px;color:var(--sol-muted);}
.related-empty{color:var(--sol-muted);}

/* Rodapé do artigo */
.article-bottom{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.bottom-card{background:var(--sol-card);border:1px solid var(--sol-line);border-radius:12px;padding:24px;box-shadow:var(--sol-shadow-soft);}
.bottom-card h3{margin:0 0 12px;color:var(--sol-black);font-size:24px;font-weight:900;}
.tag-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.tag-pill{display:inline-flex;align-items:center;padding:9px 14px;border-radius:8px;background:var(--sol-yellow);color:var(--sol-black);font-size:13px;font-weight:800;text-decoration:none;}
a.tag-pill:hover{background:var(--sol-yellow-strong);}

/* Comentários */
.comment-box{margin-top:28px;background:linear-gradient(180deg,#fff8db 0%, #fff 100%);border:1px solid #efd98a;border-radius:14px;padding:26px 30px 30px;box-shadow:var(--sol-shadow-soft);}
.comment-box h3{display:flex;align-items:baseline;gap:8px;margin:0 0 6px;color:var(--sol-black);font-size:24px;font-weight:900;}
.comment-box h3 small{font-size:16px;font-weight:700;color:var(--sol-muted);}
.comment-box > p{margin:0 0 20px;color:var(--sol-muted);}
.comment-list{display:grid;gap:14px;margin-bottom:24px;}
.comment-item{background:#fff;border:1px solid #eadfbf;border-radius:18px;padding:16px 18px;}
.comment-item__name{font-weight:800;font-size:17px;color:var(--sol-black);}
.comment-item__date{display:block;font-size:13px;color:var(--sol-muted);margin:2px 0 8px;}
.comment-item__text{color:#3f3a34;line-height:1.75;overflow-wrap:anywhere;}
.comment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.comment-input, .comment-textarea{width:100%;border:1px solid #e2d8bc;border-radius:14px;background:#fff;padding:14px 16px;font:inherit;font-size:15px;outline:none;}
.comment-input:focus, .comment-textarea:focus{border-color:var(--sol-yellow-strong);box-shadow:0 0 0 3px rgba(255,210,0,.25);}
.comment-textarea{min-height:140px;resize:vertical;grid-column:1 / -1;}
.comment-btn{margin-top:14px;min-height:48px;padding:0 26px;border:0;border-radius:12px;background:var(--sol-yellow);color:var(--sol-black);font-weight:800;cursor:pointer;}
.comment-btn:hover{background:var(--sol-yellow-strong);}

@media (max-width: 991px){
  .article-layout, .article-bottom{grid-template-columns:1fr;}
  .article-side-sticky{position:static;}
  .article-title{font-size:28px;}
  .article-hero{height:280px;}
  .article-body{padding:26px 22px 30px;}
}
@media (max-width: 640px){
  .comment-grid{grid-template-columns:1fr;}
  .comment-box{padding:22px 18px 24px;}
  .article-hero{height:210px;}
  .article-title{font-size:22px;}
  .article-excerpt{font-size:16px;}
  .article-pagenav{grid-template-columns:1fr;}
  .article-pagenav__link--next{text-align:left;align-items:flex-start;}
  .article-pagenav__link{padding:18px 22px;}
}
@media print{
  .print-hide{display:none !important;}
  .article-main{box-shadow:none;border:0;}
}

/* ── Comunicado: bloco de download de documento ────────────────── */
.com-doc-banner{display:flex;align-items:center;gap:1rem;background:#f0f4ff;border:1px solid #c7d5f5;border-radius:10px;padding:1.1rem 1.25rem;margin-bottom:1.75rem;}
.com-doc-icon{font-size:2rem;color:#c0392b;flex-shrink:0;}
.com-doc-banner>div{flex:1;}
.com-doc-banner>div strong{display:block;font-size:.95rem;color:#1a1a2e;}
.com-doc-banner>div p{margin:0;font-size:.83rem;color:#666;}
.com-doc-btn{display:inline-flex;align-items:center;white-space:nowrap;background:#1a3050;color:#fff;font-size:.85rem;font-weight:600;padding:.55rem 1.1rem;border-radius:6px;text-decoration:none;transition:background .2s;}
.com-doc-btn:hover{background:#0f1c2e;color:#FECB00;}
.com-back-link{display:inline-flex;align-items:center;font-size:.875rem;color:#555;text-decoration:none;padding:.5rem 0;}
.com-back-link:hover{color:#1a3050;}
@media(max-width:600px){.com-doc-banner{flex-direction:column;align-items:flex-start;}.com-doc-btn{width:100%;justify-content:center;}}
