/* ============================================================
   PDP Obra Certa · Pixel-perfect implementation of the design
   Design: pdp/*.jsx from claude.ai/design bundle
   Scope: .pdp-mo container only — does not bleed into rest of site
   ============================================================ */

/* Fonts loaded via wp_enqueue_style 'pdp-mo-fonts' */

.pdp-mo {
  --pdp-purple:#421685;
  --pdp-purple-2:#2e0a64;
  --pdp-purple-3:#7641c4;
  --pdp-purple-50:#f4eefc;
  --pdp-purple-100:#e8def8;
  --pdp-green:#4eb33a;
  --pdp-green-2:#2f7a23;
  --pdp-green-50:#eef9eb;
  --pdp-ink:#1b1226;
  --pdp-ink-2:#3a2e4a;
  --pdp-ink-3:#6b6478;
  --pdp-ink-4:#a7a0b3;
  --pdp-line:#ece8f0;
  --pdp-line-2:#dad5e0;
  --pdp-paper:#f6f4f9;
  --pdp-warn:#f5a623;
  --pdp-hot:#e6442a;
  --pdp-hot-bg:#fff1ee;
  --pdp-container:1320px;

  background:var(--pdp-paper);
  color:var(--pdp-ink);
  font-family:'Nunito',system-ui,sans-serif;
  font-weight:600;
  -webkit-font-smoothing:antialiased;
}
.pdp-mo *,
.pdp-mo *::before,
.pdp-mo *::after { box-sizing:border-box; }
.pdp-mo button { font-family:inherit; cursor:pointer; border:0; }
.pdp-mo a { color:inherit; text-decoration:none; }
.pdp-mo img { max-width:100%; display:block; }

