/* CT-09 · Agenda pública — destaque sorteado uma vez por carregamento; demais destaques abaixo.
   Todos os seletores estão isolados em .ct-agenda-index: não afeta o admin. */
.ct-agenda-index{padding-top:30px;padding-bottom:56px}
.ct-agenda-index .ct-agenda-pagehead h1{margin:8px 0 12px}
.ct-agenda-index .ct-agenda-pagehead .cta-lead{margin:0;color:#375a4c;max-width:750px}
.ct-agenda-index .ct-agenda-top{display:grid;grid-template-columns:minmax(248px,290px) minmax(0,1fr);gap:clamp(18px,3vw,32px);align-items:stretch;margin:18px 0 0}
.ct-agenda-index .ct-agenda-sidebar,.ct-agenda-index .ct-agenda-spotlight{min-width:0}
.ct-agenda-index .ct-agenda-sidebar{display:flex;align-items:stretch}
.ct-agenda-index .ct-agenda-sidebar>.ct-agenda-filter{flex:1;align-self:stretch}
.ct-agenda-index .ct-agenda-filter{background:#f9faf6;border:1px solid #d3ded6;border-radius:16px;overflow:visible}
.ct-agenda-index .ct-agenda-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;padding:18px 19px;font-size:1.03rem;font-weight:750;color:#153e30}
.ct-agenda-index .ct-agenda-filter-summary::-webkit-details-marker{display:none}
.ct-agenda-index .ct-agenda-filter-summary:focus-visible{outline:3px solid #298a5e;outline-offset:3px}
.ct-agenda-index .ct-agenda-filter-heading{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.ct-agenda-index .ct-agenda-filter-count{font-size:.72rem;border-radius:30px;background:#e2efe6;color:#286448;padding:3px 8px;font-weight:750}
.ct-agenda-index .ct-agenda-filter-toggle{display:inline-flex;justify-content:center;align-items:center;border-radius:50%;width:28px;height:28px;background:#edf3ed;color:#204b3b;transform-origin:center;transition:transform .2s;font-size:1.5rem;line-height:1}
.ct-agenda-index .ct-agenda-filter[open] .ct-agenda-filter-toggle{transform:rotate(180deg)}
.ct-agenda-index .ct-agenda-filter-inner{padding:10px 13px 10px}
.ct-agenda-index .ct-agenda-filter .cta-filters{display:flex;flex-direction:column;gap:5px;padding:0;border:0;border-radius:0;margin:0;background:transparent;min-width:0}
.ct-agenda-index .ct-agenda-filter-fields > label,.ct-agenda-index .ct-agenda-filter-fields [data-cta-filter-location] label{font-size:.78rem;font-weight:700;line-height:1.17;color:#294a3b}
.ct-agenda-index .ct-agenda-filter input,.ct-agenda-index .ct-agenda-filter select{width:100%;min-width:0;height:36px;padding:6px 10px;margin:2px 0 0;font-size:.86rem;border:1px solid #bacbc1;border-radius:8px;background:#fff;color:#1c4538;box-sizing:border-box}
.ct-agenda-index .ct-agenda-filter input:focus-visible,.ct-agenda-index .ct-agenda-filter select:focus-visible{outline:2px solid #13704c;outline-offset:1px}
.ct-agenda-index .ct-agenda-filter [data-cta-filter-location]{position:relative;min-width:0}
.ct-agenda-index .ct-agenda-filter [data-cta-filter-options]:not(:empty){position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;max-height:225px;overflow-y:auto;background:#fff;border:1px solid #c7d9cc;border-radius:9px;box-shadow:0 12px 25px #123d301b;padding:5px}
.ct-agenda-index .ct-agenda-filter-actions{display:flex;flex-direction:column;gap:0;margin-top:0}
.ct-agenda-index .ct-agenda-submit,.ct-agenda-index .ct-agenda-clear{display:flex;justify-content:center;align-items:center;height:36px;min-height:36px;text-align:center;padding:6px 10px;font:inherit;font-size:.88rem;font-weight:750;border-radius:8px;line-height:1.2;cursor:pointer;box-sizing:border-box;text-decoration:none}
.ct-agenda-index .ct-agenda-submit{background:#133d30;color:#fff;border:1px solid #133d30}
.ct-agenda-index .ct-agenda-submit:hover{background:#246047}
.ct-agenda-index .ct-agenda-clear{color:#21483a;border:1px solid #a7c1b0;background:transparent}
.ct-agenda-index .ct-agenda-clear:hover{background:#e9f3eb}
.ct-agenda-index .ct-agenda-spotlight{display:flex;flex-direction:column;min-height:0;border:1px solid #d4dfd8;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 24px #173a2b0b}
.ct-agenda-index .ct-agenda-spotlight-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;padding:9px 16px 6px}
.ct-agenda-index .ct-agenda-spotlight-head h2{font-size:clamp(1.3rem,1.8vw,1.65rem);line-height:1.2;margin:2px 0 0;color:#163f31}
.ct-agenda-index .ct-agenda-overline{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#607c6a;margin:0}
/* Destaque único: não há timer nem navegação automática. O filtro e o quadro ocupam a mesma faixa de altura. */
.ct-agenda-index .ct-agenda-spotlight-deck{display:flex;flex:1 1 auto;min-height:0}
.ct-agenda-index .ct-agenda-spotlight-slide{display:flex;flex:1 1 auto;min-width:0;min-height:0}
.ct-agenda-index .ct-agenda-spotlight-slide[hidden]{display:none!important}
.ct-agenda-index .ct-agenda-spotlight-link{display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);width:100%;height:100%;min-height:0;color:inherit;text-decoration:none}
.ct-agenda-index .ct-agenda-spotlight-image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;background:#fff;overflow:hidden}
.ct-agenda-index .ct-agenda-spotlight-image img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;display:block;transition:transform .35s ease}
.ct-agenda-index .ct-agenda-spotlight-link:hover .ct-agenda-spotlight-image img{transform:scale(1.025)}
.ct-agenda-index .ct-agenda-spotlight-no-image{background:#fff;color:#214837;padding:26px;text-align:center;box-sizing:border-box;font-size:1.2rem;line-height:1.6}
/* CT-09: imagem e bloco data/título/resumo centralizados verticalmente; local em linha separada. */
.ct-agenda-index .ct-agenda-spotlight-body{min-height:0;display:grid;grid-template-rows:minmax(min-content,1fr) auto;gap:0;padding:9px 16px 11px;min-width:0}
.ct-agenda-index .ct-agenda-spotlight-copy{grid-row:1;align-self:center;display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}
.ct-agenda-index .ct-agenda-date{font-weight:800;letter-spacing:.025em;font-size:.8rem;color:#2a7954}
.ct-agenda-index .ct-agenda-spotlight-copy>strong{font:600 clamp(1.35rem,2vw,1.82rem)/1.17 Georgia,'Times New Roman',serif;color:#153b2c;overflow-wrap:anywhere}
.ct-agenda-index .ct-agenda-spotlight-summary{font-size:.88rem;line-height:1.45;color:#405b4e;overflow-wrap:anywhere}
.ct-agenda-index .ct-agenda-spotlight-foot{display:flex;width:100%;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;grid-row:2;align-self:end;margin-top:5px;font-size:.77rem;color:#60746b}
.ct-agenda-index .ct-agenda-detail-cta{font-size:.82rem;font-weight:800;color:#146342;white-space:nowrap}
.ct-agenda-index .ct-agenda-empty-hero{padding:26px 22px;min-height:220px}
.ct-agenda-index .ct-agenda-empty-hero a{color:#156440;font-weight:700}
/* Outros destaques permanecem visíveis abaixo do filtro e do quadro principal. */
.ct-agenda-index .ct-agenda-featured-more{margin-top:38px}
.ct-agenda-index .ct-agenda-featured-head{margin-bottom:18px}
.ct-agenda-index .ct-agenda-featured-head h2{margin:0;color:#193f30;font-size:clamp(1.55rem,2.45vw,2.15rem);line-height:1.2}
.ct-agenda-index .ct-agenda-featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:20px}
.ct-agenda-index .ct-agenda-featured-card{min-width:0}
.ct-agenda-index .ct-agenda-featured-card[hidden]{display:none!important}
.ct-agenda-index .ct-agenda-featured-card>.cta-card{height:100%;box-sizing:border-box}
.ct-agenda-index .ct-agenda-featured-card .cta-card img{height:180px;object-fit:cover}
.ct-agenda-index .ct-agenda-featured-card .cta-card-body{padding:17px;gap:10px}
.ct-agenda-index .ct-agenda-featured-card .cta-card-body strong{font-size:1.06rem;line-height:1.34}
.ct-agenda-index .ct-agenda-featured-card .cta-card-body>span:not(.cta-date){font-size:.89rem;line-height:1.55}
.ct-agenda-index .ct-agenda-upcoming{margin-top:42px}
.ct-agenda-index .ct-agenda-upcoming-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:19px}
.ct-agenda-index .ct-agenda-upcoming h2{margin:0;font-size:clamp(1.6rem,2.5vw,2.1rem);line-height:1.2;color:#193f30}
.ct-agenda-index .ct-agenda-upcoming-heading a{color:#1b6346;text-decoration:none;font-weight:700;font-size:.86rem}
.ct-agenda-index .ct-agenda-event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ct-agenda-index .ct-agenda-grid-item{min-width:0}
.ct-agenda-index .ct-agenda-grid-item[hidden]{display:none!important}
.ct-agenda-index .ct-agenda-grid-item>.cta-card{height:100%;box-sizing:border-box}
.ct-agenda-index .ct-agenda-grid-item .cta-card img{height:180px;object-fit:cover}
.ct-agenda-index .ct-agenda-grid-item .cta-card-body{padding:17px;gap:10px}
.ct-agenda-index .ct-agenda-grid-item .cta-card-body strong{font-size:1.06rem;line-height:1.34}
.ct-agenda-index .ct-agenda-grid-item .cta-card-body>span:not(.cta-date){font-size:.89rem;line-height:1.55}
.ct-agenda-index .ct-agenda-no-results{padding:20px;border:1px dashed #c5d5cb;border-radius:12px;color:#526b5b}
@media(max-width:1120px){
  .ct-agenda-index .ct-agenda-top{grid-template-columns:minmax(240px,290px) minmax(0,1fr);gap:18px}
  .ct-agenda-index .ct-agenda-spotlight-link{grid-template-columns:minmax(0,39%) minmax(0,1fr)}
  .ct-agenda-index .ct-agenda-spotlight-body{padding:11px 13px}
  .ct-agenda-index .ct-agenda-spotlight-copy{gap:7px}
  .ct-agenda-index .ct-agenda-spotlight-copy>strong{font-size:clamp(1.23rem,1.9vw,1.62rem)}
  .ct-agenda-index .ct-agenda-spotlight-summary{font-size:.86rem;line-height:1.43}
}
@media(max-width:820px){
  .ct-agenda-index .ct-agenda-top{display:flex;flex-direction:column;gap:20px;margin-top:25px}
  .ct-agenda-index .ct-agenda-sidebar{display:block}
  .ct-agenda-index .ct-agenda-spotlight-deck,.ct-agenda-index .ct-agenda-spotlight-slide{display:block}
  .ct-agenda-index .ct-agenda-sidebar,.ct-agenda-index .ct-agenda-spotlight{width:100%;box-sizing:border-box}
  .ct-agenda-index .ct-agenda-filter-summary{padding:14px 17px}
  .ct-agenda-index .ct-agenda-filter-inner{padding:0 16px 16px}
  .ct-agenda-index .ct-agenda-spotlight-link{grid-template-columns:minmax(0,45%) minmax(0,1fr)}
  .ct-agenda-index .ct-agenda-spotlight-image,.ct-agenda-index .ct-agenda-spotlight-image img{height:250px;min-height:250px;max-height:none}
  .ct-agenda-index .ct-agenda-spotlight-body{padding:19px}
  .ct-agenda-index .ct-agenda-event-grid,.ct-agenda-index .ct-agenda-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ct-agenda-index .ct-agenda-upcoming,.ct-agenda-index .ct-agenda-featured-more{margin-top:32px}
}
@media(max-width:600px){
  .ct-agenda-index{padding-top:23px}
  .ct-agenda-index .ct-agenda-spotlight-head{padding:17px 16px 13px}
  .ct-agenda-index .ct-agenda-spotlight-link{display:flex;flex-direction:column}
  .ct-agenda-index .ct-agenda-spotlight-image,.ct-agenda-index .ct-agenda-spotlight-image img{height:220px;min-height:220px;max-height:220px}
  .ct-agenda-index .ct-agenda-spotlight-body{display:flex;flex-direction:column;padding:17px;gap:0}
  .ct-agenda-index .ct-agenda-spotlight-copy{gap:10px;align-self:stretch}
  .ct-agenda-index .ct-agenda-spotlight-foot{margin-top:18px}
  .ct-agenda-index .ct-agenda-spotlight-copy>strong{font-size:1.55rem}
  .ct-agenda-index .ct-agenda-event-grid,.ct-agenda-index .ct-agenda-featured-grid{grid-template-columns:1fr;gap:16px}
  .ct-agenda-index .ct-agenda-grid-item .cta-card img,.ct-agenda-index .ct-agenda-featured-card .cta-card img{height:190px}
  .ct-agenda-index .ct-agenda-upcoming,.ct-agenda-index .ct-agenda-featured-more{margin-top:30px}
}
@media(prefers-reduced-motion:reduce){.ct-agenda-index .ct-agenda-spotlight-image img,.ct-agenda-index .ct-agenda-filter-toggle{transition:none!important}}

/* CT-09 · Desktop: abrir filtros sem consumir altura de cabeçalho.
   Mobile: manter controle nativo para expandir/recolher. */
@media(min-width:821px){
  .ct-agenda-index .ct-agenda-filter-summary{display:none}
  .ct-agenda-index .ct-agenda-filter-inner{padding-top:10px}
}
@media(max-width:820px){
  .ct-agenda-index .ct-agenda-filter-summary{display:flex}
  .ct-agenda-index .ct-agenda-filter-inner{padding:0 16px 15px}
  .ct-agenda-index .ct-agenda-filter .cta-filters{gap:10px}
  .ct-agenda-index .ct-agenda-filter input,.ct-agenda-index .ct-agenda-filter select{height:42px}
}

@media(max-width:820px){.ct-agenda-index .ct-agenda-submit{height:42px;min-height:42px}}
