/* ============================================================
   Site Jessica Araujo · folha de estilo unica
   Paleta derivada do logo #500820 (oxblood) · 01/09/2026
   Tres superficies apenas: osso, branco e bordo.
   ============================================================ */

:root{
  /* ---- bordos ---- */
  --bordo:#500820;          /* marca E unica superficie escura */
  --bordo-escuro:#320615;   /* rodape, faixas, hover */
  --bordo-medio:#7A0D2F;    /* bordas e estados sobre o bordo */
  --bordo-claro:#9C1140;    /* graficos; nunca texto sobre bordo */
  /* ---- neutros quentes ---- */
  --grafite:#241E21;        /* titulos sobre fundo claro */
  --taupe:#5C5147;          /* texto de corpo */
  --osso:#F4EFEB;           /* fundo principal */
  --areia:#E9E1DA;          /* fundo secundario */
  --rosa:#F3E4E9;           /* realce sutil */
  --linha:#DFD4CC;          /* filetes e bordas */
  /* ---- metalico ---- */
  --latao:#B08D57;          /* detalhe SO sobre o bordo */
  --branco:#FFFFFF;
  /* aliases internos */
  --bege:var(--osso);
  --bege-2:var(--areia);
  --tinta:var(--grafite);
  --petroleo:var(--bordo);
  --petroleo-claro:var(--bordo-medio);
  --marrom:var(--taupe);
  --vinho:var(--bordo);
  --max:1180px;
  --gut:clamp(20px,5vw,64px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;
  background:var(--bege);
  color:var(--marrom);
  font-family:"Jost","Helvetica Neue",Arial,sans-serif;
  font-weight:300;
  font-size:17px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block}
a{color:inherit}

.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:760px}
.wrap.prosa{max-width:var(--max)}
.wrap.prosa > *{max-width:70ch}

/* ---------- tipografia ---------- */
h1,h2,h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-weight:600;
  color:var(--tinta);
  margin:0;
  letter-spacing:-.01em;
  text-wrap:balance;
}
h1{font-size:clamp(40px,7vw,84px);line-height:1.02;font-weight:700;letter-spacing:-.018em}
h2{font-size:clamp(32px,4.9vw,58px);line-height:1.06;font-weight:700;letter-spacing:-.016em}
h3{font-size:clamp(22px,2.7vw,30px);line-height:1.16;font-weight:700;letter-spacing:-.01em}
p{margin:0 0 18px;max-width:64ch}

.eyebrow{
  font-size:12px;
  font-weight:400;
  letter-spacing:.42em;
  text-transform:uppercase;
  color:var(--petroleo);
  margin:0 0 22px;
}
.eyebrow.on-dark{color:rgba(255,255,255,.72)}

.lead{font-size:clamp(18px,2vw,21px);line-height:1.65;color:var(--marrom)}

/* ---------- botoes ---------- */
.btn{
  display:inline-block;
  font-size:13px;
  font-weight:400;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-decoration:none;
  padding:17px 32px;
  border:1px solid var(--petroleo);
  background:var(--petroleo);
  color:var(--branco);
  transition:background .2s ease,color .2s ease;
}
.btn:hover,.btn:focus-visible{background:var(--bordo-escuro);border-color:var(--bordo-escuro)}
.btn.ghost{background:transparent;color:var(--tinta);border-color:var(--tinta)}
.btn.ghost:hover,.btn.ghost:focus-visible{background:var(--bordo);border-color:var(--bordo);color:var(--branco)}
.btn.on-dark{background:var(--branco);color:var(--tinta);border-color:var(--branco)}
.btn.on-dark:hover,.btn.on-dark:focus-visible{background:transparent;color:var(--branco)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}

/* ---------- cabecalho ---------- */
.topbar{
  position:sticky;top:0;z-index:60;
  background:rgba(244,239,235,.95);
  backdrop-filter:saturate(160%) blur(8px);
  border-bottom:1px solid var(--linha);
}
.topbar .wrap{display:flex;align-items:center;gap:24px;min-height:76px}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;white-space:nowrap}
.brand img{width:auto;height:44px;flex:none}
.brand b{font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;font-weight:600;
  color:var(--grafite);letter-spacing:.01em;display:block;line-height:1.05}
