.cv-banner{position:relative;width:100%;min-width:0;background:#fff4f7;isolation:isolate}
.cv-banner *, .cv-banner *::before, .cv-banner *::after{box-sizing:border-box}
.cv-banner__stage{position:relative;width:100%;aspect-ratio:16/5;overflow:hidden}
.cv-banner__slide{will-change:transform;position:absolute;inset:0;width:100%;height:100%}
.cv-banner__slide[hidden],.cv-banner [hidden]{display:none!important}
.cv-banner__slide>a,.cv-banner__slide>picture,.cv-banner__slide>a>picture{display:block;width:100%;height:100%}
.cv-banner .cv-banner__slide img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;border-radius:0;margin:0}
.cv-banner__controls{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:5px 12px;background:#fff}
.cv-banner button.cv-banner__pause,.cv-banner button.cv-banner__dot{appearance:none;border:1px solid #c49a5a;background:#fff;color:#5c2318;box-shadow:none;margin:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:44px;min-height:44px;line-height:1;font-family:inherit;border-radius:50%}
.cv-banner button.cv-banner__pause{font-size:12px;border-radius:5px;padding:0 10px;min-height:32px;border-color:#d4c7c1}
.cv-banner button.cv-banner__dot{border:0;background:transparent}
.cv-banner__dot::before{content:"";width:9px;height:9px;background:#d4c7c1;border-radius:50%}
.cv-banner__dot[aria-current="true"]::before{background:#5c2318;width:12px;height:12px}
.cv-banner button:hover{color:#5c2318;background:#fff4f7}
.cv-banner button:focus-visible,.cv-banner a:focus-visible{outline:3px solid #5c2318;outline-offset:-3px}
.cv-banner__dots{display:flex;gap:0}
.cv-banner__status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cv-banner__stage{touch-action:pan-y pinch-zoom}
@media(max-width:767px){.cv-banner__stage{aspect-ratio:4/5}}

@media(prefers-reduced-motion:reduce){.cv-banner__slide{transition:none!important}}

/* Indicadores reais, independentes dos pseudo-elementos do tema. */
.cv-banner{height:auto!important;max-height:none!important;overflow:visible!important}
.cv-banner .cv-banner__controls{position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:12px!important;width:100%!important;min-height:56px!important;height:auto!important;max-height:none!important;clear:both!important;float:none!important;padding:6px 12px!important;margin:0!important;overflow:visible!important;visibility:visible!important;opacity:1!important;z-index:2;background:#fff!important}
.cv-banner .cv-banner__dots{display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;visibility:visible!important;opacity:1!important}
.cv-banner button.cv-banner__dot{display:inline-flex!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;opacity:1!important;visibility:visible!important;float:none!important}
.cv-banner .cv-banner__dot::before,.cv-banner .cv-banner__dot::after{display:none!important;content:none!important}
.cv-banner .cv-banner__point{display:block!important;width:10px!important;height:10px!important;min-width:10px!important;min-height:10px!important;border-radius:50%!important;background:#b8a39a!important;opacity:1!important;visibility:visible!important;flex:none!important}
.cv-banner .cv-banner__dot[aria-current="true"] .cv-banner__point{width:13px!important;height:13px!important;background:#5c2318!important}
@media(max-width:767px){.cv-banner .cv-banner__controls{min-height:56px!important;flex-shrink:0!important}.cv-banner .cv-banner__dots{display:flex!important}}

/* A altura do shortcode deve incluir a imagem E a faixa de indicadores. */
.elementor .elementor-widget-shortcode.cv-banner-widget{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100%!important;aspect-ratio:auto!important;flex:0 0 auto!important;align-self:stretch!important;overflow:visible!important;contain:none!important;content-visibility:visible!important;--container-widget-height:auto!important;--container-widget-flex-grow:0!important;--container-widget-align-self:stretch!important}
.elementor .e-con.cv-banner-host,.elementor .cv-banner-inner{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;overflow:visible!important;contain:none!important;content-visibility:visible!important;--height:auto!important}
.elementor .cv-banner-widget>.elementor-shortcode{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;contain:none!important}
@supports selector(:has(*)){
 .elementor .elementor-widget-shortcode:has(.cv-banner){display:block!important;height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100%!important;aspect-ratio:auto!important;flex:0 0 auto!important;align-self:stretch!important;overflow:visible!important;contain:none!important;content-visibility:visible!important;--container-widget-height:auto!important;--container-widget-flex-grow:0!important}
 .elementor .e-con:has(>.elementor-widget-shortcode .cv-banner),.elementor .e-con:has(>.e-con-inner>.elementor-widget-shortcode .cv-banner),.elementor .e-con-inner:has(>.elementor-widget-shortcode .cv-banner){display:block!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;overflow:visible!important;contain:none!important;content-visibility:visible!important;--height:auto!important}
}

/* Indicadores sobre a imagem, com contraste em fundos claros e escuros. */
.cv-banner .cv-banner__controls{position:absolute!important;inset:auto 0 8px 0!important;top:auto!important;bottom:8px!important;left:0!important;right:0!important;width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:0 10px!important;background:transparent!important;flex-wrap:nowrap!important;pointer-events:none!important;z-index:5!important}
.cv-banner .cv-banner__dots{pointer-events:auto!important}
.cv-banner .cv-banner__point{width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;background:rgba(55,29,23,.7)!important;border:2px solid #fff!important;box-shadow:0 0 0 1px rgba(0,0,0,.65),0 1px 4px rgba(0,0,0,.5)!important;box-sizing:border-box!important}
.cv-banner .cv-banner__dot[aria-current="true"] .cv-banner__point{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;background:#c49a5a!important;border-color:#fff!important;box-shadow:0 0 0 1px rgba(0,0,0,.8),0 1px 4px rgba(0,0,0,.55)!important}
.cv-banner button.cv-banner__pause{position:absolute!important;right:12px!important;bottom:6px!important;pointer-events:auto!important;min-height:32px!important;padding:0 9px!important;border:1px solid rgba(55,29,23,.6)!important;background:rgba(255,255,255,.94)!important;color:#5c2318!important;box-shadow:0 1px 4px rgba(0,0,0,.25)!important}
.cv-banner button.cv-banner__dot:focus-visible{outline:2px solid #fff!important;outline-offset:-6px!important;box-shadow:inset 0 0 0 2px #342019!important}
@media(max-width:767px){.cv-banner .cv-banner__controls{height:44px!important;min-height:44px!important;bottom:6px!important}.cv-banner button.cv-banner__pause{right:8px!important;font-size:11px!important}}

/* Gesto horizontal também com mouse; links continuam funcionando no clique simples. */
.cv-banner .cv-banner__stage,.cv-banner .cv-banner__stage img,.cv-banner .cv-banner__stage a{-webkit-user-select:none;user-select:none}
.cv-banner .cv-banner__stage img,.cv-banner .cv-banner__stage a{-webkit-user-drag:none}
@media(hover:hover) and (pointer:fine){.cv-banner .cv-banner__stage,.cv-banner .cv-banner__stage a{cursor:grab}.cv-banner .cv-banner__stage--dragging,.cv-banner .cv-banner__stage--dragging a{cursor:grabbing}}
