/* ============================================================
   base.css — Variáveis globais, reset e body
   Carregado em todas as páginas antes dos CSS específicos.
   ============================================================ */

:root {
  --green: #00C853;
  --green-dim: #00A844;
  --green-soft: rgba(0,200,83,0.10);
  --green-glow: rgba(0,200,83,0.18);
  --green-border: rgba(0,200,83,0.28);
  --gold: #C9A84C;
  --gold-soft: rgba(201,168,76,0.12);
  --gold-border: rgba(201,168,76,0.28);
  --red: #E05555;
  --red-soft: rgba(224,85,85,0.10);
  --red-border: rgba(224,85,85,0.25);
  --blue: #4488CC;
  --blue-soft: rgba(68,136,204,0.10);
  --blue-border: rgba(68,136,204,0.28);
  --bg: #080B0A;
  --bg-2: #0E1412;
  --bg-card: #111815;
  --bg-hover: #151F1A;
  --white: #F0F4F2;
  --muted-1: rgba(240,244,242,0.70);
  --muted-2: rgba(240,244,242,0.46);
  --muted-3: rgba(240,244,242,0.13);
  --muted-4: rgba(240,244,242,0.06);
  --text: var(--white);
  --text-soft: var(--muted-1);
  --font-display: 'Playfair Display', Georgia, serif;
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-body: 'Outfit', system-ui, sans-serif;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --radius-2xl: 24px;
  --shadow-soft: 0 18px 50px rgba(0,0,0,0.18);
  --shadow-card: 0 24px 70px rgba(0,0,0,0.26);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--bg);color:var(--white);overflow-x:hidden;line-height:1.75;}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:1000;opacity:0.45;}

/* Scroll reveal */
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity 0.65s cubic-bezier(0.22,1,0.36,1),transform 0.65s cubic-bezier(0.22,1,0.36,1);}
[data-reveal].is-visible{opacity:1;transform:translateY(0);}

/* Light mode — body */
html.light-mode body,html[data-theme="light"] body{background:#F4F7F5;color:#132019;}
