
/* ====================== 2 - VARIÁVEIS ====================== */
:root{
  /* Títulos */
  --h1-size: clamp(2rem, 3.5vw + 1rem, 3.25rem);
  --h2-size: clamp(1.5rem, 2.2vw + .75rem, 2.2rem);
  --h3-size: 1.2rem;
 

  /* Cores */
  --cor-claro: #FDFBFF;          
  --cor-cinza: #454351;
  --cor-cinza-claro: #9C9C9C;
  --cor-azul-claro-background: #F0F7FF;
  --cor-azul-claro:#8080D5;
  --cor-azul-royal: #4560FF;
  --cor-azul-hover: #22359F;
  --cor-azul-escuro: #11152e;  
  --cor-roxo-claro-background: #F9F8FF;
  --cor-verde: #0FAC5B;
  --cor-verde-escuro: #005127; 

  --grad-azul-escuro: linear-gradient(
    -90deg,
    var(--cor-azul-escuro) 55%,
    #000000 100%
  );



  /* Gerais */
  --radius: 4px;
  --shadow-weak: 0 1px 0 rgba(0,0,0,.05);

  /* Rodapé */
  --footer-radius: 4px;
  --footer-maxw: 1160px;
  --footer-border: rgba(255,255,255,.2);
  --footer-muted: #ccc;
}

html {
  scroll-behavior: smooth;
}


*{ box-sizing: border-box }

html{ scroll-behavior: smooth }

body{ 
  margin:0; 
  font-family: "Alfabet", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; 
  color:var(--texto) 
}

a{ 
  color: inherit; 
  text-decoration: none 
}

.container{ 
  max-width: 1160px; 
  margin: 0 auto; 
  padding: 0 16px 
}

/* Sticky footer global */
html, body { height: 100%; }
body { 
  min-height: 100vh; 
  display: flex; 
  flex-direction: column; 
}
main { flex: 1 0 auto; }
.site-footer { margin-top: auto; }
.alert{
  --alert-bg:    #eaf6ff;  /* fundo azul claro */
  --alert-bd:    #b6e0fe;  /* borda */
  --alert-fg:    #0b3b69;  /* texto principal */
  --alert-icon:  #0b6bbf;  /* cor do ícone */
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  padding:.875rem 1rem;
  border:1px solid var(--alert-bd);
  background:var(--alert-bg);
  color:var(--alert-fg);
  border-radius:.5rem;
  font:14px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.alert__icon{ color:var(--alert-icon); flex:0 0 auto; line-height:0; }
.alert__title{ margin:0 0 .125rem; font-weight:600; }
.alert__desc{ margin:0; }
.alert a{ color:inherit; text-decoration:underline; text-underline-offset:2px; font-weight:600; }

.alert__close{
  margin-left:auto;
  border:0;
  background:transparent;
  color:inherit;
  font-size:22px;
  line-height:1;
  padding:.125rem .25rem;
  cursor:pointer;
  opacity:.7;
}
.alert__close:hover,
.alert__close:focus-visible{ opacity:1; }

/* Variante info (cores já definidas acima, mas deixo o hook) */
.alert--info{}

/* Animação suave ao remover (opcional) */
.alert{ transition: opacity .15s ease, transform .15s ease; }
.alert.is-hiding{ opacity:0; transform:translateY(-4px); }
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease;
}
.reveal.active {
  opacity: 1;
  transform: translateY(0);
}
