/* DRE Cáceres - estilos compartilhados extraídos do HTML estático */

.top-header-clean { background:#fff; padding:20px 0; }
.top-header-flex { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; }
.logo img { max-height:100px; }
.header-right { display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.search-box { display:flex; align-items:center; border:1px solid #ddd; border-radius:30px; padding:6px 14px; min-width:260px; }
.search-box input { border:0; outline:0; width:100%; }
.header-icons a { margin-left:10px; color:#1F386B; font-size:18px; }
.header-info span { margin-left:14px; font-size:13px; color:#333; }
.header-nav { border-top:1px solid #eee; }
.menuzord-menu { display:flex; flex-wrap:wrap; }
.sub-escolas { display:none; list-style:none; padding-left:12px; margin:0; }
.sub-escolas.ativo { display:block; }
.sub-escolas li a { padding:6px 10px; display:block; font-size:13px; }

.slider-section { height:650px; position:relative; overflow:hidden; }
.slider, .slides { width:100%; height:100%; position:relative; }
.slide { position:absolute; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1s ease-in-out; }
.slide.active { opacity:1; }
.prev, .next { position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,.4); color:#fff; border:none; font-size:30px; padding:10px 15px; cursor:pointer; z-index:3; border-radius:5px; }
.prev { left:20px; } .next { right:20px; }
@media (max-width:768px){ .slider-section{height:350px;} }

.contador-area { background:#8e44ad; padding:30px 0; }
.contador-grid { display:flex; justify-content:center; align-items:center; gap:90px; flex-wrap:wrap; text-align:center; }
.contador-numero { font-size:65px; font-weight:bold; color:#fff; margin:0 0 10px; line-height:1; }
.contador-texto { font-size:20px; color:#fff; margin:0; text-transform:uppercase; letter-spacing:1px; font-weight:600; }

.noticias-home { padding:30px 0; background:#f7f7f7; }
.noticias-grid { display:grid; grid-template-columns:1.5fr 1.5fr; gap:20px; }
.noticia { position:relative; overflow:hidden; border-radius:18px; box-shadow:0 8px 25px rgba(0,0,0,.12); min-height:180px; display:flex; align-items:flex-end; text-decoration:none; color:#fff; cursor:pointer; }
.noticia img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; transition:transform .45s ease; }
.noticia-grande { min-height:440px; }
.noticia-pequena { min-height:210px; }
.noticias-lateral { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.conteudo-noticia { position:relative; z-index:2; padding:22px 22px 24px; width:100%; color:#fff !important; text-shadow:0 2px 8px rgba(0,0,0,.45); transition:transform .35s ease; }
.noticias-home .conteudo-noticia h2,
.noticias-home .conteudo-noticia h3,
.noticias-home .conteudo-noticia p,
.noticias-home .conteudo-noticia a,
.noticias-home .data-noticia,
.noticias-home .tag-noticia { color:#fff !important; }
.noticias-home .conteudo-noticia h2 { font-size:32px; font-weight:800; line-height:1.2; margin:8px 0 10px; letter-spacing:.2px; }
.noticias-home .conteudo-noticia h3 { font-size:18px; font-weight:800; line-height:1.25; margin:6px 0 8px; }
.noticias-home .conteudo-noticia p { font-size:15px; font-weight:500; line-height:1.4; margin:0; opacity:.95; }
.noticias-home .noticia-pequena .conteudo-noticia p { font-size:13px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.noticias-home .data-noticia { font-size:13px; font-weight:600; opacity:.95; }
.noticias-home .tag-noticia { display:inline-block; background:rgba(255,255,255,.22); border:0; padding:4px 12px; font-size:11px; font-weight:800; letter-spacing:1px; border-radius:20px; margin-bottom:8px; }
.noticias-home .overlay { position:absolute; inset:0; z-index:1; transition:opacity .35s ease; }
.overlay.azul { background:linear-gradient(180deg, rgba(20,70,160,.18) 0%, rgba(25,80,175,.55) 45%, rgba(15,55,140,.92) 100%); }
.overlay.verde { background:linear-gradient(180deg, rgba(40,150,50,.28) 0%, rgba(50,160,60,.75) 45%, rgba(25,120,40,.94) 100%); }
.overlay.laranja { background:linear-gradient(180deg, rgba(230,120,20,.28) 0%, rgba(235,125,25,.78) 45%, rgba(210,100,10,.94) 100%); }
.overlay.rosa { background:linear-gradient(180deg, rgba(200,40,110,.28) 0%, rgba(210,45,120,.78) 45%, rgba(175,25,95,.94) 100%); }
.overlay.amarelo { background:linear-gradient(180deg, rgba(190,175,30,.28) 0%, rgba(185,170,25,.78) 45%, rgba(155,145,15,.94) 100%); }
.noticia:hover { text-decoration:none; color:#fff; box-shadow:0 14px 32px rgba(0,0,0,.22); }
.noticia:hover img { transform:scale(1.1); }
.noticia:hover .overlay { opacity:.72; }
.noticia:hover .conteudo-noticia { transform:translateY(-4px); }

.links-importantes, .editais-home, .galeria-fotos { padding:40px 0; }
.dre-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:nowrap; margin-bottom:20px; width:100%; }
.dre-section-head h2 { margin:0; flex:1 1 auto; width:auto !important; max-width:none; }
.dre-ver-todos { font-size:16px; font-weight:600; color:#1F386B; text-decoration:none; white-space:nowrap; margin-left:auto; flex:0 0 auto; align-self:center; }
.dre-ver-todos:hover { color:#09a8a2; text-decoration:none; }
.dre-ver-todos .fa { margin-left:4px; }
.dre-mapa { display:block; min-height:780px; height:780px; }
.grid-links, .grid-editais, .grid-galeria { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.link-card, .edital-card, .item-galeria { background:#fff; border-radius:18px; padding:20px; box-shadow:0 8px 25px rgba(0,0,0,.08); display:block; text-decoration:none; color:inherit; transition:transform .2s ease, box-shadow .2s ease; cursor:pointer; }
.link-card:hover, .edital-card:hover, .item-galeria:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(0,0,0,.12); text-decoration:none; color:inherit; }
.listagem-card { display:block; text-decoration:none; color:inherit; transition:transform .2s ease, box-shadow .2s ease; }
.listagem-card:hover { text-decoration:none; color:inherit; transform:translateY(-3px); box-shadow:0 12px 28px rgba(0,0,0,.12); }
.status-aberto { color:#27ae60; font-weight:bold; }
.status-andamento { color:#f39c12; font-weight:bold; }
.status-fechado { color:#c0392b; font-weight:bold; }

.dre-filtro { margin:18px 0 8px; }
.dre-filtro-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.dre-filtro-campo { position:relative; }
.dre-filtro-busca { flex:1; min-width:220px; }
.dre-filtro-busca .fa { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#888; }
.dre-filtro-busca input { width:100%; padding:10px 12px 10px 36px; border:1px solid #ddd; border-radius:8px; outline:0; }
.dre-filtro-campo select { padding:10px 12px; border:1px solid #ddd; border-radius:8px; min-width:160px; background:#fff; }
.dre-filtro-btn { padding:10px 18px; border:0; border-radius:8px; background:#09a8a2; color:#fff; font-weight:600; cursor:pointer; }
.dre-filtro-btn:hover { background:#078f8a; }
.dre-filtro-limpar { color:#666; text-decoration:underline; font-size:14px; }
.dre-filtro-vazio { grid-column:1 / -1; color:#666; padding:20px 0; }

.dre-page-wrapper{ padding:30px 0; }
.dre-page-row{ display:flex; gap:20px; align-items:flex-start; }
.dre-page-sidebar{ width:280px; flex-shrink:0; }
.dre-page-logo{ text-align:center; margin-bottom:20px; }
.dre-page-logo img{ max-width:220px; height:auto; }
.dre-page-menu{ border:1px solid #333; }
.dre-page-menu-title{ background:#6748a8; color:#fff; text-align:center; font-size:18px; font-weight:bold; padding:12px; }
.dre-page-menu ul{ list-style:none; margin:0; padding:0; }
.dre-page-menu li{ border-top:1px solid #333; }
.dre-page-menu li a{ display:block; text-decoration:none; text-align:center; padding:10px; font-weight:bold; color:#000; background:#fff; }
.dre-page-menu li.active a{ background:#b8ddda; }
.dre-page-content{ flex:1; }
.dre-page-title{ background:#09a8a2; border:2px solid #222; color:#fff; font-size:22px; font-weight:bold; padding:10px 15px; text-transform:uppercase; margin-bottom:15px; }
.dre-page-text{ color:#222; font-size:16px; line-height:1.65; word-wrap:break-word; position:relative; z-index:2; }
.dre-page-text p{ margin:0 0 12px; }
.dre-page-text ul, .dre-page-text ol{ margin:0 0 12px; padding-left:1.4em; }
.dre-page-text img{ max-width:100%; height:auto; }
.dre-page-text a,
.dre-page-text a.dre-cms-link{ color:#1a56db; text-decoration:underline; cursor:pointer; pointer-events:auto !important; position:relative; z-index:5; display:inline; font-weight:700; word-break:break-word; }
.dre-page-text a:hover{ color:#0b3d91; text-decoration:underline; }
.dre-edital-anexos{ margin:28px 0 10px; padding:20px; background:#f4f8fb; border:1px solid #d7e3ee; border-radius:12px; }
.dre-edital-anexos h3{ margin:0 0 14px; font-size:18px; color:#1F386B; }
.dre-edital-anexo{ display:block; background:#1a56db; color:#fff !important; text-decoration:none !important; padding:12px 16px; border-radius:8px; margin:0 0 10px; font-weight:700; pointer-events:auto !important; position:relative; z-index:6; }
.dre-edital-anexo:last-child{ margin-bottom:0; }
.dre-edital-anexo:hover{ background:#0b3d91; color:#fff !important; text-decoration:none !important; }
.dre-edital-anexo .fa{ margin-right:8px; }
.edital-card p, .listagem-card .body p{ overflow-wrap:anywhere; }
.equipe-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.equipe-card{ text-align:center; background:#fff; border-radius:12px; padding:16px; box-shadow:0 6px 18px rgba(0,0,0,.08); }
.equipe-card img{ width:140px; height:140px; object-fit:cover; border-radius:50%; margin-bottom:10px; }
.listagem-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin:30px 0; }
.listagem-card{ background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 8px 20px rgba(0,0,0,.08); }
.listagem-card img{ width:100%; height:180px; object-fit:cover; }
.listagem-card .body{ padding:16px; }

@media(max-width:991px){
  .noticias-grid, .noticias-lateral, .grid-links, .grid-editais, .grid-galeria, .equipe-grid, .listagem-grid{ grid-template-columns:1fr; }
  .dre-page-row{ flex-direction:column; }
  .dre-page-sidebar{ width:100%; }
  .contador-grid{ gap:40px; }
  .dre-mapa{ min-height:520px; height:520px !important; }
  .dre-filtro-row{ flex-direction:column; align-items:stretch; }
  .dre-filtro-campo select, .dre-filtro-btn{ width:100%; }
  .dre-section-head{ flex-wrap:nowrap; }
  .dre-ver-todos{ margin-left:auto; text-align:right; }
}