.brand i{display:block;font-style:normal;font-family:"Jost",sans-serif;font-size:9.5px;
  letter-spacing:.32em;text-transform:uppercase;color:var(--bordo);font-weight:400;margin-top:1px}
.pe-marca{width:auto;height:72px;margin-bottom:18px;opacity:.92}
.nav{margin-left:auto;display:flex;gap:6px;flex-wrap:nowrap}
.nav a{
  font-size:12px;letter-spacing:.2em;text-transform:uppercase;
  text-decoration:none;color:var(--marrom);padding:9px 13px;
}
.nav a:hover,.nav a:focus-visible{color:var(--tinta)}
.nav a[aria-current="page"]{color:var(--tinta);border-bottom:1px solid var(--petroleo)}

/* ---------- secoes ---------- */
section{padding:clamp(64px,9vw,124px) 0}
section[id]{scroll-margin-top:86px}
@media (max-width:860px){section[id]{scroll-margin-top:118px}}
section.tight{padding:clamp(44px,6vw,72px) 0}
.dark{background:var(--bordo);color:rgba(255,255,255,.80)}
.dark h1,.dark h2,.dark h3{color:var(--branco)}
.solid{background:var(--areia);color:var(--taupe)}
.solid h1,.solid h2,.solid h3{color:var(--grafite)}
.solid .eyebrow.on-dark{color:var(--bordo)}
.paper{background:var(--branco)}

/* ---------- heroi ---------- */
.hero{
  position:relative;
  min-height:clamp(520px,84vh,760px);
  display:flex;align-items:center;
  background:var(--vinho);
  overflow:hidden;
}
.hero .wrap{position:relative;z-index:2;width:100%;padding-top:40px;padding-bottom:40px}
.hero h1{color:var(--branco);max-width:17ch;font-size:clamp(38px,5.4vw,70px)}
.hero .lead{color:rgba(255,255,255,.86);max-width:50ch;margin-top:22px;font-size:clamp(17px,1.8vw,20px)}
.hero-media{position:absolute;inset:0;z-index:1}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(80,8,32,0.94) 0%,rgba(80,8,32,0.93) 14%,rgba(80,8,32,0.915) 26%,rgba(80,8,32,0.895) 36%,rgba(80,8,32,0.86) 44%,rgba(80,8,32,0.79) 50%,rgba(80,8,32,0.68) 54%,rgba(80,8,32,0.5) 57%,rgba(80,8,32,0.26) 59%,rgba(80,8,32,0.1) 60%,rgba(80,8,32,0) 62%)}
.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-media.even::after{background:rgba(80,8,32,.68)}
.hero.dir-right .hero-media::after{background:linear-gradient(270deg,rgba(80,8,32,0.94) 0%,rgba(80,8,32,0.93) 14%,rgba(80,8,32,0.915) 26%,rgba(80,8,32,0.895) 36%,rgba(80,8,32,0.86) 44%,rgba(80,8,32,0.79) 50%,rgba(80,8,32,0.68) 54%,rgba(80,8,32,0.5) 57%,rgba(80,8,32,0.26) 59%,rgba(80,8,32,0.1) 60%,rgba(80,8,32,0) 62%)}
.hero.dir-right .wrap{display:flex;justify-content:flex-end}
.hero.dir-right .bloco{max-width:660px;width:100%}

/* heroi dividido: painel de cor a esquerda, foto a direita */
/* ---------- heroi de faixa (Inicio) ---------- */
.hero-faixa{background:var(--osso);position:relative;padding:0}
.hero-faixa .palco{position:relative;overflow:hidden;background:var(--bordo-escuro);
  height:clamp(340px,47vw,668px)}
.hero-faixa .palco img{width:100%;height:100%;object-fit:cover;object-position:57% 44%;
  transform:scale(1.02);transition:transform 1.6s cubic-bezier(.2,.8,.2,1)}
