/*!
 * Allpa Product Experience PRO — complementos dos componentes reais.
 *
 * frontend.css é a folha de fidelidade, copiada do desenho V1.38 e mantida sem
 * alterações. Este arquivo cobre apenas o que o protótipo representava como
 * espaço reservado (carrossel de recomendados, imagem da escala de intensidade,
 * palco de vídeo, fotos de avaliação) e os estados de retorno das ações reais
 * (mensagens de sucesso e erro), respeitando a mesma paleta e tipografia.
 *
 * Todo seletor é escopado em .afpdp-prototype para não vazar para o tema.
 */

/* ============================================================
   Recomendados: carrossel funcional
   ============================================================ */
.afpdp-prototype .afpdp-related-carousel {
  position: relative;
  margin-top: 4px;
}

.afpdp-prototype .afpdp-related-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(212px, 1fr);
  gap: 18px;
  padding: 4px 2px 12px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

.afpdp-prototype .afpdp-related-track::-webkit-scrollbar {
  display: none;
}

.afpdp-prototype .afpdp-related-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  scroll-snap-align: start;
}

.afpdp-prototype .afpdp-related-media {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  border-radius: 12px;
  background: #faf8f6;
  overflow: hidden;
}

.afpdp-prototype .afpdp-related-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .35s ease;
}

.afpdp-prototype .afpdp-related-card:hover .afpdp-related-media img {
  transform: scale(1.035);
}

.afpdp-prototype .afpdp-related-badge {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  padding: 4px 8px;
  border-radius: 4px;
  background: var(--af-orange);
  color: #fff;
  font-size: 10.5px;
  font-weight: 750;
  letter-spacing: .04em;
}

.afpdp-prototype .afpdp-related-copy {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 6px;
}

.afpdp-prototype .afpdp-related-name {
  color: var(--af-brown);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}

.afpdp-prototype .afpdp-related-name:hover {
  color: var(--af-fragrance-accent-strong, var(--af-orange));
}

.afpdp-prototype .afpdp-related-rating {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--af-muted);
  font-size: 11.5px;
}

.afpdp-prototype .afpdp-related-rating svg {
  width: 13px;
  height: 13px;
  color: var(--af-coral);
}

.afpdp-prototype .afpdp-related-rating b {
  color: var(--af-brown);
}

.afpdp-prototype .afpdp-related-price {
  margin-top: auto;
  padding-top: 4px;
  color: var(--af-brown);
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -.02em;
}

.afpdp-prototype .afpdp-related-price del {
  margin-right: 6px;
  color: rgba(56, 42, 35, .45);
  font-size: 12px;
  font-weight: 400;
}

.afpdp-prototype .afpdp-related-price ins {
  text-decoration: none;
}

.afpdp-prototype .afpdp-related-add {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  margin-top: 8px;
  border: 1px solid var(--af-brown);
  border-radius: 999px;
  background: #fff;
  color: var(--af-brown);
  font-size: 11.5px;
  font-weight: 750;
  letter-spacing: .06em;
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}

.afpdp-prototype .afpdp-related-add:hover {
  background: var(--af-brown);
  color: #fff;
}

.afpdp-prototype .afpdp-related-add.is-loading {
  opacity: .6;
  pointer-events: none;
}

.afpdp-prototype .afpdp-related-add.is-added {
  border-color: var(--af-green);
  background: var(--af-green);
  color: #fff;
}

.afpdp-prototype .afpdp-related-arrow {
  position: absolute;
  z-index: 3;
  top: calc(50% - 40px);
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid var(--af-line);
  border-radius: 50%;
  background: rgba(255, 255, 255, .96);
  color: var(--af-brown);
  transform: translateY(-50%);
  cursor: pointer;
  transition: opacity .2s ease;
}

.afpdp-prototype .afpdp-related-arrow svg {
  width: 19px;
  height: 19px;
}

.afpdp-prototype .afpdp-related-prev {
  left: -14px;
}

.afpdp-prototype .afpdp-related-next {
  right: -14px;
}

.afpdp-prototype .afpdp-related-arrow[hidden],
.afpdp-prototype .afpdp-related-arrow.is-hidden {
  display: none;
}

@media (max-width: 900px) {
  .afpdp-prototype .afpdp-related-track {
    grid-auto-columns: minmax(158px, 1fr);
    gap: 12px;
  }

  .afpdp-prototype .afpdp-related-arrow {
    display: grid;
    top: 38%;
    width: 36px;
    height: 36px;
  }

  .afpdp-prototype .afpdp-related-prev {
    left: 4px;
  }

  .afpdp-prototype .afpdp-related-next {
    right: 4px;
  }

  .afpdp-prototype .afpdp-related-name {
    font-size: 12.5px;
  }

  .afpdp-prototype .afpdp-related-price {
    font-size: 14px;
  }
}

/* ============================================================
   Retorno das ações reais
   ============================================================ */
