:root{--preto:#080B12;--navy:#0D1F3F;--azul:#2B5AA0;--gold:#C8A24A;--goldl:#E6CD8C;--off:#F4F2EA;--ink:#1A2230;--ink2:#4A5261;--mute:#8A8578;--line:#DDD6C4;--field:#FFFFFF;--nav2:#12294F;--logo:url(/assets/logo.png)}
*{box-sizing:border-box;margin:0;padding:0}
html{color-scheme:light}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--navy);background-image:linear-gradient(165deg,#0B1A33 0%,#0D1F3F 55%,#080B12 100%);min-height:100vh;padding:28px 16px 48px;line-height:1.5;-webkit-font-smoothing:antialiased}
.wrap{max-width:640px;margin:0 auto}
.card{background:var(--off);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.head{background:var(--navy);color:var(--off);padding:40px 34px 32px;text-align:center;position:relative;border-bottom:1px solid rgba(200,162,74,.35)}
.head::after{content:"";position:absolute;left:34px;right:34px;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.brasao{width:58px;height:54px;margin:0 auto 18px;background-image:var(--logo);background-size:58px auto;background-position:center top;background-repeat:no-repeat}
.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:12px}
.head h1{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-weight:400;font-size:28px;line-height:1.2;text-wrap:balance}
.head p{margin-top:14px;font-size:14px;line-height:1.6;color:#C6CFDF;max-width:46ch;margin-left:auto;margin-right:auto}
.head .who{margin-top:18px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--goldl)}
.body{padding:8px 34px 34px}
.intro{font-size:14px;line-height:1.65;color:var(--ink2);padding:24px 0 8px;border-bottom:1px solid var(--line)}
.intro b{color:var(--navy)}
fieldset{border:0;padding:26px 0 8px;border-bottom:1px solid var(--line)}
fieldset:last-of-type{border-bottom:0}
legend{display:block;width:100%;padding:0 0 4px}
legend .k{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:700}
legend h2{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:21px;color:var(--navy);margin-top:6px;line-height:1.25}
legend p{font-size:13px;color:var(--ink2);margin-top:6px;line-height:1.55}
label.f{display:block;font-size:13px;font-weight:700;color:var(--navy);margin:18px 0 7px;line-height:1.4}
label.f small{font-weight:400;color:var(--mute);margin-left:4px}
input[type=text],input[type=tel],input[type=email],input[type=date],input[type=number],textarea,select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:15px;color:var(--ink);background:var(--field);resize:vertical;-webkit-appearance:none;appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--azul) 50%),linear-gradient(135deg,var(--azul) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:38px}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(43,90,160,.14)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 14px}
@media(max-width:480px){.row,.row3{grid-template-columns:1fr}.body{padding:8px 20px 26px}.head{padding:32px 22px 26px}}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.chips label{position:relative;cursor:pointer}
.chips input{position:absolute;opacity:0;width:0;height:0}
.chips span{display:inline-block;padding:8px 13px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;color:var(--ink2);background:var(--field);transition:background .15s,color .15s,border-color .15s;user-select:none}
.chips input:checked+span{background:var(--navy);color:var(--off);border-color:var(--navy)}
.chips input:focus-visible+span{box-shadow:0 0 0 3px rgba(43,90,160,.25)}
.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:4px}
.scale label{position:relative;cursor:pointer}
.scale input{position:absolute;opacity:0;width:0;height:0}
.scale span{display:block;text-align:center;padding:12px 0;border:1px solid var(--line);border-radius:10px;background:var(--field);font-size:15px;font-variant-numeric:tabular-nums;color:var(--ink2)}
.scale input:checked+span{background:var(--navy);color:var(--goldl);border-color:var(--navy);font-weight:700}
.scale input:focus-visible+span{box-shadow:0 0 0 3px rgba(43,90,160,.25)}
.scale-ends{display:flex;justify-content:space-between;font-size:11px;color:var(--mute);margin-top:6px;letter-spacing:.04em}
.agree{display:flex;gap:11px;align-items:flex-start;margin-top:14px;font-size:13px;color:var(--ink2);line-height:1.5;cursor:pointer}
.agree input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--navy)}
.hint{font-size:12px;color:var(--mute);margin-top:6px;line-height:1.5}
.actions{margin-top:26px;display:grid;gap:10px}
button{width:100%;padding:16px;border:0;border-radius:12px;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.02em;transition:background .2s,transform .05s}
button.primary{background:var(--gold);color:var(--navy)}
button.primary:hover{background:var(--goldl)}
button.ghost{background:transparent;color:var(--navy);border:1px solid var(--line)}
button.ghost:hover{border-color:var(--azul)}
button:active{transform:translateY(1px)}
button:focus-visible{outline:3px solid rgba(43,90,160,.35);outline-offset:2px}
.fine{margin-top:18px;font-size:11px;line-height:1.6;color:var(--mute);text-align:center}
.done{display:none;text-align:center;padding:36px 6px 20px}
.done .check{width:64px;height:64px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:28px;margin:0 auto 18px}
.done h2{font-family:"Playfair Display",Georgia,serif;font-weight:400;color:var(--navy);font-size:24px;margin-bottom:10px}
.done p{font-size:14px;line-height:1.65;color:var(--ink2);max-width:44ch;margin:0 auto}
.done textarea{margin-top:18px;font-size:12.5px;min-height:180px;text-align:left}
.review{margin-top:30px;padding:26px 22px;border-top:1px solid var(--line);text-align:center}
.review .k{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:700}
.review h3{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:21px;color:var(--navy);margin-top:8px}
.review p{font-size:13.5px;line-height:1.6;color:var(--ink2);max-width:42ch;margin:10px auto 0}
.btn-review{display:inline-block;margin-top:16px;padding:14px 26px;border-radius:12px;background:var(--navy);color:var(--goldl);text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.02em}
.btn-review:hover{background:var(--nav2)}
.btn-review:focus-visible{outline:3px solid rgba(43,90,160,.35);outline-offset:2px}
.foot{background:var(--navy);color:#8FA0BD;text-align:center;padding:18px;font-size:11px;letter-spacing:.04em;line-height:1.7}
.foot b{color:var(--off);font-weight:400}
.foot .crm{color:var(--goldl);letter-spacing:.14em;text-transform:uppercase}
.err{display:none;margin-top:12px;padding:12px 14px;border-radius:10px;background:#FBEFE6;color:#7A3A12;font-size:13px;line-height:1.5}
.saved{font-size:11px;color:var(--mute);text-align:center;margin-top:10px;min-height:14px}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.alt{margin-top:22px;text-align:left}
.alt summary{cursor:pointer;font-size:13px;color:var(--azul);text-align:center;list-style:none}
.alt summary::-webkit-details-marker{display:none}
.alt textarea{width:100%;margin-top:12px;font-size:12.5px;min-height:160px;padding:12px;border:1px solid var(--line);border-radius:10px;font-family:inherit}
#how{font-size:14px;line-height:1.65;color:var(--ink2);max-width:44ch;margin:0 auto}