/* Base visual copiada de https://sisservicos.com.br/ (tokens, tipografia, header, botões, formulário, rodapé) */

:root{
  --abissal:#001C32;
  --oceano:#005B89;
  --sinal:#1285C7;
  --vetor:#2F58F5;
  --gelo:#F1F5F9;
  --papel:#FFFFFF;
  --grafite:#5B6B7B;
  --linha:rgba(0,28,50,.12);
  --linha-dark:rgba(255,255,255,.14);
  --display:'M PLUS Rounded 1c','Nunito',system-ui,sans-serif;
  --corpo:'IBM Plex Sans',system-ui,sans-serif;
  --dados:'IBM Plex Mono',ui-monospace,monospace;
  --maxw:1180px;
  --textura:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20width='420'%20height='420'%20viewBox='0%200%20320%20320'>%20<g%20fill='none'%20stroke='%23005B89'%20stroke-opacity='.10'%20stroke-width='1'%20stroke-linecap='round'>%20<path%20d='M-10%2046%20H70%20L104%2080%20H188%20L214%2054%20H330'/>%20<path%20d='M-10%20118%20H36%20L70%2084%20H150%20L182%20116%20H246%20L272%20142%20H330'/>%20<path%20d='M-10%20214%20H92%20L124%20182%20H206%20L236%20212%20H330'/>%20<path%20d='M-10%20276%20H58%20L88%20246%20H166%20L200%20280%20H330'/>%20<path%20d='M40%20-10%20V28%20L70%2058%20V132%20L44%20158%20V330'/>%20<path%20d='M148%20-10%20V44%20L176%2072%20V138'/>%20<path%20d='M262%20-10%20V60%20L236%2086%20V158%20L266%20188%20V330'/>%20<path%20d='M118%20330%20V268%20L146%20240%20V166'/>%20</g>%20<g%20fill='%231285C7'%20fill-opacity='.13'>%20<circle%20cx='70'%20cy='58'%20r='2.6'/><circle%20cx='104'%20cy='80'%20r='2.2'/><circle%20cx='176'%20cy='72'%20r='2.6'/>%20<circle%20cx='44'%20cy='158'%20r='2.2'/><circle%20cx='236'%20cy='86'%20r='2.6'/><circle%20cx='124'%20cy='182'%20r='2.2'/>%20<circle%20cx='266'%20cy='188'%20r='2.6'/><circle%20cx='146'%20cy='240'%20r='2.2'/><circle%20cx='88'%20cy='246'%20r='2.6'/>%20<circle%20cx='272'%20cy='142'%20r='2.2'/><circle%20cx='214'%20cy='54'%20r='2.2'/><circle%20cx='200'%20cy='280'%20r='2.6'/>%20</g></svg>");
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--abissal);
  background-color:#F8FBFD;
  background-image:
    radial-gradient(820px 560px at 88% 2%,rgba(18,133,199,.13),rgba(18,133,199,0) 62%),
    radial-gradient(720px 540px at 2% 30%,rgba(47,88,245,.08),rgba(47,88,245,0) 60%),
    radial-gradient(900px 640px at 74% 86%,rgba(0,91,137,.10),rgba(0,91,137,0) 66%),
    var(--textura);
  background-attachment:fixed,fixed,fixed,fixed;
  background-size:auto,auto,auto,420px 420px;
  font-family:var(--corpo);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(100% - 44px,var(--maxw));margin-inline:auto}
@media(max-width:760px),(hover:none){body{background-attachment:scroll}}