.hero-faixa:hover .palco img{transform:scale(1.05)}
.hero-faixa .veu{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(50,6,21,.34) 0%,rgba(50,6,21,.06) 38%,rgba(50,6,21,.30) 100%)}
.hero-faixa .wrap{position:relative;z-index:3}
.hero-faixa .faixa{background:var(--bordo);color:var(--branco);position:relative;
  max-width:1010px;margin-top:calc(-1 * clamp(118px,15vw,258px));
  padding:clamp(28px,3vw,46px) clamp(26px,3.2vw,54px) clamp(30px,3.2vw,50px);
  box-shadow:0 34px 70px -38px rgba(0,0,0,.72)}
.hero-faixa .faixa::before{content:"";position:absolute;left:0;top:0;width:clamp(52px,6vw,92px);height:3px;
  background:var(--latao)}
.hero-faixa .acima{font-family:"Jost",sans-serif;font-weight:400;font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.74);margin:0 0 20px;text-align:left}
.hero-faixa h1{color:var(--branco);margin:0;max-width:none;
  font-size:clamp(30px,3.25vw,47px);line-height:1.14;letter-spacing:-.01em;text-wrap:balance}
.hero-faixa h1 span{display:block}
.hero-faixa h1 span + span{color:rgba(255,255,255,.82)}
.hero-faixa .sob{padding:clamp(30px,3.4vw,50px) 0 clamp(52px,6vw,88px)}
.hero-faixa .sob .lead{margin:0;max-width:68ch;color:var(--taupe);
  font-size:clamp(16.5px,1.35vw,19px);line-height:1.62}
.hero-faixa .sob .btn-row{margin-top:clamp(26px,2.6vw,36px);justify-content:flex-start}

/* ---------- placeholder de foto ---------- */
.ph{
  position:relative;
  background:
    repeating-linear-gradient(135deg,var(--areia) 0 14px,#DFD3CB 14px 28px);
  display:flex;align-items:center;justify-content:center;
  color:var(--marrom);text-align:center;
  border:1px dashed #C6B3A8;
  min-height:220px;
}
.ph span{
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  padding:14px 18px;background:rgba(244,239,235,.92);max-width:80%;line-height:1.7;
}
.ph.tall{aspect-ratio:3/4}
.ph.wide{aspect-ratio:16/9}
.hero .ph{border:0;min-height:100%;height:100%;align-items:flex-end;justify-content:flex-end;padding:24px}
.hero .ph span{max-width:340px;text-align:right;background:rgba(244,239,235,.85);font-size:10px}

/* ---------- faixa de credenciais ---------- */
.creds{background:var(--bordo-escuro);color:var(--branco);padding:0}
.creds .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.creds .wrap > div{padding:30px 26px;border-left:1px solid rgba(255,255,255,.2);min-width:0}
.creds .wrap > div:first-child{border-left:0;padding-left:0}
.creds .wrap > div:last-child{padding-right:0}
.creds b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;font-weight:600;line-height:1.1;margin-bottom:4px}
.creds p{margin:0;font-size:13px;letter-spacing:.06em;color:rgba(255,255,255,.74);line-height:1.5}

/* ---------- duas colunas ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.split.text-right{direction:rtl}
.split.text-right > *{direction:ltr}

/* ---------- portas (home) ---------- */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--linha)}
.door{
  background:var(--branco);padding:clamp(32px,4vw,54px);
  text-decoration:none;color:inherit;display:flex;flex-direction:column;
  transition:background .2s ease;
}
.door:hover,.door:focus-visible{background:var(--rosa)}
.door .eyebrow{margin-bottom:16px}
.door h3{margin-bottom:14px}
.door p{font-size:16px;margin-bottom:22px}
.door .go{margin-top:auto;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--petroleo)}

/* ---------- lista de publico ---------- */
.bullets{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0 48px}
.bullets li{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:16.5px;line-height:1.6}
.bullets.on-light li{border-color:var(--linha)}

