/* Página "Seja revendedor" (cadastro de lojas). */
.rv-hero{position:relative;overflow:hidden;background:#000;color:#fff;padding-block:clamp(56px,9vw,110px) clamp(60px,9vw,100px);border-bottom:3px solid var(--destaque)}
.rv-hero::before{content:"";position:absolute;inset:0;background:url(banner-vitoria-noite.jpg) center/cover no-repeat;opacity:.35;transform:scale(1.06);animation:rv-zoom 22s ease-in-out infinite alternate}
.rv-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 20%,rgba(254,254,34,.28),transparent 60%),linear-gradient(90deg,#000 15%,rgba(0,0,0,.55) 65%,rgba(0,0,0,.2))}
@keyframes rv-zoom{to{transform:scale(1.14) translateX(-2%)}}
.rv-hero .wrap{position:relative;z-index:1}
.rv-selo{display:inline-flex;align-items:center;gap:8px;font:700 .78rem var(--display);letter-spacing:.16em;text-transform:uppercase;color:#000;background:var(--destaque);border-radius:999px;padding:6px 14px}
.rv-hero h1{font-size:clamp(2.1rem,5.4vw,3.7rem);font-weight:300;margin:18px 0 14px;max-width:760px}
.rv-hero h1 b{font-weight:800;color:var(--destaque);text-shadow:0 0 34px rgba(254,254,34,.45)}
.rv-hero p{color:#d6d6d6;font-size:1.15rem;max-width:620px}
.rv-hero .acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.rv-hero .btn-linha{border-color:#fff;color:#fff}
.rv-num{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:44px;max-width:860px}
.rv-num div{border:1px solid rgba(254,254,34,.35);background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;padding:14px 16px}
.rv-num b{display:block;font:800 clamp(1.4rem,3vw,2rem) var(--display);color:var(--destaque)}
.rv-num span{font-size:.9rem;color:#cfcfcf}
.rv-aviso{margin-top:12px;font-size:.92rem;color:#bdbdbd}
.rv-pq{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rv-pq article{background:var(--card);border:1px solid var(--borda);border-radius:14px;padding:24px}
.rv-pq .ic{width:46px;height:46px;border-radius:12px;background:var(--destaque);color:#000;display:grid;place-items:center;margin-bottom:14px;box-shadow:0 8px 24px -8px rgba(254,254,34,.8)}
.rv-pq .ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.rv-pq h3{font-size:1.1rem;margin-bottom:6px}
.rv-pq p{color:var(--suave);font-size:.98rem}
.rv-passos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:p;margin-top:8px}
.rv-passos li{list-style:none;position:relative;padding:22px 22px 22px 74px;background:var(--card);border:1px solid var(--borda);border-radius:14px}
.rv-passos li::before{counter-increment:p;content:counter(p);position:absolute;left:20px;top:20px;width:40px;height:40px;border-radius:50%;background:#000;color:var(--destaque);border:2px solid var(--destaque);display:grid;place-items:center;font:800 1.1rem var(--display)}
.rv-passos b{display:block;font-family:var(--display)}
.rv-passos span{color:var(--suave);font-size:.95rem}
.rv-form-sec{background:var(--claro);border-block:1px solid var(--borda)}
.rv-grade{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:36px;align-items:start}
.rv-lado{position:sticky;top:96px}
.rv-lado h2{font-size:clamp(1.6rem,3.4vw,2.3rem);margin-bottom:10px}
.rv-lado p{color:var(--suave)}
.rv-lado ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.rv-lado li{display:flex;gap:10px;align-items:flex-start}
.rv-lado li::before{content:"";flex:0 0 18px;height:18px;margin-top:4px;border-radius:50%;background:var(--destaque) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.rv-form{background:var(--card);border:1px solid var(--borda);border-top:5px solid var(--destaque);border-radius:16px;padding:clamp(20px,3.4vw,34px);box-shadow:0 24px 60px -30px rgba(0,0,0,.35)}
.rv-form fieldset{border:0;padding:0;margin:0 0 22px}
.rv-form legend{font:700 .78rem var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--suave);margin-bottom:12px;display:flex;align-items:center;gap:10px;width:100%}
.rv-form legend::after{content:"";flex:1;height:1px;background:var(--borda)}
.rv-campos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rv-campos .inteiro{grid-column:1/-1}
.rv-form label{display:block;font-weight:600;font-size:.95rem}
.rv-form label>input,.rv-form label>select,.rv-form label>textarea{display:block;margin-top:6px}
.rv-form .msg{display:block;margin-top:4px}
.rv-form label i{font-style:normal;color:#c0392b}
.rv-form input,.rv-form select,.rv-form textarea{font:inherit;font-weight:400;padding:12px 14px;border:1px solid var(--borda);border-radius:8px;background:var(--fundo);color:var(--texto);transition:border-color .2s,box-shadow .2s;width:100%}
.rv-form textarea{min-height:96px;resize:vertical}
.rv-form input:focus,.rv-form select:focus,.rv-form textarea:focus{outline:0;border-color:#b9b900;box-shadow:0 0 0 4px rgba(254,254,34,.35)}
.rv-form .erro input,.rv-form .erro select{border-color:#c0392b}
.rv-form .msg{font-size:.82rem;color:#c0392b;font-weight:600;min-height:0}
.rv-chips{display:flex;flex-wrap:wrap;gap:8px}
.rv-chips label{display:inline-flex;align-items:center;font-weight:600;font-size:.9rem;cursor:pointer}
.rv-chips input{position:absolute;opacity:0;width:1px;height:1px}
.rv-chips span{border:1px solid var(--borda);background:var(--fundo);border-radius:999px;padding:8px 14px;transition:all .2s}
.rv-chips input:checked+span{background:#000;color:var(--destaque);border-color:#000;box-shadow:0 6px 18px -8px rgba(0,0,0,.6)}
.rv-chips input:focus-visible+span{outline:3px solid var(--destaque);outline-offset:2px}
:root[data-tema="escuro"] .rv-chips input:checked+span{background:var(--destaque);color:#000;border-color:var(--destaque)}
.rv-aceite{display:flex!important;align-items:flex-start;gap:10px;margin-top:6px;font-weight:400!important;color:var(--suave)}
.rv-aceite input{width:20px!important;height:20px;flex:0 0 20px;margin-top:2px!important;accent-color:#000;padding:0}
.rv-aceite a{text-decoration:underline}
.rv-enviar{width:100%;margin-top:18px;min-height:56px;font-size:1.05rem;box-shadow:0 14px 30px -14px rgba(185,185,0,.9)}
.rv-nota{font-size:.85rem;color:var(--suave);margin-top:12px;text-align:center}
.rv-ok{text-align:center;padding:20px 6px}
.rv-ok .selo-ok{width:84px;height:84px;margin:0 auto 18px;border-radius:50%;background:var(--destaque);display:grid;place-items:center;box-shadow:0 0 0 10px rgba(254,254,34,.25),0 0 50px rgba(254,254,34,.7);animation:rv-pulso 2.4s ease-in-out infinite}
.rv-ok .selo-ok svg{width:40px;height:40px;fill:none;stroke:#000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:rv-traco .6s .2s ease-out forwards}
@keyframes rv-pulso{50%{box-shadow:0 0 0 18px rgba(254,254,34,.08),0 0 70px rgba(254,254,34,.9)}}
@keyframes rv-traco{to{stroke-dashoffset:0}}
.rv-ok h3{font-size:1.6rem;margin-bottom:8px}
.rv-ok p{color:var(--suave);max-width:440px;margin:0 auto 6px}
.rv-ok .protocolo{display:inline-block;margin:14px 0 18px;font:800 1.1rem var(--display);letter-spacing:.08em;background:#000;color:var(--destaque);border-radius:8px;padding:8px 16px}
.rv-demo{margin-top:16px;font-size:.88rem;background:#fffde0;color:#1d2027;border-left:4px solid var(--destaque-esc);padding:10px 14px;border-radius:0 8px 8px 0;text-align:left}
.rv-demo a{text-decoration:underline;font-weight:700}
.rv-faixa-cta{background:#000;color:#fff;border-radius:18px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:34px;background-image:radial-gradient(70% 140% at 100% 0%,rgba(254,254,34,.3),transparent 60%)}
.rv-faixa-cta h2{font-size:clamp(1.25rem,2.6vw,1.8rem);max-width:560px}
.rv-faixa-cta h2 b{color:var(--destaque)}
.rv-faixa-cta p{color:#cfcfcf;margin-top:6px}
@media (max-width:900px){.rv-grade{grid-template-columns:1fr}.rv-lado{position:static}.rv-pq,.rv-passos{grid-template-columns:1fr}.rv-num{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rv-campos{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rv-hero::before,.rv-ok .selo-ok{animation:none}}
