/* ============================================================
   template.css — o que é do template, separado do design system
   (assets/styles.css). Aqui: placeholders de imagem, pop-up de
   downsell e ajuste do carrossel no celular.
   ============================================================ */

/* ---- Placeholder de imagem -----------------------------------
   Some sozinho quando o arquivo indicado em data-img existe na
   pasta imagens/ (ver template.js). */
.ph-img{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:22px 18px;box-sizing:border-box;text-align:center;
  border:3px dashed rgba(109,40,217,.55);background:repeating-linear-gradient(135deg,#f3efff 0 12px,#faf8ff 12px 24px);
  color:#4c1d95;font-family:Inter,system-ui,sans-serif;
}
.ph-img b{font-family:"Bricolage Grotesque",Inter,sans-serif;font-weight:800;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.ph-img span{font-size:13px;line-height:1.45;color:#334155;max-width:34ch}
.ph-img small{font-size:11px;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:2px 8px}
@media (max-width:640px){.ph-img{padding:16px 12px}.ph-img b{font-size:13px}.ph-img span{font-size:12px}}

/* ---- Carrossel de depoimentos no celular ----------------------
   O slide encolhe pra 86% (o próximo aparece pela borda) e as
   setas voltam a aparecer. */
@media (max-width:767px){
  [aria-roledescription="slide"]{flex-basis:86% !important}
  .carrossel-setas-visiveis{
    display:inline-flex !important;position:absolute;top:50%;transform:translateY(-50%);
    width:40px;height:40px;border-radius:999px;background:#6D28D9;color:#fff;
    box-shadow:0 4px 14px rgba(109,40,217,.42);border:0;z-index:5;
  }
  .seta-prev{left:6px !important;right:auto !important}
  .seta-next{right:6px !important;left:auto !important}
  .carrossel-setas-visiveis:disabled{opacity:.35}
}

/* ---- Pop-up de downsell --------------------------------------- */
#ds-veu{position:fixed;inset:0;z-index:9998;background:rgba(15,23,42,.7);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:18px;opacity:0;transition:opacity .18s ease}
#ds-veu.on{opacity:1}
#ds-caixa{position:relative;width:100%;max-width:470px;background:#fff;border-radius:22px;padding:34px 30px 26px;box-shadow:0 24px 60px rgba(15,23,42,.32);text-align:center;transform:translateY(14px) scale(.97);transition:transform .2s cubic-bezier(.32,.72,0,1);max-height:92vh;overflow-y:auto}
#ds-veu.on #ds-caixa{transform:none}
#ds-x{position:absolute;top:14px;right:16px;background:none;border:0;font-size:26px;line-height:1;color:#94A3B8;cursor:pointer;padding:4px 8px;border-radius:8px}
#ds-x:hover{color:#0F172A;background:#F1F5F9}
#ds-caixa .ic{width:56px;height:56px;margin:0 auto 14px;display:block}
#ds-caixa h3{font-family:"Bricolage Grotesque",Inter,system-ui,sans-serif;font-weight:800;font-size:26px;line-height:1.15;color:#0F172A;margin:0 0 10px}
#ds-caixa .sub{font-size:15.5px;line-height:1.55;color:#475569;margin:0 0 20px}
#ds-caixa .sub b{color:#0F172A}
#ds-oferta{background:#F5F3FF;border:2px solid #6D28D9;border-radius:16px;padding:18px 16px;margin-bottom:18px}
#ds-oferta .rot{font-size:15px;font-weight:700;color:#0F172A;margin-bottom:6px}
#ds-oferta .de{font-size:15px;color:#94A3B8;text-decoration:line-through}
#ds-oferta .por{font-family:"Bricolage Grotesque",Inter,sans-serif;font-weight:800;font-size:40px;line-height:1.05;color:#6D28D9;margin:2px 0 4px;font-variant-numeric:tabular-nums}
#ds-oferta .det{font-size:12.5px;color:#475569}
#ds-sim{display:block;width:100%;background:#22C55E;color:#fff;border:0;border-radius:14px;padding:17px 14px;font-size:16px;font-weight:800;letter-spacing:.01em;text-decoration:none;box-shadow:0 8px 20px rgba(34,197,94,.35);transition:transform .12s,box-shadow .12s;cursor:pointer}
#ds-sim:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(34,197,94,.42)}
#ds-nao{display:inline-block;margin-top:14px;font-size:13.5px;color:#94A3B8;text-decoration:underline;text-underline-offset:3px;background:none;border:0;cursor:pointer}
#ds-nao:hover{color:#64748B}
#ds-veu :focus-visible{outline:2px solid #6D28D9;outline-offset:2px}
@media (max-width:420px){#ds-caixa{padding:30px 20px 22px}#ds-caixa h3{font-size:23px}#ds-oferta .por{font-size:35px}#ds-sim{font-size:15px}}
@media (prefers-reduced-motion:reduce){#ds-veu,#ds-caixa{transition:none}}