/* ---------- temas numerados ---------- */
.temas{margin-top:52px}
.tema{display:grid;grid-template-columns:120px 1fr;gap:clamp(16px,3vw,40px);
  align-items:baseline;padding:30px 0;border-top:1px solid var(--linha)}
.tema:last-child{border-bottom:1px solid var(--linha)}
.tema .n{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(52px,7vw,86px);
  line-height:.8;color:var(--bordo);font-weight:600}
.tema .t{font-size:15px;letter-spacing:.13em;text-transform:uppercase;color:var(--grafite);line-height:1.6;margin:0}
.dark .tema{border-top-color:rgba(255,255,255,.22)}
.dark .tema:last-child{border-bottom-color:rgba(255,255,255,.22)}
.dark .tema .n{color:var(--latao)}
.dark .tema .t{color:var(--branco)}

/* ---------- pilares ALMA ---------- */
.pilares{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:2px;background:var(--linha);margin-top:44px}
.pilar{background:var(--osso);padding:32px 26px}
.pilar b{font-family:"Cormorant Garamond",Georgia,serif;font-size:46px;color:var(--petroleo);display:block;line-height:1;margin-bottom:10px}
.pilar span{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--tinta)}
.pilar p{font-size:15px;margin:10px 0 0}

/* ---------- passos ---------- */
.passos{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(24px,4vw,48px);margin-top:48px}
.passo .n{font-family:"Cormorant Garamond",Georgia,serif;font-size:52px;color:var(--petroleo);line-height:1;margin-bottom:10px;display:block}
.passo h3{font-size:clamp(21px,2.3vw,24px);margin-bottom:10px;font-weight:700}
.passo p{font-size:16px;margin:0}

/* ---------- prova social ---------- */
.provas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:44px}
.prova{background:var(--branco);padding:34px 30px;border:1px solid var(--linha)}
.prova p{font-family:"Cormorant Garamond",Georgia,serif;font-size:21px;line-height:1.45;color:var(--tinta);margin-bottom:20px}
.prova cite{font-style:normal;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--petroleo)}
.aviso{
  border:1px dashed var(--bordo);background:var(--rosa);
  padding:22px 26px;margin-top:28px;font-size:14.5px;line-height:1.7;color:var(--marrom);
}
.aviso b{color:var(--tinta)}

/* ---------- formulario ---------- */
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:36px;max-width:720px}
.form .full{grid-column:1/-1}
.form label{display:block;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--petroleo);margin-bottom:7px}
.dark .form label{color:rgba(255,255,255,.68)}
.dark .form button{background:var(--branco);color:var(--bordo);border-color:var(--branco)}
.dark .form button:hover{background:transparent;color:var(--branco)}
.form input,.form select,.form textarea{
  width:100%;padding:14px 16px;font-family:inherit;font-size:16px;font-weight:300;
  color:var(--tinta);background:var(--branco);border:1px solid var(--linha);border-radius:0;
}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--petroleo);outline-offset:-2px}
.form textarea{min-height:110px;resize:vertical}
.form button{
  font-family:inherit;font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  padding:17px 32px;border:1px solid var(--bordo);background:var(--bordo);color:var(--branco);cursor:pointer;
}
.form button:hover{background:var(--bordo-escuro);border-color:var(--bordo-escuro)}

/* ---------- formacao ---------- */
.formacao{list-style:none;padding:0;margin:36px 0 0}
.formacao li{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:20px 0;border-top:1px solid var(--linha);align-items:baseline}
.formacao li:last-child{border-bottom:1px solid var(--linha)}
.formacao .inst{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--petroleo)}
.formacao .curso{font-size:17px;color:var(--tinta)}

/* ---------- rodape ---------- */
footer.pe{background:var(--bordo-escuro);color:rgba(255,255,255,.6);padding:64px 0 40px;font-size:15px}
footer.pe a{color:rgba(255,255,255,.82);text-decoration:none}
footer.pe a:hover{color:#fff;text-decoration:underline}
.pe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px}
.pe h4{font-family:"Jost",sans-serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(255,255,255,.45);margin:0 0 14px;font-weight:400}
.pe ul{list-style:none;padding:0;margin:0}
.pe li{margin-bottom:8px}
.pe .fim{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);
  font-size:13px;color:rgba(255,255,255,.42);display:flex;flex-wrap:wrap;gap:8px 24px}

