:root{color-scheme:dark;--bg:#051c2a;--surface:#0b2839;--line:#ffffff1c;--muted:#adbfca;--gold:#f2c94c;--text:#f7f9fb;--error:#ffb4ae;font-family:'DM Sans',sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 5%,#00446766,transparent 55%),var(--bg);color:var(--text);min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button,a,input,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button{border:0}button.primary{background:var(--gold);color:#10202b;padding:18px 26px;border-radius:7px;font-size:.875rem;font-weight:700;letter-spacing:.04em;min-height:56px;transition:background .2s,transform .2s}button.primary:hover:not(:disabled){background:#ffdc71;transform:translateY(-1px)}button.secondary{background:transparent;border:1px solid #ffffff35;color:var(--text);border-radius:7px;padding:15px 22px;min-height:52px}button.secondary:hover{background:#ffffff08}.text-button{background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:5px;padding:12px}.header{max-width:1328px;margin:auto;padding:34px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}.logo{width:224px;height:auto}.header-title{font-size:.75rem;letter-spacing:.1em;color:var(--muted);text-align:right}.header-title b{color:var(--gold);margin-left:12px;font-weight:500}main:focus{outline:none}.intro{max-width:1328px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;padding:64px 48px 52px;gap:64px;align-items:center}.eyebrow{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;display:flex;gap:12px;align-items:center;margin:0 0 24px}.eyebrow:before{content:'';width:28px;height:1px;background:var(--gold)}h1,h2{font-family:Poppins,sans-serif;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(2rem,4vw,3.7rem);line-height:1.18;margin:0 0 24px}h1 .year{display:block;color:var(--gold);font-size:1.35em;line-height:1.1;margin-top:10px}h2{font-size:1.35rem;line-height:1.45}.intro h2{max-width:440px;margin:28px 0 16px}.body-copy{color:var(--muted);line-height:1.8;max-width:535px;margin:0 0 12px}.intro-action{margin-top:28px}.time{font-size:.875rem;color:var(--muted);margin:0 0 17px;display:flex;align-items:center;gap:8px}.clock-icon{width:15px;height:15px;border:1px solid currentColor;border-radius:50%;display:inline-block;position:relative}.clock-icon:after{content:'';position:absolute;left:6px;top:3px;width:3px;height:5px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.intro-photo{position:relative;align-self:stretch;min-height:570px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#004467}.intro-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 38%}.intro-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#031d2cee)}.photo-caption{position:absolute;z-index:1;bottom:28px;left:28px;right:28px;padding-top:20px;border-top:1px solid #ffffff55;display:flex;align-items:center;justify-content:space-between;gap:20px}.photo-caption span{font-size:.75rem;letter-spacing:.12em;line-height:1.6}.photo-caption b{font-family:Poppins,sans-serif;font-weight:500;font-size:2rem;color:var(--gold)}.journey{max-width:1232px;margin:0 auto 30px;padding:25px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.journey div{font-size:.875rem;color:var(--muted)}.journey span{color:var(--gold);font-size:.75rem;display:block;margin-bottom:8px}.progress-wrap{max-width:800px;padding:26px 0 0;margin:auto}.progress-label{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.12em;margin-bottom:12px;color:var(--muted)}#percent{color:var(--gold)}.progress{height:3px;background:#ffffff18;border-radius:3px;overflow:hidden}.progress>span{display:block;height:100%;width:0;background:var(--gold);transition:width .3s ease}.questionnaire{max-width:800px;margin:44px auto 64px;animation:appear .25s ease}.section-heading{margin-bottom:40px}.section-heading h1{font-size:2.5rem;margin-bottom:15px}.section-heading p{color:var(--muted);line-height:1.7;margin:0}.required-note{font-size:.75rem;color:var(--muted);margin:20px 0 0!important}.question{border:0;border-top:1px solid var(--line);padding:30px 0;margin:0;min-width:0}.question>legend{float:left;width:100%;padding:0;margin:0 0 16px;font-size:1.08rem;line-height:1.6;font-weight:500}.question>legend+.question-body{clear:both}.question-number{color:var(--gold);font-size:.75rem;letter-spacing:.04em;margin-right:10px;vertical-align:2px}.help{color:var(--muted);font-size:.875rem;line-height:1.6;margin:0 0 15px}input[type=text],input[type=number],textarea{width:100%;border:1px solid #ffffff29;border-radius:7px;background:#092536;color:var(--text);padding:16px 18px;min-height:56px;transition:border .2s,background .2s;font-size:1rem}input:hover,textarea:hover{border-color:#ffffff55}input:focus,textarea:focus{background:#0d3043;border-color:var(--gold)}input::placeholder,textarea::placeholder{color:#8ba3b2;opacity:1}input.filled,textarea.filled{border-color:#638293}textarea{min-height:150px;resize:vertical;line-height:1.7}textarea.large{min-height:210px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;min-width:0}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice span{display:flex;align-items:center;gap:12px;min-height:62px;border:1px solid #ffffff25;border-radius:7px;padding:15px 16px;line-height:1.5;color:#c9d5de;transition:all .18s;background:#092536}.choice span:before{content:'';width:16px;height:16px;flex:none;border:1px solid #718b9b;border-radius:50%}.choice.check span:before{border-radius:4px}.choice input:checked+span{border-color:var(--gold);background:#f2c94c0d;color:#fff}.choice input:checked+span:before{border:4px solid var(--gold);background:#102b39}.choice input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}.choice:hover span{border-color:#ffffff65}.scale{grid-template-columns:repeat(11,1fr);gap:6px}.scale .choice span{padding:12px 0;justify-content:center;min-height:50px}.scale .choice span:before{display:none}.scale-help{display:flex;justify-content:space-between;gap:24px;margin-top:14px;font-size:.75rem;color:var(--muted);line-height:1.5}.scale-help span:last-child{text-align:right}.other{margin-top:18px}.other label{display:block;font-size:.875rem;margin-bottom:9px}.error{color:var(--error);font-size:.875rem;margin:12px 0 0}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error)}.invalid .choices{border-left:2px solid var(--error);padding-left:10px}.priorities{display:grid;gap:15px;padding:24px;border:1px solid #f2c94c55;border-radius:10px;background:linear-gradient(130deg,#00446744,transparent)}.priority{display:grid;grid-template-columns:40px 1fr;gap:15px;align-items:center}.priority>b{color:var(--gold);font-family:Poppins,sans-serif;font-size:1.6rem;font-weight:500}.priority label{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px;color:var(--muted)}.navigation{border-top:1px solid var(--line);padding-top:26px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px}.save-note{font-size:.75rem;color:var(--muted);margin:20px 0;text-align:right}.privacy{color:var(--muted);font-size:.875rem;line-height:1.65;margin:15px 0 24px;max-width:650px}.send-error{padding:18px;border:1px solid #ffb4ae66;border-radius:8px;color:var(--error);line-height:1.65;margin:18px 0}.transition,.success{max-width:800px;margin:80px auto 110px;animation:appear .3s ease}.transition h1,.success h1{font-size:3rem;max-width:680px}.transition .body-copy,.success .body-copy{max-width:660px}.transition .navigation{margin-top:35px}.route-marker{width:70px;height:70px;border:1px solid #f2c94c66;border-radius:50%;display:grid;place-items:center;font-size:1.8rem;color:var(--gold);margin-bottom:30px}.signature{margin-top:36px;color:var(--gold);font-weight:500}footer{max-width:1232px;margin:auto;padding:25px 0;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:.75rem;color:#819bab}dialog{background:#0b2839;color:var(--text);border:1px solid #526673;border-radius:12px;padding:30px;max-width:min(550px,calc(100% - 32px))}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}dialog p{line-height:1.7;color:var(--muted)}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.storage-warning{color:var(--error);max-width:800px;margin:20px auto;padding:16px;border:1px solid var(--error);border-radius:8px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.skip{position:absolute;top:-100px;left:16px;z-index:10;padding:12px;background:var(--gold);color:#000}.skip:focus{top:16px}[hidden]{display:none!important}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1440px){.intro{padding-top:80px;padding-bottom:65px}.intro-photo{min-height:620px}}@media(max-width:1100px){.intro{gap:36px;padding:45px 32px}.header{padding:28px 32px}.journey,footer{margin-left:32px;margin-right:32px}.questionnaire,.progress-wrap,.transition,.success,.storage-warning{margin-left:32px;margin-right:32px}.intro-photo{min-height:540px}}@media(max-width:700px){.header{padding:23px 22px;gap:20px}.logo{width:175px}.header-title{max-width:105px;font-size:.75rem;line-height:1.6;letter-spacing:.06em}.header-title b{margin-left:0;display:block}.intro{display:flex;flex-direction:column;gap:35px;padding:38px 22px}.intro h1{font-size:2.35rem}.intro h2{font-size:1.2rem}.intro-photo{width:100%;height:340px;min-height:0}.intro-photo img{object-position:50% 35%}.intro-action .primary{width:100%;font-size:.8rem;padding:18px 12px}.intro .text-button{display:block;margin:auto}.journey{margin:0 22px 16px;grid-template-columns:1fr 1fr;gap:22px}.journey div:last-child{grid-column:span 2}.questionnaire,.progress-wrap,.transition,.success,.storage-warning{margin-left:22px;margin-right:22px}.questionnaire{margin-top:32px}.section-heading h1{font-size:1.9rem}.section-heading{margin-bottom:25px}.question{padding:25px 0}.question>legend{font-size:1rem}.choices{grid-template-columns:1fr}.scale{grid-template-columns:repeat(6,1fr)}.scale-help{font-size:.75rem}.priorities{padding:18px 14px}.priority{grid-template-columns:28px 1fr;gap:10px}.priority>b{font-size:1.3rem}.navigation{align-items:stretch}.navigation .primary{flex:1;padding:16px 12px;font-size:.75rem}.navigation .secondary{font-size:.75rem;padding:14px}.transition,.success{margin-top:52px;margin-bottom:80px}.transition h1,.success h1{font-size:2.2rem}footer{margin:0 22px;font-size:.75rem;align-items:center}footer span:last-child{max-width:130px;text-align:right}.photo-caption{bottom:22px;left:22px;right:22px}.save-note{text-align:left}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Reflow com ampliação de texto e telas estreitas. */
body{overflow-wrap:anywhere}.intro>div{min-width:0;max-width:100%}input,textarea{min-width:0}.header{flex-wrap:wrap}.photo-caption{flex-wrap:wrap}.intro-photo img{overflow-wrap:normal}@media(max-width:700px){.intro-photo img{object-position:50% 20%}}
/* Capa editorial sem fotografia. */
.intro{display:block;max-width:1000px;text-align:center;padding-top:64px;padding-bottom:56px}.intro .eyebrow{justify-content:center}.intro h2{max-width:660px;margin:28px auto 16px}.intro .body-copy{max-width:680px;margin:0 auto 12px}.intro .time{justify-content:center}.intro .text-button{display:block;margin:8px auto 0}@media(max-width:700px){.intro{padding:38px 22px}.intro h1{font-size:clamp(1.9rem,8.5vw,2.35rem)}}
