:root{--dark:#102b2b;--dark2:#193b39;--ink:#183130;--muted:#60716d;--gold:#9f804b;--gold-light:#c3a676;--paper:#fbfaf6;--white:#fff;--line:#dedbd2;--error:#a2352a}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:#eeece6;color:var(--ink);font:400 16px/1.6 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.skip-link{position:absolute;top:-100px;left:20px;z-index:5;background:var(--white);padding:10px}.skip-link:focus{top:12px}
.layout{width:min(1190px,calc(100% - 36px));min-height:min(760px,calc(100svh - 80px));margin:28px auto 12px;display:grid;grid-template-columns:minmax(310px,.83fr) minmax(0,1.17fr);background:var(--paper);box-shadow:0 28px 85px rgba(16,43,43,.1);border-radius:4px;overflow:hidden}.brand-panel{display:flex;flex-direction:column;padding:44px 42px 34px;background:var(--dark);color:#f8f4e9;position:relative;overflow:hidden}.brand-panel:before{content:"";position:absolute;width:370px;height:370px;border:1px solid rgba(195,166,118,.2);border-radius:50%;right:-230px;top:-210px;pointer-events:none}.brand{display:flex;align-items:center;gap:15px;position:relative}.monogram{width:45px;height:45px;border:1px solid var(--gold-light);display:grid;place-items:center;color:var(--gold-light);font:italic 21px Georgia,serif;letter-spacing:-.12em;padding-right:5px}.brand-name{font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.4}.brand-name small{display:block;font-size:8px;letter-spacing:.26em;font-weight:400;margin-top:4px;color:#cbb99d}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.23em;color:var(--gold);text-transform:uppercase}.brand-message{margin-top:auto;padding-top:60px}.brand-message .eyebrow{color:var(--gold-light)}.brand-message>p:nth-child(2){font:400 clamp(31px,3.3vw,48px)/1.14 Georgia,'Times New Roman',serif;letter-spacing:-.045em;margin:21px 0}.brand-message em{color:var(--gold-light);font-style:normal}.brand-message>span{display:block;max-width:335px;color:#c9d1cb;font-size:14px;line-height:1.75}.chapters{list-style:none;padding:0;margin:55px 0 35px}.chapters li{display:flex;align-items:center;gap:15px;padding:15px 0;border-top:1px solid rgba(255,255,255,.14);opacity:.55}.chapters li[aria-current=step],.chapters li.complete{opacity:1}.chapter-number{display:grid;place-items:center;width:35px;height:35px;border:1px solid #889c92;border-radius:50%;flex:none;font-size:11px;color:#e2d2b4}.chapters li[aria-current=step] .chapter-number{color:var(--dark);background:var(--gold-light);border-color:var(--gold-light)}.chapters strong{display:block;font-size:14px}.chapters small{display:block;font-size:11px;color:#c9d1cb}.aside-note{margin:0;color:#b7c4bb;font-size:12px}.form-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,5vw,68px);min-width:0}.welcome h1,.success h1{font:400 clamp(37px,4.1vw,61px)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.05em;margin:22px 0;color:var(--dark)}.welcome h1 em{font-style:normal;color:var(--gold)}.welcome>p:not(.eyebrow),.success>p:not(.eyebrow){font-size:16px;max-width:510px;color:#4f625c;line-height:1.85}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 23px;min-height:54px;background:var(--dark);color:var(--white);border:1px solid var(--dark);font-weight:700;font-size:14px;border-radius:3px;transition:background .2s}.primary:hover:not(:disabled){background:var(--dark2)}.welcome .primary{margin-top:22px;min-width:260px}.small-note{color:#7a8780;font-size:12px;margin:15px 0 0}
#diagnostic-form{min-height:560px;display:flex;flex-direction:column}.progress-label{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px;margin-bottom:12px}.progress-label span:first-child{font-weight:700;color:var(--gold)}.progress{height:3px;background:#e5e2d9}.progress>span{height:100%;display:block;width:0;background:var(--gold);transition:width .25s}.step-area{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c7beb0 transparent;padding:34px 3px 8px}.step-area h2{font:400 clamp(29px,3vw,42px)/1.17 Georgia,'Times New Roman',serif;letter-spacing:-.04em;margin:0;color:var(--dark);outline:none}.hint{color:var(--muted);font-size:14px;margin:14px 0 25px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:0;margin:0;padding:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.option{position:relative;display:flex;align-items:center;min-height:61px;padding:14px 40px 14px 15px;background:var(--white);border:1px solid var(--line);font-size:14px;font-weight:600;line-height:1.35;cursor:pointer}.option input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.option:has(input:checked){border-color:var(--gold);background:#f7f2e9;box-shadow:inset 0 0 0 1px var(--gold)}.option:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:2px}.option:after{content:"";position:absolute;right:15px;top:50%;transform:translateY(-50%);width:13px;height:13px;border:1px solid #a9aaa2;border-radius:50%}.options.multi .option:after{border-radius:2px}.option:has(input:checked):after{background:var(--gold);border-color:var(--gold);box-shadow:inset 0 0 0 3px #f7f2e9}.field{display:flex;flex-direction:column;gap:7px;max-width:520px}.field label{font-size:14px;font-weight:700}.field input{width:100%;min-height:53px;border:1px solid #c5c9bd;border-radius:3px;padding:12px 14px;background:var(--white);color:var(--ink)}.field input[aria-invalid=true]{border-color:var(--error)}.field small{color:var(--error);font-size:12px}.other-field{margin-top:20px}.recommend{font-size:11px;color:var(--gold);font-weight:700;margin-left:5px}.guidance{font-size:13px;color:var(--muted);margin:10px 0}.consent{display:flex;gap:11px;align-items:flex-start;max-width:520px;margin-top:23px;color:var(--muted);font-size:13px;line-height:1.55;cursor:pointer}.consent input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--dark)}.navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:22px;margin-top:18px}.back{border:0;background:none;color:var(--muted);font-size:14px;padding:13px 0}.nav-note{text-align:right}.error{color:var(--error);background:#f8eae6;border-left:3px solid var(--error);padding:11px 14px;font-size:13px}.status{font-size:13px;color:var(--dark)}.success h1{font-size:clamp(35px,3.8vw,53px)}footer{display:flex;justify-content:space-between;gap:12px;width:min(1190px,calc(100% - 36px));margin:0 auto 22px;color:#697a73;font-size:11px}.noscript{text-align:center;color:var(--error)}
@media(max-width:860px){.layout{grid-template-columns:1fr;min-height:0;margin:16px auto}.brand-panel{padding:20px 28px}.brand-message,.aside-note{display:none}.chapters{margin:20px 0 0;display:flex;gap:12px}.chapters li{flex:1;padding:11px 0 0;gap:7px}.chapters small{display:none}.chapter-number{width:27px;height:27px;font-size:10px}.form-panel{padding:35px 28px;min-height:530px}#diagnostic-form{min-height:520px}}
@media(max-width:520px){.layout,footer{width:calc(100% - 20px)}.brand-panel{padding:18px}.brand-name{font-size:9px}.chapters{gap:5px}.chapters strong{font-size:11px}.chapter-number{width:24px;height:24px}.form-panel{padding:29px 19px;min-height:calc(100svh - 210px)}.welcome h1{font-size:38px}.welcome .primary{width:100%}#diagnostic-form{min-height:calc(100svh - 280px)}.step-area{padding-top:25px}.step-area h2{font-size:29px}.options{grid-template-columns:1fr}.option{min-height:55px}.navigation{gap:8px}.primary{gap:8px;padding:13px 16px}footer{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* A abertura usa a fotografia; as perguntas mantêm o painel sóbrio e legível. */
body{background:#f7f6f1}
.layout{width:min(1320px,calc(100% - 44px));min-height:min(720px,calc(100dvh - 56px));margin:20px auto 12px}
.brand-panel{padding:34px 38px 28px}
.brand-message{margin-top:48px;padding-top:0}
.brand-message>p:nth-child(2){font-size:clamp(31px,3vw,39px);line-height:1.14;margin:17px 0}
.brand-message>span{font-size:13px;line-height:1.65}
.chapters{margin:36px 0 18px}
.chapters li{padding:11px 0}
.aside-note{font-size:11px}
.form-panel{padding:44px clamp(32px,4.5vw,62px)}
.welcome h1{font-size:clamp(38px,3.8vw,53px)}
.success{max-width:600px}
.success h1{font-size:clamp(39px,3.7vw,51px);line-height:1.15}
.success>p:not(.eyebrow){line-height:1.7}
#diagnostic-form{min-height:540px}
.step-area{padding-top:27px}
.step-area h2{font-size:clamp(29px,2.75vw,39px)}
.hint{margin:11px 0 20px}
.navigation{margin-top:12px;padding-top:17px}
.whatsapp-link{margin-top:18px;min-width:270px;text-decoration:none}

body.view-welcome .brand-panel{
  background-color:var(--dark);
  background-image:linear-gradient(90deg,rgba(13,30,28,.9) 0%,rgba(13,30,28,.62) 47%,rgba(13,30,28,.05) 100%),linear-gradient(0deg,rgba(13,30,28,.7),transparent 46%),url('./valquiria-retrato.webp');
  background-size:cover;background-position:center center;
}
body.view-welcome .brand-panel:before{display:none}
body.view-welcome .brand,body.view-welcome .brand-message{position:relative;z-index:1}
body.view-welcome .brand-message{margin-top:auto;padding:0 0 18px}
body.view-welcome .brand-message>p:nth-child(2){max-width:360px;font-size:clamp(32px,3vw,42px);text-shadow:0 1px 10px rgba(0,0,0,.16)}
body.view-welcome .brand-message>span{max-width:300px;color:#f0eee5}
body.view-welcome .chapters,body.view-welcome .aside-note{display:none}
body.view-success .chapters,body.view-success .aside-note{display:none}
body.view-success .brand-message{margin:auto 0}
body.view-success .brand-message>p:nth-child(2){max-width:420px}

@media(max-width:1199px) and (min-width:861px){
  .layout{min-height:min(660px,calc(100dvh - 36px));margin:16px auto 10px}
  .brand-panel{padding:28px 30px 24px}
  .brand-message{margin-top:30px}
  .brand-message>p:nth-child(2){font-size:32px}
  .chapters{margin:27px 0 12px}
  .chapters li{padding:9px 0}
  .form-panel{padding:32px 38px}
  #diagnostic-form{min-height:510px}
  .step-area{padding-top:20px}
  .option{min-height:55px;padding-block:10px}
}
@media(max-height:750px) and (min-width:861px){
  .layout{min-height:0}
  .brand-panel{padding-block:24px}
  .brand-message{margin-top:28px}
  .chapters{margin:23px 0 8px}
  .chapters li{padding:8px 0}
  .aside-note{display:none}
  .form-panel{padding-block:28px}
  #diagnostic-form{min-height:490px}
}
@media(max-width:860px){
  .layout{width:calc(100% - 26px);min-height:0;margin:13px auto 9px}
  .brand-panel{padding:19px 26px}
  .form-panel{padding:32px 30px;min-height:0}
  #diagnostic-form{min-height:560px}
  body.view-welcome .brand-panel{min-height:340px;background-position:center 34%;background-image:linear-gradient(180deg,rgba(13,30,28,.73),rgba(13,30,28,0) 48%),url('./valquiria-retrato.webp')}
  body.view-welcome .brand-message{display:none}
  body.view-success .brand-panel{min-height:105px}
  body.view-success .brand-message{display:none}
  body.view-question .chapters{margin:16px 0 0}
  .success{padding-block:35px}
}
@media(max-width:520px){
  .layout,footer{width:calc(100% - 20px)}
  .brand-panel{padding:17px 18px}
  .form-panel{padding:28px 20px}
  body.view-welcome .brand-panel{min-height:265px;background-position:center 34%}
  .welcome h1{font-size:clamp(35px,9vw,42px)}
  .success h1{font-size:clamp(34px,8vw,43px)}
  .success>p:not(.eyebrow){font-size:15px}
  .whatsapp-link{width:100%;min-width:0}
  #diagnostic-form{min-height:max(510px,calc(100dvh - 240px))}
  .step-area{padding-top:21px}
  .step-area h2{font-size:29px}
  .option{min-height:53px}
  .navigation{margin-top:10px;padding-top:14px}
  body.view-question .chapters strong{font-size:11px}
}

/* A abertura ocupa e centraliza a área disponível em notebooks e desktops. */
@media(min-width:861px){
  body.view-welcome{min-height:100dvh;display:flex;flex-direction:column;justify-content:center}
  body.view-welcome .layout{min-height:min(800px,calc(100dvh - 80px));margin:0 auto 12px;flex:none}
  body.view-welcome footer{margin:0 auto}
}
@media(min-width:861px) and (max-width:1199px){
  body.view-welcome .layout{min-height:min(750px,calc(100dvh - 70px))}
}
@media(min-width:1200px) and (min-height:900px){
  body.view-welcome .layout{min-height:min(840px,calc(100dvh - 100px))}
}

.cookie-settings{padding:0;border:0;background:none;color:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:3px}
.cookie-banner{position:fixed;z-index:10;left:50%;bottom:18px;transform:translateX(-50%);width:min(790px,calc(100% - 28px));display:flex;align-items:center;gap:24px;padding:20px 22px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 48px rgba(16,43,43,.18);border-radius:4px}
.cookie-banner p{margin:0;flex:1;font-size:13px;line-height:1.55;color:var(--ink)}
.cookie-actions{display:flex;gap:9px;flex:none}
.cookie-choice{min-height:42px;padding:8px 15px;border:1px solid var(--dark);border-radius:3px;background:#fff;color:var(--dark);font-size:13px;font-weight:700}
.cookie-accept{background:var(--dark);color:#fff}
@media(max-width:600px){.cookie-banner{bottom:10px;display:block;padding:17px}.cookie-actions{margin-top:14px}.cookie-choice{flex:1}.cookie-settings{white-space:nowrap}footer{flex-wrap:wrap}}
