:root{
  --vinho:#6d1139;
  --vinho-esc:#5c0f33;
  --rosa:#e5197e;
  --rosa-esc:#c2136a;
  --dourado:#c9a349;
  --verde:#2f6b24;
  --verde-hover:#3a8130;
  --papel:#f7f5f4;
  --texto:#3b3b47;
  --cinza:#5c5c66;
  --cinza-claro:#8b8b93;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Poppins,system-ui,-apple-system,sans-serif;background:#fff;color:var(--texto);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,h5,p,ul{margin:0}
img{max-width:100%}
a{color:var(--rosa);text-decoration:none}
a:hover{color:var(--rosa-esc)}

/* ---------- estrutura ---------- */
.sec{padding:clamp(48px,6vw,84px) clamp(20px,5vw,72px)}
.paper{background:var(--papel) url('assets/fundo.webp') center top/cover}
.wrap{max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(28px,3.2vw,44px)}
.narrow-wrap{max-width:1060px}
.head{display:flex;flex-direction:column;gap:14px}
.head.center{align-items:center;text-align:center}
.head.pt{padding-top:clamp(10px,1.6vw,22px);gap:18px}
.center-text{text-align:center}
.eyebrow{color:var(--dourado);font-size:clamp(12px,1.1vw,14px);font-weight:400;letter-spacing:.3em;text-transform:uppercase}
.lead{font-size:clamp(14px,1.3vw,16px);line-height:1.8;font-weight:300;color:#6e6e78;max-width:800px;text-wrap:pretty}
.h-pink{font-size:clamp(24px,3vw,38px);line-height:1.22;font-weight:700;color:var(--rosa);max-width:880px;text-wrap:pretty}
.h-pink.sm{font-size:clamp(20px,2.5vw,32px)}
.h-pink.narrow{max-width:520px}
.h-dark{font-size:clamp(21px,2.5vw,32px);line-height:1.3;font-weight:600;color:#3a3a4a;max-width:1060px;text-wrap:pretty}
.h3-pink{font-size:clamp(18px,2.1vw,27px);line-height:1.3;font-weight:700;color:var(--rosa)}
.h-serif-white{font-family:Lora,Georgia,serif;color:#fff;font-size:clamp(26px,3.3vw,42px);line-height:1.24;font-weight:400}
.disclaimer{font-size:12px;line-height:1.7;font-weight:300;color:#9a9aa2;text-align:center;max-width:820px;margin:0 auto;text-wrap:pretty}

/* ---------- botão whatsapp ---------- */
.btn-wa{display:inline-flex;align-items:center;gap:14px;background:var(--verde);color:#fff;font-size:clamp(13px,1.25vw,17px);font-weight:600;letter-spacing:.11em;text-transform:uppercase;padding:20px 40px;line-height:1.2;transition:background .24s cubic-bezier(.2,.7,.2,1)}
.btn-wa:hover{background:var(--verde-hover);color:#fff}
.btn-wa svg{flex:none}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:linear-gradient(100deg,var(--vinho-esc) 0%,var(--vinho) 45%,#7d1445 100%);padding:clamp(40px,5vw,70px) clamp(20px,5vw,72px) clamp(60px,7vw,92px);border-bottom:4px solid var(--rosa)}
.hero-art{position:absolute;top:0;right:0;bottom:0;width:46%;background:url('assets/hero-justica.webp') 78% center/cover no-repeat;filter:grayscale(1);opacity:.13;pointer-events:none}
.hero-fade{position:absolute;top:0;right:0;bottom:0;width:46%;background:linear-gradient(90deg,var(--vinho) 0%,rgba(109,17,57,0) 55%);pointer-events:none}
.hero-inner{position:relative;max-width:1220px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(28px,3.4vw,46px)}
.logo{width:clamp(150px,15vw,196px);height:auto;display:block}
.hero h1{color:#fff;font-size:clamp(27px,3.5vw,44px);line-height:1.24;font-weight:700;letter-spacing:-.005em;max-width:900px;text-wrap:pretty}
.hero-sub{color:rgba(255,255,255,.94);font-size:clamp(15px,1.5vw,20px);line-height:1.75;font-weight:300;max-width:920px;text-wrap:pretty}
.hero-cta{align-self:flex-start}

/* ---------- resultados ---------- */
/* lightbox */
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(22,3,9,.9);display:flex;align-items:flex-start;justify-content:center;padding:clamp(16px,3vw,48px);overflow-y:auto;cursor:zoom-out}
.lightbox[hidden]{display:none}
.lb-inner{position:relative;max-width:900px;width:100%;margin:auto}
.lb-close{position:sticky;top:0;margin-left:auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:var(--rosa);color:#fff;cursor:pointer;font-family:inherit;font-size:20px;line-height:1;z-index:2}
.lb-inner img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.5)}

/* cards de sentença */
.grid-verdicts{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:clamp(16px,2vw,26px)}
.card-verdict{flex:0 1 352px;min-width:290px;display:flex;flex-direction:column;gap:18px;background:#fff;border:1px solid #e2e0de;border-top:3px solid var(--dourado);padding:32px 30px 0;transition:box-shadow .24s cubic-bezier(.2,.7,.2,1)}
.card-verdict:hover{box-shadow:0 10px 28px rgba(16,18,27,.09)}
.v-head{display:flex;flex-direction:column;gap:6px}
.v-head h3{font-size:14px;line-height:1.4;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--rosa);text-wrap:pretty}
.v-period,.v-note{font-size:13px;font-weight:400;color:#6f6f79;text-wrap:pretty}
.v-mid{display:flex;flex-direction:column;gap:2px;padding-bottom:18px;border-bottom:1px solid #eeecea}
.v-label{font-size:11px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--dourado)}
.v-value{font-size:clamp(28px,2.7vw,34px);line-height:1.15;font-weight:700;color:var(--vinho);letter-spacing:-.01em}
.v-flag{margin-top:8px;align-self:flex-start;padding:5px 11px;background:#fdeaf4;color:#b3125f;font-size:12px;font-weight:600;letter-spacing:.02em}
.v-list{padding:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.v-list li{position:relative;padding-left:15px;font-size:14px;line-height:1.6;font-weight:300;color:var(--cinza);text-wrap:pretty}
.v-list li::before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;background:var(--rosa);border-radius:50%}

/* prova documental */
.v-doc{margin:auto -30px 0;padding:0;border:0;border-top:1px solid #eeecea;background:transparent;cursor:zoom-in;font-family:inherit;display:block;width:calc(100% + 60px);text-align:left}
.v-doc-thumb{position:relative;display:block;height:92px;overflow:hidden;background:#fff}
.v-doc-thumb img{display:block;width:100%;height:auto;margin-top:-52px;filter:grayscale(1);opacity:.5;transition:opacity .24s cubic-bezier(.2,.7,.2,1)}
.v-doc-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 55%,#fff 100%)}
.v-doc:hover .v-doc-thumb img{opacity:.72}
.v-doc-cta{display:flex;align-items:center;justify-content:center;gap:9px;padding:0 20px 22px;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--rosa);transition:color .24s}
.v-doc:hover .v-doc-cta{color:var(--rosa-esc)}
.v-doc-cta svg{flex:none}

/* ---------- situações ---------- */
.grid-sit{display:grid;grid-template-columns:repeat(auto-fit,minmax(252px,1fr));gap:clamp(14px,1.8vw,26px)}
.card-sit{background:#fff;border:1px solid #e2e0de;padding:34px 26px 38px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;transition:box-shadow .24s cubic-bezier(.2,.7,.2,1)}
.card-sit:hover{box-shadow:0 10px 28px rgba(16,18,27,.09)}
.card-sit h4{font-size:14px;line-height:1.4;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--rosa);text-wrap:pretty}
.card-sit p{font-size:15px;line-height:1.7;font-weight:300;color:var(--cinza);text-wrap:pretty}
.ico{width:44px;height:44px;display:block;fill:none;stroke:var(--rosa);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.ico.gold{width:40px;height:40px;stroke:var(--dourado)}

.more-rights{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:clamp(20px,3vw,40px);background:#fff;border:1px solid #e2e0de;border-left:4px solid var(--rosa);padding:clamp(26px,3vw,38px) clamp(24px,3.4vw,44px)}
.mr-copy{display:flex;flex-direction:column;gap:8px;flex:1 1 340px}
.mr-eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--dourado)}
.mr-text{font-size:clamp(15px,1.5vw,18px);line-height:1.65;font-weight:300;color:#4d4d59;max-width:640px;text-wrap:pretty}
.mr-btn{flex:none;padding:18px 32px}

/* ---------- diferenciais ---------- */
.dark{background:linear-gradient(180deg,#d3197c 0%,#8c1050 34%,#3d0a24 72%,#160309 100%);padding-bottom:clamp(70px,8vw,120px)}
.dark .wrap{gap:clamp(30px,3.6vw,50px)}
.grid-diff{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(18px,2.2vw,32px);max-width:1080px;margin:0 auto;width:100%}
.card-diff{background:#eaeaea;padding:40px 34px 48px;display:flex;flex-direction:column;gap:22px}
.card-diff h3{font-family:Lora,Georgia,serif;font-size:clamp(19px,1.8vw,23px);line-height:1.35;font-weight:500;color:var(--rosa);text-wrap:pretty}
.card-diff p{font-size:15px;line-height:1.85;font-weight:300;color:#6b6b73;text-wrap:pretty}

/* ---------- depoimentos ---------- */
.carousel{max-width:820px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:22px}
.viewport{overflow:hidden;width:100%}
.track{display:flex;align-items:flex-start;width:100%;transition:transform .65s cubic-bezier(.16,1,.3,1)}
.slide{flex:0 0 100%;padding:0 2px}
.shot{background:#fff;padding:clamp(14px,1.8vw,24px);box-shadow:0 4px 18px rgba(16,18,27,.06)}
.shot img{display:block;width:100%;height:auto}
.shot img{aspect-ratio:1390 / 578}
.dots{display:flex;align-items:center;justify-content:center;gap:11px}
.dot{width:10px;height:10px;padding:0;border:0;border-radius:999px;background:#d8d4d0;cursor:pointer;transition:width .3s cubic-bezier(.2,.7,.2,1),background .3s}
.dot.is-active{width:30px;background:var(--rosa)}

/* ---------- faq ---------- */
.faq{display:flex;flex-direction:column;gap:14px}
.faq-item{background:#e8e8e8}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:transparent;border:0;cursor:pointer;padding:26px 34px;text-align:left;font-family:inherit;font-size:clamp(14px,1.35vw,17px);font-weight:500;color:var(--rosa);line-height:1.45}
.faq-q:hover{color:var(--rosa-esc)}
.faq-q svg{flex:none;transition:transform .24s cubic-bezier(.2,.7,.2,1)}
.faq-item.is-open .faq-q svg{transform:rotate(180deg)}
.faq-a{display:none;padding:0 34px 30px}
.faq-item.is-open .faq-a{display:block}
.faq-a p{font-size:15px;line-height:1.85;font-weight:300;color:var(--cinza);text-wrap:pretty}

/* ---------- cta final ---------- */
.cta-final{background:linear-gradient(180deg,rgba(211,25,124,.9) 0%,rgba(160,18,89,.9) 40%,rgba(63,10,37,.94) 100%),url('assets/forum.webp') center 62%/cover no-repeat;padding:clamp(50px,6vw,92px) clamp(20px,5vw,72px)}
.cta-grid{max-width:1180px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(30px,4vw,56px);align-items:center}
.cta-copy{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.cta-copy h2{color:#fff;font-size:clamp(28px,3.4vw,44px);line-height:1.2;font-weight:700}
.cta-copy p{color:#fff;font-size:clamp(15px,1.4vw,19px);line-height:1.6;font-weight:300}
.cta-copy .fine{font-size:clamp(14px,1.3vw,17px)}
.cta-final iframe{width:100%;height:clamp(260px,26vw,340px);border:0;display:block}

@media (max-width:720px){
  .hero-art,.hero-fade{width:100%;opacity:.09}
  .btn-wa{padding:18px 26px;letter-spacing:.06em}
  .faq-q{padding:22px 20px}
  .faq-a{padding:0 20px 24px}
  .card-diff{padding:32px 26px 36px}
}
