/* ============================================================
   MÉTODO CAT · CLIENTIZAH — sistema visual das 3 páginas por perfil
   Paleta: preto #15120F · branco #FFFFFF · bege #F1E9DA / #E6DAC2 · cereja #8C1D2B
   Display: Bodoni Moda · Texto: Jost
   Tudo marcado com [colchetes] e fundo cereja = PREENCHER
   ============================================================ */
:root{
  --ink:#15120F;
  --ink-soft:#2A2521;
  --white:#FFFFFF;
  --paper:#F1E9DA;
  --paper-2:#E6DAC2;
  --cherry:#8C1D2B;
  --cherry-deep:#6B1521;
  --cherry-soft:#C9576A;
  --muted:#6E645A;
  --line:rgba(20,17,15,.14);
  --line-light:rgba(255,255,255,.18);
  --max:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--white);
  color:var(--ink);
  font-family:'Jost',system-ui,sans-serif;
  font-weight:400;
  font-size:17px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}

/* ---------- tipografia ---------- */
h1,h2,h3,.display{font-family:'Bodoni Moda',Georgia,serif;font-weight:400;line-height:1.06;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,7vw,5rem)}
h2{font-size:clamp(2rem,4.6vw,3.4rem)}
h3{font-size:clamp(1.3rem,2.4vw,1.75rem);line-height:1.2}
em,.it{font-style:italic;color:var(--cherry)}
.dark em,.dark .it{color:var(--cherry-soft)}
.eyebrow{
  font-family:'Jost',sans-serif;font-size:.72rem;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--cherry);
  display:block;margin-bottom:1.1rem;
}
.dark .eyebrow{color:var(--cherry-soft)}
.lead{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--muted);max-width:56ch}
.dark .lead{color:rgba(255,255,255,.72)}

/* ---------- layout ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
section{padding:clamp(64px,9vw,120px) 0}
.dark{background:var(--ink);color:var(--white)}
.beige{background:var(--paper)}
.rule{height:1px;background:var(--line);border:0;margin:0}
.dark .rule{background:var(--line-light)}

/* ---------- preencher ---------- */
.fill{
  background:linear-gradient(transparent 62%,rgba(140,29,43,.22) 62%);
  padding:0 2px;font-weight:500;
}
.dark .fill{background:linear-gradient(transparent 62%,rgba(197,90,100,.3) 62%)}

/* ---------- botões ---------- */
.cta{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  background:var(--ink);color:var(--white);
  font-family:'Jost',sans-serif;font-weight:500;font-size:.85rem;
  letter-spacing:.16em;text-transform:uppercase;text-decoration:none;
  padding:20px 38px;border:1px solid var(--ink);
  transition:background .25s ease,color .25s ease,transform .25s ease;
}
.cta:hover{background:var(--cherry);border-color:var(--cherry);transform:translateY(-2px)}
.cta:focus-visible{outline:2px solid var(--cherry);outline-offset:4px}
.dark .cta{background:var(--cherry);color:var(--white);border-color:var(--cherry)}
.dark .cta:hover{background:var(--white);color:var(--ink);border-color:var(--white)}
.cta-ghost{background:transparent;color:var(--ink)}
.cta-ghost:hover{background:var(--ink);color:var(--white)}

/* ---------- navegação entre perfis ---------- */
.profile-nav{
  position:sticky;top:0;z-index:60;background:var(--white);
  border-bottom:1px solid var(--line);padding:14px 0;
}
.profile-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.profile-nav .brand{font-family:'Bodoni Moda',serif;font-size:1.05rem;letter-spacing:.06em}
.profile-nav .tabs{display:flex;gap:6px;flex-wrap:wrap}
.profile-nav .tabs a{
  font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  padding:9px 18px;border:1px solid var(--line);color:var(--muted);
}
.profile-nav .tabs a.current{background:var(--ink);color:var(--white);border-color:var(--ink)}
.profile-nav .tabs a:not(.current):hover{border-color:var(--cherry);color:var(--cherry)}