.afpdp-prototype .afpdp-feedback,
.afpdp-prototype .afpdp-routine-feedback,
.afpdp-prototype .afpdp-review-response {
  display: none;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 12.5px;
  line-height: 1.4;
}

.afpdp-prototype .afpdp-feedback.is-visible,
.afpdp-prototype .afpdp-routine-feedback.is-visible,
.afpdp-prototype .afpdp-review-response.is-visible {
  display: block;
}

.afpdp-prototype .afpdp-feedback.is-success,
.afpdp-prototype .afpdp-routine-feedback.is-success,
.afpdp-prototype .afpdp-review-response.is-success {
  background: #eef6f1;
  color: #1f5d3f;
}

.afpdp-prototype .afpdp-feedback.is-error,
.afpdp-prototype .afpdp-routine-feedback.is-error,
.afpdp-prototype .afpdp-review-response.is-error {
  background: #fdeeea;
  color: #94301c;
}

.afpdp-prototype .afpdp-feedback a,
.afpdp-prototype .afpdp-routine-feedback a {
  color: inherit;
  font-weight: 750;
  text-decoration: underline;
}

.afpdp-prototype .afpdp-add,
.afpdp-prototype .afpdp-routine-add,
.afpdp-prototype .afpdp-mobile-buy-button,
.afpdp-prototype .afpdp-related-add,
.afpdp-prototype .afpdp-submit-review {
  position: relative;
}

.afpdp-prototype .afpdp-add.is-loading,
.afpdp-prototype .afpdp-routine-add.is-loading,
.afpdp-prototype .afpdp-mobile-buy-button.is-loading,
.afpdp-prototype .afpdp-submit-review.is-loading,
.afpdp-prototype .afpdp-related-add.is-loading {
  color: transparent !important;
  opacity: 1;
  pointer-events: none;
}

.afpdp-prototype .afpdp-add.is-loading > *,
.afpdp-prototype .afpdp-routine-add.is-loading > *,
.afpdp-prototype .afpdp-mobile-buy-button.is-loading > *,
.afpdp-prototype .afpdp-submit-review.is-loading > *,
.afpdp-prototype .afpdp-related-add.is-loading > * {
  visibility: hidden;
}

.afpdp-prototype .afpdp-add.is-loading::after,
.afpdp-prototype .afpdp-routine-add.is-loading::after,
.afpdp-prototype .afpdp-mobile-buy-button.is-loading::after,
.afpdp-prototype .afpdp-submit-review.is-loading::after,
.afpdp-prototype .afpdp-related-add.is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  margin: -9px 0 0 -9px;
  border: 2px solid rgba(255,255,255,.35);
  border-top-color: #fff;
  border-radius: 50%;
  animation: afpdp-btn-spin .7s linear infinite;
}

@keyframes afpdp-btn-spin {
  to { transform: rotate(360deg); }
}

.afpdp-prototype .afpdp-routine-add[disabled] {
  opacity: .45;
  pointer-events: none;
}

/* ============================================================
   Indisponibilidade
   ============================================================ */
.afpdp-prototype .afpdp-purchase-row--unavailable {
  display: block;
  margin-top: 22px;
}

.afpdp-prototype .afpdp-unavailable {
  margin: 0;
  padding: 14px 16px;
  border: 1px solid var(--af-line);
  border-radius: 10px;
  background: #faf8f6;
  color: var(--af-muted);
  font-size: 13px;
  text-align: center;
}

.afpdp-prototype .afpdp-whatsapp-hours {
  display: block;
  margin-top: 6px;
  color: var(--af-muted);
  font-size: 11px;
}

/* ============================================================
   Escala de intensidade e vídeo
   ============================================================ */
.afpdp-prototype .afpdp-intensity-image {
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #faf8f6;
  overflow: hidden;
}

.afpdp-prototype .afpdp-intensity-image img {
  display: block;
  width: 100%;
  height: auto;
}

.afpdp-prototype .afpdp-product-video-stage video {
  display: block;
  width: 100%;
  max-height: 78vh;
  border-radius: 12px;
  background: #000;
}

/* ============================================================
   Avaliações reais
   ============================================================ */
.afpdp-prototype .afpdp-review-empty-state {
  grid-column: 1 / -1;
}

.afpdp-prototype .afpdp-review-empty-state p {
  margin: 0;
  color: var(--af-muted);
  font-size: 14px;
}

.afpdp-prototype .afpdp-review-closed {
  margin: 0;
  color: var(--af-muted);
  font-size: 12px;
  text-align: center;
}

.afpdp-prototype .afpdp-customer-media button {
  padding: 0;
  overflow: hidden;
  cursor: pointer;
}

.afpdp-prototype .afpdp-customer-media button img,
.afpdp-prototype .afpdp-review-photos span img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.afpdp-prototype .afpdp-review-photos span {
  overflow: hidden;
}