/* ---------- whatsapp flutuante ---------- */
.zap{
  position:fixed;right:20px;bottom:20px;z-index:80;
  display:flex;align-items:center;gap:10px;
  background:var(--bordo);color:#fff;text-decoration:none;
  padding:14px 20px;border-radius:999px;
  font-size:13px;letter-spacing:.1em;text-transform:uppercase;
  box-shadow:0 6px 24px rgba(80,8,32,.34);
}
.zap:hover{background:var(--bordo-escuro)}
.zap svg{width:19px;height:19px;fill:currentColor;flex:none}

/* ---------- acessibilidade ---------- */
:focus-visible{outline:2px solid var(--petroleo);outline-offset:3px}
.pular{position:absolute;left:-9999px}
.pular:focus{left:12px;top:12px;z-index:200;background:var(--vinho);color:#fff;padding:12px 18px}

/* ---------- responsivo ---------- */
@media (max-width:860px){
  /* celular: a foto vira uma faixa inteira no topo e o texto fica sobre a cor,
     assim a foto aparece por completo e o texto nunca perde legibilidade */
  .hero{display:block;min-height:0;padding:0;background:var(--bordo)}
  .hero .hero-media{position:relative;inset:auto;height:clamp(230px,52vw,340px)}
  .hero .hero-media::after{background:linear-gradient(180deg,rgba(80,8,32,0) 62%,rgba(80,8,32,.55) 100%)}
  .hero .hero-media img{object-position:66% 26%}
  .hero .wrap{padding-top:34px;padding-bottom:44px}
  .hero .eyebrow{letter-spacing:.2em;font-size:11px}
  .hero.dir-right .wrap{justify-content:flex-start}

  .brand img{height:38px}
  .brand b{font-size:20px}
  .pe-marca{height:60px}
  
  .split,.doors{grid-template-columns:1fr}
  .split.text-right{direction:ltr}
  .form{grid-template-columns:1fr}
  .tema{grid-template-columns:70px 1fr}
  .topbar .wrap{flex-wrap:wrap;padding-top:12px;padding-bottom:4px;min-height:0;gap:10px}
  .nav{margin-left:0;width:100%;gap:0;justify-content:space-between;
       overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .nav::-webkit-scrollbar{display:none}
  .nav a{font-size:10.5px;letter-spacing:.07em;padding:9px 4px;white-space:nowrap}
  .nav a:first-child{padding-left:0}
  .nav a:last-child{padding-right:0}
  .zap span{display:none}
  .zap{padding:15px;border-radius:50%}
}


/* ================= blocos novos ================= */

/* cartoes de resposta ao decisor */
.ofertas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2px;background:var(--linha);margin-top:48px}
.oferta{background:var(--branco);padding:30px 28px}
.oferta h3{font-size:clamp(20px,2.2vw,23px);margin:0 0 12px;line-height:1.22;font-weight:700}
.oferta p{font-size:15.5px;margin:0;line-height:1.65}
.dark .ofertas{background:rgba(255,255,255,.2)}
.dark .oferta{background:var(--bordo)}
.dark .oferta h3{color:var(--branco)}
.dark .oferta p{color:rgba(255,255,255,.80)}

/* pergunta do decisor + resposta */
.qa{border-top:1px solid var(--linha);padding:26px 0}
.qa:last-of-type{border-bottom:1px solid var(--linha)}
.qa .q{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(23px,2.8vw,31px);
  font-weight:700;color:var(--grafite);margin:0 0 10px;line-height:1.22}
.qa p{margin:0;font-size:16px;max-width:74ch}
.dark .qa{border-color:rgba(255,255,255,.2)}
.dark .qa .q{color:var(--branco)}
.dark .qa p{color:rgba(255,255,255,.80)}

/* cartoes de mentoria */
.mentorias{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:46px}
.mcard{background:var(--branco);border:1px solid var(--linha);padding:34px 32px;display:flex;flex-direction:column}
.mcard .selo{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--bordo);margin:0 0 14px}
.mcard h3{font-size:clamp(26px,2.8vw,32px);font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;margin:0 0 14px;line-height:1.14}
.mcard p{font-size:15.5px;margin:0 0 20px}
.mcard dl{margin:0 0 24px;padding:18px 0 0;border-top:1px solid var(--linha);display:grid;
  grid-template-columns:auto 1fr;gap:9px 18px;font-size:14.5px}