/* ---------- barra de topo ---------- */
.topbar{
  background:var(--cherry);color:var(--white);
  text-align:center;padding:11px 16px;font-size:.74rem;
  letter-spacing:.2em;text-transform:uppercase;text-decoration:none;display:block;
}
.topbar strong{font-weight:600}

/* ---------- hero ---------- */
.hero{background:var(--ink);color:var(--white);padding:clamp(52px,8vw,96px) 0 0;position:relative;overflow:hidden}
.masthead{text-align:center;margin-bottom:clamp(28px,5vw,48px)}
.masthead .kicker{
  font-size:.7rem;letter-spacing:.42em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:18px;
}
.masthead-row{display:flex;align-items:center;justify-content:center;gap:clamp(12px,3.5vw,48px)}
.masthead-text{flex:0 0 auto}
.cat-photo{
  height:clamp(190px,29vw,410px);width:auto;object-fit:contain;
  display:block;flex:0 0 auto;margin-left:28px;
}
@media(max-width:960px){.cat-photo{display:none}}
.cat-letters{
  font-family:'Bodoni Moda',serif;
  font-size:clamp(4.4rem,18vw,13rem);
  line-height:.86;letter-spacing:.06em;
  display:flex;justify-content:center;gap:clamp(.1em,2vw,.16em);
}
.cat-letters span{display:block;position:relative}
.cat-letters span::after{
  content:attr(data-word);
  position:absolute;left:50%;transform:translateX(-50%);
  bottom:-1.6em;
  font-family:'Jost',sans-serif;font-size:.085em;font-weight:400;
  letter-spacing:.3em;text-transform:uppercase;color:var(--cherry-soft);
  white-space:nowrap;
}
.cat-sub{margin-top:clamp(52px,7vw,78px)}
.hero h1{max-width:16ch;margin:0 auto;text-align:center}
.hero .lead{margin:26px auto 0;text-align:center;color:rgba(255,255,255,.7)}
.hero-cta{display:flex;justify-content:center;margin-top:38px}
.trust{
  display:flex;flex-wrap:wrap;justify-content:center;gap:0;
  margin-top:clamp(48px,7vw,80px);border-top:1px solid var(--line-light);
}
.trust div{
  flex:1 1 200px;padding:24px 16px;text-align:center;
  border-right:1px solid var(--line-light);
  font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.72);
}
.trust div:last-child{border-right:0}
.trust b{display:block;font-family:'Bodoni Moda',serif;font-size:1.9rem;
  letter-spacing:0;text-transform:none;color:var(--cherry-soft);margin-bottom:4px;font-weight:400}

/* ---------- vídeo de vendas ---------- */
.video-wrap{max-width:860px;margin:clamp(40px,6vw,64px) auto 0}
.video-frame{
  aspect-ratio:16/9;background:rgba(255,255,255,.06);border:1px solid var(--line-light);
  display:grid;place-content:center;text-align:center;gap:10px;position:relative;overflow:hidden;
}
.video-frame .play{
  width:64px;height:64px;border-radius:50%;border:1px solid var(--cherry-soft);
  display:grid;place-content:center;margin:0 auto;
}
.video-frame .play::after{
  content:"";border-style:solid;border-width:10px 0 10px 16px;
  border-color:transparent transparent transparent var(--cherry-soft);margin-left:4px;
}
.video-frame span{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55)}

