/* ============================================================
   Mamede Júnior — sistema visual unificado
   Direção: editorial elegante. Naval profundo domina.
   Verde da campanha entra só como acento (fio, hover, palavra).
   Display serifa fina (Instrument Serif) + corpo Archivo + mono utilitário.
   ============================================================ */

:root{
  --naval:#0D1B3E;
  --naval-2:#13265a;
  --naval-3:#091230;
  --green:#00A651;
  --green-bright:#3ee08a;
  --cream:#F6F4EF;
  --paper:#FBFAF7;
  --line:rgba(255,255,255,.08);
  --line-ink:rgba(13,27,62,.09);
  --muted:rgba(233,238,250,.62);
  --ink:#0D1B3E;
  --ink-2:#3b4665;
  --ink-3:#6b7590;
  --maxw:1120px;
  --gap:clamp(96px,14vh,180px);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--naval);
  color:#eef1f8;
  font-family:'Archivo',system-ui,sans-serif;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{display:block;max-width:100%}
a{color:inherit}
::selection{background:var(--green);color:var(--naval)}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
@media(max-width:600px){.wrap{padding:0 22px}}

/* ---------- Tipografia display ---------- */
.display{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-optical-sizing:auto;letter-spacing:-.01em}
.serif{font-family:'Instrument Serif',Georgia,serif}
.mono{font-family:'JetBrains Mono',monospace}

/* eyebrow / kicker: fio verde + mono, discreto */
.kicker{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--green);font-weight:500;
  display:inline-flex;align-items:center;gap:14px;
}
.kicker::before{content:"";width:32px;height:1px;background:var(--green);opacity:.7}
.light .kicker{color:var(--green)}

/* título de seção */
.sec{
  font-family:'Instrument Serif',Georgia,serif;font-weight:400;
  font-size:clamp(30px,3.8vw,46px);line-height:1.1;letter-spacing:-.02em;
  margin-top:22px;max-width:20ch;
}
.light .sec{color:var(--ink)}

/* ---------- NAV ---------- */
.site-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(9,18,48,.72);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{
  font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:25px;
  text-decoration:none;color:#fff;letter-spacing:-.01em;
}
.brand .surname{font-style:italic;color:var(--green-bright)}
.nav-links{display:flex;gap:36px}
.nav-links a{
  font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.08em;
  color:var(--muted);text-decoration:none;transition:color .25s;padding:4px 0;
  position:relative;
}
.nav-links a:hover,.nav-links a.current{color:#fff}
.nav-links a.current::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--green)
}
.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:22px;cursor:pointer}
@media(max-width:720px){
  .nav-toggle{display:block}
  .nav-links{
    position:absolute;top:74px;left:0;right:0;flex-direction:column;gap:0;
    background:var(--naval-3);border-bottom:1px solid var(--line);
    padding:10px 0;display:none;
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:14px 32px}
}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  padding:16px 30px;border-radius:1px;text-decoration:none;
  transition:transform .2s,background .2s,color .2s,border-color .2s;
  border:1px solid transparent;cursor:pointer;
}
.btn-primary{background:var(--green);color:var(--naval);font-weight:500}
.btn-primary:hover{background:var(--green-bright);transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--line);color:#eef1f8}
.light .btn-ghost{border-color:var(--line-ink);color:var(--ink)}
.btn-ghost:hover{border-color:var(--green);color:var(--green-bright)}
.light .btn-ghost:hover{color:var(--green)}

/* seta minimal */
.arrow-link{
  font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.02em;
  color:var(--green-bright);text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;transition:gap .2s,color .2s;
}
.light .arrow-link{color:var(--green)}
.arrow-link:hover{gap:12px}

/* ---------- Seções base ---------- */
.pad{padding:var(--gap) 0}
.pad-sm{padding:calc(var(--gap) * .62) 0}
.light{background:var(--cream);color:var(--ink)}

/* ---------- Reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ---------- FOOTER ---------- */
.site-footer{background:var(--naval-3);border-top:1px solid var(--line);padding:70px 0 40px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
@media(max-width:720px){.foot-grid{grid-template-columns:1fr;gap:32px}}
.foot-sig{font-family:'Instrument Serif',Georgia,serif;font-size:28px;letter-spacing:-.01em;font-weight:400;color:#fff}
.foot-sig .g{font-style:italic;color:var(--green-bright)}
.foot-tag{color:var(--muted);font-size:14.5px;margin-top:14px;max-width:40ch;line-height:1.6}
.foot-col h4{
  font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--green-bright);font-weight:500;margin-bottom:16px;
}
.foot-col a{display:block;color:var(--muted);text-decoration:none;font-size:15px;padding:5px 0;transition:color .2s}
.foot-col a:hover{color:#fff}
.foot-line{
  margin-top:52px;padding-top:26px;border-top:1px solid var(--line);
  font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.02em;
  color:rgba(233,238,250,.4);
}

/* ---------- Form fields (contato) ---------- */
.field{margin-bottom:22px}
.field label{
  display:block;font-family:'JetBrains Mono',monospace;font-size:11.5px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:9px;
}
.field input,.field select,.field textarea{
  width:100%;font-family:'Archivo',sans-serif;font-size:16px;color:var(--ink);
  background:var(--paper);border:1px solid var(--line-ink);border-radius:2px;
  padding:14px 16px;transition:border-color .2s;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--green);
}
.field textarea{min-height:130px;resize:vertical}
