
:root{
  --navy:#0B2A4A;
  --ink:#0E2035;
  --silver:#C0C6CC;
  --muted:#AFC0D0;
  --bg:#0b1626;
  --bg2:#0a1a2c;
  --radius:14px;
  --shadow:0 12px 32px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--bg);
  color:#EAF0F6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* textura/engrenagens em TODA a página */
.texture{
  position:fixed; inset:0; pointer-events:none; z-index:0;
  background: radial-gradient(1200px 600px at 20% 10%, #1b3550 0%, #0b1626 55%);
}
.gear{
  position:absolute;
  background-repeat:no-repeat; background-size:contain;
  opacity:.22; filter:drop-shadow(0 6px 30px rgba(0,0,0,.45));
}
.gear-a{ width:760px; height:760px; left:-160px; top:-140px;
  background-image:url('assets/gear_large.svg'); animation:spin 90s linear infinite }
.gear-b{ width:600px; height:600px; right:-180px; bottom:-180px;
  background-image:url('assets/gear_small.svg'); animation:spinReverse 80s linear infinite }
.gear-c{ width:540px; height:540px; left:58%; top:42%;
  background-image:url('assets/gear_small.svg'); animation:spin 120s linear infinite; opacity:.16 }
.gear-d{ width:480px; height:480px; left:8%; bottom:2%;
  background-image:url('assets/gear_large.svg'); animation:spinReverse 110s linear infinite; opacity:.14 }
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes spinReverse{from{transform:rotate(360deg)}to{transform:rotate(0)}}

/* layout */
.container{max-width:1180px;margin:0 auto;padding:0 22px;position:relative;z-index:1}
.topbar{
  position:sticky; top:0; z-index:10;
  background:linear-gradient(180deg,#0F243A,#0B1E32);
  border-bottom:1px solid #12324E;
}
.nav{display:flex;align-items:center;justify-content:space-between;height:120px}
.logo-wrap{position:relative;display:inline-block}
.logo-full{height:120px;width:auto;display:block;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}

/* Reflexo metálico sutil na logo */
.logo-wrap::after{
  content:''; position:absolute; inset:0;
  background: linear-gradient(115deg, rgba(255,255,255,.0) 0%, rgba(255,255,255,.25) 45%, rgba(255,255,255,.0) 60%);
  mix-blend-mode:screen; transform:translateX(-120%);
  animation:shine 7s ease-in-out infinite;
}
@keyframes shine{
  0% { transform:translateX(-120%); }
  20% { transform:translateX(120%); }
  100% { transform:translateX(120%); }
}

nav a{margin-left:22px;text-decoration:none;color:#FFFFFF;font-weight:700;letter-spacing:.2px}
nav a.cta{background:#D7DEE6;color:#0B2A4A;padding:12px 16px;border-radius:12px}

.hero{position:relative;padding:110px 0 96px}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
.hero h1{font-size:46px;line-height:1.12;margin:0 0 12px;text-shadow:0 6px 20px rgba(0,0,0,.45)}
.hero p{color:#EEF4FA;max-width:780px}
.accent{color:var(--silver)}
.actions{display:flex;gap:12px;margin:18px 0 10px}
.btn{display:inline-block;border-radius:12px;text-decoration:none;font-weight:800}
.btn.primary{background:var(--silver);color:#0B2A4A;padding:12px 16px}
.btn.ghost{border:1px solid var(--silver);padding:12px 16px;color:#FFFFFF}
.card{background:linear-gradient(180deg,#0E2035,#0A1B2E);border:1px solid #183B5A;border-radius:16px;box-shadow:var(--shadow);padding:20px;color:#DDE7F1}
.ticks{margin:10px 0 0;padding-left:18px}

.section{padding:72px 0;background:linear-gradient(180deg,rgba(11,22,38,.94),rgba(10,26,44,.94))}
.section.soft{background:linear-gradient(180deg,rgba(10,26,44,.94),rgba(11,22,38,.94))}
.section h2{margin:0 0 18px;font-size:30px;color:#FFFFFF;text-shadow:0 4px 16px rgba(0,0,0,.35)}
.grid.four{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ico .i{font-size:28px;margin-bottom:6px}
.service h3{margin-top:0}
.benefits{color:#E6EEF6}

#estrutura p{color:#D7E3EE}

.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}
.contact-list{list-style:none;padding:0;margin:10px 0 0}
.contact-list li{margin:8px 0}

.footer{background:#0A1B2E;border-top:1px solid #12324E;color:#C3D0DD}
.foot{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 0}
.logo-small{height:48px;width:auto;display:block}

@media (max-width:980px){
  .nav{height:100px}
  .logo-full{height:96px}
  .hero-grid{grid-template-columns:1fr}
  .grid.four{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .gear-a{width:560px;height:560px;left:-160px;top:-160px}
  .gear-b{width:420px;height:420px;right:-160px;bottom:-180px}
  .gear-c{left:60%; top:55%; width:380px; height:380px}
  .gear-d{left:4%; bottom:0; width:360px; height:360px}
}
@media (max-width:560px){
  .grid.four{grid-template-columns:1fr}
}