/* ---------- marquee ---------- */
.marquee{overflow:hidden;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.marquee-track{display:flex;gap:0;width:max-content;animation:slide 38s linear infinite}
.marquee:nth-of-type(even) .marquee-track{animation-duration:46s;animation-direction:reverse}
.marquee-track span{
  padding:0 26px;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);white-space:nowrap;
}
.marquee-track span::before{content:"·";color:var(--cherry);margin-right:26px}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- pilares ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px;border-top:1px solid var(--line)}
.pillar{padding:40px 30px 34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.pillar:last-child{border-right:0}
.pillar .letter{
  font-family:'Bodoni Moda',serif;font-size:4.6rem;line-height:1;
  color:var(--cherry);display:block;margin-bottom:14px;
}
.pillar h3{margin-bottom:12px}
.pillar p{color:var(--muted);font-size:.97rem}

/* ---------- etiquetas (oferta) ---------- */
.tags{display:grid;gap:22px;margin-top:56px}
.tag{
  display:grid;grid-template-columns:78px 1fr auto;align-items:start;gap:26px;
  background:var(--paper);padding:30px 32px;position:relative;
  border-left:3px solid var(--cherry);
}
.tag .num{
  font-family:'Bodoni Moda',serif;font-size:2.6rem;line-height:1;
  color:var(--cherry);font-style:italic;
}
.tag h3{margin-bottom:8px}
.tag p{color:var(--muted);font-size:.97rem;max-width:60ch}
.tag .price{text-align:right;white-space:nowrap;padding-top:6px}
.tag .price s{display:block;color:var(--muted);font-size:.9rem}
.tag .price b{
  font-family:'Jost',sans-serif;font-weight:600;font-size:.82rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--cherry);
}

/* ---------- caixa de preço ---------- */
.offer{
  max-width:620px;margin:0 auto;background:var(--ink);color:var(--white);
  padding:clamp(34px,5vw,52px);text-align:center;border:1px solid var(--cherry);
}
.offer ul{list-style:none;text-align:left;margin:30px 0}
.offer li{
  display:flex;justify-content:space-between;gap:16px;align-items:baseline;
  padding:13px 0;border-bottom:1px solid var(--line-light);font-size:.95rem;
}
.offer li span:last-child{color:var(--cherry-soft);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.offer .total-label{font-size:.75rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.offer .total{font-family:'Bodoni Moda',serif;font-size:clamp(2.6rem,7vw,3.8rem);line-height:1.1;margin:6px 0 4px}
.offer .total small{font-size:.36em;letter-spacing:.1em}
.offer .cash{color:rgba(255,255,255,.65);font-style:italic;margin-bottom:28px}

/* ---------- indicadores (stat strip) ---------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-top:52px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.stat{padding:26px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.stat b{display:block;font-family:'Bodoni Moda',serif;font-size:1.7rem;color:var(--cherry);margin-bottom:6px;font-weight:400}
.stat span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* ---------- módulos ---------- */
.modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0;margin-top:52px;border-top:1px solid var(--line)}
.module{padding:32px 28px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.module .mnum{
  font-size:.72rem;letter-spacing:.28em;color:var(--cherry);
  display:block;margin-bottom:10px;
}
.module h3{font-size:1.28rem;margin-bottom:14px}
.module ul{list-style:none}
.module li{
  font-size:.93rem;color:var(--muted);padding:5px 0 5px 18px;position:relative;
}
.module li::before{content:"—";position:absolute;left:0;color:var(--cherry)}

/* ---------- para quem é ---------- */
.forwho{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,70px);align-items:start}
.checklist{list-style:none}
.checklist li{
  padding:18px 0 18px 40px;border-bottom:1px solid var(--line);position:relative;font-size:1.02rem;
}
.checklist li::before{
  content:"✓";position:absolute;left:0;top:18px;color:var(--cherry);
  font-size:1rem;
}
.dark .checklist li{border-color:var(--line-light)}
.dark .checklist li::before{color:var(--cherry-soft)}

/* ---------- prova / depoimentos ---------- */
.proof{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:50px}
.quote{background:rgba(255,255,255,.05);padding:32px 30px;border-top:2px solid var(--cherry)}
.quote p{font-family:'Bodoni Moda',serif;font-size:1.12rem;font-style:italic;line-height:1.45;margin-bottom:20px}
.quote .avatar{
  width:36px;height:36px;border-radius:50%;background:var(--cherry);color:var(--white);
  display:grid;place-content:center;font-family:'Jost',sans-serif;font-weight:600;font-size:.78rem;
  margin-bottom:12px;
}
.quote cite{font-style:normal;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

/* ---------- garantia ---------- */
.guarantee{text-align:center;max-width:660px;margin:0 auto}
.seal{
  width:132px;height:132px;margin:0 auto 30px;border:1px solid var(--cherry-soft);
  border-radius:50%;display:grid;place-content:center;text-align:center;
}
.seal b{font-family:'Bodoni Moda',serif;font-size:2.6rem;font-weight:400;display:block;line-height:1;color:var(--cherry-soft)}
.seal span{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* ---------- sobre ---------- */
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,6vw,72px);align-items:center}
.portrait{
  background:var(--paper);aspect-ratio:3/4;display:grid;place-content:center;
  border:1px solid var(--line);text-align:center;padding:24px;overflow:hidden;
  color:var(--muted);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;
  position:relative;
}
.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.portrait.has-photo{padding:0}
.brands{
  display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;padding-top:24px;
  border-top:1px solid var(--line);
  font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
}

/* ---------- galeria de prova (sobre) ---------- */
.proof-caption{
  margin-top:44px;padding-top:36px;border-top:1px solid var(--line);
  font-size:.85rem;letter-spacing:.06em;color:var(--muted);text-align:center;
}
.proof-media{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:14px;margin-top:20px;
}
.proof-media img,.proof-media video{
  width:100%;aspect-ratio:3/4;object-fit:cover;display:block;
  border:1px solid var(--line);background:var(--paper);
}

/* ---------- faq ---------- */
.faq{max-width:800px;margin:44px auto 0}
.faq details{border-bottom:1px solid var(--line);padding:6px 0}
.faq summary{
  cursor:pointer;list-style:none;padding:22px 44px 22px 0;position:relative;
  font-size:1.06rem;font-weight:500;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";position:absolute;right:6px;top:20px;font-size:1.4rem;
  color:var(--cherry);transition:transform .25s ease;
}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 22px;color:var(--muted);max-width:70ch}