.afpdp-prototype .afpdp-review-privacy {
  display: block;
  margin-top: 5px;
  color: var(--af-muted);
  font-size: 10.5px;
  font-style: normal;
  font-weight: 400;
}

.afpdp-prototype .afpdp-review-author-field,
.afpdp-prototype .afpdp-review-email-field {
  display: block;
}

/* ============================================================
   Como usar apenas com texto, enquanto a mídia não é cadastrada
   ============================================================ */
.afpdp-prototype .afpdp-howto--text-only .afpdp-howto-steps {
  max-width: 900px;
  margin-inline: auto;
}

.afpdp-prototype .afpdp-howto--text-only .afpdp-how-step {
  display: block;
}

/* ============================================================
   Isolamento da PDP do tema (WoodMart Builder / WooCommerce)
   ============================================================ */
html.afpdp-preview-active .wd-single-prod-builder,
html.afpdp-preview-active .woocommerce-breadcrumb,
html.afpdp-preview-active .page-title,
html.afpdp-preview-active .related.products,
html.afpdp-preview-active .upsells.products,
html.afpdp-preview-active .site-content > div.product,
html.afpdp-preview-active .wd-content-layout > div.product {
  display: none !important;
}

html.afpdp-preview-active .site-content:has(.af-pdp-root),
html.afpdp-preview-active .wd-content-layout:has(.af-pdp-root),
html.afpdp-preview-active .container:has(> .af-pdp-root),
html.afpdp-preview-active .row:has(> .af-pdp-root),
html.afpdp-preview-active .content-layout-wrapper:has(.af-pdp-root) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html.afpdp-preview-active .af-pdp-root,
html.afpdp-preview-active .afpdp-prototype {
  display: block !important;
  width: 100%;
  max-width: none;
}

html.afpdp-preview-active.wd-header-overlap .af-pdp-root,
html.afpdp-preview-active .af-pdp-root {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

html.afpdp-preview-active .afpdp-prototype {
  font-family: "Open Sans", Arial, sans-serif !important;
}

html.afpdp-preview-active .afpdp-prototype h1,
html.afpdp-preview-active .afpdp-prototype h2,
html.afpdp-preview-active .afpdp-prototype h3 {
  font-family: "Open Sans", Arial, sans-serif !important;
}

.afpdp-prototype .afpdp-related-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
}

.afpdp-prototype .afpdp-related-price del {
  color: rgba(56, 42, 35, .48);
  font-size: 13px;
}

.afpdp-prototype .afpdp-related-price strong {
  font-size: 16px;
  font-weight: 750;
}

.afpdp-prototype .afpdp-related-price .woo-custom-installments,
.afpdp-prototype .afpdp-related-price .wci-installments,
.afpdp-prototype .afpdp-related-copy .woo-custom-installments {
  display: none !important;
}

/* WoodMart pinta button { background: cinza }. O CTA do desenho é terracota. */
html.afpdp-preview-active .afpdp-prototype button.afpdp-add,
html.afpdp-preview-active .afpdp-prototype .afpdp-add,
html.afpdp-preview-active .afpdp-prototype .afpdp-mobile-buy-button,
html.afpdp-preview-active .afpdp-prototype .afpdp-routine-add {
  background: #eb8454 !important;
  background-image: none !important;
  border: 0 !important;
  color: #fff !important;
  opacity: 1 !important;
  filter: none !important;
  box-shadow: none !important;
}

html.afpdp-preview-active .afpdp-prototype button.afpdp-add:hover,
html.afpdp-preview-active .afpdp-prototype .afpdp-add:hover,
html.afpdp-preview-active .afpdp-prototype .afpdp-mobile-buy-button:hover,
html.afpdp-preview-active .afpdp-prototype .afpdp-routine-add:hover {
  background: #d96f2c !important;
  color: #fff !important;
}

/* ============================================================
   2.0.4 — galeria, vão do header, botões, modal e cards
   ============================================================ */

html.afpdp-preview-active .main-page-wrapper,
html.afpdp-preview-active .wd-page-content,
html.afpdp-preview-active .wd-content-area,
html.afpdp-preview-active .site-content,
html.afpdp-preview-active .content-layout-wrapper,
html.afpdp-preview-active .wd-content-layout,
html.afpdp-preview-active #content,
html.afpdp-preview-active .entry-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