.mcard dt{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe);padding-top:3px}
.mcard dd{margin:0;color:var(--grafite)}
.mcard .btn{margin-top:auto;align-self:flex-start}

/* faixa de numeros / formato */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none}
.chips li{font-size:13px;letter-spacing:.1em;text-transform:uppercase;
  border:1px solid var(--linha);padding:9px 16px;color:var(--taupe)}
.dark .chips li{border-color:rgba(255,255,255,.28);color:rgba(255,255,255,.82)}

/* bloco de depoimentos com envio */
.depo-envio{background:var(--branco);border:1px solid var(--linha);padding:32px 30px;margin-top:24px}
.depo-envio h3{margin:0 0 8px;font-size:22px}
.depo-envio p{font-size:15.5px}
.depo-envio .form{margin-top:24px;max-width:none}

/* imagem em bloco */
.figura{position:relative;overflow:hidden}
.figura img{width:100%;height:100%;object-fit:cover;display:block}
.figura.tall{aspect-ratio:3/4}
.figura.wide{aspect-ratio:16/9}
.figura.box{aspect-ratio:4/3}
.legenda{font-size:13px;color:var(--taupe);margin:10px 0 0;letter-spacing:.02em}
.dark .legenda{color:rgba(255,255,255,.6)}

@media (max-width:860px){
  .creds .wrap{grid-template-columns:1fr 1fr}
  .creds .wrap > div{padding:22px 18px}
  .creds .wrap > div:nth-child(odd){padding-left:0;border-left:0}
  .creds .wrap > div:nth-child(even){padding-right:0}
  .creds .wrap > div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.2)}
  .creds b{font-size:26px}
  .creds p{font-size:12.5px;letter-spacing:.04em}
}
@media (max-width:420px){
  .brand img{height:34px}
  .brand b{font-size:18px}
  .brand i{font-size:8.5px;letter-spacing:.22em}
  .nav a{font-size:9.5px;letter-spacing:.05em;padding:9px 3px}
  .creds .wrap > div{padding:18px 12px}
  .creds b{font-size:23px}
  .creds p{font-size:12px;line-height:1.45}
}
@media (max-width:860px){
  .hero-faixa .palco{height:auto;aspect-ratio:16/11}
  .hero-faixa .palco img{object-position:62% 26%}
  .hero-faixa .faixa{max-width:none;margin-top:-40px;padding:26px 22px 30px}
  .hero-faixa h1{max-width:none;font-size:clamp(24px,6.2vw,32px);line-height:1.18}
  .hero-faixa h1 span + span{margin-top:6px}
  .hero-faixa .acima{font-size:9.8px;letter-spacing:.10em;margin-bottom:15px;white-space:nowrap}
  .hero-faixa .sob{padding:28px 0 46px}
  .hero-faixa .sob .btn-row{margin-top:24px}
  .mcard{padding:28px 24px}
}

/* ---------- texto corrido justificado ---------- */
p, .bullets li, .regra li, ul:not(.chips):not(.bullets):not(.itens):not(.formacao):not(.pe ul) li{
  text-align:justify;
  text-justify:inter-word;
  hyphens:none;
  -webkit-hyphens:none;
  overflow-wrap:break-word;
}
/* rotulos, numeros e textos curtos continuam alinhados a esquerda */
.eyebrow, .creds p, .creds b, .legenda, .mcard .selo, .mcard dt, .mcard dd,
.tema .t, .chips li, .prova cite, .form label, .pe h4, .pe li, .pe .fim span,
.pilar span, .door .go, .btn, .passo .n, .formacao li, .formacao span,
.aviso, ol.steps li, .sw p, footer.pe p{
  text-align:left;
  hyphens:none;
}
.hero .lead{text-align:left}

