.pd-banner{--pd-speed:450ms;position:relative;width:100%;overflow:hidden;background:#f4eee9;isolation:isolate}.pd-banner--viewport{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.pd-banner__viewport{position:relative;width:100%;overflow:hidden}.pd-banner__track{display:flex;width:100%;transform:translate3d(0,0,0);transition:transform var(--pd-speed) cubic-bezier(.22,.61,.36,1);will-change:transform}.pd-banner__slide{position:relative;flex:0 0 100%;width:100%;min-width:0;overflow:hidden}.pd-banner__media,.pd-banner__picture{display:block;position:relative;width:100%}.pd-banner__image{display:block;width:100%;max-width:none;height:auto;object-fit:cover}.pd-banner--fixed .pd-banner__image{width:100%;object-fit:cover}.pd-banner__overlay{position:absolute;inset:0;pointer-events:none}.pd-banner__slide-link{position:absolute;inset:0;z-index:2}.pd-banner__content-wrap{position:absolute;inset:0;z-index:3;display:flex;padding:clamp(16px,3vw,54px);pointer-events:none}.pd-banner__content{pointer-events:auto;width:100%;box-sizing:border-box}.pd-banner__eyebrow{font-size:.78em;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px;font-weight:600}.pd-banner__title{color:inherit;margin:0 0 .34em;line-height:1.03;font-weight:500}.pd-banner__description{font-size:clamp(14px,1.4vw,19px);line-height:1.55;margin-bottom:24px}.pd-banner__description p{margin:0}.pd-banner__button{position:relative;z-index:4;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1.2;transition:background-color .2s ease,color .2s ease,transform .2s ease}.pd-banner__button:hover{transform:translateY(-1px)}.pd-pos-top-left{align-items:flex-start;justify-content:flex-start;text-align:left}.pd-pos-top-center{align-items:flex-start;justify-content:center;text-align:center}.pd-pos-top-right{align-items:flex-start;justify-content:flex-end;text-align:right}.pd-pos-center-left{align-items:center;justify-content:flex-start;text-align:left}.pd-pos-center-center{align-items:center;justify-content:center;text-align:center}.pd-pos-center-right{align-items:center;justify-content:flex-end;text-align:left}.pd-pos-bottom-left{align-items:flex-end;justify-content:flex-start;text-align:left}.pd-pos-bottom-center{align-items:flex-end;justify-content:center;text-align:center}.pd-pos-bottom-right{align-items:flex-end;justify-content:flex-end;text-align:right}.pd-banner__arrow{position:absolute;z-index:5;top:50%;width:44px;height:44px;border:0;border-radius:999px;display:grid;place-items:center;transform:translateY(-50%);cursor:pointer;font-size:34px;line-height:1;padding:0;transition:opacity .2s ease,transform .2s ease}.pd-banner__arrow:hover{transform:translateY(-50%) scale(1.04)}.pd-banner__arrow--prev{left:18px}.pd-banner__arrow--next{right:18px}.pd-banner__dots{position:absolute;z-index:6;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:999px}.pd-banner__dot{appearance:none;border:0;width:9px;height:9px;border-radius:99px;padding:0;cursor:pointer;transition:width .2s ease,transform .2s ease,background-color .2s ease}.pd-banner__dot.is-active{width:28px}.pd-banner__live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pd-banner__arrow:focus-visible,.pd-banner__dot:focus-visible,.pd-banner__button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media (max-width:767px){.pd-banner__arrow{width:38px;height:38px;font-size:29px}.pd-banner__arrow--prev{left:10px}.pd-banner__arrow--next{right:10px}.pd-banner__dots{bottom:10px}.pd-banner__content-wrap{padding:18px}.pd-banner__button{min-height:44px}.pd-banner__description{margin-bottom:18px}}
@media (prefers-reduced-motion:reduce){.pd-banner__track,.pd-banner__button,.pd-banner__arrow,.pd-banner__dot{transition:none!important}}

/* v1.0.1: no modo de altura natural, o viewport acompanha apenas o slide ativo.
   Isso evita que uma imagem de outra proporção aumente a altura de todo o carrossel. */
.pd-banner--natural .pd-banner__viewport{transition:height var(--pd-speed) cubic-bezier(.22,.61,.36,1)}
.pd-banner--natural .pd-banner__track{align-items:flex-start}
.pd-banner--natural .pd-banner__slide{align-self:flex-start}


/* v1.0.2: posicionamento livre do botão por slide e por dispositivo. */
.pd-banner__slide.pd-button-free .pd-banner__button{
  position:absolute;
  z-index:7;
  margin:0;
  transform:translate(-50%,-50%);
}
.pd-banner__slide.pd-button-free .pd-banner__button:hover{
  transform:translate(-50%,-50%) translateY(-1px);
}

/* v1.0.3: botão livre sem quebra e posições independentes por dispositivo. */
.pd-banner__slide.pd-button-free .pd-banner__button{
  left:var(--pd-btn-x-d,75%);
  top:var(--pd-btn-y-d,80%);
  width:max-content;
  max-width:calc(100% - 24px);
  white-space:nowrap;
  word-break:normal;
  overflow-wrap:normal;
  flex-shrink:0;
}
@media (min-width:768px) and (max-width:1024px){
  .pd-banner__slide.pd-button-free .pd-banner__button{
    left:var(--pd-btn-x-t,var(--pd-btn-x-d,75%));
    top:var(--pd-btn-y-t,var(--pd-btn-y-d,80%));
  }
}
@media (max-width:767px){
  .pd-banner__slide.pd-button-free .pd-banner__button{
    left:var(--pd-btn-x-m,var(--pd-btn-x-t,var(--pd-btn-x-d,75%)));
    top:var(--pd-btn-y-m,var(--pd-btn-y-t,var(--pd-btn-y-d,80%)));
  }
}