/* ---------- fechamento ---------- */
.final{text-align:center}
.final h2{max-width:18ch;margin:0 auto 22px}
.final .lead{margin:0 auto 34px}

/* ---------- rodapé ---------- */
footer{background:var(--ink);color:rgba(255,255,255,.55);padding:44px 0;text-align:center;font-size:.78rem;letter-spacing:.1em}
footer .sig{font-family:'Bodoni Moda',serif;font-size:1.1rem;color:var(--white);letter-spacing:.3em;margin-bottom:12px;text-decoration:none;display:inline-block}
footer .tabs{margin-top:14px;display:flex;justify-content:center;gap:18px;flex-wrap:wrap}
footer .tabs a{color:rgba(255,255,255,.6);text-decoration:none;letter-spacing:.14em;font-size:.74rem;text-transform:uppercase}
footer .tabs a:hover{color:var(--cherry-soft)}

/* ---------- reveal ---------- */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media(max-width:860px){
  .pillars{grid-template-columns:1fr}
  .pillar{border-right:0}
  .forwho,.about{grid-template-columns:1fr}
  .tag{grid-template-columns:52px 1fr;gap:18px;padding:26px 22px}
  .tag .num{font-size:2rem}
  .tag .price{grid-column:1/-1;text-align:left;padding-top:12px}
  .modules{grid-template-columns:1fr}
  .module{border-right:0}
  .stats{grid-template-columns:repeat(2,1fr)}
  .trust div{flex:1 1 50%;border-bottom:1px solid var(--line-light)}
  .cat-letters span::after{font-size:.075em;letter-spacing:.2em}
  .profile-nav .wrap{justify-content:center;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .rv{opacity:1;transform:none}
  html{scroll-behavior:auto}
}
