/* ===== Tema "engenharia": mais contraste e presença. Carregado por último. ===== */
:root{--lbg:#e6e8e5;--lline:#0e1a1326;--gd:#1f6b2a}

/* cantos retos, cara de projeto técnico */
.btn,.pill,.tab,.eyebrow,.tg,.ct,.cat .ex span{border-radius:4px!important}
.sit,.cat,.test,.panel,.pain,.step,.cred,.why div,.nums div,form,.datebox,.pain-photo,.photo .frame,dialog,.checklist li,
.checks li,.riskcards li,.steps li,.whys li,.taglist li,.how .ph,.why .andre,.offer .box,.others a,.how .cards li,
input,select,textarea,.panel li,dialog .svc,.track img,.sit .ic,.cat .ic,.photo .badge{border-radius:6px!important}
.photo::before{border-radius:8px!important}

/* eyebrow: etiqueta de prancha técnica */
.eyebrow{letter-spacing:.18em;font-weight:700;font-size:11.5px}
.light .eyebrow{background:var(--lt);color:var(--g);border-color:var(--lt)}

/* seções claras = concreto com grade de projeto */
.light{background-color:var(--lbg);background-image:linear-gradient(#0e1a130a 1px,transparent 1px),linear-gradient(90deg,#0e1a130a 1px,transparent 1px);background-size:40px 40px}
.light h2,.light h3{color:#0a0f0c}
.light h2 em,.light h3 em{color:var(--gd)}
.sit,.cat,.test,.panel,.cred,.checks li,.taglist li,.others a,.how .cards li{border:1px solid #0e1a1322;box-shadow:0 1px 0 #0e1a1310}
.sit:hover,.cat:hover{box-shadow:0 18px 40px #0e1a1326;border-color:#0e1a13}
.sit .ic,.cat .ic{background:var(--lt)!important;color:var(--g)!important}
.sit.urg .ic{background:#2a0f09!important;color:var(--r)!important}
.sit .tg{background:var(--r);color:#fff}
.sit::before,.cat::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--lt)}
.sit.urg::before{background:var(--r)}
.cat{position:relative;overflow:hidden}
.checks li::before{background:var(--lt)!important;color:var(--g)!important;border-radius:4px!important}
.panel li{background:#e6e8e5}
.tab.on{background:var(--lt)}
.cred svg{color:var(--gd)}

/* "como funciona" e passo a passo: verde vira preto com verde */
.green{background:#0b1510;color:var(--t);background-image:radial-gradient(circle at 85% 10%,#8cd65026,transparent 45%)}
.green .eyebrow{color:var(--g);border-color:#8cd65066}
.green h2 em{color:var(--g)}
.green p{color:var(--m)!important}
.step,.green .steps li{background:#ffffff08!important;border:1px solid #8cd65033;backdrop-filter:none}
.step span,.green .steps li{color:var(--m)!important}
.step b,.green .steps li strong{color:#fff!important}
.step .n,.green .steps li::before{background:var(--g)!important;color:#0b2410!important;border-radius:4px!important}
.steps::before{background:repeating-linear-gradient(90deg,var(--g) 0 10px,transparent 10px 20px)!important}
.btn.d{background:var(--g);color:#0b2410}
.light .btn.d,.panel .btn.d,dialog .btn.d,form .btn.d{background:var(--lt);color:#fff}

/* NR-01 vermelho mais sóbrio */
.red{background:linear-gradient(120deg,#5e1308,#a8270f 55%,#d8401f)}

/* depoimentos no escuro */
.tests-dark{background:#0b1510}
.tests-dark .test{background:#111c16;border:1px solid #ffffff14}
.tests-dark .test p{color:#e7ece9}
.tests-dark .test::before{color:#8cd65022}
.tests-dark .test .who span{color:var(--m)}
.test .av{width:52px!important;height:52px!important;overflow:hidden;padding:0}
.test .av img{width:100%;height:100%;object-fit:cover}

/* CTA final escuro com verde */
.final{background:linear-gradient(120deg,#0b1510,#12301a 60%,#1d5226)!important;color:var(--t)!important}
.final .lead,.final .tiny{color:#c9d6cd!important}
.final h2 em{color:var(--g)!important}
.final .eyebrow{color:var(--g)!important;border-color:#8cd65066!important}
.final ul li{color:#fff}
.final .btn.d{background:var(--g);color:#0b2410}
.final .btn.w{background:transparent;border:1px solid #ffffff55;color:#fff}

/* fotos: proporção natural, sem esmagar */
.panel{grid-template-columns:1.05fr .95fr!important;min-height:0!important;align-items:stretch}
.panel .ph{min-height:380px!important;aspect-ratio:auto;height:100%}
.panel .ph img{object-position:center}
.panel .tx{display:flex;flex-direction:column;justify-content:center}
.panel .tx .btn{align-self:flex-start}
.pain-photo{aspect-ratio:1}
.why-grid{align-items:stretch!important}
.mosaic{grid-template-columns:1fr!important;height:100%}
.mosaic img{aspect-ratio:auto!important;height:100%!important;min-height:420px;object-fit:cover;border-radius:6px!important}
.mosaic img:nth-child(n+2){display:none}
.how .ph{aspect-ratio:4/3!important}

@media(max-width:1060px){.panel{grid-template-columns:1fr!important}.panel .ph{min-height:0!important;aspect-ratio:4/3;height:auto}.mosaic img{min-height:0;aspect-ratio:4/3!important;height:auto!important}}

/* formulário do CTA final: texto escuro no card branco */
.final form{color:var(--lt)}
.final form h3{color:var(--lt)}
.final form .or{color:var(--lm)!important}

/* ===== celular: proporções menores e mais equilibradas ===== */
@media(max-width:640px){
 h2{font-size:clamp(25px,7vw,30px)!important;line-height:1.1}
 .cap0 h1{font-size:clamp(27px,8vw,32px)!important;min-height:2.3em!important}
 .cap h2{font-size:clamp(26px,7.4vw,30px)!important}
 .cap p,.cap0 .sub{font-size:14.5px!important;margin:10px 0 16px!important}
 .kick{font-size:12.5px;margin-bottom:8px}
 .lead,section p{font-size:15.5px!important}
 .btn{padding:13px 18px;font-size:14px}
 .eyebrow{font-size:10.5px;padding:5px 10px;margin-bottom:14px}
 .pill{font-size:12px;padding:7px 11px}
 .pick{font-size:11px;margin-top:14px}
 nav.top .wrap{height:56px}nav.top .logo img{height:28px}.burger{font-size:24px}
 .links{top:56px!important;font-size:16px;gap:4px!important;padding:12px 16px 20px!important}
 .links>a,.dd>button{display:block;width:100%;text-align:left;padding:11px 0;border-bottom:1px solid #ffffff10}
 .dd .menu a{padding:8px 0 8px 12px;font-size:14px;color:var(--m)}
 .stats{gap:18px}.stats b{font-size:28px!important}.stats span{font-size:11.5px}
 .sit{padding:20px}.sit h3{font-size:18px}.sit .ic{width:44px;height:44px}
 .pain{padding:16px}.pain b{font-size:17px}
 .panel h3{font-size:23px}.panel .tx{padding:22px}
 .date{font-size:64px!important}.datebox{padding:26px 16px}.dcount b{font-size:40px}
 .nums b{font-size:30px!important}.nums div{padding:18px 14px}
 .step{padding:20px}.step b{font-size:18px}
 .photo .badge{right:10px;bottom:16px;padding:12px 14px}.photo .badge b{font-size:28px}
 .cat{padding:20px}.cat h3{font-size:18px}
 summary{font-size:16.5px!important;padding:18px 0!important}
 .qbox h3{font-size:20px}.qres .score b{font-size:56px}
 .tl h3{font-size:20px}.big{font-size:60px}
 .hero h1{font-size:clamp(28px,8vw,34px)!important}.hero .sub{font-size:15.5px!important}
 .checks li,.riskcards li{font-size:15.5px!important}
 .final h2{font-size:clamp(26px,7.4vw,32px)!important}
 .wa{width:54px;height:54px;right:16px;bottom:16px}.wa svg{width:28px;height:28px}
}

@media(max-width:640px){
 .links.open{height:calc(100dvh - 89px);max-height:none!important;overflow-y:auto;box-shadow:0 30px 60px #000c}
}

/* dúvidas: chamada embaixo das perguntas */
.faq-more{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.faq-more p{margin:0!important;color:var(--m)}

@media(max-width:640px){
 /* primeira dobra: texto curto, botão e TODAS as situações visíveis */
 .pills{gap:6px!important;scroll-snap-type:x proximity}
 .pill{scroll-snap-align:start}
 .pick{display:flex;justify-content:space-between;align-items:center}
 .pick::after{content:"deslize →";text-transform:none;letter-spacing:0;color:var(--g);font-weight:600;font-size:11.5px}
 body:not(.wabar-on) .wa{display:none}
 /* barra do WhatsApp mais discreta */
 .wabar{left:12px;right:12px;bottom:12px;border-radius:999px;padding:11px 16px;font-size:14px;font-weight:600;box-shadow:0 8px 24px #0006}
 .wabar svg{width:18px;height:18px}
 .wabar-on .wa{display:none}
}
/* dica "arraste para baixo" */
.swipe{position:fixed;left:50%;bottom:22px;z-index:62;transform:translate(-50%,20px);opacity:0;pointer-events:none;display:flex;align-items:center;gap:8px;background:#0a110ef0;border:1px solid #8cd65066;color:#fff;font:600 13px Inter;padding:10px 16px;border-radius:999px;transition:.4s;box-shadow:0 10px 30px #0008}
.swipe.on{opacity:1;transform:translate(-50%,0)}
.swipe i{display:inline-block;color:var(--g);font-style:normal;animation:bob 1.2s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(4px)}}

@media(max-width:640px){
 .wabar{transform:translateY(calc(100% + 30px))}
 .wabar-on .wabar{transform:none}
}
.swipe.top{bottom:auto;top:120px}
