/* ============================================================================
   COFFEE BLEND (site Astro) - estilos de apoio dos widgets do Elementor reescritos em
   cb-site-widgets.js. O CSS ORIGINAL do Elementor (post-N.css, frontend.min.css, widget-*.css) segue
   servido sem alteracao; aqui so entra o que o JS do Swiper e do Elementor fazia por estilo inline.
   ============================================================================ */

/* ---- video: o iframe ocupa a caixa de proporcao do widget ------------------- */
.elementor-widget-video .elementor-wrapper { position: relative; }
.elementor-widget-video .elementor-video { position: absolute; inset: 0; }
.elementor-widget-video .elementor-video iframe.cb-yt { width: 100%; height: 100%; border: 0; background: #000; display: block; }

/* ---- lightbox ------------------------------------------------------------------ */
.cb-lightbox { border: 0; padding: 0; background: transparent; max-width: 96vw; max-height: 96vh; overflow: visible; }
.cb-lightbox::backdrop { background: rgba(0, 0, 0, .86); }
.cb-lightbox img { display: block; max-width: 96vw; max-height: 92vh; width: auto; height: auto; margin: 0 auto; border-radius: 8px; }
.cb-lightbox__fechar {
  position: absolute; top: -4px; right: -4px; z-index: 1;
  width: 48px; height: 48px; border: 0; border-radius: 50%;
  background: rgba(0, 0, 0, .7); color: #fff; font: 700 28px/1 system-ui, sans-serif; cursor: pointer;
}

/* ---- acordeao: foco ---------------------------------------------------------------- */
.elementor-widget-n-accordion summary { cursor: pointer; }
.elementor-widget-n-accordion summary:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

/* ---- eventos que ja passaram: no lugar do formulario ----------------------------------- */
.cb-site-encerrado {
  display: flex; flex-direction: column; align-items: center; gap: 12px;
  margin: 0 auto; padding: 28px 22px; max-width: 520px; text-align: center;
  background: #47230f; color: #f5eadc; border: 1px solid rgba(220, 210, 76, .35); border-radius: 18px;
  font-family: 'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;
}
.cb-site-encerrado__titulo { margin: 0; font-weight: 800; font-size: 24px; line-height: 1.15; color: #dcd24c; }
.cb-site-encerrado__txt { margin: 0; font-size: 16px; line-height: 1.5; color: #f5eadc; }
.cb-site-encerrado__link {
  display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px;
  border-radius: 999px; background: #dcd24c; color: #47230f; font-weight: 700; font-size: 16px; text-decoration: none;
}