html.afpdp-preview-active .page-title,
html.afpdp-preview-active .entry-header,
html.afpdp-preview-active .wd-page-title,
html.afpdp-preview-active .title-size-default,
html.afpdp-preview-active .woocommerce-breadcrumb,
html.afpdp-preview-active .wd-breadcrumbs:not(.afpdp-breadcrumb) {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-breadcrumb {
  padding-top: 16px !important;
}

@media (max-width: 900px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-breadcrumb {
    padding-top: 10px !important;
  }
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media {
  overflow: hidden !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-arrow,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-arrow {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  z-index: 8 !important;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #382a23 !important;
  box-shadow: 0 4px 16px rgba(56, 42, 35, .16) !important;
  pointer-events: auto !important;
  appearance: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-arrow svg,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-arrow svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-prev,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-prev {
  left: 12px !important;
  right: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-next,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-next {
  right: 12px !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

@media (max-width: 600px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-arrow,
  html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-arrow {
    width: 38px !important;
    height: 38px !important;
  }
}

@media (min-width: 901px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-thumb,
  html.afpdp-preview-active .afpdp-prototype button.afpdp-thumb {
    width: 92px !important;
    height: 92px !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: none !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #faf8f6 !important;
    box-shadow: none !important;
    appearance: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-thumb.is-active,
  html.afpdp-preview-active .afpdp-prototype button.afpdp-thumb.is-active {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 10px !important;
  }
}

html.afpdp-preview-active .afpdp-prototype .afpdp-add,
html.afpdp-preview-active .afpdp-prototype .afpdp-mobile-buy-button,
html.afpdp-preview-active .afpdp-prototype .afpdp-routine-add,
html.afpdp-preview-active .afpdp-prototype .afpdp-whatsapp,
html.afpdp-preview-active .afpdp-prototype .afpdp-cep-ok,
html.afpdp-preview-active .afpdp-prototype .afpdp-submit-review,
html.afpdp-preview-active .afpdp-prototype .afpdp-open-review,
html.afpdp-preview-active .afpdp-prototype .afpdp-related-add,
html.afpdp-preview-active .wd-header-banner a,
html.afpdp-preview-active .wd-header-banner .btn,
html.afpdp-preview-active .whb-header a.btn,
html.afpdp-preview-active .whb-header .btn,
html.afpdp-preview-active .wd-promo-banner a,
html.afpdp-preview-active header .btn {
  border-radius: 10px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-open-review {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 22px !important;
  border: 1.5px solid #382a23 !important;
  background: #fff !important;
  color: #382a23 !important;
  font-size: 11.5px !important;
  font-weight: 750 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-open-review:hover {
  background: #382a23 !important;
  color: #fff !important;
}

@media (min-width: 901px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal {
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 16px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card {
    width: min(520px, calc(100vw - 32px)) !important;
    max-height: min(88vh, 820px) !important;
    overflow: auto !important;
    padding: 28px 26px 24px !important;
    border: 0 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 24px 70px rgba(34, 24, 20, .16) !important;
  }
}

html.afpdp-preview-active .afpdp-prototype .afpdp-modal-close {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 36px !important;
  height: 36px !important;
  border: 1px solid rgba(56, 42, 35, .12) !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #382a23 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card h2 {
  margin: 0 48px 18px 0 !important;
  color: #382a23 !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  letter-spacing: -.03em !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-submit-review {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 50px !important;
  margin-top: 18px !important;
  border: 0 !important;
  background: #eb8454 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-submit-review:hover {
  background: #d96f2c !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-card {
  padding: 12px 12px 16px !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(56, 42, 35, .08) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-media {
  border-radius: 12px !important;
  background: #faf8f6 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-badge {
  top: 10px !important;
  left: 10px !important;
  border-radius: 4px !important;
  background: #c96a3a !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-offer {
  position: absolute !important;
  z-index: 2 !important;
  top: 36px !important;
  left: 10px !important;
  padding: 3px 7px !important;
  border-radius: 4px !important;
  background: #f7e4d6 !important;
  color: #c96a3a !important;
  font-size: 9.5px !important;
  font-weight: 750 !important;
  letter-spacing: .04em !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-stars {
  display: inline-flex !important;
  gap: 1px !important;
  color: #eb8454 !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-stars i {
  font-style: normal !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-stars .is-empty {
  color: rgba(235, 132, 84, .28) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-price {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-price del {
  color: rgba(56, 42, 35, .45) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-price strong {
  color: #382a23 !important;
  font-size: 18px !important;
  font-weight: 750 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-installments {
  color: rgba(56, 42, 35, .55) !important;
  font-size: 11px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-add,
html.afpdp-preview-active .afpdp-prototype button.afpdp-related-add {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  height: 44px !important;
  margin-top: 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #eb8454 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-add svg {
  width: 16px !important;
  height: 16px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-add:hover,
html.afpdp-preview-active .afpdp-prototype button.afpdp-related-add:hover {
  background: #d96f2c !important;
  color: #fff !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-add.is-added {
  background: #365b49 !important;
  border-color: #365b49 !important;
}

@media (max-width: 600px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open {
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    inset: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card {
    width: 100% !important;
    height: 100% !important;
    max-height: 100dvh !important;
    min-height: 100dvh !important;
    border-radius: 0 !important;
    padding: 22px 18px 28px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card h2 {
    font-size: 22px !important;
    white-space: normal !important;
  }
}

/* ============================================================
   2.0.5 — miniaturas, ritual, modal, vão, carrossel e parcelas
   ============================================================ */

html.afpdp-preview-active .afpdp-prototype .afpdp-thumb,
html.afpdp-preview-active .afpdp-prototype button.afpdp-thumb,
html.afpdp-preview-active .afpdp-prototype .afpdp-thumb.is-active,
html.afpdp-preview-active .afpdp-prototype button.afpdp-thumb.is-active {
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
}

html.afpdp-preview-active .whb-header,
html.afpdp-preview-active .whb-main-header,
html.afpdp-preview-active .whb-sticky-real,
html.afpdp-preview-active .whb-header .whb-row,
html.afpdp-preview-active .site-header,
html.afpdp-preview-active header.whb-header {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-commerce {
  grid-template-areas:
    "old old"
    "price price"
    "installments installments"
    "pix pix"
    "purchase purchase"
    "whatsapp whatsapp"
    "free free"
    "shipping shipping"
    "payment payment" !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-old-row { grid-area: old !important; }
html.afpdp-preview-active .afpdp-prototype .afpdp-price { grid-area: price !important; }
html.afpdp-preview-active .afpdp-prototype .afpdp-installments {
  grid-area: installments !important;
  justify-self: start !important;
  align-self: start !important;
  margin-top: 4px !important;
  text-align: left !important;
  transform: none !important;
}
html.afpdp-preview-active .afpdp-prototype .afpdp-pix { grid-area: pix !important; }

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-progress {
  display: block !important;
  width: 100% !important;
  margin-top: 16px !important;
  padding: 12px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-copy {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 10px !important;
  text-align: left !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-title {
  width: auto !important;
  text-align: left !important;
  color: #382a23 !important;
  font-size: 12px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-detail {
  display: inline !important;
  color: rgba(56, 42, 35, .55) !important;
  font-size: 11px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-track {
  display: block !important;
  width: 100% !important;
  height: 8px !important;
  margin-top: 8px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: rgba(56, 42, 35, .10) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-track i {
  display: block !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: #eb8454 !important;
  transition: width .35s ease, background .25s ease !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-progress.is-unlocked .afpdp-routine-shipping-title {
  color: #3f7a3a !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-progress.is-unlocked .afpdp-routine-shipping-track i {
  background: #5f9b5a !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-field input,
html.afpdp-preview-active .afpdp-prototype .afpdp-review-field textarea,
html.afpdp-preview-active .afpdp-prototype .afpdp-review-email-input,
html.afpdp-preview-active .afpdp-prototype input.afpdp-review-email-input[type="email"] {
  width: 100% !important;
  min-height: 46px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(56, 42, 35, .14) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
  appearance: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-field textarea {
  min-height: 110px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload {
  display: block !important;
  margin-top: 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-trigger {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 1px dashed rgba(235, 132, 84, .55) !important;
  border-radius: 13px !important;
  background: #fffaf7 !important;
  cursor: pointer !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-trigger input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-trigger small {
  display: block !important;
  margin-top: 3px !important;
  color: rgba(56, 42, 35, .55) !important;
  font-size: 11px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-previews {
  display: grid !important;
  grid-template-columns: repeat(3, 72px) !important;
  gap: 8px !important;
  margin-top: 10px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-previews[hidden] {
  display: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-preview {
  width: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #faf8f6 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-upload-preview img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html.afpdp-review-open .joinchat,
html.afpdp-review-open .ht-ctc-chat,
html.afpdp-review-open #ht-ctc-chat,
html.afpdp-review-open .whatsapp-button {
  display: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related,
html.afpdp-preview-active .afpdp-prototype .afpdp-related-carousel,
html.afpdp-preview-active .afpdp-prototype .afpdp-related-track {
  background: transparent !important;
  box-shadow: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-track {
  grid-auto-columns: calc((100% - 54px) / 4) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-related-arrow {
  display: grid !important;
}

@media (max-width: 900px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open {
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    inset: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    border-radius: 0 !important;
    padding: 22px 18px 28px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "old"
      "price"
      "installments"
      "pix"
      "purchase"
      "whatsapp"
      "free"
      "shipping"
      "payment" !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-installments {
    grid-area: installments !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 4px 0 0 !important;
    text-align: left !important;
    transform: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-track {
    grid-auto-columns: calc((100% - 12px) / 2) !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-arrow,
  html.afpdp-preview-active .afpdp-prototype .afpdp-related-arrow.is-hidden {
    display: grid !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related,
  html.afpdp-preview-active .afpdp-prototype .afpdp-related-carousel,
  html.afpdp-preview-active .afpdp-prototype .afpdp-related-track {
    background: transparent !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-card {
    background: #fff !important;
  }
}

/* ============================================================
   2.0.7 — espaçamento mobile, lightbox, avaliações e ritual
   ============================================================ */

html.afpdp-preview-active .afpdp-prototype .afpdp-main-image {
  cursor: zoom-in;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary.is-empty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  text-align: center !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary.is-empty .afpdp-review-empty-state,
html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary.is-empty .afpdp-review-empty-state p,
html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary.is-empty .afpdp-open-review {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-toolbar {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  margin: 18px 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  gap: 0 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-filter {
  display: grid !important;
  gap: 6px !important;
  width: min(100%, 280px) !important;
  margin: 0 !important;
  color: #382a23 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-filter-select,
html.afpdp-preview-active .afpdp-prototype select.afpdp-review-filter-select {
  width: 100% !important;
  min-height: 46px !important;
  padding: 12px 40px 12px 14px !important;
  border: 1px solid rgba(56, 42, 35, .14) !important;
  border-radius: 12px !important;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23382a23' d='M1.2 1.4L6 6.2l4.8-4.8'/%3E%3C/svg%3E") no-repeat right 14px center !important;
  background-size: 12px 8px !important;
  color: #382a23 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-photos {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-photos button,
html.afpdp-preview-active .afpdp-prototype .afpdp-customer-media button {
  width: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #faf8f6 !important;
  cursor: zoom-in !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-photos button img,
html.afpdp-preview-active .afpdp-prototype .afpdp-customer-media button img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-more,
html.afpdp-preview-active .afpdp-prototype button.afpdp-more {
  display: inline-flex !important;
  align-items: flex-end !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 2px 0 0 !important;
  padding: 0 0 1px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(223, 145, 109, .78) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #d98c68 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .01em !important;
  text-transform: lowercase !important;
}

.afpdp-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100050 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .2s ease, visibility 0s linear .2s !important;
}

.afpdp-lightbox.is-open {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transition: opacity .2s ease, visibility 0s !important;
}

.afpdp-lightbox-backdrop {
  position: absolute !important;
  inset: 0 !important;
  border: 0 !important;
  background: rgba(24, 17, 14, .48) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
  cursor: pointer !important;
}

.afpdp-lightbox-dialog {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 92vw !important;
  max-height: 88vh !important;
}

.afpdp-lightbox-stage {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  line-height: 0 !important;
}

.afpdp-lightbox-image {
  display: block !important;
  max-width: min(86vw, 860px) !important;
  max-height: 78vh !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 28px 80px rgba(24, 17, 14, .28) !important;
}

.afpdp-lightbox-close,
.afpdp-lightbox-prev,
.afpdp-lightbox-next {
  position: absolute !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #382a23 !important;
  box-shadow: 0 8px 24px rgba(24, 17, 14, .16) !important;
  cursor: pointer !important;
  appearance: none !important;
}

.afpdp-lightbox-close {
  top: 12px !important;
  right: 12px !important;
  width: 40px !important;
  height: 40px !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

.afpdp-lightbox-close span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  color: #382a23 !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

.afpdp-lightbox-prev,
.afpdp-lightbox-next {
  top: 50% !important;
  width: 42px !important;
  height: 42px !important;
  transform: translateY(-50%) !important;
}

.afpdp-lightbox-prev { left: 12px !important; }
.afpdp-lightbox-next { right: 12px !important; }

.afpdp-lightbox-prev svg,
.afpdp-lightbox-next svg,
.afpdp-lightbox-prev svg path,
.afpdp-lightbox-next svg path {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  color: #382a23 !important;
  fill: none !important;
  stroke: #382a23 !important;
}

.afpdp-lightbox-dots {
  position: absolute !important;
  left: 50% !important;
  bottom: 14px !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  transform: translateX(-50%) !important;
}

.afpdp-lightbox-dot {
  width: 7px !important;
  height: 7px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .55) !important;
  box-shadow: 0 0 0 1px rgba(56, 42, 35, .18) !important;
  cursor: pointer !important;
}

.afpdp-lightbox-dot.is-active {
  background: #fff !important;
  box-shadow: 0 0 0 1px rgba(56, 42, 35, .28) !important;
}

.afpdp-lightbox-count {
  position: absolute !important;
  right: 12px !important;
  bottom: 12px !important;
  z-index: 3 !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .92) !important;
  color: #382a23 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.afpdp-lightbox-dots[hidden],
.afpdp-lightbox-count[hidden],
.afpdp-lightbox-prev[hidden],
.afpdp-lightbox-next[hidden] {
  display: none !important;
}

html.afpdp-preview-active .afpdp-lightbox-prev,
html.afpdp-preview-active .afpdp-lightbox-next,
html.afpdp-preview-active button.afpdp-lightbox-prev,
html.afpdp-preview-active button.afpdp-lightbox-next {
  background: #fff !important;
  color: #382a23 !important;
}

html.afpdp-lightbox-open .joinchat,
html.afpdp-lightbox-open .ht-ctc-chat,
html.afpdp-lightbox-open #ht-ctc-chat,
html.afpdp-lightbox-open .whatsapp-button {
  display: none !important;
}

@media (max-width: 900px) {
  html.afpdp-preview-active .wd-page-title,
  html.afpdp-preview-active .title-size-default,
  html.afpdp-preview-active .page-title {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.afpdp-preview-active .af-pdp-root,
  html.afpdp-preview-active .afpdp-prototype,
  html.afpdp-preview-active .afpdp-shell,
  html.afpdp-preview-active .afpdp-hero {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce,
  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce.afpdp-commerce {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    min-height: 0 !important;
    padding-bottom: 12px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce .woo-custom-installments,
  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce .wci-installments,
  html.afpdp-preview-active .afpdp-prototype .afpdp-commerce .woo-custom-installments-product {
    display: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-installments {
    margin: 2px 0 8px !important;
    padding: 0 !important;
    transform: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-pix {
    margin-top: 6px !important;
    margin-bottom: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-purchase-row {
    margin-top: 8px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-feedback:not(.is-visible) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-more,
  html.afpdp-preview-active .afpdp-prototype button.afpdp-more {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    padding: 0 0 0 !important;
    border-bottom-width: 1px !important;
    line-height: 1 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-routine-installments {
    margin: 2px 0 0 !important;
    padding: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-routine-shipping-progress {
    margin-top: 8px !important;
    padding: 6px 0 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open {
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    inset: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-modal-card {
    width: 100% !important;
    height: 100% !important;
    max-height: 100dvh !important;
    min-height: 100dvh !important;
    border-radius: 0 !important;
    overflow: auto !important;
    padding: 22px 18px 32px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-review-filter {
    width: 100% !important;
  }

  .afpdp-lightbox-dialog {
    width: auto !important;
    max-width: 100vw !important;
    max-height: 100dvh !important;
  }

  .afpdp-lightbox-image {
    max-width: 92vw !important;
    max-height: 78dvh !important;
    border-radius: 12px !important;
  }

  .afpdp-lightbox-close {
    top: 10px !important;
    right: 10px !important;
  }

  .afpdp-lightbox-prev { left: 10px !important; }
  .afpdp-lightbox-next { right: 10px !important; }
}

/* ============================================================
   2.0.8 — nota, filtro, modal, carrossel, parcelas e lightbox
   ============================================================ */

html.afpdp-preview-active .afpdp-prototype .afpdp-score {
  align-items: center !important;
  gap: 10px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-score > div {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 2px !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-score small {
  margin: 0 !important;
  line-height: 1.2 !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary:not(.is-empty) {
  align-items: start !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-dots,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-dots {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 14px !important;
  top: auto !important;
  z-index: 6 !important;
  transform: translateX(-50%) !important;
}

html.afpdp-preview-active .afpdp-prototype .afpdp-main-media .afpdp-count,
html.afpdp-preview-active .afpdp-prototype .afpdp-main-media.has-image-bounds .afpdp-count {
  position: absolute !important;
  right: 12px !important;
  left: auto !important;
  bottom: 12px !important;
  top: auto !important;
  z-index: 6 !important;
  transform: none !important;
}

@media (max-width: 900px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-score > strong {
    font-size: 34px !important;
    line-height: 1 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-review-summary {
    gap: 12px !important;
    padding: 14px 12px !important;
    min-height: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-score {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-price {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-installments {
    margin: 2px 0 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    line-height: 1.15 !important;
    transform: none !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-pix {
    margin-top: 8px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-purchase-row {
    margin-top: 8px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-arrow {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    top: 36% !important;
    width: 36px !important;
    height: 36px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-prev {
    left: 6px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related-next {
    right: 6px !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-related,
  html.afpdp-preview-active .afpdp-prototype .afpdp-related-carousel,
  html.afpdp-preview-active .afpdp-prototype .afpdp-related-track {
    background: transparent !important;
    box-shadow: none !important;
  }

  html.afpdp-preview-active body.afpdp-overlay-open .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open,
  html.afpdp-review-open .afpdp-prototype .afpdp-review-modal,
  html.afpdp-review-open .afpdp-prototype .afpdp-review-modal.is-open {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal .afpdp-modal-card,
  html.afpdp-review-open .afpdp-prototype .afpdp-modal-card {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-height: 100dvh !important;
    border-radius: 0 !important;
  }
}

/* ============================================================
   2.0.9 — honeypot do formulário de avaliação
   2.0.12 — modal mobile em tela cheia real, sem perder o formulário Allpa
   ============================================================ */

.afpdp-review-hp {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@media (min-width: 901px) {
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open,
  html.afpdp-review-open .afpdp-prototype .afpdp-review-modal,
  html.afpdp-review-open .afpdp-prototype .afpdp-review-modal.is-open {
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 16px !important;
    background: rgba(24, 17, 14, .12) !important;
  }

  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal .afpdp-modal-card,
  html.afpdp-review-open .afpdp-prototype .afpdp-modal-card {
    width: min(520px, calc(100vw - 32px)) !important;
    height: auto !important;
    max-width: min(520px, calc(100vw - 32px)) !important;
    max-height: min(88vh, 820px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    border-radius: 18px !important;
    box-shadow: 0 24px 70px rgba(34, 24, 20, .16) !important;
  }
}

@media (max-width: 900px) {
  html.afpdp-review-open,
  html.afpdp-review-open body {
    overflow: hidden !important;
  }

  html.afpdp-review-open .afpdp-review-modal,
  html.afpdp-review-open .afpdp-review-modal.is-open,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal.is-open,
  body > .afpdp-review-modal,
  body > .afpdp-review-modal.is-open {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    z-index: 2147483000 !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-backdrop,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal .afpdp-modal-backdrop,
  body > .afpdp-review-modal .afpdp-modal-backdrop {
    display: none !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-card,
  html.afpdp-preview-active .afpdp-prototype .afpdp-review-modal .afpdp-modal-card,
  html.afpdp-review-open .afpdp-modal-card,
  body > .afpdp-review-modal .afpdp-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
    min-height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 22px 18px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-close,
  body > .afpdp-review-modal .afpdp-modal-close {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    left: auto !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-product-rating,
  body > .afpdp-review-modal .afpdp-modal-product-rating {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: center !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-product-rating > img,
  body > .afpdp-review-modal .afpdp-modal-product-rating > img {
    width: 82px !important;
    height: 82px !important;
    object-fit: contain !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-stars,
  body > .afpdp-review-modal .afpdp-modal-stars {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 6px !important;
    padding-bottom: 23px !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-star-labels,
  body > .afpdp-review-modal .afpdp-star-labels {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: flex !important;
    justify-content: space-between !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-field-error,
  body > .afpdp-review-modal .afpdp-field-error {
    display: none !important;
  }

  html.afpdp-review-open .afpdp-review-modal .afpdp-review-field.is-invalid .afpdp-field-error,
  html.afpdp-review-open .afpdp-review-modal .afpdp-modal-stars.is-invalid .afpdp-rating-error,
  body > .afpdp-review-modal .afpdp-review-field.is-invalid .afpdp-field-error,
  body > .afpdp-review-modal .afpdp-modal-stars.is-invalid .afpdp-rating-error {
    display: block !important;
  }

  html.afpdp-review-open .joinchat,
  html.afpdp-review-open .joinchat__button,
  html.afpdp-review-open .ht-ctc-chat,
  html.afpdp-review-open #ht-ctc-chat,
  html.afpdp-review-open .ht-ctc,
  html.afpdp-review-open .whatsapp-button,
  html.afpdp-review-open .wws-popup-container,
  html.afpdp-review-open .floating-wpp,
  html.afpdp-review-open .afpdp-mobile-dock {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

/* ============================================================
   Frete da PDP no mesmo visual do carrinho / checkout
   ============================================================ */
.afpdp-prototype .afpdp-shipping-result {
  margin-top: 14px !important;
}

.afpdp-prototype .afpdp-shipping-result.is-visible {
  display: block !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article,
.afpdp-prototype .afpdp-shipping-result .afpdp-rate-fallback {
  display: grid !important;
  grid-template-columns: 14px minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: 10px !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #e6e8eb !important;
  border-radius: 8px !important;
  background: #fafbfc !important;
  box-shadow: none !important;
  color: #382a23 !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article.is-free-shipping {
  border-color: #111 !important;
  background: #fff !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-ship-dot {
  width: 14px;
  height: 14px;
  border: 2px solid #bbb;
  border-radius: 50%;
  flex: 0 0 14px;
  display: block;
  background: #fff;
  box-sizing: border-box;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article.is-free-shipping .afpdp-ship-dot,
.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article:first-child .afpdp-ship-dot {
  border-color: #111;
  position: relative;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article.is-free-shipping .afpdp-ship-dot:after,
.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article:first-child .afpdp-ship-dot:after {
  content: "";
  position: absolute;
  inset: 2px;
  border-radius: 50%;
  background: #111;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article > div,
.afpdp-prototype .afpdp-shipping-result .afpdp-rate-fallback > div {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  min-width: 0 !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article strong,
.afpdp-prototype .afpdp-shipping-result .afpdp-rate-fallback strong {
  display: block !important;
  color: #382a23 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article small,
.afpdp-prototype .afpdp-shipping-result .afpdp-rate-fallback small {
  display: block !important;
  margin: 1px 0 0 !important;
  color: #888 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article > b,
.afpdp-prototype .afpdp-shipping-result .afpdp-rate-fallback > b {
  flex: 0 0 auto !important;
  color: #382a23 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  white-space: nowrap;
}

.afpdp-prototype .afpdp-shipping-result .afpdp-live-rates article.is-free-shipping > b {
  color: #3caf73 !important;
}


