/* Ressignificar Banner 1.0.0 | Toda a formatação é restrita ao shortcode. */
.ress-banner,.ress-banner *{box-sizing:border-box}
.ress-banner{width:100%;background:var(--ress-bg,#fff);color:var(--ress-text-color,#6D6662);font-family:var(--ress-body-font,Arial,sans-serif);isolation:isolate}
.ress-banner__inner{width:min(100%,var(--ress-max-width,1180px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--ress-gap,36px);align-items:center;padding:28px 0}
.ress-banner__text{min-width:0;min-height:var(--ress-image-height,430px);display:flex;flex-direction:column;justify-content:center;transform:translateX(var(--ress-text-offset,0px))}
.ress-banner__eyebrow{color:var(--ress-accent,#E59268);font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:18px;line-height:1.4}
.ress-banner__slides{width:100%}
.ress-banner__slide[hidden],.ress-banner__visual-slide[hidden]{display:none!important}
.ress-banner__slide.is-active{animation:ressSlideIn .48s ease both}
.ress-banner__title{font-family:var(--ress-heading-font,Georgia,serif);font-size:var(--ress-h-size,54px);font-weight:400;line-height:1.03;letter-spacing:-.015em;color:var(--ress-heading-color,#302B29);margin:0 0 18px;overflow-wrap:break-word}
.ress-banner__description{font-size:var(--ress-p-size,18px);font-weight:400;line-height:1.55;color:var(--ress-text-color,#6D6662);margin:0;max-width:650px}
.ress-banner__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ress-banner__btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:12px 20px;font-family:var(--ress-body-font,Arial,sans-serif);font-size:15px;font-weight:700;line-height:1.25;text-align:center;border-radius:var(--ress-button-radius,7px);text-decoration:none!important;transition:background .25s,color .25s,transform .25s,border-color .25s;box-shadow:none!important}
.ress-banner__btn--primary{border:1px solid var(--ress-accent,#E59268);background:var(--ress-accent,#E59268);color:#fff!important}
.ress-banner__btn--primary:hover,.ress-banner__btn--primary:focus-visible{background:var(--ress-hover,#C57E5A);border-color:var(--ress-hover,#C57E5A);color:#fff!important;transform:translateY(-1px)}
.ress-banner__btn--secondary{border:1px solid var(--ress-accent,#E59268);background:transparent;color:var(--ress-accent,#E59268)!important}
.ress-banner__btn--secondary:hover,.ress-banner__btn--secondary:focus-visible{background:var(--ress-accent,#E59268);color:#fff!important}
.ress-banner__nav{display:flex;gap:13px;align-items:center;margin-top:26px}
.ress-banner__dots{display:flex;gap:7px;align-items:center}
.ress-banner__dot{appearance:none;border:0!important;padding:0!important;background:#E5D8D2!important;border-radius:999px!important;width:7px;height:7px;min-width:7px;min-height:7px;cursor:pointer;transition:width .25s,background .25s;box-shadow:none!important}
.ress-banner__dot.is-active{width:25px;background:var(--ress-accent,#E59268)!important}
.ress-banner__arrow{border:1px solid #e7dbd5!important;border-radius:50%!important;background:transparent!important;color:var(--ress-accent,#E59268)!important;width:34px;height:34px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;font:600 19px/1 Arial,sans-serif;cursor:pointer}
.ress-banner__arrow:hover{background:#fff6f0!important;border-color:var(--ress-accent,#E59268)!important}
.ress-banner :is(button,a):focus-visible{outline:3px solid var(--ress-accent,#E59268);outline-offset:3px}
.ress-banner__visual{width:100%;height:var(--ress-image-height,430px);position:relative;border-radius:var(--ress-image-radius,12px);overflow:hidden;background:#f6eae3}
.ress-banner__visual-slide{width:100%;height:100%;position:absolute;inset:0}
.ress-banner__visual-slide.is-active{animation:ressImageIn .55s ease both}
.ress-banner__visual-slide img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;border-radius:0!important;margin:0!important;box-shadow:none!important}
.ress-banner__visual-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--ress-accent,#E59268);font-family:Georgia,serif;font-size:28px;background:#fbefe9}
@keyframes ressSlideIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes ressImageIn{from{opacity:.3;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}
@media(max-width:1024px){
 .ress-banner__inner{padding:24px 16px;gap:min(3vw,var(--ress-gap,36px))}
 .ress-banner__title{font-size:clamp(30px,4.5vw,var(--ress-h-size,54px))}
 .ress-banner__description{font-size:clamp(15px,1.65vw,var(--ress-p-size,18px))}
 .ress-banner__text{transform:none}
}
@media(max-width:767px){
 .ress-banner__inner{grid-template-columns:1fr;padding:25px 16px 32px;gap:25px}
 .ress-banner__text{min-height:0;order:1;transform:none}
 .ress-banner__visual{height:clamp(245px,65vw,380px);order:2}
 .ress-banner__eyebrow{font-size:11px;margin-bottom:14px}
 .ress-banner__title{font-size:clamp(32px,8vw,40px);line-height:1.08;margin-bottom:14px}
 .ress-banner__description{font-size:16px;line-height:1.55}
 .ress-banner__actions{margin-top:24px;gap:10px}
 .ress-banner__btn{flex:1 1 100%}
 .ress-banner__nav{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){
 .ress-banner__slide.is-active,.ress-banner__visual-slide.is-active{animation:none!important}
 .ress-banner__btn,.ress-banner__dot{transition:none!important}
}
