/* Silex — site público (design-v2, SITE-6 #1352).
   Base BRANCA, acento verde #16A34A. ZERO tema Material, ZERO índigo, ZERO
   request externo: a Inter é self-hosted (woff2 local, @font-face abaixo).
   As páginas de design usam estilos inline (fidelidade ao mock); este arquivo
   cobre só o que inline não faz: @font-face, reset mínimo e estados :hover
   (inline vence o seletor, então o hover usa !important de propósito). */

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/InterVariable.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/InterVariable-Italic.woff2") format("woff2");
}

* { box-sizing: border-box; }
html, body { margin: 0; }
body { -webkit-font-smoothing: antialiased; }
img { max-width: 100%; }

/* Estados :hover — inline style tem specificity máxima, então !important é
   necessário pra sobrescrever a cor/background base declarada inline. */
a { transition: color .15s ease; }
.slx-navlink:hover { color: #0f1420 !important; }
.slx-langlink:hover { background: #f7f8f6 !important; color: #0f1420 !important; }
.slx-sidelink:hover { background: #f7f8f6 !important; color: #0f1420 !important; }
.slx-btn-primary:hover { background: #15803D !important; color: #fff !important; }
.slx-btn-ghost:hover { background: #EAF7EE !important; }
.slx-footlink:hover { color: #4cdf7a !important; }
.slx-dimlink:hover { color: #9a9cb8 !important; }
.slx-report-link:hover { color: #85fbae !important; }
.slx-anchor-link:hover { color: #a8c1f0 !important; }
.slx-icon-btn:hover { background: #f7f8f6 !important; }
.slx-join-btn:hover { background: #5cf68b !important; }

/* Carrossel da landing: slides empilhados, um visível por vez. Os hooks são
   ATRIBUTOS data-slx-* (não classes) — o seletor precisa casar o atributo. */
[data-slx-slide] { transition: opacity .3s ease; }
[data-slx-slide][data-active="false"] { opacity: 0; pointer-events: none; }
[data-slx-slide][data-active="true"] { opacity: 1; pointer-events: auto; }
[data-slx-substep][data-active="false"] { display: none; }
[data-slx-substep][data-active="true"] { display: flex; }

/* Mensagem da waitlist (sucesso / indisponível). */
.slx-waitlist-msg { margin: 10px 0 0; font-size: 13.5px; font-weight: 600; }
.slx-waitlist-msg[data-tone="ok"] { color: #4cdf7a; }
.slx-waitlist-msg[data-tone="err"] { color: #f0a37a; }
.slx-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
