/* Agita Brasilia — sistema tipografico unificado v1.5.30.
   DM Sans: interface/corpo; Outfit: titulos; respeita estilos de banners e embeds. */
:root{--font-body:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-heading:'Outfit','DM Sans',system-ui,sans-serif;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-md:17px;--text-lg:19px;--heading-sm:21px;--heading-md:26px;--heading-lg:34px;--heading-xl:clamp(32px,3.6vw,48px)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-synthesis:none}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.65;font-weight:400}
button,input,textarea,select{font-family:var(--font-body)}
h1,h2,h3,h4,h5,h6,.section-heading h1,.section-heading h2,.article-title,.event-details h2,.agita-event-panel-heading h2,.gastro-detail-heading h2{font-family:var(--font-heading);font-weight:700;line-height:1.22;letter-spacing:-.025em}
h1,.article-title{font-size:var(--heading-xl)}
h2{font-size:var(--heading-md)}h3{font-size:var(--heading-sm)}
.eyebrow,.tag{font-family:var(--font-body);font-size:var(--text-xs);font-weight:800;line-height:1.35;letter-spacing:.075em}
.breadcrumb,.article-meta,.event-card-meta,.gastro-card-meta,.meta,.today,.footer-bottom{font-family:var(--font-body);font-size:var(--text-xs);line-height:1.55}
.nav-menu a,.footer-links a,.footer-links button,.header-search input{font-family:var(--font-body);font-size:var(--text-sm);line-height:1.4}
.section-heading h1{font-size:clamp(30px,3.6vw,44px)}
.section-heading h2{font-size:clamp(24px,2.5vw,32px)}
.section-heading a,.gastro-card-link,.event-link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700}
.article-title{font-size:clamp(32px,3.4vw,46px);line-height:1.14;letter-spacing:-.035em}
.article-deck{font-family:var(--font-body);font-size:var(--text-lg);line-height:1.5;color:var(--muted)}
.article-content,.gastro-page .gastro-description .article-content,.single-event-page .article-content{font-family:var(--font-body);font-size:var(--text-md);line-height:1.85;overflow-wrap:anywhere}
.article-content p,.gastro-description p{margin-block:0 1.1em}
.article-content h2{font-size:clamp(23px,2.4vw,29px);line-height:1.3;margin:1.45em 0 .55em}
.article-content h3{font-size:clamp(20px,2vw,24px);line-height:1.32;margin:1.25em 0 .5em}
.article-content h4{font-size:19px;line-height:1.35}
.article-content ul,.article-content ol{padding-inline-start:1.5em}
.article-content li{margin-block:.28em}
.article-content figcaption,.article-hero figcaption{font-size:var(--text-xs);line-height:1.5;color:var(--muted)}
.news-four-cards h3,.four-cards h3,.cards h3,.event-card h3,.gastro-card h3{font-family:var(--font-heading);font-weight:700;font-size:17px;line-height:1.35;letter-spacing:-.012em}
.feature-overlay strong,.feature-story strong{font-family:var(--font-heading);font-weight:700;line-height:1.2}
.event-card-body,.gastro-card-body{line-height:1.55}
.gastro-card-meta,.event-card-meta,.event-place-time{font-size:var(--text-xs);line-height:1.55}
.gastro-page .gastro-event-style .gastro-detail-heading h2,.agita-event-panel-heading h2{font-size:clamp(22px,2.1vw,27px);line-height:1.25}
.gastro-page .gastro-event-style .gastro-profile-row dt,.agita-event-fact strong{font-size:var(--text-sm);line-height:1.4;font-weight:800}
.gastro-page .gastro-event-style .gastro-profile-row dd,.agita-event-fact p,.agita-event-fact span{font-size:var(--text-base);line-height:1.55}
.gastro-page .gastro-action-primary,.agita-event-buy,.agita-event-panel .cta{font-size:var(--text-base);font-weight:800;line-height:1.35}
.gastro-page .gastro-actions-secondary a,.gastro-page .gastro-profile-links a{font-size:var(--text-sm);font-weight:700}
.single-event-page .agita-event-sidebar-news h2,.agita-news-sidebar-list h2,.agita-gastro-sidebar-news h2{font-family:var(--font-heading);font-size:20px;line-height:1.3;font-weight:700}
.single-event-page .agita-event-sidebar-news .side-story strong,.agita-news-sidebar .side-story strong,.agita-gastro-sidebar .side-story strong{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;line-height:1.4}
.agc-filters label,.event-filters label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700}
.agc-filters input,.agc-filters select,.agc-filters button,.event-filters input,.event-filters select,.event-filters button{font-family:var(--font-body);font-size:var(--text-sm);line-height:1.45}
.site-footer,.footer-grid{font-family:var(--font-body);font-size:var(--text-sm);line-height:1.6}
.footer-grid h3,.footer-grid h4{font-family:var(--font-heading);font-size:17px}
@media(max-width:900px){.article-title{font-size:clamp(30px,4.5vw,41px)}.article-content,.gastro-page .gastro-description .article-content,.single-event-page .article-content{font-size:16px;line-height:1.8}}
@media(max-width:600px){body{font-size:15px;line-height:1.6}.article-title{font-size:clamp(29px,7vw,37px);line-height:1.18}.article-deck{font-size:16px;line-height:1.55}.section-heading h2{font-size:25px}.article-content,.gastro-page .gastro-description .article-content,.single-event-page .article-content{font-size:16px;line-height:1.78}.article-content h2{font-size:23px}.article-content h3{font-size:20px}.news-four-cards h3,.four-cards h3,.cards h3,.event-card h3,.gastro-card h3{font-size:14px;line-height:1.35}.single-event-page .agita-event-sidebar-news .side-story strong,.agita-news-sidebar .side-story strong,.agita-gastro-sidebar .side-story strong{font-size:13px}.gastro-page .gastro-event-style .gastro-profile-row dd,.agita-event-fact p,.agita-event-fact span{font-size:15px}.agc-filters input,.agc-filters select{font-size:16px}}


