/* === FONTES === */
@font-face { font-family: 'fofinja-heading'; src: url('/fonts/fofinja-heading-400.woff2') format('woff2'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'fofinja-heading'; src: url('/fonts/fofinja-heading-700.woff2') format('woff2'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'fofinja-body';    src: url('/fonts/fofinja-body-400.woff2')    format('woff2'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'fofinja-body';    src: url('/fonts/fofinja-body-700.woff2')    format('woff2'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'fofinja-alt';     src: url('/fonts/fofinja-alt-400.woff2')     format('woff2'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'fofinja-alt';     src: url('/fonts/fofinja-alt-700.woff2')     format('woff2'); font-weight: 700; font-style: normal; }

/* === VARIÁVEIS (sobrescritas via <style>:root{}</style> injetado do banco) === */
:root {
  --h1-font:    'fofinja-heading', sans-serif;
  --h1-size:    2.5rem;
  --h1-weight:  700;
  --h2-font:    'fofinja-heading', sans-serif;
  --h2-size:    1.8rem;
  --h2-weight:  600;
  --body-font:  'fofinja-body', sans-serif;
  --body-size:  1rem;

  --bg:      #0f0419;
  --bg2:     #1e0533;
  --accent1: #7c3aed;
  --accent2: #e879f9;
  --text:    #e2e8f0;
  --muted:   #94a3b8;
  --radius:  12px;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--body-font);
  font-size: var(--body-size);
  min-height: 100vh;
}

a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }

h1 { font-family: var(--h1-font); font-size: var(--h1-size); font-weight: var(--h1-weight); }
h2 { font-family: var(--h2-font); font-size: var(--h2-size); font-weight: var(--h2-weight); }

/* === TRANSIÇÃO SWUP === */
.transition-fade { transition: opacity 0.3s; opacity: 1; }
html.is-animating .transition-fade { opacity: 0; }

/* === NAV === */
.site-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 2rem;
  background: rgba(15, 4, 25, 0.85);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(124, 58, 237, 0.2);
}
.site-nav .logo {
  color: var(--accent2);
  font-family: var(--h1-font);
  font-weight: 700;
  font-size: 1.1rem;
}
.site-nav .nav-links {
  display: flex;
  gap: 1.5rem;
  font-size: 0.9rem;
  color: var(--muted);
}
.site-nav .nav-links a:hover { color: var(--accent2); }

/* Globe dropdown */
.lang-picker { position: relative; }
.lang-current {
  background: none;
  border: 1px solid rgba(124, 58, 237, 0.3);
  color: var(--muted);
  padding: 0.2rem 0.6rem;
  border-radius: 4px;
  cursor: pointer;
  font-size: 0.8rem;
  font-family: inherit;
}
.lang-current:hover { border-color: var(--accent2); color: var(--text); }
.lang-dropdown {
  display: none;
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  background: #1e0533;
  border: 1px solid rgba(124, 58, 237, 0.4);
  border-radius: 6px;
  min-width: 110px;
  z-index: 200;
  overflow: hidden;
}
.lang-dropdown.open { display: block; }
.lang-dropdown button {
  display: block;
  width: 100%;
  padding: 0.4rem 0.75rem;
  background: none;
  border: none;
  color: var(--muted);
  text-align: left;
  cursor: pointer;
  font-size: 0.85rem;
  font-family: inherit;
}
.lang-dropdown button:hover { background: rgba(124, 58, 237, 0.2); color: var(--text); }
.lang-dropdown button.active-lang { color: var(--accent2); }

/* === CARD (imagem com enquadramento) === */
.img-card {
  border-radius: var(--radius);
  overflow: hidden;
  position: relative;
  background: var(--bg2);
}
.img-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform-origin: center center;
}

/* === CONTEÚDO PRINCIPAL === */
main { padding-top: 60px; }

/* === RESPONSIVE NAV === */
@media (max-width: 600px) {
  .site-nav { padding: 0.6rem 1rem; }
  .site-nav .nav-links { gap: 1rem; font-size: 0.8rem; }
}
