/* Fontes hospedadas no próprio site (as mesmas do site pessoal, SIL OFL 1.1) */
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/inter-tight-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/inter-tight-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url(../assets/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --cobalt:#0b3fe0;
  --cobalt-deep:#0833b8;
  --cobalt-ink:#06227a;
  --yellow:#f8f4ae;
  --orange:#ff7a3d;
  --orange-deep:#f05a1a;
  --cream:#f6efe0;
  --cream-2:#ece2cc;
  --ink:#0d1530;
  --ink-soft:#4a5068;

  --font:"Inter Tight",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Consolas,monospace;

  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.34,1.4,.5,1);
  --t-fast:.18s;
  --t-med:.42s;

  --shadow-win:0 2px 4px rgb(4 16 70 / .18),0 18px 40px -8px rgb(4 16 70 / .45),0 48px 90px -30px rgb(2 10 50 / .55);
  --shadow-ui:0 10px 30px -8px rgb(4 16 70 / .5),0 2px 6px rgb(4 16 70 / .2);
  --focus:0 0 0 3px var(--cobalt),0 0 0 6px var(--yellow);

  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html,body{height:100%;overscroll-behavior:none} /* sem "voltar" por gesto lateral nem efeito elástico ao arrastar */
body{
  margin:0;background:var(--cobalt);color:var(--cream);
  font-family:var(--font);font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;overflow:hidden;
  -webkit-tap-highlight-color:transparent;
}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
a{color:inherit}
img{display:block;max-width:100%}
.ic{width:1em;height:1em;flex:none;display:inline-block;vertical-align:-.12em}
.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
:focus{outline:none}
:focus-visible{box-shadow:var(--focus);border-radius:10px}

.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--cream);color:var(--ink);padding:10px 16px;border-radius:999px;font-weight:600;text-decoration:none;transition:top var(--t-fast)}
.skip:focus{top:16px}

.noscript{position:fixed;inset:auto 16px 16px;background:var(--cream);color:var(--ink);padding:16px;border-radius:14px}

/* ---------- botões base ---------- */
.pill{
  display:inline-flex;align-items:center;gap:.5em;height:46px;padding:0 22px;border-radius:999px;
  font-weight:600;font-size:16px;text-decoration:none;white-space:nowrap;
  transition:transform var(--t-fast) var(--ease-out),background-color var(--t-fast),box-shadow var(--t-fast);
}
.pill .ic{transition:transform var(--t-fast) var(--ease-out)}
.pill:hover .ic:last-of-type{transform:translate(2px,-2px)}
.pill:active{transform:scale(.96)}
.pill-cream{background:var(--cream);color:var(--ink);box-shadow:var(--shadow-ui)}
.pill-cream:hover{background:#fff}
.pill-orange{background:var(--orange);color:var(--ink)}
.pill-orange:hover{background:#ff8d58}

.link-btn{
  font-weight:500;font-size:17px;color:var(--cream);padding:10px 6px;border-radius:8px;position:relative;
}
.link-btn::after{content:"";position:absolute;left:6px;right:6px;bottom:6px;height:2px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform var(--t-med) var(--ease-out)}
.link-btn:hover::after{transform:scaleX(1)}

/* ---------- topo ---------- */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;
  padding:18px clamp(16px,2.2vw,32px);pointer-events:none;
}
.topbar>*{pointer-events:auto}
.brand{display:inline-flex;align-items:center;gap:.35em;font-weight:800;font-size:21px;letter-spacing:-.02em;color:var(--yellow);text-decoration:none;padding:6px 4px;border-radius:8px}
.brand .ic{transition:transform var(--t-fast) var(--ease-out)}
.brand:hover .ic{transform:translate(2px,-2px)}
.top-actions{display:flex;align-items:center;gap:clamp(10px,2vw,28px)}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}

/* bolinhas de janela de navegador: usadas em todas as janelas do site */
.dots{display:inline-flex;gap:7px;flex:none}
.dots i{width:11px;height:11px;border-radius:50%;background:#ff5f57}
.dots i:nth-child(2){background:#febc2e}
.dots i:nth-child(3){background:#28c840}
