/* Movimento e acabamento, preservando os tokens e a tipografia aprovados. */
.checklist li:before,.material-features span:before{content:'✅';color:initial;font-family:'Segoe UI Emoji','Apple Color Emoji','Noto Color Emoji',sans-serif;font-weight:400;font-size:1em;line-height:1.65;flex:0 0 24px}
.checklist li{gap:12px}.offer-details .checklist li{gap:10px}
.gallery.marquee,.reviews-gallery.marquee{display:block;overflow:hidden;scroll-snap-type:none;touch-action:pan-y pinch-zoom;padding-inline:2px}
.marquee-track{display:flex;width:max-content;position:relative;gap:0;user-select:none}
.marquee-group{display:flex;align-items:center;gap:24px;padding-right:24px;flex-shrink:0}
.gallery .marquee-group>figure{flex:0 0 auto;width:min(760px,calc(100vw - 100px));scroll-snap-align:start}
.reviews-gallery .marquee-group>figure{flex:0 0 auto;width:320px;scroll-snap-align:start;align-self:center}
.reviews-gallery figure{background:transparent;border:0;box-shadow:none;padding:0}
.reviews-gallery button{display:block;background:transparent;border:0;padding:0;border-radius:15px;overflow:hidden;box-shadow:0 5px 12px #3025450b;width:100%;cursor:zoom-in}
.reviews-gallery img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:transparent;border-radius:15px}
.reviews-gallery figcaption{font-size:14px;line-height:1.7;margin-top:13px;text-align:center}
.motion-toggle{border:1px solid #ccb8e2;border-radius:9px;background:transparent;color:var(--purple);font-size:13px;font-weight:750;min-height:44px;padding:10px 14px;min-width:95px;line-height:1.4}
.motion-toggle[aria-pressed=true]{background:var(--purple);color:white}
.marquee-static.marquee{overflow-x:auto;scroll-snap-type:x mandatory;touch-action:auto;scrollbar-width:thin}
.marquee-static .marquee-track{transform:none!important}
.bonuses-section{background:var(--lilac)}
.bonus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;max-width:1120px;margin:auto}
.bonus-card{padding:24px;background:white;border:1px solid #e2d5ef;border-radius:20px;box-shadow:0 8px 25px #30254508;margin-top:0}
.bonus-card img{width:100%;max-width:none;height:auto;border-radius:10px;margin-bottom:23px}
.bonus-card h4{font-size:22px;line-height:1.4;margin:0}.bonus-card p{font-size:17px;line-height:1.85;margin-top:14px}
.offer-reference{padding:21px 0 7px;border-top:1px solid var(--border);margin-top:24px}
.offer-reference .price-label{font-size:13px;letter-spacing:.03em;margin-top:0;font-weight:650;color:var(--purple)}
.offer-reference .small-note{font-size:14px;line-height:1.8;max-width:390px}
@media(hover:hover) and (pointer:fine){.motion-toggle:hover{background:var(--lilac)}.motion-toggle[aria-pressed=true]:hover{background:#624198}}
@media(max-width:700px){.gallery .marquee-group>figure{width:calc(100vw - 68px)}.reviews-gallery .marquee-group>figure{width:calc(100vw - 60px)}.gallery-controls{gap:6px}.motion-toggle{font-size:12px;padding:10px 9px;min-width:82px}.gallery-top p{max-width:115px;font-size:12px}.reviews-top{align-items:center;gap:10px}.reviews-top>span{max-width:115px;font-size:13px}.reviews-gallery button,.reviews-gallery img{border-radius:12px}.bonus-grid{grid-template-columns:minmax(0,1fr);gap:20px}.bonus-card{padding:23px}.bonus-card h4{font-size:21px}.bonus-card p{font-size:16px}.offer-reference{padding-top:20px;margin-top:24px}.offer-reference .small-note{font-size:14px}}
#usage-media {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}
.usage-photo {
  padding: 0;
  border: 0;
  border-radius: 14px;
  background: transparent;
  cursor: zoom-in;
}
#usage-media img {
  border-radius: inherit;
}
.hero-promotion { margin-top: 22px; padding: 18px; background: var(--lilac); border-radius: 16px; }
.promotion-badge { color: var(--purple); font-size: 13px; font-weight: 800; margin-bottom: 9px; }
.promotion-price { font-size: 34px; font-weight: 800; line-height: 1.2; }
.hero-promotion .button { margin-top: 13px; width: 100%; }
.hero-copy > .button-primary { margin-top: 14px; color: var(--purple); background: transparent; border: 1px solid currentColor; box-shadow: none; }
.included-section .split-section { grid-template-columns: 1fr; }
.kit-materials { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 30px; }
.kit-material { background: white; border: 1px solid var(--border); border-radius: 17px; padding: 14px; box-shadow: 0 6px 20px #3025450b; }
.kit-material button { display: block; width: 100%; padding: 0; border: 0; background: var(--bg); border-radius: 10px; overflow: hidden; cursor: zoom-in; }
.kit-material img { width: 100%; aspect-ratio: 1.42; object-fit: contain; }
.kit-material h3 { margin: 14px 0 6px; }
.kit-material p, .offer-description { color: var(--muted); }
.offer-card { background: var(--bg); }
.offer-details .price-label { margin-top: 14px; }
.reviews-gallery .marquee-group { align-items: flex-start; }
.reviews-gallery .marquee-group > figure { align-self: flex-start; }
@media (max-width: 700px) {
  .kit-materials { grid-template-columns: 1fr; }
  .mobile-checkout .button { white-space: normal; text-align: center; max-width: 62%; }
}
.promotion-badge {
  display: inline-block;
  padding: 5px 11px;
  border-radius: 999px;
  background: var(--lilac);
}
.hero-promotion .promotion-badge { background: var(--bg); }
.promotion-previous { color: #655f6c; font-weight: 700; font-size: 1.2rem; }
.promotion-previous s { text-decoration-thickness: 2px; }
.promotion-label { font-size: .8rem; font-weight: 600; letter-spacing: .08em; }
.promotion-price, .offer-price, .mobile-checkout strong { color: #16804A; font-weight: 800; }
.promotion-price, .offer-price { font-size: clamp(2.55rem, 5vw, 3.65rem); line-height: 1.12; }
.promotion-savings { color: #16804A; font-weight: 700; margin-bottom: 6px; }
.brand img { height: auto; }
.footer-logo { display: block; width: 155px; height: auto; margin-bottom: 8px; }
.footer-contact { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 18px; }
.contact-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  overflow-wrap: anywhere;
  padding: 8px 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--white);
  box-shadow: 0 3px 10px #3025450b;
  color: var(--ink);
  font-size: 14px;
  transition: background .18s ease, box-shadow .18s ease;
}
.contact-chip:hover { background: var(--bg); box-shadow: 0 4px 13px #30254516; }
.contact-chip svg { width: 20px; height: 20px; flex: none; }
.footer-domain { color: var(--muted); font-size: 14px; }
