@font-face{font-family:Inter;src:url(fontes/Inter-400.ttf)}@font-face{font-family:Inter;src:url(fontes/Inter-600.ttf);font-weight:600}@font-face{font-family:Montserrat;src:url(fontes/Montserrat-700.ttf);font-weight:700}
:root{--ink:#061A3A;--blue:#0756C9;--sun:#FFC928;--paper:#F5F8FC}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font:1rem/1.55 Inter,Arial,sans-serif;background:white}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}a:focus-visible,button:focus-visible{outline:3px solid #df8400;outline-offset:4px}.wrap{width:min(1160px,89%);margin:auto}.skip{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:4px}
header{border-bottom:1px solid #dde4eb}.nav,nav,.acoes,footer{display:flex;align-items:center}.nav{min-height:82px;justify-content:space-between;position:relative}.marca{display:grid;justify-items:center;line-height:1}.marca:hover{text-decoration:none}.marca b{font:700 36px/.95 Montserrat,Arial,sans-serif;letter-spacing:-3px}.marca span{color:var(--blue)}.marca small{font-size:8px;font-weight:600;letter-spacing:2px;margin-top:5px}nav{gap:36px;font-size:.92rem;font-weight:600}.navcta{border:1px solid #a1b1c3;padding:10px 18px;border-radius:6px}.navcta span{margin-left:10px}
.hero{padding:clamp(50px,6.3vw,96px) 0;display:grid;grid-template-columns:1.12fr 1fr;gap:7%;align-items:center}.local{display:flex;gap:10px;align-items:center;font-size:.83rem;font-weight:600;margin:0 0 24px}.local i{width:20px;height:4px;background:var(--sun)}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.12;margin:0;letter-spacing:-.05em}h1{font-size:clamp(42px,4.6vw,68px)}h1 em{font-style:normal;color:var(--blue)}.intro{max-width:490px;color:#415369;line-height:1.65;font-size:1.09rem;margin:23px 0 29px}.acoes{gap:24px;flex-wrap:wrap}.btn,.sec{display:inline-flex;gap:14px;align-items:center;font-size:.92rem;font-weight:600}.btn{border-radius:6px;background:var(--sun);color:var(--ink);padding:15px 20px}.btn:hover{background:#ffd750;text-decoration:none}.sec{gap:8px}
.art{aspect-ratio:1.28;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);position:relative;overflow:hidden;border-radius:14px;background:var(--blue)}.art>div{position:relative;overflow:hidden}.arch{grid-area:1/1/3/3;background:var(--ink)}.arch:before{content:'';position:absolute;width:125%;height:145%;border-radius:50% 50% 0 0;background:repeating-radial-gradient(ellipse at 50% 100%,#72a8f7 0 9%,transparent 9.4% 18%);left:-12%;bottom:0}.sun{grid-area:1/3/2/5;background:#b9d7ff}.sun:before{content:'';position:absolute;bottom:-85%;left:15%;width:70%;aspect-ratio:1;background:var(--sun);border-radius:50%}.bars{grid-area:2/3/4/5;background:var(--blue);display:flex;align-items:flex-end;justify-content:center;gap:5%;padding:12% 8%}.bars i{width:15%;height:25%;background:#f5f8fc;border-radius:30px 30px 0 0}.bars i:nth-child(2){height:45%;background:#a9ceff}.bars i:nth-child(3){height:65%;background:#75a9ee}.bars i:nth-child(4){height:85%;background:var(--sun)}.stripes{grid-area:3/1;background:repeating-linear-gradient(135deg,#86b7fb 0 10px,#0756c9 10px 21px)}.dots{grid-area:3/2;background:radial-gradient(var(--ink) 17%,transparent 20%) 0 0/18px 18px,var(--sun)}
.solutions{background:var(--paper);padding:66px 0}h2{font-size:clamp(30px,3.1vw,46px)}h2 span{color:var(--blue)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.services article{background:white;border:1px solid #dce5ef;border-radius:10px;padding:26px}.services i{display:grid;place-items:center;background:#eaf2ff;color:var(--blue);font:26px/1 Arial;width:40px;height:40px;border-radius:9px;margin-bottom:20px}h3{font-size:1.18rem;letter-spacing:-.035em}.services p,.sobre p,.nota{color:#45566a}.services p{margin:12px 0 0}.nota{font-size:.88rem;border-left:3px solid var(--sun);padding-left:15px;max-width:950px}.sobre,.contato{padding:68px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:8%}.sobre p{margin:0;font-size:1.1rem}#contato{background:var(--ink);color:white}.contato{grid-template-columns:1.4fr 1fr}.contato p{margin:16px 0 25px}address{font-style:normal;display:grid;justify-items:start;align-content:start}address small{color:#bfd4f4;margin-top:12px}address small:first-child{margin-top:0}footer{padding:24px 0;justify-content:space-between;font-size:.82rem}
@media(max-width:850px){.hero{gap:4%}.services{grid-template-columns:repeat(2,1fr)}.acoes{gap:14px}}
@media(max-width:680px){.hero,.sobre,.contato{grid-template-columns:1fr;gap:30px}.hero{padding:36px 0}.art{aspect-ratio:1.75}.local{margin-bottom:16px}.services{grid-template-columns:1fr}.solutions,.sobre,.contato{padding:42px 0}.nav{min-height:70px;flex-wrap:wrap}.nav button{background:white;color:var(--ink);border:1px solid #acbbcb;padding:9px 13px;border-radius:5px;font:inherit}.nav nav{width:100%;justify-content:space-between;padding:12px 0;gap:10px}.nav nav[hidden]{display:none}.intro{font-size:1rem}.btn{padding:13px 16px}}

#mensagem {
  grid-column: 1 / -1;
  border-top: 1px solid #405674;
  padding-top: 32px;
  margin-top: 16px;
  max-width: 720px;
  width: 100%;
}
#mensagem label {display: grid; gap: 5px; margin-top: 16px; font-weight: 600}
#mensagem input, #mensagem textarea {
  width: 100%; padding: 12px; border: 1px solid #a1b1c3; border-radius: 6px;
  background: white; color: var(--ink); font: inherit; box-sizing: border-box;
}
#mensagem textarea {resize: vertical}
#mensagem input:focus-visible, #mensagem textarea:focus-visible {outline: 3px solid var(--sun); outline-offset: 2px}
.campos {display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px}
#verificacao {margin: 16px 0}
#mensagem button {cursor: pointer; border: 0; font-family: inherit}
#mensagem button:disabled {opacity: .65; cursor: default}
#retorno {display: block; margin-top: 10px}
@media (max-width: 680px) {.campos {grid-template-columns: 1fr; gap: 0}}