/* ---------- faixa de trajetoria em cartoes ---------- */
.trajeto{background:var(--bordo-escuro);padding:clamp(52px,6.5vw,92px) 0}
.trajeto .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,26px);align-items:stretch}
.trajeto > .wrap > div{
  background:var(--osso);
  padding:clamp(30px,3vw,42px) clamp(22px,2.2vw,30px);
  text-align:center;
  display:flex;flex-direction:column;
  box-shadow:0 18px 40px -28px rgba(0,0,0,.7);
}
.trajeto b{
  display:block;font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;
  font-size:clamp(66px,7.6vw,108px);line-height:.92;color:var(--bordo);
  letter-spacing:-.015em;margin-bottom:18px;
}
.trajeto span{
  display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--bordo);margin-bottom:14px;
}
.trajeto p{
  margin:0;font-size:15px;line-height:1.7;color:var(--taupe);
  text-align:center;hyphens:none;overflow-wrap:break-word;max-width:none;
}

@media (max-width:820px){
  .trajeto .wrap{grid-template-columns:1fr;gap:14px}
  .trajeto b{font-size:68px;margin-bottom:12px}
  .trajeto > .wrap > div{padding:30px 26px}
}

/* ---------- revelacao ao rolar e micro-interacoes ---------- */
.com-anim .rv{opacity:0;transform:translateY(16px);
  transition:opacity .68s cubic-bezier(.22,.75,.25,1),transform .68s cubic-bezier(.22,.75,.25,1)}
.com-anim .rv.ok{opacity:1;transform:none}

.trajeto > .wrap > div,.mcard,.prova,.door,.oferta{
  transition:transform .35s cubic-bezier(.22,.75,.25,1),box-shadow .35s ease,background .2s ease}
.trajeto > .wrap > div:hover,.mcard:hover,.prova:hover{
  transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(0,0,0,.55)}
.door:hover{transform:translateY(-2px)}

.figura{overflow:hidden}
.figura img{transition:transform 1.5s cubic-bezier(.2,.8,.2,1)}
.figura:hover img{transform:scale(1.04)}

.trajeto b{font-variant-numeric:tabular-nums}

@media (prefers-reduced-motion:reduce){
  .com-anim .rv{opacity:1;transform:none;transition:none}
  .trajeto > .wrap > div:hover,.mcard:hover,.prova:hover,.door:hover{transform:none}
  .figura:hover img,.hero-faixa:hover .palco img{transform:none}
}

@media (max-width:430px){
  .hero-faixa .acima{font-size:9.4px;letter-spacing:.07em;white-space:normal;line-height:1.7}
  .hero-faixa .faixa{padding:24px 18px 28px;margin-top:-34px}
}

/* lista curta dentro dos cartoes de servico */
.mcard .itens{list-style:none;margin:14px 0 26px;padding:0;display:grid;gap:11px}
.mcard .itens li{position:relative;padding-left:22px;font-size:16px;line-height:1.55;
  color:var(--taupe);text-align:left}
.mcard .itens li::before{content:"";position:absolute;left:0;top:.66em;
  width:9px;height:1.5px;background:var(--bordo)}

