@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@500;600;700;800&display=swap');
:root{--cor:#382706;--cor-texto-botao:#FFFFFF;--fundo:#F7F4EC;--fundo-2:#EEE7DB;--texto:#382706;--texto-2:#66594B;--borda:#D9CFC1;--cartao:#FFFCF7;--fonte-titulo:'Manrope',sans-serif;--fonte-texto:'Inter',sans-serif;--raio:8px;--raio-grande:16px;--bronze:#AA8C5B}


/* Estrutura original da landing page. */

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fundo);color:var(--texto);font:16px/1.65 var(--fonte-texto);overflow-x:hidden}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--fonte-titulo);line-height:1.16;letter-spacing:-.045em}
h1{font-size:clamp(36px,5.3vw,75px);font-weight:800;max-width:1050px;margin:0 auto 23px;text-transform:uppercase}
h2{font-size:clamp(29px,3.7vw,52px);font-weight:800}
h3{font-size:20px;font-weight:800}
.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
.header{background:var(--cor);min-height:116px;display:flex;align-items:center}
.headinner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{width:170px;height:91px;object-fit:contain;object-position:left center}
.nav{font:600 12px var(--fonte-titulo);color:#fff;text-decoration:none;border:1px solid #988870;padding:13px 19px}
.hero{text-align:center;padding:74px 0 0}
.eyebrow{font:700 11px var(--fonte-titulo);letter-spacing:.2em;text-transform:uppercase;color:#836e51;margin-bottom:22px}
.sub{font-size:16px;line-height:1.8;color:var(--texto-2);max-width:670px;margin:0 auto 25px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;background:var(--cor);color:#fff;text-decoration:none;border:1px solid var(--cor);font:700 12px var(--fonte-titulo);padding:13px 26px;cursor:pointer;transition:transform .2s}
.button:hover{transform:translateY(-2px)}
.hero-art{width:min(1050px,100%);display:block;margin:34px auto 0;mix-blend-mode:multiply;object-fit:contain}
.section{padding:100px 0}
.section.alt{background:var(--fundo-2)}
.section-intro{max-width:820px;margin-bottom:42px}
.section-intro p{color:var(--texto-2)}
.columns{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.item{border-top:1px solid #B9AB98;padding:23px 6px 0}
.item .num{font:700 12px var(--fonte-titulo);color:#90754d}
.item p{color:var(--texto-2);margin-top:14px}
.statement{font:600 clamp(24px,3.1vw,39px)/1.4 var(--fonte-titulo);letter-spacing:-.035em;max-width:900px;margin:48px auto;text-align:center}
.statement em{font-style:normal;color:#A58B67}
.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.step{background:var(--cartao);padding:27px;border:1px solid var(--borda)}
.step p{color:var(--texto-2);margin-bottom:0}
.step .num{font:700 12px var(--fonte-titulo);color:#947650;letter-spacing:.12em}
.muted{color:var(--texto-2)}
.note{padding:25px 30px;border-left:3px solid var(--bronze);background:var(--cartao)}
.cta{background:var(--cor);color:#fff;padding:90px 0}
.cta h2{max-width:850px}
.cta p{color:#E5DCCF}
.form{background:var(--fundo);color:var(--texto);padding:34px;max-width:730px;margin-top:32px}
.form h3{margin-bottom:8px}
.form p{font-size:14px;color:var(--texto-2)}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
label{font-size:12px;font-weight:600}
input,select,textarea{width:100%;border:1px solid #CBBFB0;border-radius:0;padding:13px;background:#fff;font:16px var(--fonte-texto);color:var(--texto)}
textarea{min-height:100px;resize:vertical}
.check{display:flex;align-items:flex-start;gap:10px;margin:22px 0}
.check input{width:18px;height:18px;flex-shrink:0}
.check label{font-size:13px;font-weight:400}
.form button{width:100%}
.form small{display:block;color:var(--texto-2);font-size:12px;margin-top:12px}
.footer{background:#291E12;color:#DDD2C2;padding:30px 0;font-size:12px}
.footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #B58D50;outline-offset:3px}
@media(max-width:720px){.header{min-height:88px}
.logo{width:130px;height:72px}
.nav{font-size:10px;padding:10px}
.hero{padding:52px 0 0}
h1{font-size:clamp(30px,9vw,49px)}
.hero-art{margin-top:26px}
.section{padding:65px 0}
.columns,.steps,.form-grid{grid-template-columns:1fr}
.form{padding:24px 18px}
.field.full{grid-column:auto}
.statement{margin:34px auto}
}



/* Ajustes de acessibilidade e candidatura por etapas — rodada 2. */
:root { --texto-destaque: #756044; --borda-controle: #8A7966; }

.eyebrow, .item .num, .step .num, .statement em { color: var(--texto-destaque); }

.hero-art { height: auto; aspect-ratio: 3 / 2; }

.nav { background: transparent; cursor: pointer; }

.button { gap: 12px; border-radius: 3px; }

.button:disabled, .nav:disabled { cursor: not-allowed; opacity: .65; transform: none; }

.arrow { display: inline-block; width: 8px; height: 8px; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; flex-shrink: 0; transform: rotate(45deg); }

.button-light { background: var(--fundo); color: var(--cor); border-color: var(--fundo); margin-top: 14px; }

.cta .cta-hint { font-size: 14px; margin: 16px 0 0; }

input, select, textarea { border-color: var(--borda-controle); border-radius: 6px; }

input:focus-visible, select:focus-visible, textarea:focus-visible { outline-color: var(--cor); }

[hidden] { display: none !important; }

body.quiz-open { overflow: hidden; }

dialog { width: min(620px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 0; border: 1px solid var(--borda); border-radius: 18px; background: var(--fundo); color: var(--texto); box-shadow: 0 24px 100px #0005; overflow-y: auto; overscroll-behavior: contain; }

dialog::backdrop { background: rgb(35 24 9 / 70%); }

.quiz-shell { padding: 28px 34px 24px; }

.quiz-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }

.quiz-top .eyebrow { margin: 0; font-size: 10px; letter-spacing: .12em; }

.close-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; background: transparent; border: 0; font: 500 14px var(--fonte-texto); color: var(--texto); padding: 6px; cursor: pointer; }

.close-button span { font-size: 26px; line-height: 1; }

.quiz-description { color: var(--texto-2); font-size: 14px; margin: 16px 0 24px; }

.progress-meta { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--texto-2); margin-bottom: 8px; }

progress { width: 100%; height: 5px; border: 0; border-radius: 10px; display: block; background: var(--borda); color: var(--cor); accent-color: var(--cor); }

progress::-webkit-progress-bar { background: var(--borda); border-radius: 10px; }

progress::-webkit-progress-value { background: var(--cor); border-radius: 10px; }

progress::-moz-progress-bar { background: var(--cor); border-radius: 10px; }

fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }

#quizTitle, #handoffTitle { font-size: clamp(25px, 4vw, 32px); line-height: 1.2; letter-spacing: -.035em; margin: 28px 0 12px; }

#stepHelp { font-size: 15px; margin-bottom: 22px; }

#questionArea label { display: block; font-size: 14px; margin-bottom: 8px; }

#questionArea input, #questionArea select, #questionArea textarea { min-height: 54px; padding: 14px; }

#questionArea textarea { min-height: 132px; resize: vertical; max-width: 100%; }

#questionArea input[aria-invalid="true"], #questionArea select[aria-invalid="true"], #questionArea textarea[aria-invalid="true"] { border: 2px solid #8B2923; }

.field-error { color: #8B2923; font-size: 14px; margin: 10px 0 0; }

.field-error:empty { display: none; }

.quiz-actions { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 30px; }

.quiz-actions .button { min-width: 156px; min-height: 48px; font-size: 14px; }

.back-button { min-height: 44px; border: 0; background: transparent; color: var(--texto); font: 600 14px var(--fonte-texto); text-decoration: underline; text-underline-offset: 4px; padding: 8px 4px; cursor: pointer; }

.back-button:disabled { visibility: hidden; }

.quiz-footnote { font-size: 12px; color: var(--texto-2); line-height: 1.6; margin: 26px 0 0; border-top: 1px solid var(--borda); padding-top: 18px; }

#reviewAnswers { margin: 20px 0; }

.review-row { border-bottom: 1px solid var(--borda); padding: 10px 0; }

.review-row dt { font-size: 12px; color: var(--texto-2); }

.review-row dd { margin: 3px 0 0; font-size: 15px; overflow-wrap: anywhere; white-space: pre-wrap; }

.check input { margin: 4px 0 0; accent-color: var(--cor); }

.check label { line-height: 1.6; }

.privacy-notice { font-size: 13px; color: var(--texto-2); }

.privacy-notice a { color: var(--cor); text-underline-offset: 3px; }

.ready-mark { display: inline-flex; align-items: center; justify-content: center; margin-top: 24px; width: 44px; height: 44px; border: 1px solid var(--bronze); border-radius: 50%; font-size: 24px; }

#handoffArea p { font-size: 15px; }

#whatsappLink { margin: 10px 0 24px; font-size: 14px; width: 100%; }

#preparedMessage { font-size: 14px; margin-top: 8px; min-height: 140px; max-width: 100%; }

.recovery-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; margin-top: 10px; }

#handoffStatus { color: var(--texto-2); }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

@media (max-width: 720px) {
  .quiz-shell { padding: 18px 22px 20px; }

  .quiz-actions { gap: 12px; }

  .quiz-actions .button { min-width: 145px; padding-inline: 18px; }

}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  *, *::before, *::after { transition: none !important; animation: none !important; }

}


/* Política de privacidade: leitura e navegação sem scripts. */
.privacy-document { width: min(840px, calc(100% - 40px)); margin: 64px auto 80px; overflow-wrap: anywhere; }
.privacy-document h1 { font-size: clamp(34px, 6vw, 52px); text-align: left; text-transform: none; margin: 0 0 20px; }
.privacy-document h2 { font-size: clamp(23px, 4vw, 30px); line-height: 1.3; margin: 40px 0 16px; }
.privacy-document p, .privacy-document li { font-size: 16px; line-height: 1.8; }
.privacy-document ul { padding-left: 24px; }
.privacy-document li { margin-bottom: 8px; }
.privacy-document a:not(.button), .quiz-description a { color: var(--cor); text-underline-offset: 3px; }
.privacy-document .note { padding: 24px; margin: 28px 0; }
.privacy-document .note p { margin: 8px 0 0; }
.privacy-return { margin-top: 40px; }
.footer a { color: inherit; text-underline-offset: 3px; }
.skip-link { position: absolute; left: 12px; top: -100px; z-index: 10; background: var(--fundo); color: var(--cor); padding: 12px; }
.skip-link:focus { top: 12px; }
