/* =========================
   TOKENS (globais essenciais)
==========================*/
:root{
  /* Cores */
  --bg:#0a1326;
  --bg-1:#182746;      /* topo */
  --bg-2:#07142a;      /* nav */
  --surface:#0f1e38;
  --text:#ecf1f8;
  --muted:#a8b3c7;
  --brand:#e6b043;     /* ouro */
  --line:rgba(255,255,255,.12);

  /* Tipografia */
  --font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;

  /* Layout base (container padrão do site) */
  --container-num: 1200;
  --gutter-num: 24;
  --container: 1200px;
  --gutter: 24px;

  color-scheme: dark;
}

/* =========================
   Resets / Utils
==========================*/
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }

body{
  /* Offset padrão para âncoras quando NÃO existe header sticky
     (o header define esse valor localmente quando existir) */
  --page-sticky-offset: 0px;

  min-height:100%;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 10% -10%, #172e57 0, transparent 60%),
    radial-gradient(1000px 500px at 90% -20%, #153056 0, transparent 55%),
    var(--bg);
  line-height:1.55;
  overflow-x:hidden;
}

img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; text-decoration:none; }
a:focus-visible, button:focus-visible, summary:focus-visible{
  outline:2px solid var(--brand); outline-offset:2px;
}

/* Âncoras compensando header sticky (agora seguro) */
section[id], [id].anchor-target{
  scroll-margin-top: var(--page-sticky-offset, 0px);
}

/* utilidade de acessibilidade */
.sr-only{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* container padrão */
.container{
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:var(--gutter);
}

/* movimento reduzido */
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}


/* ===================================================
   FOOTER (S-FOOTER)
   =================================================== */

.s-footer {
    /* 💥 Fundo escuro do Footer */
    background: #0e1a32; 
    color: #eef1f6;
    padding: 20px 0;
    font-size: 0.9rem;
}

.s-footer .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-inline: var(--gutter, 24px); 
}

.footer__grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer__copy {
    margin: 0;
}

.footer__design {
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer__design-text {
    font-size: 0.85rem;
    color: #999;
}

.footer__blnk-logo {
    /* Largura e altura ajustadas para o SVG da BLNK */
    width: 60px; 
    height: auto;
    display: block;
}


/* ===================================================
   RESPONSIVIDADE (Mobile)
   =================================================== */
@media (max-width: 600px) {
    .footer__grid {
        /* Empilha os elementos no mobile */
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }
    .footer__copy {
        order: 2; /* Move o copyright para o final */
        font-size: 0.8rem;
    }
    .footer__design {
        order: 1;
        margin-bottom: 5px;
    }
}