/* v1.5.35 — Cards gastronômicos compactos e consistentes em home e listagens.
   O corpo não ocupa a altura restante do card: evita o link isolado no rodapé. */
.gastro-card{
  display:flex;
  flex-direction:column;
  height:auto;
  align-self:start;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.gastro-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(23,43,53,.08);border-color:#d1e0e6}
.gastro-card .gastro-card-image{
  display:block;
  flex:none;
  width:100%;
  aspect-ratio:1.85;
  min-height:0;
  overflow:hidden;
  border-radius:0;
  background:#edf3f5;
}
.gastro-card .gastro-card-image img,
.gastro-card .gastro-card-image .image-placeholder{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.gastro-card .gastro-card-image .gastro-image-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  background:#f0f5f6;
  color:#7b919b;
  font-family:var(--font-body);
  font-size:12px;
  font-weight:600;
  letter-spacing:0;
}
.gastro-card .gastro-card-body,
.gastro-card .story-body{
  padding:13px 16px 15px;
  display:block;
  flex:none;
  min-height:0;
  line-height:1.32;
}
.gastro-card .eyebrow{
  display:block;
  margin:0 0 6px;
  font-size:10px;
  line-height:1.3;
  letter-spacing:.09em;
}
.gastro-card .gastro-card-body h3,
.gastro-card h3{
  margin:0 0 7px;
  min-height:2.36em;
  font-family:var(--font-heading);
  font-size:17px;
  font-weight:700;
  line-height:1.18;
  letter-spacing:-.018em;
}
.gastro-card h3 a{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.gastro-card .gastro-card-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  column-gap:5px;
  row-gap:3px;
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}
.gastro-card .gastro-meta-divider{color:#a2afb6}
.gastro-card .gastro-card-rating span{color:#e6ae16}
.gastro-card .gastro-card-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:9px 0 0;
  padding:0;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  color:var(--brand);
}
.gastro-card .gastro-card-link:hover{text-decoration:underline;text-underline-offset:3px}
.gastro-card a:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
@media(max-width:650px){
  .gastro-card .gastro-card-body,.gastro-card .story-body{padding:11px 11px 13px}
  .gastro-card .gastro-card-body h3,.gastro-card h3{font-size:14px;min-height:2.4em;line-height:1.2;margin-bottom:6px}
  .gastro-card .gastro-card-meta{font-size:11px;column-gap:4px}
  .gastro-card .gastro-card-link{font-size:12px;margin-top:8px}
  .gastro-card .eyebrow{font-size:9px;margin-bottom:5px}
}


/* v1.5.36 — Barra de compartilhamento simétrica em notícias, eventos e gastronomia.
   Sobrescreve os estilos legados conflitantes sem afetar os botões de serviço. */
.agita-share,
.single-event-share .agita-share,
.agita-event-share .agita-share,
.gastro-page .gastro-event-style .gastro-profile-share .agita-share,
.gastro-page .gastro-profile-share .agita-share {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:12px;
  width:100%;
  max-width:100%;
}
.agita-share .agita-share-btn,
.single-event-share .agita-share .agita-share-btn,
.agita-event-share .agita-share .agita-share-btn,
.gastro-page .gastro-profile-share .agita-share .agita-share-btn,
.gastro-page .gastro-event-style .gastro-profile-share .agita-share .agita-share-btn {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  height:44px;
  min-height:44px;
  padding:0;
  margin:0;
  border-radius:10px;
  box-sizing:border-box;
  flex:none;
}
.agita-share .agita-share-btn svg{width:22px;height:22px;flex:none}
.agita-share .agita-share-feedback:not(:empty){grid-column:1/-1}
@media(max-width:650px){
  .agita-share,
  .single-event-share .agita-share,
  .agita-event-share .agita-share,
  .gastro-page .gastro-event-style .gastro-profile-share .agita-share,
  .gastro-page .gastro-profile-share .agita-share{gap:8px}
  .agita-share .agita-share-btn,
  .single-event-share .agita-share .agita-share-btn,
  .agita-event-share .agita-share .agita-share-btn,
  .gastro-page .gastro-profile-share .agita-share .agita-share-btn,
  .gastro-page .gastro-event-style .gastro-profile-share .agita-share .agita-share-btn{height:44px;min-height:44px}
}


/* v1.5.37 — Soft Minimal: compartilhamento editorial consistente */
.agita-share .agita-share-btn,
.single-event-share .agita-share .agita-share-btn,
.agita-event-share .agita-share .agita-share-btn,
.gastro-page .gastro-profile-share .agita-share .agita-share-btn,
.gastro-page .gastro-event-style .gastro-profile-share .agita-share .agita-share-btn,
.article-bottom .agita-share .agita-share-btn {
  background:#f3f6f7;
  border:1px solid #e5ecef;
  border-radius:12px;
  color:#145c73;
  box-shadow:none;
  height:44px;
  min-height:44px;
  padding:0 8px;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.agita-share .agita-share-facebook,
.article-bottom .agita-share .agita-share-facebook,
.article-bottom .agita-share .agita-share-facebook:link,
.article-bottom .agita-share .agita-share-facebook:visited {color:#1877f2;background:#f3f6f7}
.agita-share .agita-share-whatsapp,
.article-bottom .agita-share .agita-share-whatsapp,
.article-bottom .agita-share .agita-share-whatsapp:link,
.article-bottom .agita-share .agita-share-whatsapp:visited {color:#16b66b;background:#f3f6f7}
.agita-share .agita-share-system,
.article-bottom .agita-share .agita-share-system {color:#145c73;background:#f3f6f7}
.agita-share .agita-share-btn:is(:hover,:active,.is-selected),
.article-bottom .agita-share .agita-share-btn:is(:hover,:active,.is-selected),
.single-event-share .agita-share .agita-share-btn:is(:hover,:active,.is-selected),
.agita-event-share .agita-share .agita-share-btn:is(:hover,:active,.is-selected),
.gastro-page .gastro-profile-share .agita-share .agita-share-btn:is(:hover,:active,.is-selected) {
  color:#145c73;
  background:#eaf1f4;
  border-color:#ccdce2;
  box-shadow:none;
}
.agita-share .agita-share-facebook:is(:hover,:active,.is-selected),
.article-bottom .agita-share .agita-share-facebook:is(:hover,:active,.is-selected),
.single-event-share .agita-share .agita-share-facebook:is(:hover,:active,.is-selected),
.agita-event-share .agita-share .agita-share-facebook:is(:hover,:active,.is-selected),
.gastro-page .gastro-profile-share .agita-share .agita-share-facebook:is(:hover,:active,.is-selected) {color:#1877f2;background:#eaf2ff;border-color:#cbdfff}
.agita-share .agita-share-whatsapp:is(:hover,:active,.is-selected),
.article-bottom .agita-share .agita-share-whatsapp:is(:hover,:active,.is-selected),
.single-event-share .agita-share .agita-share-whatsapp:is(:hover,:active,.is-selected),
.agita-event-share .agita-share .agita-share-whatsapp:is(:hover,:active,.is-selected),
.gastro-page .gastro-profile-share .agita-share .agita-share-whatsapp:is(:hover,:active,.is-selected) {color:#159e5b;background:#eaf8f0;border-color:#c7ead6}
.agita-share .agita-share-btn:focus-visible {outline:3px solid #3285ad;outline-offset:3px}
.agita-share .agita-share-btn svg {width:20px;height:20px}
.agita-share .agita-copy-label {font-size:12px;margin-left:7px;white-space:nowrap}
.agita-share .agita-share-feedback:not(:empty) {font-size:12px;color:#145c73;line-height:1.35}
@media(prefers-reduced-motion:reduce){.agita-share .agita-share-btn{transition:none}}


/* v1.5.50 — Cards de eventos: titulo ate 2 linhas; local em 1 linha com reticencias. */
.home-section .event-card h3,
.archive-wrap .event-card h3,
.related-events-grid .event-card h3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  max-height: 2.7em;
  min-height: 0;
  overflow-wrap: anywhere;
}
/* Impede que os nomes longos de locais expandam a coluna ou quebrem o card. */
.event-card .event-card-meta,
.event-card .event-card-info,
.event-card .event-place-time {
  min-width: 0;
}
.event-card .event-place-time {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 3px;
  width: 100%;
}
.event-card .event-place {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
}
.event-card .event-sep { display: none; }
.event-card .event-time {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