/* ---------- tipografia ---------- */
h1,h2,h3,h4{font-family:var(--display);margin:0;line-height:1.1;letter-spacing:-.012em;font-weight:700}
h1{font-size:clamp(2.05rem,4.4vw,3.35rem);font-weight:800}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:800}
h3{font-size:1.16rem;letter-spacing:-.01em;line-height:1.28}
p{margin:0 0 1.05em}
.lead{font-size:clamp(1.02rem,1.5vw,1.19rem);color:var(--grafite);max-width:62ch}
h2+.lead{margin-top:22px}
.eyebrow{
  font-family:var(--dados);font-size:.7rem;letter-spacing:.19em;text-transform:uppercase;
  color:var(--sinal);margin:0 0 18px;display:flex;align-items:center;gap:11px;font-weight:500;
}
.eyebrow::before{content:"";width:26px;height:1px;background:currentColor;flex:none}
.sec{padding:clamp(76px,9.5vw,138px) 0;position:relative}
.sec--gelo{background:rgba(205,222,236,.42);box-shadow:inset 0 1px 0 rgba(0,28,50,.06),inset 0 -1px 0 rgba(0,28,50,.06)}
.sec--noite{background:var(--abissal);color:#fff}
.sec--noite .lead{color:rgba(255,255,255,.68)}
.sec--noite h2{color:#fff}
.head{max-width:70ch;margin-bottom:clamp(40px,5vw,64px)}

/* ---------- cunha diagonal (motivo da marca) ---------- */
.cunha{position:absolute;top:0;left:0;width:min(46%,520px);aspect-ratio:1.55/1;pointer-events:none;
  background:linear-gradient(115deg,var(--vetor) 0%,var(--sinal) 100%);
  clip-path:polygon(0 0,100% 0,0 100%);opacity:.1}
/* ---------- header ---------- */
header{position:sticky;top:0;z-index:60;background:rgba(0,28,50,.9);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--linha-dark)}
.nav{display:flex;align-items:center;gap:28px;height:70px}
.nav img{height:29px;width:auto}
.nav nav{margin-left:auto;display:flex;gap:26px}
.nav nav a{font-size:.9rem;color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s}
.nav nav a:hover,.nav nav a:focus-visible{color:#fff}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--corpo);font-weight:600;
  font-size:.94rem;padding:13px 22px;border-radius:2px;text-decoration:none;border:1px solid transparent;
  transition:transform .18s ease,background .18s ease,color .18s ease;cursor:pointer}
.btn--primario{background:var(--sinal);color:#fff}
.btn--primario:hover{background:#0f74ad;transform:translateY(-1px)}
.btn--fantasma{border-color:rgba(255,255,255,.32);color:#fff}
.btn--fantasma:hover{background:rgba(255,255,255,.1)}
.btn--escuro{background:var(--abissal);color:#fff}
.btn--escuro:hover{background:#00294a;transform:translateY(-1px)}
.form{display:grid;gap:14px}
.campo{display:grid;gap:7px}
.campo label{font-family:var(--dados);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grafite)}
.campo input,.campo textarea,.campo select{
  font-family:var(--corpo);font-size:.97rem;padding:13px 14px;border:1px solid var(--linha);
  background:rgba(255,255,255,.86);border-radius:2px;color:var(--abissal);width:100%}
.campo textarea{min-height:118px;resize:vertical}
.campo input:focus,.campo textarea:focus,.campo select:focus{outline:2px solid var(--sinal);outline-offset:1px;border-color:transparent}
.form .btn{justify-content:center;margin-top:6px}
.aviso{font-size:.82rem;color:var(--grafite);margin:0}
/* ---------- rodapé ---------- */
footer{background:var(--abissal);color:rgba(255,255,255,.6);padding:56px 0 34px;font-size:.88rem}
footer img{height:30px;width:auto;margin-bottom:22px}
.rodape-grade{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px;
  padding-bottom:30px;border-bottom:1px solid var(--linha-dark)}
@media(max-width:760px){.rodape-grade{grid-template-columns:1fr 1fr}}
footer h4{font-family:var(--dados);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;
  color:rgba(255,255,255,.4);font-weight:500;margin-bottom:14px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
footer a{text-decoration:none;transition:color .2s}
footer a:hover{color:#fff}
.rodape-fim{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;
  font-family:var(--dados);font-size:.72rem;letter-spacing:.08em;color:rgba(255,255,255,.38)}

:focus-visible{outline:2px solid var(--sinal);outline-offset:3px}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}

/* ---------- cadastro de AT ---------- */
.nav-titulo{margin-left:auto;font-family:var(--dados);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.topo{padding:clamp(56px,7vw,96px) 0 clamp(28px,4vw,44px);overflow:hidden}
.topo h1{margin-bottom:18px}
.corpo{padding-top:0}
.cadastro{gap:26px;max-width:960px}
.bloco{border:1px solid var(--linha);background:rgba(255,255,255,.9);border-radius:3px;margin:0;
  padding:clamp(20px,3vw,32px);display:grid;gap:18px;min-width:0}
.bloco>legend{font-family:var(--display);font-weight:700;font-size:1.2rem;padding:0 10px;margin-left:-10px;display:flex;align-items:center;gap:12px}
.bloco>legend span{font-family:var(--dados);font-size:.72rem;font-weight:500;color:#fff;background:var(--oceano);padding:3px 8px;border-radius:2px;letter-spacing:.08em}
.grade{display:grid;gap:16px 18px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g2 .largo{grid-column:span 1}
.g4 .l2{grid-column:span 2}
.g4 .l3{grid-column:span 3}
@media(max-width:760px){
  .g2,.g4{grid-template-columns:1fr}
  .g4 .l2,.g4 .l3{grid-column:auto}
  .nav-titulo{display:none}
}
.campo b,.aviso b{color:#B4232C;font-weight:600}
fieldset.campo{border:0;padding:0;margin:0;min-width:0}
fieldset.campo>legend{font-family:var(--dados);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grafite);padding:0;margin-bottom:9px}
.opcoes{display:flex;gap:22px;padding:6px 0}
.opcoes label,.linhas label{display:flex;align-items:center;gap:8px;font-size:.95rem;cursor:pointer;text-transform:none;letter-spacing:0;font-family:var(--corpo);color:var(--abissal)}
.linhas{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px 16px;padding:4px 0}
input[type=radio],input[type=checkbox]{width:18px;height:18px;accent-color:var(--oceano);flex:none;margin:0}
.campo input[type=file]{padding:10px;background:var(--gelo);cursor:pointer}
.campo input[type=file]::file-selector-button{font-family:var(--corpo);font-weight:600;border:0;background:var(--abissal);color:#fff;padding:8px 14px;border-radius:2px;margin-right:12px;cursor:pointer}
.campo [aria-invalid=true],fieldset[aria-invalid=true] .opcoes,fieldset[aria-invalid=true] .linhas{outline:2px solid #B4232C;outline-offset:1px}
.erro-campo{font-size:.82rem;color:#B4232C}
.aceite{display:flex;gap:12px;align-items:flex-start;font-size:.93rem;color:var(--abissal);cursor:pointer}
.aceite input{margin-top:3px}
.enviar{justify-self:start;padding:15px 30px;font-size:1rem}
.enviar[disabled]{opacity:.6;cursor:wait;transform:none}
.pote{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.cartao{border:1px solid var(--linha);background:rgba(255,255,255,.94);border-radius:3px;padding:clamp(22px,3vw,34px);max-width:960px;margin-bottom:26px}
.cartao p:last-child{margin-bottom:0}
.alerta{border-color:rgba(180,35,44,.45);background:#FDF3F3;color:#7A1A20}
.sucesso h2{font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:18px}
.sucesso .btn{margin-top:8px}
.protocolo{font-family:var(--dados);font-size:1.25rem;font-weight:500;letter-spacing:.12em;color:var(--oceano);
  background:var(--gelo);padding:4px 10px;border-radius:2px}
.links-rodape{display:flex;gap:18px;flex-wrap:wrap}
.g4 .l4{grid-column:1/-1}
@media(max-width:760px){.g4 .l4{grid-column:auto}}
.consulta{font-size:.82rem;color:var(--grafite)}
.consulta.ok{color:#1F7A4D}
.consulta.erro{color:#B4232C}
.modal{border:0;border-radius:14px;padding:28px 28px 22px;max-width:min(440px,calc(100vw - 32px));box-shadow:0 20px 60px rgba(0,30,60,.35);color:inherit}
.modal::backdrop{background:rgba(0,20,40,.55)}
.modal h2{margin:0 0 10px;font-size:1.25rem;color:#B4232C}
.modal p{margin:0 0 20px;line-height:1.5}
.modal .btn{float:right}