/* ─────────────────────────────────────────────────────────────
   Layout containers
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-mo__breadcrumb {
  max-width:var(--pdp-container);
  margin:0 auto;
  padding:18px 32px 6px;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  font-weight:700;
  color:var(--pdp-ink-3);
}
.pdp-mo .pdp-mo__breadcrumb a { color:var(--pdp-ink-3); }
.pdp-mo .pdp-mo__breadcrumb a.is-root { color:var(--pdp-purple); }
.pdp-mo .pdp-mo__breadcrumb .sep { opacity:.4; }
.pdp-mo .pdp-mo__breadcrumb .current { color:var(--pdp-ink); }

.pdp-mo .pdp-mo__top {
  max-width:var(--pdp-container);
  margin:0 auto;
  padding:18px 32px 0;
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(0, 1fr);
  gap:32px;
}
.pdp-mo .pdp-mo__sections {
  max-width:var(--pdp-container);
  margin:0 auto;
  padding:28px 32px 0;
  display:flex;
  flex-direction:column;
  gap:24px;
}

/* ─────────────────────────────────────────────────────────────
   Gallery
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-gal { display:flex; gap:14px; }
.pdp-mo .pdp-gal__thumbs {
  display:flex; flex-direction:column; gap:8px; width:72px;
}
.pdp-mo .pdp-gal__thumb {
  width:72px; height:72px; padding:6px; background:#fff;
  border:2px solid var(--pdp-line);
  border-radius:10px; cursor:pointer; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.pdp-mo .pdp-gal__thumb.is-active { border-color:var(--pdp-purple); }
.pdp-mo .pdp-gal__thumb img { width:100%; height:100%; object-fit:contain; }
.pdp-mo .pdp-gal__video {
  width:72px; height:60px; margin-top:4px; background:#fff;
  border:1px dashed var(--pdp-line-2); border-radius:10px;
  color:var(--pdp-ink-3); font-size:11px; font-weight:700;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px;
}
.pdp-mo .pdp-gal__video .ic { font-size:18px; }

.pdp-mo .pdp-gal__main {
  flex:1; background:#fff; border-radius:16px;
  padding:24px; position:relative; min-height:460px;
  display:flex; align-items:center; justify-content:center;
}
.pdp-mo .pdp-gal__main-img {
  max-width:100%; max-height:400px; width:auto; height:auto;
  object-fit:contain;
}

.pdp-mo .pdp-gal__badges {
  position:absolute; top:18px; left:18px; display:flex; gap:8px; z-index:2;
  flex-wrap:wrap; max-width:calc(100% - 36px);
}
.pdp-mo .pdp-gal__badge {
  padding:6px 12px; border-radius:8px; font-size:12px; font-weight:900;
}
.pdp-mo .pdp-gal__badge--off { background:var(--pdp-purple); color:#fff; }
.pdp-mo .pdp-gal__badge--top { background:#fff; border:1.5px solid var(--pdp-green); color:var(--pdp-green-2); }
.pdp-mo .pdp-gal__badge--ship {
  background:var(--pdp-green-2); color:#fff;
  display:inline-flex; align-items:center; gap:6px;
  box-shadow:0 4px 12px rgba(78,179,58,.35);
  letter-spacing:.4px;
}
.pdp-mo .pdp-gal__badge[hidden] { display:none; }

.pdp-mo .pdp-gal__tools {
  position:absolute; top:18px; right:18px; display:flex; gap:8px; z-index:2;
}
.pdp-mo .pdp-gal__icbtn {
  width:36px; height:36px; background:#fff;
  border:1px solid var(--pdp-line); border-radius:9px;
  display:flex; align-items:center; justify-content:center;
  font-size:15px; color:var(--pdp-ink-2);
}

.pdp-mo .pdp-gal__live {
  position:absolute; bottom:18px; left:18px;
  display:flex; align-items:center; gap:10px;
  background:#fff; padding:8px 14px; border-radius:24px;
  border:1px solid var(--pdp-line);
  font-size:12px; font-weight:700; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-gal__live::before {
  content:""; width:8px; height:8px; background:var(--pdp-green);
  border-radius:50%; box-shadow:0 0 0 4px rgba(78,179,58,.2);
}
.pdp-mo .pdp-gal__count {
  position:absolute; bottom:18px; right:18px;
  font-size:11px; font-weight:700; color:var(--pdp-ink-3);
  font-family:'JetBrains Mono',monospace;
}

/* Variant column */
.pdp-mo .pdp-gal__variants {
  width:120px; display:flex; flex-direction:column; gap:14px;
}
.pdp-mo .pdp-gal__var-label {
  font-size:11px; font-weight:800; letter-spacing:1.5px;
  color:var(--pdp-ink-3); text-transform:uppercase;
}
.pdp-mo .pdp-gal__var-color {
  display:flex; align-items:center; gap:10px;
  padding:8px; background:#fff;
  border:2px solid var(--pdp-line); border-radius:10px;
  cursor:pointer; text-align:left; width:100%;
}
.pdp-mo .pdp-gal__var-color.is-active { border-color:var(--pdp-purple); }
.pdp-mo .pdp-gal__var-swatch {
  width:28px; height:28px; border-radius:7px;
  border:2px solid #fff; box-shadow:0 0 0 1px rgba(0,0,0,.08);
  flex-shrink:0;
}
.pdp-mo .pdp-gal__var-name {
  font-size:11px; font-weight:800; color:var(--pdp-ink-2); line-height:1.1;
}
.pdp-mo .pdp-gal__var-sep { height:1px; background:var(--pdp-line); margin:4px 0; }
.pdp-mo .pdp-gal__var-size {
  padding:10px 12px; background:#fff;
  border:2px solid var(--pdp-line); border-radius:10px;
  cursor:pointer; text-align:left;
  display:flex; flex-direction:column; gap:2px; width:100%;
}
.pdp-mo .pdp-gal__var-size.is-current { border-color:var(--pdp-green); }
.pdp-mo .pdp-gal__var-size-name {
  font-size:14px; font-weight:900; color:var(--pdp-ink);
}
.pdp-mo .pdp-gal__var-size-sub {
  font-size:10px; font-weight:700; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-gal__var-size.is-current .pdp-gal__var-size-sub { color:var(--pdp-green-2); }

/* ─────────────────────────────────────────────────────────────
   Buy box
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-buy {
  background:#fff; border-radius:16px; padding:24px;
  border:1px solid var(--pdp-line);
  display:flex; flex-direction:column; gap:18px;
}

.pdp-mo .pdp-buy__freeship {
  display:flex; align-items:center; gap:10px;
  background:#fcfcf8;
  border:1.5px dashed var(--pdp-green);
  border-radius:12px; padding:10px 14px;
  font-size:12px; font-weight:700;
}
.pdp-mo .pdp-buy__freeship .ic { font-size:16px; }
.pdp-mo .pdp-buy__freeship-text { color:var(--pdp-ink-2); flex:1; }
.pdp-mo .pdp-buy__freeship-clock {
  font-family:'JetBrains Mono',monospace; font-weight:700;
  color:var(--pdp-green-2); letter-spacing:1px;
}

.pdp-mo .pdp-buy__brand {
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.pdp-mo .pdp-buy__ref {
  font-family:'JetBrains Mono',monospace; font-size:11px;
  font-weight:700; color:var(--pdp-ink-3); letter-spacing:1px;
}
.pdp-mo .pdp-buy__brand-sep { height:14px; width:1px; background:var(--pdp-line-2); }
.pdp-mo .pdp-buy__brand-pill {
  padding:3px 8px; background:var(--pdp-purple); color:#fff;
  border-radius:5px; font-size:10px; font-weight:900; letter-spacing:1px;
}
.pdp-mo .pdp-buy__title {
  margin:0; font-size:26px; font-weight:900; letter-spacing:-.6px;
  line-height:1.15; color:var(--pdp-ink);
}
.pdp-mo .pdp-buy__title .accent { color:var(--pdp-purple); }

.pdp-mo .pdp-buy__rating {
  display:flex; align-items:center; gap:14px;
  font-size:12px; font-weight:700; color:var(--pdp-ink-3); flex-wrap:wrap;
}
.pdp-mo .pdp-buy__stars { display:flex; align-items:center; gap:4px; color:var(--pdp-warn); }
.pdp-mo .pdp-buy__stars .star { font-size:14px; }
.pdp-mo .pdp-buy__rating-num { color:var(--pdp-ink-2); margin-left:4px; }
.pdp-mo .pdp-buy__rating-dot { opacity:.4; }
.pdp-mo .pdp-buy__sold {
  color:var(--pdp-green-2); display:flex; align-items:center; gap:4px;
}
.pdp-mo .pdp-buy__sold-dot {
  width:6px; height:6px; background:var(--pdp-green); border-radius:50%;
}

/* Bloco mais fino (#16): menos padding/altura, ícone e timer menores. */
.pdp-mo .pdp-buy__urgency {
  display:flex; align-items:center; gap:10px;
  background:var(--pdp-hot-bg);
  border:1px solid #fbd5cc;
  border-radius:10px; padding:8px 12px;
}
.pdp-mo .pdp-buy__urgency .ic { font-size:18px; }
.pdp-mo .pdp-buy__urgency-text {
  flex:1; font-size:11.5px; font-weight:700; color:var(--pdp-ink-2); line-height:1.35;
}
.pdp-mo .pdp-buy__urgency-text b { color:var(--pdp-hot); }
.pdp-mo .pdp-buy__urgency-bar {
  height:5px; background:#fff; border-radius:3px; margin-top:5px; overflow:hidden;
}
.pdp-mo .pdp-buy__urgency-bar > span {
  display:block; height:100%;
  background:linear-gradient(90deg,var(--pdp-hot),var(--pdp-warn));
}
.pdp-mo .pdp-buy__urgency-timer { text-align:right; }
.pdp-mo .pdp-buy__urgency-timer-label {
  font-size:9px; font-weight:800; letter-spacing:1px; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-buy__urgency-timer-cells {
  display:flex; gap:4px; margin-top:3px;
}
.pdp-mo .pdp-buy__urgency-timer-cell {
  background:var(--pdp-ink); color:#fff;
  padding:3px 5px; border-radius:5px;
  font-family:'JetBrains Mono',monospace; font-weight:700; font-size:12px;
  min-width:22px; text-align:center; font-variant-numeric:tabular-nums;
}

/* ─── PRICE V6 · Payment Ladder ────────────────────────────── */
.pdp-mo .pdp-buy__price-v6 {
  display:flex; flex-direction:column; gap:6px;
}

/* Header row */
.pdp-mo .pdp-buy__price-was {
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.pdp-mo .pdp-buy__price-was[hidden] { display:none; }
.pdp-mo .pdp-buy__price-was .from {
  font-size:13px; font-weight:700; color:var(--pdp-ink-3);
  text-decoration:line-through;
}
.pdp-mo .pdp-buy__price-was .off-pct {
  padding:3px 9px; background:var(--pdp-green-2); color:#fff;
  border-radius:6px; font-size:11px; font-weight:900;
}
.pdp-mo .pdp-buy__price-was .save {
  font-size:11px; font-weight:800; color:var(--pdp-green-2);
}

/* Sale price line — preço grande + caption */
.pdp-mo .pdp-buy__v6-sale {
  display:flex; align-items:flex-end; gap:4px; margin-top:2px; flex-wrap:wrap;
}
.pdp-mo .pdp-buy__price-curr {
  font-size:14px; font-weight:800; color:var(--pdp-ink-3);
  margin-bottom:7px;
}
.pdp-mo .pdp-buy__price-int {
  font-size:48px; font-weight:900; line-height:.85;
  color:var(--pdp-purple); letter-spacing:-1.8px;
}
.pdp-mo .pdp-buy__price-dec {
  font-size:24px; font-weight:900; color:var(--pdp-purple);
  margin-bottom:5px;
}
.pdp-mo .pdp-buy__v6-caption {
  margin-left:10px; margin-bottom:8px;
  font-size:11px; font-weight:700; color:var(--pdp-ink-3);
  letter-spacing:.3px; text-transform:uppercase;
}

/* Payment ladder (card com 2 rows) */
.pdp-mo .pdp-buy__v6-ladder {
  margin-top:12px;
  border:1px solid var(--pdp-line); border-radius:14px;
  overflow:hidden; background:#fff;
}
.pdp-mo .pdp-buy__v6-row {
  display:flex; align-items:center; gap:14px;
  padding:14px 16px;
}

/* Pix row (dark green gradient) */
.pdp-mo .pdp-buy__v6-row--pix {
  position:relative;
  background:linear-gradient(150deg, #0f3a14 0%, #1d6e2c 100%);
  color:#fff;
}
.pdp-mo .pdp-buy__v6-ic--pix {
  width:42px; height:42px; border-radius:10px;
  background:rgba(255,255,255,.12);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.pdp-mo .pdp-buy__v6-row--pix .pdp-buy__v6-body {
  flex:1; min-width:0; line-height:1.2;
}
.pdp-mo .pdp-buy__v6-row-title {
  display:flex; align-items:center; gap:8px;
  font-size:13px; font-weight:900; letter-spacing:-.2px;
}
.pdp-mo .pdp-buy__v6-pix-badge {
  padding:2px 7px; background:var(--pdp-green); color:#0f3a14;
  border-radius:5px; font-size:10px; font-weight:900; letter-spacing:.5px;
}
.pdp-mo .pdp-buy__v6-row-sub {
  font-size:10px; font-weight:700; opacity:.78;
  margin-top:3px; letter-spacing:.3px;
}
.pdp-mo .pdp-buy__v6-row--pix .pdp-buy__v6-row-price {
  text-align:right; line-height:.9;
}
.pdp-mo .pdp-buy__v6-row-curr {
  font-size:10px; font-weight:700; opacity:.7; display:block; margin-bottom:2px;
}
.pdp-mo .pdp-buy__v6-pix-int {
  font-size:28px; font-weight:900; letter-spacing:-1px;
}
.pdp-mo .pdp-buy__v6-pix-int b {
  font-weight:900;
}
.pdp-mo .pdp-buy__v6-pix-dec {
  font-size:16px; font-weight:900;
}

/* Cartão row (white) */
.pdp-mo .pdp-buy__v6-row--card {
  border-top:1px solid var(--pdp-line);
  background:#fff;
}
.pdp-mo .pdp-buy__v6-ic--card {
  width:42px; height:30px; border-radius:6px;
  background:var(--pdp-purple-50);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  border:1px solid var(--pdp-purple-100);
}
.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-body {
  flex:1; line-height:1.2;
}
.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-row-title {
  font-size:13px; font-weight:900; color:var(--pdp-ink);
}
.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-row-sub {
  font-size:10px; font-weight:700; color:var(--pdp-ink-3);
  opacity:1;
}
.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-row-sub a {
  color:var(--pdp-purple); font-weight:800; text-decoration:none;
}
.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-row-sub a:hover { text-decoration:underline; }

.pdp-mo .pdp-buy__v6-row--card .pdp-buy__v6-row-price {
  text-align:right; line-height:1.05;
}
.pdp-mo .pdp-buy__v6-card-big {
  font-size:16px; font-weight:900; color:var(--pdp-purple); letter-spacing:-.3px;
}
.pdp-mo .pdp-buy__v6-card-big b { font-weight:900; }
.pdp-mo .pdp-buy__v6-card-total {
  font-size:10px; font-weight:700; color:var(--pdp-ink-3);
}

/* Modal de parcelas */
.pdp-buy__inst-modal {
  position:fixed; inset:0; z-index:99997;
  background:rgba(15,8,30,.55);
  display:none; align-items:center; justify-content:center;
  padding:24px;
}
.pdp-buy__inst-modal.is-open { display:flex; }
.pdp-buy__inst-modal-box {
  background:#fff; border-radius:14px;
  max-width:380px; width:100%;
  box-shadow:0 30px 80px rgba(0,0,0,.4);
  overflow:hidden;
  font-family:'Nunito', sans-serif;
}
.pdp-buy__inst-modal-head {
  padding:18px 22px; background:var(--pdp-purple); color:#fff;
  display:flex; align-items:center; justify-content:space-between;
}
.pdp-buy__inst-modal-title {
  font-size:14px; font-weight:900; letter-spacing:-.2px;
}
.pdp-buy__inst-modal-close {
  width:30px; height:30px; border-radius:50%;
  background:rgba(255,255,255,.18); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:18px; font-weight:900; cursor:pointer;
}
.pdp-buy__inst-modal-list {
  margin:0; padding:6px 0;
  list-style:none;
  max-height:60vh; overflow-y:auto;
}
.pdp-buy__inst-modal-list li {
  display:flex; align-items:center; justify-content:space-between;
  padding:11px 22px;
  font-size:13px; font-weight:700; color:var(--pdp-ink-2);
  border-bottom:1px solid var(--pdp-line);
}
.pdp-buy__inst-modal-list li:last-child { border-bottom:0; }
.pdp-buy__inst-modal-list b {
  color:var(--pdp-ink); font-weight:900;
}
.pdp-buy__inst-modal-list .free {
  font-size:10px; font-weight:900; letter-spacing:.4px;
  color:var(--pdp-green-2); text-transform:uppercase;
  background:var(--pdp-green-50); padding:2px 8px; border-radius:5px;
}

.pdp-mo .pdp-buy__qty-row {
  display:flex; gap:10px; align-items:stretch;
}
.pdp-mo .pdp-buy__qty {
  display:flex; align-items:center; gap:0;
  border:2px solid var(--pdp-line); border-radius:10px;
  padding:4px; background:#fff;
}
.pdp-mo .pdp-buy__qty button {
  width:36px; height:36px; background:transparent;
  color:var(--pdp-purple); font-size:18px; font-weight:900; border-radius:8px;
}
.pdp-mo .pdp-buy__qty input {
  width:42px; text-align:center; border:0;
  font-family:'Nunito',sans-serif; font-weight:900; font-size:16px;
  color:var(--pdp-ink); outline:none; background:transparent;
  -moz-appearance:textfield;
}
.pdp-mo .pdp-buy__qty input::-webkit-outer-spin-button,
.pdp-mo .pdp-buy__qty input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }

.pdp-mo .pdp-buy__cta {
  /* Mesma identidade visual do CTA "Finalizar compra" do checkout
     (.ob-summary__cta): gradiente verde #4eb33a→#3d8f2a + glow verde,
     no lugar do verde chapado. O press-scale .96 e as transições vêm
     do bloco global "Interruptible hover + scale-on-press" mais abaixo. */
  flex:1; background:linear-gradient(180deg, var(--pdp-green), #3d8f2a); color:#fff;
  border-radius:12px; font-weight:900; font-size:15px; letter-spacing:.5px;
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding:0 20px; min-height:52px; border:0;
  box-shadow:0 10px 22px rgba(78,179,58,.4);
}
.pdp-mo .pdp-buy__cta:hover { box-shadow:0 12px 26px rgba(78,179,58,.52); }
.pdp-mo .pdp-buy__cta .ic { font-size:18px; }

.pdp-mo .pdp-buy__whatsapp {
  background:#fff; color:var(--pdp-green-2);
  border:2px solid var(--pdp-green); border-radius:10px;
  padding:12px; font-weight:800; font-size:14px;
  display:flex; align-items:center; justify-content:center; gap:10px;
}
.pdp-mo .pdp-buy__whatsapp .ic { font-size:16px; }

.pdp-mo .pdp-buy__shipping {
  border-top:1px solid var(--pdp-line); padding-top:18px;
  display:flex; flex-direction:column; gap:10px;
}
.pdp-mo .pdp-buy__ship-head {
  display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
}
.pdp-mo .pdp-buy__ship-title {
  display:flex; align-items:center; gap:8px;
  font-size:13px; font-weight:800; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-buy__ship-title .ic { font-size:16px; }
.pdp-mo .pdp-buy__ship-pill {
  padding:3px 10px; background:var(--pdp-green-50); color:var(--pdp-green-2);
  border-radius:5px; font-size:10px; font-weight:900; letter-spacing:1px;
}
.pdp-mo .pdp-buy__ship-form { display:flex; gap:8px; }
.pdp-mo .pdp-buy__ship-form input {
  flex:1; height:42px; padding:0 14px;
  border:2px solid var(--pdp-line); border-radius:10px;
  font-family:'Nunito',sans-serif; font-weight:700; font-size:14px;
  color:var(--pdp-ink); outline:none;
}
.pdp-mo .pdp-buy__ship-form button {
  padding:0 22px; background:var(--pdp-ink); color:#fff;
  border-radius:10px; font-weight:800; font-size:13px;
}
.pdp-mo .pdp-buy__ship-help {
  font-size:11px; font-weight:700; color:var(--pdp-purple);
}

/* CEP result */
.pdp-mo .pdp-buy__ship-result {
  padding:12px 14px; border-radius:10px;
  background:var(--pdp-paper); border:1px solid var(--pdp-line);
  font-size:12px; font-weight:700; color:var(--pdp-ink-2);
  line-height:1.4;
  display:flex; flex-direction:column; gap:6px;
}
.pdp-mo .pdp-buy__ship-result.is-error {
  background:var(--pdp-hot-bg); border-color:#fbd5cc; color:var(--pdp-hot);
}
.pdp-mo .pdp-buy__ship-result-row {
  display:flex; justify-content:space-between; align-items:center; gap:10px;
}
.pdp-mo .pdp-buy__ship-result-row b {
  font-weight:900; color:var(--pdp-ink);
}
.pdp-mo .pdp-buy__ship-result-free {
  color:var(--pdp-green-2); font-weight:900;
  display:inline-flex; align-items:center; gap:4px;
}
.pdp-mo .pdp-buy__ship-result-loc {
  font-size:11px; font-weight:600; color:var(--pdp-ink-3);
}

/* Rating clickable */
.pdp-mo .pdp-buy__rating-link {
  display:inline-flex; align-items:center; gap:14px;
  text-decoration:none; color:inherit;
  padding:4px 8px; margin:-4px -8px;
  border-radius:6px;
  transition:background .12s;
}
.pdp-mo .pdp-buy__rating-link:hover {
  background:var(--pdp-purple-50);
}
.pdp-mo .pdp-buy__rating-count {
  font-size:12px; font-weight:700; color:var(--pdp-ink-3);
}

/* Variation suffix in title */
.pdp-mo .pdp-buy__title-variant {
  display:block;
  margin-top:4px;
  font-size:16px; font-weight:800;
  color:var(--pdp-purple);
  letter-spacing:0;
}

/* SKU + Marca highlight no topo da ficha */
.pdp-mo .pdp-spec-highlight {
  display:grid; grid-template-columns:1fr 1fr; gap:10px;
  margin-bottom:18px;
}
.pdp-mo .pdp-spec-highlight__cell {
  padding:12px 14px;
  background:var(--pdp-purple-50);
  border:1px solid var(--pdp-purple-100);
  border-radius:10px;
  display:flex; flex-direction:column; gap:4px;
}
.pdp-mo .pdp-spec-highlight__k {
  font-size:10px; font-weight:900; letter-spacing:1.5px;
  color:var(--pdp-ink-3); text-transform:uppercase;
}
.pdp-mo .pdp-spec-highlight__v {
  font-size:15px; font-weight:900; color:var(--pdp-ink);
  font-family:'JetBrains Mono', monospace;
  word-break:break-all;
}
.pdp-mo .pdp-spec-highlight__v--link {
  color:var(--pdp-purple); text-decoration:none;
  font-family:'Nunito', sans-serif;
}
.pdp-mo .pdp-spec-highlight__v--link:hover { text-decoration:underline; }

/* WC native attributes table (wc_display_product_attributes) */
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes,
.pdp-mo .pdp-tabs__attrs .shop_attributes {
  width:100%;
  border-collapse:collapse;
  margin:0;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes tr,
.pdp-mo .pdp-tabs__attrs .shop_attributes tr {
  border-bottom:1px solid var(--pdp-line);
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes tr:last-child,
.pdp-mo .pdp-tabs__attrs .shop_attributes tr:last-child {
  border-bottom:0;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes th,
.pdp-mo .pdp-tabs__attrs .shop_attributes th,
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes-item__label,
.pdp-mo .pdp-tabs__attrs .shop_attributes .label {
  padding:11px 16px 11px 0;
  font-size:13px; font-weight:600;
  color:var(--pdp-ink-3);
  text-align:left;
  width:40%;
  vertical-align:top;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes td,
.pdp-mo .pdp-tabs__attrs .shop_attributes td,
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes-item__value {
  padding:11px 0;
  font-size:13px; font-weight:800;
  color:var(--pdp-ink);
  vertical-align:top;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes td p,
.pdp-mo .pdp-tabs__attrs .shop_attributes td p {
  margin:0; padding:0;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes td a,
.pdp-mo .pdp-tabs__attrs .shop_attributes td a {
  color:var(--pdp-purple); text-decoration:none;
}
.pdp-mo .pdp-tabs__attrs .woocommerce-product-attributes td a:hover,
.pdp-mo .pdp-tabs__attrs .shop_attributes td a:hover { text-decoration:underline; }

.pdp-mo .pdp-buy__trust {
  display:grid; grid-template-columns:1fr 1fr; gap:10px;
}
.pdp-mo .pdp-buy__trust-item {
  display:flex; align-items:center; gap:10px;
  padding:10px; background:var(--pdp-purple-50); border-radius:10px;
}
.pdp-mo .pdp-buy__trust-icon {
  width:30px; height:30px; background:#fff; border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  font-size:14px; color:var(--pdp-purple);
}
.pdp-mo .pdp-buy__trust-body { line-height:1.15; }
.pdp-mo .pdp-buy__trust-t { font-size:12px; font-weight:800; color:var(--pdp-ink); }
.pdp-mo .pdp-buy__trust-s { font-size:10px; font-weight:600; color:var(--pdp-ink-3); }

/* ─────────────────────────────────────────────────────────────
   Specs strip
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-specs {
  background:#fff; border-radius:16px;
  border:1px solid var(--pdp-line);
  padding:18px 24px; display:grid; gap:0;
}
.pdp-mo .pdp-specs__cell {
  padding:4px 14px;
  display:flex; align-items:center; gap:12px;
  border-right:1px solid var(--pdp-line);
}
.pdp-mo .pdp-specs__cell:last-child { border-right:0; }
.pdp-mo .pdp-specs__ic {
  width:38px; height:38px; background:var(--pdp-purple-50); color:var(--pdp-purple);
  border-radius:10px; display:flex; align-items:center; justify-content:center;
  font-size:16px;
}
.pdp-mo .pdp-specs__k {
  font-size:10px; font-weight:800; letter-spacing:1px;
  color:var(--pdp-ink-3); text-transform:uppercase;
}
.pdp-mo .pdp-specs__v {
  font-size:14px; font-weight:900; color:var(--pdp-ink); line-height:1.15;
}

/* ─────────────────────────────────────────────────────────────
   Promo banners
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-promo {
  display:grid; grid-template-columns:1fr 1fr; gap:18px;
}
.pdp-mo .pdp-promo__a {
  background:linear-gradient(135deg, var(--pdp-purple) 0%, var(--pdp-purple-2) 100%);
  border-radius:16px; padding:24px 28px; color:#fff;
  position:relative; overflow:hidden;
}
.pdp-mo .pdp-promo__a-bg {
  position:absolute; right:-30px; bottom:-30px;
  opacity:.15; font-size:200px; line-height:1;
}
.pdp-mo .pdp-promo__a-kicker {
  font-size:10px; font-weight:900; letter-spacing:2px;
  color:var(--pdp-green); text-transform:uppercase; margin-bottom:8px;
}
.pdp-mo .pdp-promo__a-title {
  margin:0; font-size:22px; font-weight:900; letter-spacing:-.5px; line-height:1.1;
  color:#fff;
}
.pdp-mo .pdp-promo__a-title .accent { color:var(--pdp-green); }
.pdp-mo .pdp-promo__a-sub {
  margin:8px 0 16px; font-size:13px; font-weight:600;
  opacity:.75; max-width:360px;
}
.pdp-mo .pdp-promo__a-btn {
  background:var(--pdp-green-2); color:#fff;
  padding:9px 16px; border-radius:9px; font-weight:900; font-size:13px;
  display:inline-flex; align-items:center; gap:8px;
}

.pdp-mo .pdp-promo__b {
  background:#fff; border-radius:16px; border:1px solid var(--pdp-line);
  padding:24px 28px; position:relative; overflow:hidden;
  display:flex; flex-direction:column; justify-content:space-between; gap:12px;
}
.pdp-mo .pdp-promo__b::after {
  content:""; position:absolute; top:0; right:0; bottom:0; width:160px;
  background:linear-gradient(135deg,transparent 0%, rgba(78,179,58,.07) 60%, rgba(78,179,58,.13) 100%);
  pointer-events:none;
}
.pdp-mo .pdp-promo__b-kicker {
  font-size:10px; font-weight:900; letter-spacing:2px;
  color:var(--pdp-green-2); text-transform:uppercase; margin-bottom:8px;
}
.pdp-mo .pdp-promo__b-title {
  margin:0; font-size:22px; font-weight:900; letter-spacing:-.5px;
  line-height:1.1; color:var(--pdp-ink);
}
.pdp-mo .pdp-promo__b-title .accent { color:var(--pdp-purple); }
.pdp-mo .pdp-promo__b-sub {
  margin:8px 0 0; font-size:13px; font-weight:600; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-promo__b-pills {
  display:flex; gap:12px; position:relative; align-items:center; flex-wrap:wrap;
}
.pdp-mo .pdp-promo__pill {
  padding:6px 12px; background:var(--pdp-purple-50);
  border:1px solid var(--pdp-purple-100); border-radius:9px; min-width:90px;
}
.pdp-mo .pdp-promo__pill-k {
  font-size:9px; font-weight:800; letter-spacing:1.2px; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-promo__pill-v {
  font-size:14px; font-weight:900; color:var(--pdp-purple);
}
.pdp-mo .pdp-promo__b-btn {
  background:var(--pdp-purple); color:#fff;
  padding:10px 16px; border-radius:9px; font-weight:900; font-size:12px;
  margin-left:auto; letter-spacing:.5px;
}

/* ─────────────────────────────────────────────────────────────
   Tabs
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-tabs {
  background:#fff; border-radius:16px;
  border:1px solid var(--pdp-line); overflow:hidden;
}
.pdp-mo .pdp-tabs__nav {
  display:flex; border-bottom:1px solid var(--pdp-line); padding-left:24px; flex-wrap:wrap;
}
.pdp-mo .pdp-tabs__btn {
  padding:18px 22px; background:transparent;
  font-weight:800; font-size:13px; letter-spacing:.5px;
  color:var(--pdp-ink-3);
  border-bottom:3px solid transparent;
  margin-bottom:-1px;
}
.pdp-mo .pdp-tabs__btn.is-active {
  color:var(--pdp-purple);
  border-bottom-color:var(--pdp-green);
}
.pdp-mo .pdp-tabs__panel {
  display:none; padding:28px 32px;
  grid-template-columns:1.4fr 1fr; gap:32px; min-height:300px;
}
.pdp-mo .pdp-tabs__panel.is-active { display:grid; }
/* #reviews é o alvo do scroll ao clicar na nota/"(N avaliações)".
   scroll-margin-top evita que o topo do bloco fique sob a barra fixa. */
.pdp-mo .pdp-tabs__panel--reviews { grid-template-columns:1fr; scroll-margin-top:96px; }
.pdp-mo .pdp-tabs__count {
  margin-left:4px; font-weight:700; opacity:.6;
  font-family:'JetBrains Mono',monospace; font-size:11px;
}

.pdp-mo .pdp-tabs__h3 {
  margin:0 0 12px; font-size:20px; font-weight:900; color:var(--pdp-ink);
}
.pdp-mo .pdp-tabs__p {
  margin:0 0 14px; font-size:14px; line-height:1.6; font-weight:500; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-tabs__list {
  margin:0; padding:0; list-style:none;
  display:flex; flex-direction:column; gap:8px;
}
.pdp-mo .pdp-tabs__list li {
  display:flex; align-items:flex-start; gap:10px;
  font-size:13px; font-weight:600; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-tabs__check {
  width:20px; height:20px; background:var(--pdp-green-2); color:#fff;
  border-radius:6px; display:flex; align-items:center; justify-content:center;
  font-size:11px; flex-shrink:0; margin-top:2px;
}

.pdp-mo .pdp-tabs__aside {
  background:var(--pdp-paper); border-radius:12px; padding:20px;
  display:flex; flex-direction:column; gap:12px;
}
.pdp-mo .pdp-tabs__aside-kicker {
  font-size:11px; font-weight:900; letter-spacing:1.5px;
  color:var(--pdp-green-2); text-transform:uppercase;
}
.pdp-mo .pdp-tabs__aside-item {
  display:flex; gap:12px; align-items:flex-start;
}
.pdp-mo .pdp-tabs__aside-ic { font-size:22px; }
.pdp-mo .pdp-tabs__aside-t { font-size:13px; font-weight:900; color:var(--pdp-ink); }
.pdp-mo .pdp-tabs__aside-s { font-size:11px; font-weight:600; color:var(--pdp-ink-3); }

.pdp-mo .pdp-specs-tbl {
  width:100%; border-collapse:collapse;
}
.pdp-mo .pdp-specs-tbl tr { border-bottom:1px solid var(--pdp-line); }
.pdp-mo .pdp-specs-tbl td {
  padding:10px 0; font-size:13px;
}
.pdp-mo .pdp-specs-tbl td:first-child {
  font-weight:600; color:var(--pdp-ink-3); width:40%;
}
.pdp-mo .pdp-specs-tbl td:last-child {
  font-weight:800; color:var(--pdp-ink);
}

.pdp-mo .pdp-tabs__aside--purple {
  background:var(--pdp-purple-50);
}
.pdp-mo .pdp-tabs__aside--purple .pdp-tabs__aside-h {
  font-size:14px; font-weight:900; color:var(--pdp-purple); margin:0 0 12px;
}
.pdp-mo .pdp-tabs__aside--purple ul {
  margin:0; padding:0; list-style:none;
  display:flex; flex-direction:column; gap:8px;
  font-size:13px; font-weight:600; color:var(--pdp-ink-2);
}

/* Dimensions tab */
.pdp-mo .pdp-dim__row { margin-bottom:14px; }
.pdp-mo .pdp-dim__row-head {
  display:flex; justify-content:space-between;
  font-size:12px; font-weight:700; margin-bottom:6px;
}
.pdp-mo .pdp-dim__row-label { color:var(--pdp-ink-3); }
.pdp-mo .pdp-dim__row-val {
  color:var(--pdp-ink); font-weight:900; font-family:'JetBrains Mono',monospace;
}
.pdp-mo .pdp-dim__bar {
  height:8px; background:var(--pdp-paper); border-radius:4px; overflow:hidden;
}
.pdp-mo .pdp-dim__bar > span {
  display:block; height:100%;
  background:linear-gradient(90deg,var(--pdp-purple),var(--pdp-green));
  border-radius:4px;
}

/* Brand tab */
.pdp-mo .pdp-brand__chip {
  display:inline-block; padding:10px 18px;
  background:var(--pdp-purple); color:#fff;
  border-radius:8px; font-size:24px; font-weight:900; letter-spacing:2px;
}
.pdp-mo .pdp-brand__link {
  display:inline-flex; align-items:center; gap:8px;
  font-size:13px; font-weight:800; color:var(--pdp-purple);
}
.pdp-mo .pdp-brand__badges {
  display:grid; grid-template-columns:1fr 1fr; gap:10px;
}
.pdp-mo .pdp-brand__badge {
  padding:14px; background:var(--pdp-green-50);
  border:1px solid #cfe9c5; border-radius:10px;
  font-size:13px; font-weight:800; color:var(--pdp-green-2);
}

/* ─────────────────────────────────────────────────────────────
   Related products
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-related__head {
  display:flex; align-items:flex-end; justify-content:space-between;
  margin-bottom:18px; gap:16px; flex-wrap:wrap;
}
.pdp-mo .pdp-related__kicker {
  font-size:11px; font-weight:900; letter-spacing:2px;
  color:var(--pdp-green-2); text-transform:uppercase;
}
.pdp-mo .pdp-related__title {
  margin:4px 0 0; font-size:26px; font-weight:900; letter-spacing:-.6px; color:var(--pdp-ink);
}
.pdp-mo .pdp-related__actions {
  display:flex; align-items:center; gap:12px;
}
.pdp-mo .pdp-related__see-all {
  font-size:12px; font-weight:800; color:var(--pdp-purple);
}
.pdp-mo .pdp-related__nav {
  width:36px; height:36px; border-radius:50%;
  border:1.5px solid var(--pdp-line-2);
  background:#fff; color:var(--pdp-ink-2); font-size:14px;
}
.pdp-mo .pdp-related__nav--next {
  background:var(--pdp-green-2); color:#fff; font-weight:900; border-color:var(--pdp-green);
}
.pdp-mo .pdp-related__grid {
  display:grid; grid-template-columns:repeat(5, 1fr); gap:14px;
}

/* ─────────────────────────────────────────────────────────────
   Trust strip
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-trust {
  background:#fff; border-radius:16px;
  border:1px solid var(--pdp-line);
  padding:18px 24px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
}
.pdp-mo .pdp-trust__cell {
  padding:4px 16px;
  display:flex; align-items:center; gap:14px;
  border-right:1px solid var(--pdp-line);
}
.pdp-mo .pdp-trust__cell:last-child { border-right:0; }
.pdp-mo .pdp-trust__ic {
  width:42px; height:42px; background:var(--pdp-green-2); color:#fff;
  border-radius:10px; display:flex; align-items:center; justify-content:center;
  font-size:18px;
}
.pdp-mo .pdp-trust__t { font-size:14px; font-weight:900; color:var(--pdp-ink); }
.pdp-mo .pdp-trust__s { font-size:11px; font-weight:600; color:var(--pdp-ink-3); }

/* ─────────────────────────────────────────────────────────────
   Newsletter
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-news {
  background:linear-gradient(120deg, var(--pdp-purple) 0%, var(--pdp-purple-2) 100%);
  border-radius:16px; padding:32px 44px; color:#fff;
  display:flex; align-items:center; gap:32px;
  position:relative; overflow:hidden; flex-wrap:wrap;
}
.pdp-mo .pdp-news::after {
  content:""; position:absolute; top:0; right:0; bottom:0; width:300px;
  background:repeating-linear-gradient(-45deg, transparent 0 18px, rgba(78,179,58,.13) 18px 36px);
  opacity:.7; pointer-events:none;
}
.pdp-mo .pdp-news__ic {
  width:64px; height:64px; background:rgba(255,255,255,.12);
  border-radius:14px; display:flex; align-items:center; justify-content:center;
  font-size:28px; flex-shrink:0; position:relative;
}
.pdp-mo .pdp-news__body { position:relative; }
.pdp-mo .pdp-news__title {
  margin:0; font-size:24px; font-weight:900; letter-spacing:-.5px;
  color:#fff;
}
.pdp-mo .pdp-news__title .accent { color:var(--pdp-green); }
.pdp-mo .pdp-news__sub {
  margin:4px 0 0; font-size:13px; font-weight:600; opacity:.75;
}
.pdp-mo .pdp-news__form {
  flex:1; display:flex; gap:10px; position:relative; min-width:380px;
}
.pdp-mo .pdp-news__form input {
  flex:1; height:50px; padding:0 18px; border:0; border-radius:10px;
  font-family:'Nunito',sans-serif; font-weight:700; font-size:14px;
  outline:none;
}
.pdp-mo .pdp-news__form button {
  background:var(--pdp-green-2); color:#fff;
  padding:0 24px; border-radius:10px;
  font-weight:900; font-size:13px; letter-spacing:.5px;
}

/* ─────────────────────────────────────────────────────────────
   Reviews v2 — pixel-perfect from claude.ai/design (pdp/reviews.jsx)
   Scope: .pdp-rv inside .pdp-tabs__panel--reviews
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-tabs__panel--reviews {
  padding:0; grid-template-columns:1fr;
}
.pdp-mo .pdp-rv {
  padding:24px 28px;
  display:flex; flex-direction:column; gap:24px;
}

/* shared stars */
.pdp-mo .pdp-rv__stars { display:inline-flex; gap:1px; line-height:1; }
.pdp-mo .pdp-rv__stars .is-on  { color:var(--pdp-warn); }
.pdp-mo .pdp-rv__stars .is-off { color:#e8e3ef; }

/* Header card */
.pdp-mo .pdp-rv__header {
  display:grid; grid-template-columns:260px 1fr; gap:28px;
  background:#fff; border:1px solid var(--pdp-line);
  border-radius:18px; padding:26px 30px;
  position:relative; overflow:hidden;
}
.pdp-mo .pdp-rv__bg-star {
  position:absolute; right:-50px; top:-50px;
  font-size:260px; line-height:1;
  color:var(--pdp-purple); opacity:.05; pointer-events:none;
}

.pdp-mo .pdp-rv__score-col {
  position:relative; display:flex; flex-direction:column; gap:14px;
  padding-right:24px; border-right:1px solid var(--pdp-line);
}
.pdp-mo .pdp-rv__score-line {
  display:flex; align-items:baseline; gap:8px;
}
.pdp-mo .pdp-rv__score {
  font-size:68px; font-weight:900; line-height:1; letter-spacing:-3px;
  color:var(--pdp-purple);
}
.pdp-mo .pdp-rv__score-suffix {
  font-size:22px; font-weight:700; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-rv__stars-big { margin-top:8px; display:block; }

.pdp-mo .pdp-rv__base-block {
  display:flex; flex-direction:column; gap:8px;
}
.pdp-mo .pdp-rv__base {
  font-size:13px; font-weight:700; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-rv__base b { color:var(--pdp-ink); }
.pdp-mo .pdp-rv__recommend {
  display:inline-flex; align-items:center; gap:6px;
  padding:5px 10px; background:var(--pdp-green-50);
  border:1px solid #cfe9c5; border-radius:99px;
  font-size:11px; font-weight:900; color:var(--pdp-green-2);
  width:fit-content; letter-spacing:.3px;
}

.pdp-mo .pdp-rv__only-buyers {
  margin-top:4px; padding:10px 12px;
  background:var(--pdp-purple-50);
  border:1px dashed var(--pdp-purple-100);
  border-radius:10px;
  font-size:11px; font-weight:700; color:var(--pdp-ink-2); line-height:1.4;
}
.pdp-mo .pdp-rv__only-buyers b {
  color:var(--pdp-purple); letter-spacing:.3px;
}

.pdp-mo .pdp-rv__right {
  position:relative;
  display:grid; grid-template-columns:1.1fr 1fr; gap:28px;
}
.pdp-mo .pdp-rv__h4 {
  margin:0 0 12px; font-size:11px; font-weight:900;
  letter-spacing:1.8px; color:var(--pdp-green-2); text-transform:uppercase;
}

.pdp-mo .pdp-rv__dist {
  display:flex; flex-direction:column; gap:8px;
}
.pdp-mo .pdp-rv__dist-row {
  display:flex; align-items:center; gap:10px;
}
.pdp-mo .pdp-rv__dist-label {
  display:flex; align-items:center; gap:2px;
  width:54px; font-size:12px; font-weight:800; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-rv__dist-label span { color:var(--pdp-warn); font-size:13px; }
.pdp-mo .pdp-rv__dist-bar {
  flex:1; height:10px; background:var(--pdp-paper);
  border-radius:5px; overflow:hidden;
}
.pdp-mo .pdp-rv__dist-bar > span {
  display:block; height:100%;
  background:linear-gradient(90deg, var(--pdp-green), var(--pdp-warn));
  border-radius:5px;
}
.pdp-mo .pdp-rv__dist-count {
  width:36px; text-align:right; font-size:11px; font-weight:900;
  font-family:'JetBrains Mono',monospace; color:var(--pdp-ink-2);
}

.pdp-mo .pdp-rv__aspects {
  display:grid; grid-template-columns:1fr 1fr; gap:10px;
}
.pdp-mo .pdp-rv__aspect {
  background:var(--pdp-paper); border:1px solid var(--pdp-line);
  border-radius:10px; padding:10px 12px;
}
.pdp-mo .pdp-rv__aspect-head {
  display:flex; align-items:center; gap:8px; margin-bottom:4px;
}
.pdp-mo .pdp-rv__aspect-ic { font-size:16px; }
.pdp-mo .pdp-rv__aspect-label {
  font-size:11px; font-weight:800; color:var(--pdp-ink-2); line-height:1.2;
}
.pdp-mo .pdp-rv__aspect-score {
  display:flex; align-items:center; gap:6px;
}
.pdp-mo .pdp-rv__aspect-num {
  font-size:18px; font-weight:900; letter-spacing:-.5px; color:var(--pdp-purple);
}

/* Photo strip */
.pdp-mo .pdp-rv__photos { display:flex; flex-direction:column; gap:12px; }
.pdp-mo .pdp-rv__photos-head {
  display:flex; align-items:center; justify-content:space-between;
}
.pdp-mo .pdp-rv__photos-title {
  margin:0; font-size:16px; font-weight:900; color:var(--pdp-ink);
  display:flex; align-items:center; gap:10px;
}
.pdp-mo .pdp-rv__photos-icon {
  width:30px; height:30px;
  background:var(--pdp-purple-50); color:var(--pdp-purple);
  border-radius:8px; display:flex; align-items:center; justify-content:center;
  font-size:14px;
}
.pdp-mo .pdp-rv__photos-count {
  font-size:12px; font-weight:700; color:var(--pdp-ink-3); margin-left:2px;
}
.pdp-mo .pdp-rv__photos-grid {
  display:grid; grid-template-columns:repeat(8, 1fr); gap:8px;
}
.pdp-mo .pdp-rv__photo {
  aspect-ratio:1/1; border-radius:10px; padding:0;
  background:var(--pdp-paper);
  position:relative; overflow:hidden; cursor:pointer;
  border:2px solid #fff;
  box-shadow:0 4px 14px rgba(0,0,0,.08);
}
.pdp-mo .pdp-rv__photo img {
  width:100%; height:100%; object-fit:cover; display:block;
}
.pdp-mo .pdp-rv__photo-more {
  position:absolute; inset:0;
  background:rgba(0,0,0,.55);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-weight:900; font-size:14px;
}

/* Filters + sort */
.pdp-mo .pdp-rv__filters-row {
  display:flex; align-items:center; justify-content:space-between;
  gap:18px; flex-wrap:wrap;
}
.pdp-mo .pdp-rv__filters {
  display:flex; gap:8px; flex-wrap:wrap;
}
.pdp-mo .pdp-rv__chip {
  padding:8px 14px; background:#fff;
  border:1.5px solid var(--pdp-line-2); border-radius:99px;
  font-weight:800; font-size:12px; color:var(--pdp-ink-2);
  display:flex; align-items:center; gap:6px;
  cursor:pointer; transition:background .12s ease, color .12s ease, border-color .12s ease;
}
.pdp-mo .pdp-rv__chip:hover { border-color:var(--pdp-purple-3); }
.pdp-mo .pdp-rv__chip.is-active {
  background:var(--pdp-purple); color:#fff; border-color:var(--pdp-purple);
}
.pdp-mo .pdp-rv__chip-count {
  padding:0 6px; border-radius:99px;
  font-size:10px; font-weight:900;
  background:var(--pdp-paper); color:var(--pdp-ink-3);
}
.pdp-mo .pdp-rv__chip.is-active .pdp-rv__chip-count {
  background:rgba(255,255,255,.18); color:#fff;
}
.pdp-mo .pdp-rv__sort-wrap {
  display:flex; align-items:center; gap:10px;
}
.pdp-mo .pdp-rv__sort-label {
  font-size:11px; font-weight:800; color:var(--pdp-ink-3);
  letter-spacing:.5px; text-transform:uppercase;
}
.pdp-mo .pdp-rv__sort {
  padding:8px 12px; border:1.5px solid var(--pdp-line-2);
  border-radius:8px;
  font-family:'Nunito',sans-serif; font-weight:800; font-size:12px;
  color:var(--pdp-ink); background:#fff; cursor:pointer; outline:none;
}

/* Scroll container */
.pdp-mo .pdp-rv__scroll {
  max-height:720px; overflow-y:auto;
  padding-right:12px; margin-right:-12px;
  scrollbar-color:rgba(118,65,196,.33) transparent;
  scrollbar-width:thin;
}
.pdp-mo .pdp-rv__scroll::-webkit-scrollbar { width:8px; }
.pdp-mo .pdp-rv__scroll::-webkit-scrollbar-track { background:transparent; }
.pdp-mo .pdp-rv__scroll::-webkit-scrollbar-thumb {
  background:rgba(118,65,196,.33); border-radius:4px;
}
.pdp-mo .pdp-rv__scroll::-webkit-scrollbar-thumb:hover { background:rgba(118,65,196,.6); }

.pdp-mo .pdp-rv__list {
  display:flex; flex-direction:column; gap:14px;
}
.pdp-mo .pdp-rv__empty,
.pdp-mo .pdp-rv__no-results {
  padding:24px; background:var(--pdp-paper); border-radius:12px;
  font-size:13px; font-weight:700; color:var(--pdp-ink-3); text-align:center;
}
.pdp-mo .pdp-rv__end {
  padding:18px 0 4px; text-align:center;
  font-size:11px; font-weight:800; color:var(--pdp-ink-3);
  letter-spacing:1px; text-transform:uppercase;
}

/* Card */
.pdp-mo .pdp-rv__card {
  background:#fff; border:1px solid var(--pdp-line);
  border-radius:14px; padding:20px 22px;
  display:flex; gap:18px;
}
.pdp-mo .pdp-rv__avatar-col {
  display:flex; flex-direction:column; align-items:center; gap:8px;
  flex-shrink:0; width:60px;
}
.pdp-mo .pdp-rv__avatar {
  width:54px; height:54px; border-radius:50%;
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:22px; font-family:'Nunito',sans-serif;
}
.pdp-mo .pdp-rv__verified {
  display:flex; align-items:center; gap:3px;
  padding:2px 6px; background:var(--pdp-green-50); color:var(--pdp-green-2);
  border-radius:5px;
  font-size:9px; font-weight:900; letter-spacing:.3px;
}

.pdp-mo .pdp-rv__card-body { flex:1; min-width:0; }
.pdp-mo .pdp-rv__meta {
  display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:6px;
}
.pdp-mo .pdp-rv__name { font-weight:900; font-size:14px; color:var(--pdp-ink); }
.pdp-mo .pdp-rv__when { font-size:11px; font-weight:700; color:var(--pdp-ink-3); }
.pdp-mo .pdp-rv__dot { opacity:.3; }
.pdp-mo .pdp-rv__variant-line { font-size:11px; font-weight:700; color:var(--pdp-ink-3); }
.pdp-mo .pdp-rv__variant { color:var(--pdp-purple); font-weight:900; }

.pdp-mo .pdp-rv__title {
  margin:4px 0 8px; font-size:16px; font-weight:900;
  color:var(--pdp-ink); letter-spacing:-.3px;
}
.pdp-mo .pdp-rv__text {
  margin:0; font-size:13px; line-height:1.55; font-weight:500; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-rv__text--empty { font-style:italic; color:var(--pdp-ink-3); }

.pdp-mo .pdp-rv__rphotos {
  display:flex; gap:6px; margin-top:14px; flex-wrap:wrap;
}
.pdp-mo .pdp-rv__rphoto {
  width:74px; height:74px; border-radius:9px; padding:0;
  border:2px solid #fff;
  background:var(--pdp-paper);
  box-shadow:0 4px 12px rgba(0,0,0,.08);
  cursor:pointer; position:relative; overflow:hidden;
}
.pdp-mo .pdp-rv__rphoto img { width:100%; height:100%; object-fit:cover; display:block; }

.pdp-mo .pdp-rv__actions {
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  margin-top:14px; padding-top:14px; border-top:1px solid var(--pdp-line);
}
.pdp-mo .pdp-rv__helpful-label {
  font-size:11px; font-weight:700; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-rv__helpful-btn {
  display:flex; align-items:center; gap:6px; padding:6px 12px;
  border:1.5px solid var(--pdp-line-2); border-radius:99px;
  background:#fff; color:var(--pdp-ink-2);
  font-size:11px; font-weight:800; cursor:pointer;
}
.pdp-mo .pdp-rv__helpful-btn:hover { border-color:var(--pdp-green); }
.pdp-mo .pdp-rv__helpful-btn--no:hover { border-color:var(--pdp-hot); }
.pdp-mo .pdp-rv__vote-count {
  font-weight:900; font-family:'JetBrains Mono',monospace;
}
.pdp-mo .pdp-rv__vote-count.is-up { color:var(--pdp-green-2); }
.pdp-mo .pdp-rv__vote-count.is-down { color:var(--pdp-ink-3); }

/* Owner reply */
.pdp-mo .pdp-rv__reply {
  margin-top:14px;
  background:var(--pdp-purple-50); border-radius:10px; padding:14px 16px;
  border:1px solid var(--pdp-purple-100);
  display:flex; gap:12px;
}
.pdp-mo .pdp-rv__reply-avatar {
  width:36px; height:36px; background:var(--pdp-purple); color:#fff;
  border-radius:8px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:14px;
}
.pdp-mo .pdp-rv__reply-body-wrap { flex:1; }
.pdp-mo .pdp-rv__reply-head {
  display:flex; align-items:center; gap:8px; margin-bottom:4px; flex-wrap:wrap;
}
.pdp-mo .pdp-rv__reply-name {
  font-size:12px; font-weight:900; color:var(--pdp-purple);
}
.pdp-mo .pdp-rv__reply-badge {
  padding:2px 6px; background:var(--pdp-purple); color:#fff;
  border-radius:4px; font-size:9px; font-weight:900; letter-spacing:.5px;
}
.pdp-mo .pdp-rv__reply-when {
  font-size:11px; font-weight:700; color:var(--pdp-ink-3);
}
.pdp-mo .pdp-rv__reply-body {
  margin:0; font-size:13px; font-weight:500; color:var(--pdp-ink-2); line-height:1.5;
}

/* Lightbox */
.pdp-rv-lightbox {
  position:fixed; inset:0; z-index:99999;
  background:rgba(15,8,30,.92);
  display:flex; align-items:center; justify-content:center;
  padding:32px; opacity:0; pointer-events:none; transition:opacity .15s ease;
}
.pdp-rv-lightbox.is-open { opacity:1; pointer-events:auto; }
.pdp-rv-lightbox img {
  max-width:min(92vw, 1200px); max-height:88vh;
  border-radius:8px; box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.pdp-rv-lightbox__close,
.pdp-rv-lightbox__nav {
  position:absolute; width:44px; height:44px; border-radius:50%;
  background:rgba(255,255,255,.15); color:#fff;
  font-size:22px; font-weight:900; border:0; cursor:pointer;
}
.pdp-rv-lightbox__close { top:18px; right:24px; }
.pdp-rv-lightbox__nav { top:50%; transform:translateY(-50%); width:48px; height:48px; }
.pdp-rv-lightbox__nav--prev { left:24px; }
.pdp-rv-lightbox__nav--next { right:24px; }
.pdp-rv-lightbox__close:hover,
.pdp-rv-lightbox__nav:hover { background:rgba(255,255,255,.25); }
.pdp-rv-lightbox__counter {
  position:absolute; bottom:24px; left:50%; transform:translateX(-50%);
  color:rgba(255,255,255,.85); font-family:'JetBrains Mono',monospace;
  font-size:12px; font-weight:700; letter-spacing:1px;
}

/* Responsive */
@media (max-width:1100px) {
  .pdp-mo .pdp-rv__header {
    grid-template-columns:1fr;
  }
  .pdp-mo .pdp-rv__score-col {
    padding-right:0; border-right:0;
    border-bottom:1px solid var(--pdp-line); padding-bottom:20px;
  }
  .pdp-mo .pdp-rv__photos-grid { grid-template-columns:repeat(4, 1fr); }
}
@media (max-width:720px) {
  .pdp-mo .pdp-rv { padding:18px; }
  .pdp-mo .pdp-rv__header { padding:18px; }
  .pdp-mo .pdp-rv__right { grid-template-columns:1fr; }
  .pdp-mo .pdp-rv__score { font-size:54px; }
  .pdp-mo .pdp-rv__photos-grid { grid-template-columns:repeat(3, 1fr); }
  .pdp-mo .pdp-rv__filters-row { flex-direction:column; align-items:stretch; }
  .pdp-mo .pdp-rv__card { padding:16px; gap:12px; }
  .pdp-mo .pdp-rv__avatar-col { width:48px; }
  .pdp-mo .pdp-rv__avatar { width:44px; height:44px; font-size:18px; }
  .pdp-mo .pdp-rv__title { font-size:14px; }
}

/* ─────────────────────────────────────────────────────────────
   WooCommerce wrap (contém .pdp-buy__wc-form OU .variations_form)
   Escondido visualmente, ativo para submit + eventos found_variation
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-buy__wc-wrap {
  position:absolute !important;
  width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0);
  white-space:nowrap; border:0;
}
/* Edge case: alguns plugins re-mostram via inline styles. Garantir invisível. */
.pdp-mo .pdp-buy__wc-wrap * { visibility:hidden !important; }

/* ─────────────────────────────────────────────────────────────
   Variações inline (Model C) no buy box
   ───────────────────────────────────────────────────────────── */
.pdp-mo .pdp-buy__variants {
  display:flex; flex-direction:column; gap:14px;
}
.pdp-mo .pdp-buy__variant-row {
  display:flex; flex-direction:column; gap:8px;
}
.pdp-mo .pdp-buy__variant-label {
  font-size:10px; font-weight:900; letter-spacing:1.5px;
  color:var(--pdp-ink-3); text-transform:uppercase;
}
.pdp-mo .pdp-buy__variant-opts {
  display:flex; flex-wrap:wrap; gap:8px;
}
.pdp-mo .pdp-buy__variant-opt {
  padding:9px 14px; background:#fff;
  border:2px solid var(--pdp-line); border-radius:10px;
  font-family:'Nunito',sans-serif; font-weight:800; font-size:12px;
  color:var(--pdp-ink-2);
  cursor:pointer; text-align:center;
  display:inline-flex; align-items:center; gap:8px;
  transition:border-color .12s, color .12s, background .12s;
  min-height:40px;
}
.pdp-mo .pdp-buy__variant-opt:hover {
  border-color:var(--pdp-purple-3);
  color:var(--pdp-purple);
}
.pdp-mo .pdp-buy__variant-opt.is-active {
  border-color:var(--pdp-purple);
  color:var(--pdp-purple);
  background:var(--pdp-purple-50);
}
.pdp-mo .pdp-buy__variant-opt.is-disabled {
  opacity:.35; cursor:not-allowed; pointer-events:none;
  text-decoration:line-through;
}
.pdp-mo .pdp-buy__variant-opt.is-swatch {
  padding:6px 12px 6px 6px;
}
.pdp-mo .pdp-buy__variant-swatch {
  width:24px; height:24px; border-radius:6px;
  border:1px solid rgba(0,0,0,.08);
  display:inline-block; flex-shrink:0;
}
.pdp-mo .pdp-buy__variant-opt.is-active .pdp-buy__variant-swatch {
  box-shadow:0 0 0 2px var(--pdp-purple);
}
.pdp-mo .pdp-buy__variant-status {
  padding:10px 14px;
  background:var(--pdp-paper); border:1px dashed var(--pdp-line-2);
  border-radius:8px;
  font-size:12px; font-weight:700; color:var(--pdp-ink-2);
}
.pdp-mo .pdp-buy__variant-status.is-error {
  background:var(--pdp-hot-bg); border-color:#fbd5cc; color:var(--pdp-hot);
}

/* Hide thumbs além do limite visível na coluna (vão aparecer no modal) */
.pdp-mo .pdp-gal__thumb.is-hidden { display:none; }

/* Tile "+N fotos" */
.pdp-mo .pdp-gal__more {
  width:72px; height:72px; padding:0;
  background:var(--pdp-purple-50);
  border:2px dashed var(--pdp-purple); border-radius:10px;
  color:var(--pdp-purple); cursor:pointer;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:2px; transition:background .12s;
}
.pdp-mo .pdp-gal__more:hover { background:var(--pdp-purple-100); }
.pdp-mo .pdp-gal__more-plus {
  font-size:18px; font-weight:900; line-height:1;
  font-family:'JetBrains Mono',monospace;
}
.pdp-mo .pdp-gal__more-label {
  font-size:9px; font-weight:800; letter-spacing:1px; text-transform:uppercase;
}

/* Main image cursor zoom */
.pdp-mo .pdp-gal__main-img { cursor:zoom-in; }

/* ─────────────────────────────────────────────────────────────
   Gallery modal (lightbox) — opens with all photos
   ───────────────────────────────────────────────────────────── */
.pdp-gal-modal {
  position:fixed; inset:0; z-index:99998;
  background:rgba(15,8,30,.93);
  display:none; align-items:center; justify-content:center;
  padding:32px;
}
.pdp-gal-modal.is-open { display:flex; }

.pdp-gal-modal__close {
  position:absolute; top:18px; right:24px;
  width:44px; height:44px; border-radius:50%;
  background:rgba(255,255,255,.15); color:#fff; border:0;
  font-size:22px; font-weight:900; cursor:pointer;
}
.pdp-gal-modal__close:hover { background:rgba(255,255,255,.25); }
.pdp-gal-modal__nav {
  position:absolute; top:50%; transform:translateY(-50%);
  width:52px; height:52px; border-radius:50%;
  background:rgba(255,255,255,.15); color:#fff; border:0;
  font-size:26px; font-weight:900; cursor:pointer;
}
.pdp-gal-modal__nav--prev { left:24px; }
.pdp-gal-modal__nav--next { right:24px; }
.pdp-gal-modal__nav:hover { background:rgba(255,255,255,.25); }

.pdp-gal-modal__stage {
  display:flex; flex-direction:column; align-items:center; gap:16px;
  max-width:min(92vw, 1280px);
}
.pdp-gal-modal__img-wrap {
  flex:1; display:flex; align-items:center; justify-content:center;
  max-height:75vh; min-height:200px;
}
.pdp-gal-modal__img {
  max-width:100%; max-height:75vh; object-fit:contain;
  border-radius:8px; box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.pdp-gal-modal__strip {
  display:flex; gap:8px; padding:6px;
  max-width:100%; overflow-x:auto;
  scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.4) transparent;
}
.pdp-gal-modal__strip::-webkit-scrollbar { height:6px; }
.pdp-gal-modal__strip::-webkit-scrollbar-thumb {
  background:rgba(255,255,255,.4); border-radius:3px;
}
.pdp-gal-modal__thumb {
  width:64px; height:64px; padding:4px; background:#fff;
  border:2px solid transparent; border-radius:8px;
  cursor:pointer; flex-shrink:0;
}
.pdp-gal-modal__thumb img {
  width:100%; height:100%; object-fit:contain;
}
.pdp-gal-modal__thumb.is-active { border-color:var(--pdp-green); }
.pdp-gal-modal__counter {
  color:rgba(255,255,255,.85); font-family:'JetBrains Mono',monospace;
  font-size:13px; font-weight:700; letter-spacing:1px;
}

/* ─────────────────────────────────────────────────────────────
   Responsive (≥768 + ≥1024 breakpoints)
   ───────────────────────────────────────────────────────────── */
@media (max-width:1100px) {
  .pdp-mo .pdp-mo__top {
    grid-template-columns:minmax(0, 1fr);
    gap:24px;
  }
  .pdp-mo .pdp-gal { flex-direction:column; }
  .pdp-mo .pdp-gal__thumbs {
    flex-direction:row; width:100%; overflow-x:auto;
    order:2;
  }
  .pdp-mo .pdp-gal__main { order:1; min-height:380px; }
  .pdp-mo .pdp-gal__variants {
    width:100%; flex-direction:row; flex-wrap:wrap; order:3;
  }
  .pdp-mo .pdp-gal__var-color, .pdp-mo .pdp-gal__var-size { width:auto; flex:0 0 auto; }

  .pdp-mo .pdp-specs { grid-template-columns:repeat(3, 1fr); gap:14px; }
  .pdp-mo .pdp-specs__cell:nth-child(3n) { border-right:0; }
  .pdp-mo .pdp-promo { grid-template-columns:1fr; }
  .pdp-mo .pdp-related__grid { grid-template-columns:repeat(3, 1fr); }
  .pdp-mo .pdp-trust { grid-template-columns:repeat(2,1fr); }
  .pdp-mo .pdp-trust__cell:nth-child(2n) { border-right:0; }
}

@media (max-width:720px) {
  .pdp-mo .pdp-mo__top { padding:14px 16px 0; }
  .pdp-mo .pdp-mo__sections { padding:18px 16px 0; gap:18px; }

  /* Breadcrumb: horizontal scroll com items em single-line */
  .pdp-mo .pdp-mo__breadcrumb {
    padding:12px 16px 4px;
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    white-space:nowrap;
    scrollbar-width:none;
    font-size:11px;
    gap:8px;
  }
  .pdp-mo .pdp-mo__breadcrumb::-webkit-scrollbar { display:none; }
  .pdp-mo .pdp-mo__breadcrumb a,
  .pdp-mo .pdp-mo__breadcrumb .current { flex-shrink:0; }

  .pdp-mo .pdp-specs { grid-template-columns:repeat(2, 1fr) !important; }
  .pdp-mo .pdp-specs__cell { border-right:0; }
  .pdp-mo .pdp-tabs__panel { grid-template-columns:1fr; padding:20px; }
  .pdp-mo .pdp-related__grid { grid-template-columns:repeat(2, 1fr); }
  .pdp-mo .pdp-buy__title { font-size:22px; }
  .pdp-mo .pdp-buy__price-int { font-size:38px; }
  .pdp-mo .pdp-buy__price-dec { font-size:20px; }
  .pdp-mo .pdp-news { padding:24px; flex-direction:column; align-items:flex-start; }
  .pdp-mo .pdp-news__form { min-width:0; width:100%; }
  .pdp-mo .pdp-tabs__nav { padding-left:8px; gap:0; }
  .pdp-mo .pdp-tabs__btn { padding:14px 12px; font-size:12px; }


  /* Galeria: thumbs ficam abaixo da imagem em row scroll */
  .pdp-mo .pdp-gal__thumbs {
    flex-direction:row; width:100%; overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none; padding-bottom:4px;
  }
  .pdp-mo .pdp-gal__thumbs::-webkit-scrollbar { display:none; }
  .pdp-mo .pdp-gal__thumb { flex-shrink:0; }
  .pdp-mo .pdp-gal__main { min-height:320px; }
  .pdp-mo .pdp-gal__main-img { max-height:280px; }

  /* Tabs reviews: stack header */
  .pdp-mo .pdp-rv__header { grid-template-columns:1fr; padding:18px; gap:16px; }
  .pdp-mo .pdp-rv__score-col { padding-right:0; border-right:0; padding-bottom:14px; border-bottom:1px solid var(--pdp-line); }
  .pdp-mo .pdp-rv__right { grid-template-columns:1fr; gap:18px; }
  .pdp-mo .pdp-rv__photos-grid { grid-template-columns:repeat(4, 1fr); gap:6px; }
  .pdp-mo .pdp-rv__filters-row { flex-direction:column; align-items:stretch; gap:10px; }
  .pdp-mo .pdp-rv__card { flex-direction:column; gap:12px; }
  .pdp-mo .pdp-rv__avatar-col { flex-direction:row; width:auto; gap:10px; }

  /* Variant buttons */
  .pdp-mo .pdp-buy__variant-opt { font-size:11px; padding:8px 10px; }

  /* Tabs body */
  .pdp-mo .pdp-tabs__h3 { font-size:16px; }
  .pdp-mo .pdp-tabs__p { font-size:13px; }

  /* V6 Price block — preço grande não trasborda */
  .pdp-mo .pdp-buy__v6-row { padding:12px 14px; gap:10px; }
  .pdp-mo .pdp-buy__v6-pix-int { font-size:24px; }
  .pdp-mo .pdp-buy__v6-card-big { font-size:14px; }
}

/* ── Mobile pequeno (≤ 480px) ── */
@media (max-width:480px) {
  .pdp-mo .pdp-buy__title { font-size:19px; }
  .pdp-mo .pdp-buy__price-int { font-size:32px; }
  .pdp-mo .pdp-buy__price-dec { font-size:18px; }
  .pdp-mo .pdp-related__grid { grid-template-columns:1fr; }
  .pdp-mo .pdp-rv__photos-grid { grid-template-columns:repeat(3, 1fr); }
}

/* ════════════════════════════════════════════════════════════
   "Make interfaces feel better" — polish layer
   Design-engineering details from jakub.kr applied to the PDP.
   Loads last so it overrides the base rules above.
   ════════════════════════════════════════════════════════════ */

/* ── Heading rendering fix ──────────────────────────────────
   Blocksy forces Poppins + UPPERCASE on every h1–h6 via a
   selector that out-specifies .pdp-mo's wrapper font. The PDP
   design is Nunito normal-case, so re-assert it directly on the
   headings (0,1,1 beats Blocksy's element rule — no !important).
   Also: text-wrap:balance for even, orphan-free heading lines. */
.pdp-mo h1, .pdp-mo h2, .pdp-mo h3,
.pdp-mo h4, .pdp-mo h5, .pdp-mo h6 {
  font-family:'Nunito', system-ui, sans-serif;
  text-transform:none;
  text-wrap:balance;
}

/* ── Font smoothing (macOS) ─────────────────────────────────
   Base already sets -webkit; add the Firefox/macOS counterpart. */
.pdp-mo { -moz-osx-font-smoothing:grayscale; }

/* ── text-wrap: pretty on body copy (no last-line orphans) ── */
.pdp-mo .pdp-tabs__p,
.pdp-mo .pdp-tabs__desc,
.pdp-mo .pdp-tabs__desc p,
.pdp-mo .pdp-promo__a-sub,
.pdp-mo .pdp-promo__b-sub,
.pdp-mo .pdp-news__sub,
.pdp-mo .pdp-buy__trust-s,
.pdp-mo .pdp-tabs__aside-s,
.pdp-mo .pdp-rv__text {
  text-wrap:pretty;
}

/* ── Tabular numbers ────────────────────────────────────────
   Equal-width digits on every price / amount that swaps via JS
   (variation price changes, CEP quote, qty) so the layout never
   shifts as the numbers update. */
.pdp-mo .pdp-buy__price-curr,
.pdp-mo .pdp-buy__price-int,
.pdp-mo .pdp-buy__price-dec,
.pdp-mo .pdp-buy__price-was .from,
.pdp-mo .pdp-buy__price-was .off-pct,
.pdp-mo .pdp-buy__price-was .save,
.pdp-mo .pdp-buy__v6-pix-int,
.pdp-mo .pdp-buy__v6-pix-dec,
.pdp-mo .pdp-buy__v6-card-big,
.pdp-mo .pdp-buy__v6-card-total,
.pdp-mo .pdp-buy__qty input,
.pdp-mo .pdp-buy__rating-num,
.pdp-mo .pdp-buy__ship-result,
.pdp-mo .pdp-rv__score {
  font-variant-numeric:tabular-nums;
}

/* ── Image outlines ─────────────────────────────────────────
   Subtle pure-black inset hairline gives product photos a crisp,
   consistent edge against the white cards. Pure black only —
   a tinted neutral would read as dirt on the image edge. */
.pdp-mo .pdp-gal__main-img {
  outline:1px solid rgba(0,0,0,.1);
  outline-offset:-1px;
}

/* ── Shadows instead of flat borders on depth surfaces ──────
   Layered transparent shadows lift the white cards off the
   lavender page far more naturally than a 1px hairline. Internal
   dividers (tab underline, specs/trust cell separators) keep
   their borders — only the outer container border is replaced. */
.pdp-mo {
  --pdp-shadow-border:
    0 0 0 1px rgba(20, 10, 40, .05),
    0 1px 2px -1px rgba(20, 10, 40, .07),
    0 4px 10px -2px rgba(20, 10, 40, .05);
  --pdp-shadow-border-hover:
    0 0 0 1px rgba(20, 10, 40, .09),
    0 4px 8px -2px rgba(20, 10, 40, .10),
    0 10px 22px -4px rgba(20, 10, 40, .12);
}
.pdp-mo .pdp-buy,
.pdp-mo .pdp-specs,
.pdp-mo .pdp-trust,
.pdp-mo .pdp-tabs,
.pdp-mo .pdp-promo__b {
  border-color:transparent;
  box-shadow:var(--pdp-shadow-border);
}
.pdp-mo .pdp-gal__main {
  box-shadow:var(--pdp-shadow-border);
}

/* ── Interruptible hover + scale-on-press ───────────────────
   CSS transitions (interruptible, retarget mid-animation) on the
   interactive controls, plus a tactile scale(.96) on press.
   Exact 0.96 per the spec — never below 0.95. Properties are
   listed explicitly; never transition:all. */
.pdp-mo .pdp-buy__cta,
.pdp-mo .pdp-buy__whatsapp,
.pdp-mo .pdp-fav-btn,
.pdp-mo .pdp-buy__variant-opt,
.pdp-mo .pdp-buy__qty button,
.pdp-mo .pdp-buy__ship-form button,
.pdp-mo .pdp-news__form button,
.pdp-mo .pdp-promo__a-btn,
.pdp-mo .pdp-promo__b-btn,
.pdp-mo .pdp-gal__thumb,
.pdp-mo .pdp-gal__icbtn,
.pdp-mo .pdp-gal__more,
.pdp-mo .pdp-related__nav,
.pdp-mo .pdp-tabs__btn {
  transition-property:scale, box-shadow, background-color, border-color, color, transform;
  transition-duration:.15s;
  transition-timing-function:ease-out;
}
.pdp-mo .pdp-buy__cta:active,
.pdp-mo .pdp-buy__whatsapp:active,
.pdp-mo .pdp-fav-btn:active,
.pdp-mo .pdp-buy__variant-opt:active,
.pdp-mo .pdp-buy__qty button:active,
.pdp-mo .pdp-buy__ship-form button:active,
.pdp-mo .pdp-news__form button:active,
.pdp-mo .pdp-promo__a-btn:active,
.pdp-mo .pdp-promo__b-btn:active,
.pdp-mo .pdp-gal__thumb:active,
.pdp-mo .pdp-gal__icbtn:active,
.pdp-mo .pdp-gal__more:active,
.pdp-mo .pdp-related__nav:active {
  scale:.96;
}

/* ── Minimum hit area (40×40) on small icon controls ────────
   Extend below-40px tap targets with a centered pseudo-element.
   Sizes chosen to stay inside the surrounding gaps so two hit
   areas never overlap. */
.pdp-mo .pdp-gal__icbtn,
.pdp-mo .pdp-related__nav { position:relative; }
.pdp-mo .pdp-gal__icbtn::after,
.pdp-mo .pdp-related__nav::after {
  content:""; position:absolute; top:50%; left:50%;
  width:40px; height:40px; transform:translate(-50%, -50%);
}
