/* Visual do protótipo do Guto (2TabEI), compartilhado pelas três telas. */
*{box-sizing:border-box}
body{margin:0;background:#f1f6f8;color:#163c4a;font:16px system-ui,sans-serif}
[hidden]{display:none!important}
a{color:#1b4f63}
header{max-width:1120px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 24px}
.brand{font-size:32px;font-weight:800;letter-spacing:-1.5px;text-decoration:none;color:inherit}
.brand span{color:#719bab}
header small{font-size:12px;color:#647c87;text-align:right}
.hero{max-width:760px;margin:30px auto;text-align:center;padding:0 24px}
.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#668996}
h1{font:500 clamp(32px,5vw,52px)/1.12 Georgia,serif;letter-spacing:-1.5px;margin:20px 0}
h1 em{font-style:normal;color:#7099aa}
.hero p{color:#59727e;line-height:1.7;margin:0 auto;max-width:570px}
main{max-width:1120px;margin:auto;padding:0 24px 56px}
.card{background:#fff;border:1px solid #dfe8ed;border-radius:18px;padding:24px;box-shadow:0 10px 30px #163c4a05}
.form-card{max-width:760px;margin:0 auto 25px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}
.grid h2{font-size:18px;margin:0 0 6px}
h2{font-size:20px;margin:0 0 6px}
label.field{display:block;font-size:14px;font-weight:650;margin:20px 0 9px}
label.field:first-child{margin-top:0}
.opc{font-weight:400;color:#70838d}
input[type=text],input[type=email],input[type=tel],input[type=password],select{width:100%;padding:13px;border:1px solid #a9c3d0;border-radius:9px;background:#fff;color:#234b5b;font:inherit}
fieldset{border:1px solid #cbdde5;border-radius:12px;padding:18px;margin:20px 0;background:#f3f8fb}
legend{font-weight:650;padding:0 6px}
.small{font-size:12px;color:#59727e;line-height:1.7}
.aviso{border:1px solid #cbdde5;background:#eaf4fa;padding:16px 18px;border-radius:12px;color:#426d80;font-size:14px;line-height:1.6}
.aviso strong{color:#163c4a}
.document-guide{font-size:13px;color:#426d80;line-height:1.7;margin:14px 0}
.document-guide ul{padding-left:18px;margin:8px 0}
.document-guide li{margin:5px 0}
.drop{border:1.5px dashed #a9c3d0;border-radius:13px;background:#f3f8fb;padding:28px 16px;text-align:center;cursor:pointer;display:block}
.drop.over{background:#dfedf5;border-color:#1b4f63}
.drop strong{display:block;font-size:16px;margin-bottom:4px}
.drop input{position:absolute;opacity:0;width:1px;height:1px}
.files{list-style:none;padding:0;margin:14px 0 0;font-size:13px}
.files li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #e5edf1;overflow-wrap:anywhere}
.files li.ruim{color:#9b3422}
.files button{all:unset;color:#1b4f63;text-decoration:underline;cursor:pointer;font-size:12px;white-space:nowrap}
.bottom{max-width:680px;margin:30px auto 0;text-align:center}
.promise{font:500 26px Georgia,serif;margin:0 0 10px}
.bottom p{font-size:14px;line-height:1.7;color:#59727e}
.btn{background:#1b4f63;color:#fff;font:600 16px system-ui;border:0;border-radius:10px;width:100%;padding:17px;cursor:pointer;margin-top:12px}
.btn:disabled{opacity:.6;cursor:wait}
.btn.sec{background:#eaf4fa;color:#1b4f63;border:1px solid #cbdde5}
.hint{font-size:12px!important}
details{text-align:left;font-size:12px;line-height:1.7;color:#59727e;margin-top:24px}
summary{cursor:pointer;font-weight:600;color:#426d80}
.erro{padding:14px 18px;background:#fff0ec;color:#9b3422;border-radius:12px;margin-top:16px;line-height:1.6}
.barra{height:10px;background:#dfe8ed;border-radius:6px;overflow:hidden;margin-top:16px}
.barra div{height:100%;width:0;background:#1b4f63;transition:width .2s}
.feito{max-width:620px;margin:10px auto;text-align:center}
.feito .protocolo{font-size:34px;font-weight:800;color:#1b4f63;letter-spacing:.02em;margin:8px 0 18px}
.copiar{display:flex;gap:8px}
.copiar input{flex:1}
.copiar .btn{width:auto;margin:0;padding:0 18px}
footer{text-align:center;padding:22px;border-top:1px solid #dce7ed;color:#788b96;font-size:12px}
footer a{color:#788b96}
.hp{position:absolute;left:-9999px}
:focus-visible{outline:3px solid #92bcd0;outline-offset:3px}
@media(max-width:850px){.grid{grid-template-columns:1fr}.hero{margin-top:16px}header{padding:20px 16px}header small{max-width:155px}main{padding:0 16px 48px}.card{padding:20px}}