.mel{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.via-zap{display:inline-block;margin-left:18px;font-family:"Jost",sans-serif;font-size:13.5px;
  letter-spacing:.04em;color:var(--taupe);text-decoration:underline;text-underline-offset:4px;
  text-decoration-color:var(--linha)}
.via-zap:hover,.via-zap:focus-visible{color:var(--bordo);text-decoration-color:var(--bordo)}
.form .full:has(> button){display:flex;align-items:center;flex-wrap:wrap;gap:10px 0}
@media (max-width:560px){
  .via-zap{margin-left:0;margin-top:12px;display:block}
}

.fonte{margin-top:14px;font-family:"Jost",sans-serif;font-size:13.5px;letter-spacing:.02em;
  color:var(--taupe);text-align:left}
.fonte i{font-style:italic}

.sigla span + span{margin-left:.42em}
.pilares.sete > *{min-width:0}
@media (min-width:1001px){
  .pilares.sete{grid-template-columns:repeat(12,1fr)}
  .pilares.sete > :nth-child(-n+3){grid-column:span 4}
  .pilares.sete > :nth-child(n+4){grid-column:span 3}
}
@media (max-width:1000px) and (min-width:561px){
  .pilares.sete{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .pilares.sete{grid-template-columns:1fr}
}

/* ============ metodo S.E.R A.L.M.A, bloco principal da home ============ */
.metodo{background:var(--bordo);color:#fff;padding:clamp(64px,8vw,116px) 0}

.metodo-topo{max-width:62ch;margin-bottom:clamp(44px,5vw,72px)}
.metodo-topo .risco{display:block;width:clamp(44px,5vw,72px);height:3px;background:var(--latao);margin-bottom:24px}
.metodo-topo .eyebrow{color:rgba(255,255,255,.72);margin-bottom:14px}
.sigla-grande{font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;color:#fff;
  font-size:clamp(46px,5.6vw,84px);line-height:.98;letter-spacing:-.015em;margin:0}
.sigla-grande span{display:block}
.metodo-lead{max-width:60ch;color:rgba(255,255,255,.84);font-size:clamp(15.5px,1.2vw,17.5px);
  line-height:1.65;margin-top:26px}

.metodo .grupo + .grupo{margin-top:clamp(40px,4.5vw,64px)}
.grupo-topo{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding-bottom:14px;margin-bottom:clamp(18px,2vw,26px);border-bottom:1px solid rgba(176,141,87,.45)}
.grupo-rot{max-width:none;margin:0;font-family:"Jost",sans-serif;font-weight:500;
  font-size:clamp(15px,1.3vw,17px);letter-spacing:.2em;text-transform:uppercase;color:var(--latao);
  text-align:left;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;line-height:1.2}
.grupo-rot i{font-style:normal;font-weight:400;letter-spacing:.08em;color:rgba(255,255,255,.58);
  text-transform:none;font-size:13.5px}
.grupo-fonte{max-width:none;margin:0;font-family:"Jost",sans-serif;font-size:12.5px;line-height:1.5;
  color:rgba(255,255,255,.55);text-align:left}
@media (min-width:860px){.grupo-fonte{white-space:nowrap}}
.grupo-fonte i{font-style:italic}

.bolhas{display:grid;gap:clamp(14px,1.5vw,20px)}
.bolhas.tres{grid-template-columns:repeat(3,1fr)}
.bolhas.quatro{grid-template-columns:repeat(4,1fr)}
.bolha{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);
  padding:clamp(22px,2.2vw,32px);display:flex;flex-direction:column;min-width:0;
  transition:background .4s ease,border-color .4s ease,transform .4s cubic-bezier(.22,.75,.25,1)}
.bolha b{font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;color:var(--latao);
  font-size:clamp(42px,3.8vw,58px);line-height:.86;margin-bottom:16px}
.bolha span{font-family:"Jost",sans-serif;font-weight:500;font-size:11.5px;letter-spacing:.15em;
  text-transform:uppercase;color:#fff;margin-bottom:10px;text-align:left}
.bolha p{max-width:none;margin:0;font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.72);text-align:left}
.bolha:hover{background:rgba(255,255,255,.09);border-color:rgba(176,141,87,.5);transform:translateY(-4px)}

@media (max-width:1040px){
  .bolhas.quatro{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
  .bolhas.tres,.bolhas.quatro{grid-template-columns:1fr}
  .grupo-topo{flex-direction:column;gap:10px}
  .grupo-rot{font-size:14px;letter-spacing:.16em}
  .grupo-rot i{font-size:12.5px}
  .grupo-fonte{font-size:12px}
  .bolha{padding:20px 18px}
  .bolha b{font-size:38px;margin-bottom:12px}
}
@media (prefers-reduced-motion:reduce){
  .bolha:hover{transform:none}
}
