*{box-sizing:border-box}
:root{--blue:#1351b4;--green:#268744;--navy:#04132a;--ink:#10213c;--muted:#64748b;--line:#dce2ea;--bg:#f7f8fa;--white:#fff;--danger:#b42318}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}
button,input{font:inherit}
a{color:var(--blue)}
.site-header{height:88px;background:#fff;border-bottom:1px solid #e3e7ed;display:flex;align-items:center;padding:12px max(24px,calc((100% - 1180px)/2))}
.brand{display:inline-flex;align-items:center;text-decoration:none;max-width:100%}
.brand img{display:block;width:min(420px,75vw);max-height:62px;object-fit:contain;object-position:left center}
.brand-fallback{font-size:clamp(22px,4vw,38px);font-weight:900;color:var(--navy);letter-spacing:-1.2px}
.page-shell{width:min(760px,calc(100% - 36px));margin:0 auto;padding:24px 0 58px;min-height:600px}
.breadcrumb{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;color:var(--blue);font-size:11px;margin:0 0 46px;text-align:center}
.crumb-separator{color:#6c7a90}
.view[hidden],.step-panel[hidden],button[hidden],.form-alert[hidden]{display:none!important}
.landing{text-align:center}
.service-mark{display:flex;flex-direction:column;align-items:center;color:#55765a;font-size:11px;font-weight:700;margin:0 auto 34px;gap:0}
.fish-mark{font-size:31px;line-height:1;color:#268744;text-shadow:5px 0 #e7c02d;margin-bottom:4px}
.eyebrow{font-size:11px;letter-spacing:1.2px;color:var(--blue);font-weight:700;margin:0 0 8px}
h1{color:var(--blue);font-size:clamp(24px,4vw,31px);line-height:1.2;margin:0 0 16px;font-weight:700}
.landing h1 span{display:block}
.intro{color:#59677b;max-width:520px;margin:0 auto 22px}
.btn{border:0;border-radius:8px;min-height:46px;padding:12px 24px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s;display:inline-flex;justify-content:center;align-items:center;text-decoration:none}
.btn:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8ab4f8;outline-offset:2px}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--green);color:white}
.btn-primary:hover{background:#1f7138}
.btn-secondary{background:#eef2f7;color:#26364d;border:1px solid #d5dce6}
.btn-secondary:hover{background:#e1e8f1}
.btn-start{width:140px;border-radius:25px}
.tracking-link{font-size:12px;margin:18px 0 28px}
.notice{background:#edf4ff;border:1px solid #d7e6ff;border-radius:8px;padding:12px 14px;color:#334b70;font-size:12px;text-align:left;margin:0 0 24px}
.accordions{display:grid;gap:10px;text-align:left}
details{background:#fff;border:1px solid #dce2e9;border-radius:9px;overflow:hidden}
summary{padding:14px 18px;cursor:pointer;font-weight:600;color:#10213c;list-style:none;display:flex;justify-content:space-between;align-items:center}
summary::-webkit-details-marker{display:none}
summary:after{content:"⌄";font-size:16px;color:#34445c}
details[open] summary:after{content:"⌃"}
details p{padding:0 18px 16px;margin:0;color:#56657a;font-size:13px}
.form-view{background:#fff;border:1px solid #e0e6ed;border-radius:14px;padding:clamp(20px,5vw,36px);box-shadow:0 6px 24px rgba(12,32,64,.04)}
.form-heading{text-align:center;margin-bottom:26px}
.form-heading h1{font-size:27px;margin-bottom:8px}
.form-heading>p:last-child{color:var(--muted);margin:0}
.progress{margin:0 auto 32px;max-width:590px}
.progress-track{height:5px;background:#e5eaf1;border-radius:10px;overflow:hidden;margin:0 8px 13px}
.progress-track span{height:100%;width:25%;display:block;background:var(--green);border-radius:10px;transition:width .2s}
.progress-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.progress-step{display:flex;align-items:center;flex-direction:column;gap:5px;color:#8591a3;text-align:center}
.progress-step>span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#edf0f5;color:#68758a;font-weight:700;font-size:12px}
.progress-step small{font-size:11px}
.progress-step.active,.progress-step.complete{color:var(--blue);font-weight:700}
.progress-step.active>span,.progress-step.complete>span{background:var(--blue);color:#fff}
.field{border:0;padding:0;margin:0 0 24px;min-width:0}
.field label,.field legend{display:block;font-weight:700;color:#172943;margin-bottom:9px;padding:0}
.field label span,.field legend span{color:var(--danger)}
.field input:not([type=radio]):not([type=checkbox]){width:100%;min-height:47px;border:1px solid #cfd7e2;border-radius:7px;padding:11px 13px;background:#fff;color:var(--ink)}
.field input[readonly]{background:#f4f6f9;color:#58667b}
.field input:focus{border-color:var(--blue);outline:3px solid #dbeafe}
.field input[aria-invalid=true]{border-color:var(--danger)}
.field-error{display:block;color:var(--danger);font-size:12px;min-height:0;margin-top:5px}
.field-hint{display:block;color:var(--muted);font-size:12px;margin-top:5px}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.choice{position:relative;display:flex!important;align-items:center;gap:10px;min-height:54px;border:1px solid #d4dce7;border-radius:8px;padding:12px 14px;cursor:pointer;background:#fff;margin:0!important}
.choice:has(input:checked){border-color:var(--blue);background:#f1f6ff;box-shadow:inset 0 0 0 1px var(--blue)}
.choice input{accent-color:var(--blue);width:17px;height:17px;flex:0 0 auto}
.choice>span{display:flex;flex-direction:column;gap:2px}
.license-choice{align-items:flex-start;min-height:104px}
.license-choice b{color:var(--green);font-size:17px}
.license-choice small{font-size:11px;color:var(--muted);font-weight:400}
.section-intro{color:#5b687a;margin:0 0 24px}
.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}
.form-actions .btn{min-width:130px}
.form-actions #continueButton,.form-actions #payButton{margin-left:auto}
.secure-note{text-align:center;color:#7b8798;font-size:11px;margin:18px 0 0}
.secure-note span{color:var(--green);font-size:9px;margin-right:4px}
.form-alert{margin-top:18px;padding:12px 14px;border-radius:8px;background:#fff1f0;color:#8f1d17;border:1px solid #ffd0cc;font-size:13px}
.summary{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:18px}
.summary-row{display:grid;grid-template-columns:minmax(130px,.8fr) 1.2fr;gap:12px;padding:12px 14px;border-bottom:1px solid #e8edf2}
.summary-row:last-child{border-bottom:0}
.summary-row dt{color:#68758a;font-size:13px}
.summary-row dd{margin:0;overflow-wrap:anywhere;font-weight:600}
.price-box{background:#f7f9fc;border:1px solid #dce4ee;border-radius:9px;padding:16px;margin-bottom:18px}
.price-box>div{display:flex;justify-content:space-between;gap:12px;margin:4px 0}
.price-box>div span{color:#5d6b7f}
.price-box>div strong{color:var(--blue);text-align:right}
.price-box p{font-size:11px;color:#68758a;margin:12px 0 0}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;margin:16px 0 4px}
.consent input{margin-top:3px;accent-color:var(--blue)}
.notice-small{font-size:11px;margin-top:14px;margin-bottom:0}
.tracking-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px}
.tracking-panel h1{font-size:26px;margin-top:22px}
.tracking-panel p{color:#536176}
.text-button{border:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer;padding:0}
.site-footer{background:#101827;color:#a8b4c7;text-align:center;padding:34px 18px 27px;font-size:11px}
.footer-links{display:flex;justify-content:center;gap:28px;margin-bottom:24px}
.footer-links a{color:#d1d9e6;text-decoration:none;font-size:13px}
.footer-links a:hover{text-decoration:underline}
.footer-rule{width:min(670px,100%);height:1px;background:#283346;margin:0 auto 22px}
.site-footer p{max-width:800px;margin:7px auto}
@media(max-width:560px){
 .site-header{height:72px;padding:10px 18px}
 .brand img{width:min(310px,80vw);max-height:48px}
 .page-shell{width:calc(100% - 24px);padding-top:18px;padding-bottom:36px}
 .breadcrumb{font-size:10px;margin-bottom:32px;gap:4px}
 .service-mark{margin-bottom:24px}
 .landing h1{font-size:24px}
 .intro{font-size:14px}
 .form-view{padding:20px 16px;border-radius:10px}
 .form-heading h1{font-size:24px}
 .progress-step small{font-size:9px}
 .progress-step>span{width:26px;height:26px}
 .choice-grid{gap:8px}
 .choice{padding:11px 9px;font-size:13px}
 .license-choice{min-height:112px}
 .form-actions .btn{min-width:0;flex:1;padding:11px 10px}
 .summary-row{grid-template-columns:1fr;gap:3px;padding:11px 12px}
 .summary-row dd{font-size:14px}
 .footer-links{gap:18px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.cpf-verify-box{margin:-8px 0 24px}.cpf-verify-box .field-hint{margin-top:9px}.verified-good{color:#176b35!important}.verified-warning{color:#9a3412!important}#verifiedIdentityNotice:not([hidden]){display:block}input.verified-readonly{background:#f1f7f2!important;border-color:#88bb98!important}

.site-footer .footer-disclaimer{max-width:850px;margin:18px auto 14px;padding:14px 18px;border:1px solid #54627a;border-radius:8px;color:#f2f5fa;font-size:13px;line-height:1.6}
.site-footer .footer-disclaimer strong{color:#fff}


.payment-view{max-width:650px;margin:30px auto;padding:24px;background:#fff;border-radius:12px}
.pix-container{display:flex;flex-direction:column;align-items:center;gap:14px;margin:25px auto}
.pix-container img{width:220px;max-width:90%;height:auto;object-fit:contain}
.pix-container label{font-weight:700;color:#1351b4}
.pix-container textarea{width:100%;max-width:520px;min-height:100px;padding:12px;border:1px solid #b6c4d5;border-radius:8px;overflow-wrap:anywhere}
/* Perguntas em lista vertical, conforme referencia visual enviada. */
.step-panel[data-step="2"] fieldset.field{margin-bottom:22px}
.step-panel[data-step="2"] fieldset.field legend{font-size:14px;font-weight:500;color:#263348;margin-bottom:7px}
.step-panel[data-step="2"] fieldset.field legend span{color:#d53e48}
.step-panel[data-step="2"] .choice-grid{display:flex;flex-direction:column;gap:5px}
.step-panel[data-step="2"] .choice{display:flex!important;min-height:22px;padding:1px 0;border:0;border-radius:0;background:transparent;box-shadow:none;gap:8px;font-size:13px;font-weight:400;color:#192638;line-height:1.5}
.step-panel[data-step="2"] .choice:has(input:checked){background:transparent;box-shadow:none;border:0}
.step-panel[data-step="2"] .choice input{width:13px;height:13px;accent-color:#31b36b;margin:0}
.step-panel[data-step="2"] .choice>span{display:inline;color:inherit;font-weight:400}
.step-panel[data-step="2"] .license-choice{min-height:22px;align-items:center}
.step-panel[data-step="2"] .license-choice>span{display:inline}
.form-actions #continueButton{border-radius:28px}
.form-actions:has(#continueButton:not([hidden])):has(~ .secure-note){}
/* Botao ocupa a largura total quando so ha a acao Continuar na etapa de perguntas. */
.form-view:has(.step-panel[data-step="2"]:not([hidden])) .form-actions #continueButton{flex:1;width:100%;background:#86cfa2;border-radius:30px;min-height:38px;padding:8px 18px}
.form-view:has(.step-panel[data-step="2"]:not([hidden])) .form-actions #continueButton:hover{background:#56b97d}
.form-view:has(.step-panel[data-step="2"]:not([hidden])) .form-actions{flex-wrap:wrap}
.form-view:has(.step-panel[data-step="2"]:not([hidden])) .form-actions #backButton{flex:0 0 auto}

/* ETAPA 1 — IDENTIFICAÇÃO */

.step-panel[data-step="1"] {
  background: #ffffff;
  border-radius: 24px;
  padding: 48px 40px;
}

.step-panel[data-step="1"] label {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #202938;
  margin-bottom: 14px;
}

.step-panel[data-step="1"] #cpf {
  width: 100%;
  min-height: 64px;
  padding: 16px 20px;
  border: 1px solid #dfe3e9;
  border-radius: 14px;
  background: #fff;
  color: #202938;
  font-size: 22px;
  box-sizing: border-box;
}

.step-panel[data-step="1"] #cpf:focus {
  border-color: #268744;
  outline: 3px solid rgba(38, 135, 68, 0.12);
}

/* BOTÃO CONTINUAR */
#continueButton {
  background: #268744 !important;
  color: #ffffff !important;
  border: none;
  border-radius: 999px;
  min-height: 60px;
  width: 100%;
  font-size: 20px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s ease;
}

#continueButton:hover:not(:disabled) {
  background: #1e7038 !important;
}

#continueButton:disabled {
  opacity: 0.65;
  cursor: wait;
}

@media (max-width: 600px) {
  .step-panel[data-step="1"] {
    padding: 28px 20px;
  }

  .step-panel[data-step="1"] #cpf {
    font-size: 18px;
  }
}
.banner-licenca {
    width: 100%;
    max-width: 100%;
    margin: 0 0 24px 0;
    box-sizing: border-box;
}

.banner-licenca img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    object-fit: contain;
}

@media (max-width: 768px) {
    .banner-licenca {
        margin-bottom: 16px;
    }
}
.form-heading {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
}

.form-heading .banner-licenca {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
}

.form-heading .banner-licenca img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    transform: none !important;
    object-fit: contain !important;
    border-radius: 12px;
}
/* Banner: contido no cartao branco do formulario */
#formView.form-view { min-width:0; overflow:hidden; }
#formView .form-heading { width:100%; min-width:0; max-width:100%; margin:0 0 26px; }
#formView .form-heading .banner-licenca { display:block; width:100%; max-width:100%; min-width:0; margin:0 0 20px; overflow:hidden; }
#formView .form-heading .banner-licenca img { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; border-radius:12px; }
