/* Critical CSS for above-the-fold content */
:root {
  /* Light Theme Colors - Optimized for contrast */
  --primary-color: #191a95; /* Azul escuro da empresa para elementos principais */
  --secondary-color: #f8de21; /* Amarelo da empresa para elementos secundários */
  --secondary-hover: #e6cc1e; /* Amarelo escurecido para hover */
  --accent-color: #f8de21; /* Amarelo para detalhes de destaque */
  --accent-hover: #e6cc1e; /* Amarelo escurecido para hover */
  --bg-light: #ffffff; /* Fundo claro */
  --bg-light-secondary: #f8fafc; /* Fundo secundário claro */
  --bg-theme-alfa: rgba(25, 26, 149, 0.95); /* Fundo secundário claro */
  --text-white: #f8fafc; /* Texto branco */
  --text-light: #1e293b; /* Texto principal */
  --text-light-secondary: #475569; /* Texto secundário */
  --text-muted-light: #64748b; /* Texto suave */
  --border-light: #e2e8f0; /* Bordas claras */
  --shadow-light: rgba(15, 23, 42, 0.08); /* Sombra clara */

  --bg-color-rgb: 15, 23, 42;

  /* Success, Warning, Error colors for light theme */
  --success-light: #059669; /* Mantido */
  --success-light-bg: #ecfdf5; /* Mantido */
  --warning-light: #d97706; /* Mantido */
  --warning-light-bg: #fffbeb; /* Mantido */
  --error-light: #dc2626; /* Mantido */
  --error-light-bg: #fef2f2; /* Mantido */

  /* Dark Theme Colors - Optimized for contrast */
  --bg-dark: #0f172aff; /* Fundo escuro */
  --bg-dark-secondary: #1e293b; /* Fundo secundário escuro */
  --text-dark: #f1f5f9; /* Texto principal */
  --text-dark-secondary: #cbd5e1; /* Texto secundário */
  --text-muted-dark: #94a3b8; /* Texto suave */
  --border-dark: #334155; /* Bordas escuras */
  --shadow-dark: rgba(0, 0, 0, 0.3); /* Sombra escura */

  /* Dark theme interactive colors */
  --secondary-dark: #f8de21; /* Azul escuro para elementos secundários */
  --secondary-dark-hover: #e6cc1e; /* Azul claro para hover */
  --accent-dark: #f8de21; /* Amarelo para detalhes de destaque */
  --accent-dark-hover: #e6cc1e; /* Amarelo escurecido para hover */

  /* Success, Warning, Error colors for dark theme */
  --success-dark: #10b981; /* Mantido */
  --success-dark-bg: #064e3b; /* Mantido */
  --warning-dark: #f59e0b; /* Mantido */
  --warning-dark-bg: #451a03; /* Mantido */
  --error-dark: #ef4444; /* Mantido */
  --error-dark-bg: #450a0a; /* Mantido */

  /* Focus and interaction states */
  --focus-ring: #191a95; /* Azul escuro para anel de foco */
  --focus-ring-offset: #ffffff; /* Offset claro */
  --focus-ring-dark: #f8de21; /* Amarelo para anel de foco no tema dark */
  --focus-ring-offset-dark: #0f172a; /* Offset escuro */
}

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

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

/* Apply theme-specific colors */
body {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    sans-serif;
  line-height: 1.6;
  color: var(--text-light);
  background-color: var(--bg-light);
  transition: background-color 0.3s ease, color 0.3s ease;
}

body[data-theme="dark"] {
  background-color: var(--bg-dark);
  color: var(--text-dark);
}

/* Header with improved contrast */
.spr-header {
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--border-light);
  transition: all 0.3s ease;
  box-shadow: 0 1px 3px var(--shadow-light);
}

body[data-theme="dark"] .spr-header {
  background-color: rgba(15, 23, 42, 0.95);
  border-bottom-color: var(--border-dark);
  box-shadow: 0 1px 3px var(--shadow-dark);
}

.navbar-brand .logo {
  height: 50px;
  width: auto;
}

/* Hero with better contrast */
.spr-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.hero-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(
    135deg,
    var(--bg-light-secondary) 0%,
    rgba(37, 99, 235, 0.05) 100%
  );
  z-index: -1;
}

body[data-theme="dark"] .hero-background {
  background: linear-gradient(
    135deg,
    var(--bg-dark-secondary) 0%,
    rgba(59, 130, 246, 0.1) 100%
  );
}

.hero-title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1.5rem;
  color: var(--text-light);
}

body[data-theme="dark"] .hero-title {
  color: var(--text-dark);
}

.text-accent {
  color: var(--accent-color);
  background: linear-gradient(
    45deg,
    var(--accent-color),
    var(--secondary-color)
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body[data-theme="dark"] .text-accent {
  color: var(--accent-dark);
  background: linear-gradient(45deg, var(--accent-dark), var(--secondary-dark));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
