:root{
  --bg:#0A0A0A; --bg2:#111111; --card:#161616; --line:#2A2A2A; --ink:#F5F5F5; --soft:#D4D4D4; --muted:#A3A3A3;
  --y:#FACC15; --y2:#FDE68A; --on-y:#0A0A0A; --red:#F87171; --red-bg:#2D0E0E; --green:#4ADE80;
  --display:'Barlow Condensed', 'Arial Narrow', sans-serif; --body:'Barlow', system-ui, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--y)}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.band{padding:88px 0}
.band.alt{background:var(--bg2);border-top:1px solid #1C1C1C;border-bottom:1px solid #1C1C1C}
h1,h2,h3.d{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.005em;margin:0}
h1{font-size:clamp(46px,6.2vw,78px);line-height:.96}
h2{font-size:clamp(36px,4.4vw,54px);line-height:1}
h3.d{font-size:clamp(28px,3vw,38px);line-height:1.05}
.kicker{color:var(--y);font-weight:700;font-size:14px;letter-spacing:.09em;text-transform:uppercase}
.lead{color:var(--soft);font-size:20px;margin:22px 0 0;max-width:600px}
.sub{color:var(--muted);font-size:19px;margin:14px 0 0;max-width:720px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 30px;border-radius:12px;
  font:700 19px/1 var(--body);text-decoration:none;cursor:pointer;border:0;transition:transform .15s ease, filter .15s ease}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn:focus-visible{outline:3px solid var(--y2);outline-offset:3px}
.btn-y{background:var(--y);color:var(--on-y)}
.btn-ghost{background:transparent;color:var(--ink);border:2px solid #3A3A3A}
.btn-dark{background:var(--on-y);color:var(--y)}
/* topo */
header.top{position:sticky;top:0;z-index:20;background:rgba(10,10,10,.92);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid #1E1E1E}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}
header.top nav{display:flex;align-items:center;gap:26px;font-weight:600;font-size:16px}
header.top nav a.lk{color:var(--soft);text-decoration:none}
header.top nav a.lk:hover{color:var(--y)}
header.top .btn{min-height:44px;font-size:16px;padding:0 20px;white-space:nowrap}
/* hero */
.hero{padding:80px 0 72px}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.pill{display:inline-block;border:1px solid var(--y);color:var(--y);border-radius:999px;padding:6px 16px;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.hero h1{margin-top:22px}
.hero h1 em{color:var(--y)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.ticks{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:24px;color:var(--muted);font-size:15px}
.shot{border:1px solid #333;border-radius:14px;overflow:hidden;background:#000}
.shot.glow{border:2px solid var(--y);box-shadow:0 30px 80px rgba(250,204,21,.13)}
/* cards */
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:44px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:44px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px}
.card .n{font-family:var(--display);font-weight:800;font-size:40px;color:var(--y);line-height:1}
.card h3{font-size:20px;margin:12px 0 8px}
.card p{margin:0;color:var(--muted);font-size:16px}
.step{border-top:4px solid var(--y);border-radius:0 0 14px 14px}
.step .k{color:var(--y);font-weight:700;font-size:14px;letter-spacing:.06em}
.step.res{background:var(--y);color:var(--on-y);border-color:var(--y)}
.step.res .k,.step.res p{color:var(--on-y)}
/* prova */
.proof{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.nums{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) minmax(0,.9fr);gap:12px}
.num{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 14px;text-align:center}
.num .l{font-size:14px;font-weight:600;color:var(--muted)}
.num .v{font-family:var(--display);font-weight:800;font-size:clamp(22px,2.1vw,30px);margin-top:6px;white-space:nowrap}
.num.bad{background:var(--red-bg);border-color:#7F1D1D}.num.bad .l{color:#FCA5A5}.num.bad .v{color:var(--red)}
.num.good{background:var(--y);border-color:var(--y);color:var(--on-y)}.num.good .l{color:var(--on-y)}
/* telas */
.feature{display:grid;grid-template-columns:1fr 1.55fr;gap:44px;align-items:center}
.feature.rev{grid-template-columns:1.55fr 1fr}
.feature.rev .txt{order:2}
.features{display:flex;flex-direction:column;gap:76px}
.feature p{color:var(--soft);font-size:18px;margin:16px 0 0}
/* desconto */
.disc{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:44px}
.meter{background:#0D0D0D;border:1px solid var(--line);border-radius:14px;padding:26px}
.meter .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid #222;font-size:17px}
.meter .row:last-child{border:0}
.meter .row b{font-family:var(--display);font-size:28px}
.meter .row.hi b{color:var(--y)}
/* oferta */
.offer{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;border:2px solid var(--y);border-radius:22px;background:#121212;padding:46px}
.offer ul{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:13px}
.offer li{display:flex;gap:12px}
.offer li::before{content:"✓";color:var(--y);font-weight:800}
.price{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:34px 26px;text-align:center}
.price .v{font-family:var(--display);font-weight:800;font-size:60px;color:var(--y);line-height:1.05;margin-top:6px}
.price .btn{width:100%;margin-top:24px}
.small{font-size:14px;color:var(--muted)}
/* faq */
.faq{max-width:860px;margin:0 auto}
details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 24px;margin-bottom:12px}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;font-weight:700;font-size:19px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--y);font-size:28px;line-height:1;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin:0 0 22px;color:var(--soft);font-size:17px}
/* cta final */
.final{background:var(--y);color:var(--on-y);text-align:center;padding:76px 0}
.final p{font-size:20px;font-weight:500;max-width:640px;margin:16px auto 0}
.final .btn{margin-top:30px}
footer{padding:40px 0;border-top:1px solid #1C1C1C;color:var(--muted);font-size:15px}
footer .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
footer button.linklike{background:none;border:0;color:var(--muted);font:inherit;text-decoration:underline;cursor:pointer;padding:0}
/* modal */
dialog{border:0;padding:0;background:transparent;max-width:560px;width:calc(100% - 24px);color:var(--ink)}
dialog::backdrop{background:rgba(0,0,0,.78)}
.modal{background:#121212;border:2px solid var(--y);border-radius:20px;padding:34px 30px 28px;position:relative}
.modal .x{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:10px;border:0;background:#1F1F1F;color:var(--ink);font-size:22px;cursor:pointer}
.modal .kicker{padding-right:52px}
.modal h2{font-size:34px}
.modal .steps{display:flex;gap:8px;margin:14px 0 0;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.modal .steps span{color:var(--muted)}.modal .steps span.on{color:var(--y)}
form{display:grid;grid-template-columns:1fr 1fr;gap:14px 14px;margin-top:22px}
.f{display:flex;flex-direction:column;gap:6px}
.f.full{grid-column:1/-1}
.f label{font-size:14px;font-weight:600;color:var(--soft)}
.f input,.f select{min-height:50px;border-radius:10px;border:1px solid #3A3A3A;background:#0B0B0B;color:var(--ink);font:500 17px var(--body);padding:0 14px;width:100%}
.f select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--y) 50%),linear-gradient(135deg,var(--y) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px;background-repeat:no-repeat}
.f input:focus,.f select:focus{outline:2px solid var(--y);outline-offset:1px;border-color:var(--y)}
.f input[aria-invalid="true"],.f select[aria-invalid="true"]{border-color:var(--red)}
.err{color:var(--red);font-size:13px;min-height:0}
.consent{grid-column:1/-1;display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--soft)}
.consent input{width:22px;height:22px;margin-top:1px;accent-color:var(--y);flex:0 0 auto}
form .btn{grid-column:1/-1;width:100%;margin-top:4px}
form .btn[disabled]{opacity:.7;cursor:progress}
.secure{grid-column:1/-1;text-align:center;font-size:13px;color:var(--muted)}
.privacy{max-height:60vh;overflow:auto}
.privacy p{color:var(--soft);font-size:15px}
@media (max-width: 900px){
  header.top nav a.lk{display:none}
  .hero .wrap,.proof,.feature,.feature.rev,.disc,.offer{grid-template-columns:1fr}
  .feature.rev .txt{order:0}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid3{grid-template-columns:1fr}
  .band{padding:60px 0}.hero{padding:48px 0 56px}
  .disc,.offer{padding:28px 22px}
}
@media (max-width: 560px){
  body{font-size:17px}
  .grid4{grid-template-columns:1fr}
  header.top img{height:32px !important}
  header.top .btn{font-size:15px;padding:0 14px}
  .num .v{font-size:34px}
  .nums{grid-template-columns:1fr}
  form{grid-template-columns:1fr}
  .modal{padding:28px 18px 22px}
  .cta-row .btn{width:100%}
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.btn{transition:none}}
/* ---------- página de entrada ---------- */
.hub-hero{padding:72px 0 40px;text-align:center}
.hub-hero h1{font-size:clamp(42px,5.6vw,72px)}
.hub-hero h1 em{color:var(--y)}
.hub-hero .lead{margin:20px auto 0;max-width:660px}
.segs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
a.seg{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);
  border-radius:18px;padding:30px 28px;min-height:300px;transition:transform .15s ease,border-color .15s ease,background .15s ease}
a.seg:hover{transform:translateY(-3px);border-color:var(--y);background:#1A1A1A}
a.seg:focus-visible{outline:3px solid var(--y2);outline-offset:3px}
.seg .ic{width:60px;height:60px;border-radius:14px;background:var(--y);display:flex;align-items:center;justify-content:center}
.seg h2{font-size:34px}
.seg p{margin:0;color:var(--muted);font-size:16px;flex:1}
.seg .go{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:10px;background:var(--y);color:var(--on-y);font-weight:700}
.seg .tag{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--y);text-transform:uppercase}
.method{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px}
.method .card .n{font-size:34px}
/* ---------- cartão da fórmula ---------- */
.formula{background:var(--card);border:2px solid var(--y);border-radius:18px;padding:28px;box-shadow:0 30px 80px rgba(250,204,21,.10)}
.formula .cap{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.frow{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#0D0D0D;border:1px solid var(--line);border-radius:12px;padding:14px 18px}
.frow b{font-size:19px}
.frow small{color:var(--muted);font-size:14px;text-align:right}
.frow.hi{background:var(--y);border-color:var(--y);color:var(--on-y)}
.frow.hi small{color:#3D3300}
.op{text-align:center;color:var(--y);font-family:var(--display);font-weight:800;font-size:28px;line-height:1;padding:6px 0}
/* ---------- topo da página de segmento ---------- */
.crumb{display:flex;align-items:center;gap:16px}
.crumb a.sw{color:var(--muted);font-size:14px;font-weight:600;text-decoration:none;border:1px solid #333;border-radius:999px;padding:6px 12px}
.crumb a.sw:hover{color:var(--y);border-color:var(--y)}
.price .old{color:var(--muted);font-size:15px}
.fieldset-t{grid-column:1/-1;font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--y);margin-top:6px;border-top:1px solid #262626;padding-top:14px}
.fieldset-t:first-of-type{border-top:0;padding-top:0;margin-top:0}
.opt{color:var(--muted);font-weight:500}
@media (max-width: 900px){
  .segs,.method{grid-template-columns:1fr}
  a.seg{min-height:0}
  .crumb a.sw{display:none}
}
.final a{color:var(--on-y);font-weight:700}
/* ---------- atalhos de segmento no topo da página geral ---------- */
.chips-t{margin:36px 0 0;font-weight:700;color:var(--ink);font-size:17px}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:14px}
a.chip{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:8px 20px 8px 8px;border-radius:12px;background:var(--card);border:1px solid #3A3A3A;color:var(--ink);font-weight:700;text-decoration:none;transition:border-color .15s ease,transform .15s ease}
a.chip:hover{border-color:var(--y);transform:translateY(-2px)}
a.chip:focus-visible{outline:3px solid var(--y2);outline-offset:3px}
a.chip .ic{width:38px;height:38px;border-radius:9px;background:var(--y);display:flex;align-items:center;justify-content:center}
a.chip .ic svg{width:22px;height:22px}
.final a.btn-dark{color:var(--y)}
@media (max-width: 600px){a.chip{width:100%}}
/* ---------- tema azul (Consultorias) ---------- */
.final-note{color:#3D3300}
.theme-azul{--y:#3B82F6; --y2:#93C5FD; --on-y:#FFFFFF}
.theme-azul .formula{box-shadow:0 30px 80px rgba(59,130,246,.14)}
.theme-azul .shot.glow{box-shadow:0 30px 80px rgba(59,130,246,.16)}
.theme-azul .frow.hi small,.theme-azul .final-note{color:#DBEAFE}
.theme-azul .final a{color:#FFFFFF}
.theme-azul .final .btn-dark{background:#FFFFFF;color:#1D4ED8}
a.seg.theme-azul .tag{color:#60A5FA}
/* ---------- tema verde (Oficinas) ---------- */
.theme-verde{--y:#22C55E; --y2:#86EFAC; --on-y:#0A0A0A}
.theme-verde .formula{box-shadow:0 30px 80px rgba(34,197,94,.12)}
.theme-verde .shot.glow{box-shadow:0 30px 80px rgba(34,197,94,.14)}
.theme-verde .frow.hi small,.theme-verde .final-note{color:#14532D}
a.seg.theme-verde .tag{color:#4ADE80}
/* ---------- tema amarelo (PoliCar); a página geral PlaniCar usa o amarelo padrão ---------- */
.theme-amarelo{--y:#FACC15; --y2:#FDE68A; --on-y:#0A0A0A}
.seg h2{text-transform:none}
