:root {
  /* Cores */
  --color-white: #FFFFFF;
  --color-ice: #F9FAFB;
  --color-gray-50: #F3F4F6;
  --color-green: #00A86B;
  --color-green-dark: #008A59;
  --color-green-glow: rgba(0, 168, 107, 0.35);
  --color-green-light: rgba(0, 168, 107, 0.08);
  --color-green-border: rgba(0, 168, 107, 0.18);
  --color-black: #0F172A;
  --color-graphite: #334155;
  --color-gray: #64748B;

  /* Gradientes */
  --gradient-page: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 40%, #FFFFFF 100%);
  --gradient-hero-mesh:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(0, 168, 107, 0.09) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 20% 80%, rgba(0, 168, 107, 0.05) 0%, transparent 55%),
    radial-gradient(ellipse 40% 40% at 90% 70%, rgba(15, 23, 42, 0.03) 0%, transparent 50%),
    linear-gradient(180deg, #FFFFFF 0%, #FAFBFC 50%, #FFFFFF 100%);
  --gradient-about:
    radial-gradient(ellipse 70% 50% at 0% 50%, rgba(0, 168, 107, 0.06) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 100% 30%, rgba(0, 168, 107, 0.04) 0%, transparent 55%),
    linear-gradient(180deg, #FFFFFF 0%, rgba(0, 168, 107, 0.02) 35%, rgba(0, 168, 107, 0.05) 55%, #FFFFFF 100%);
  --gradient-green: linear-gradient(135deg, #00C97E 0%, #00A86B 45%, #008A59 100%);
  --gradient-green-soft: linear-gradient(135deg, rgba(0, 168, 107, 0.14) 0%, rgba(0, 138, 89, 0.06) 100%);
  --gradient-text: linear-gradient(135deg, #00A86B 0%, #008A59 60%, #0F172A 100%);
  --gradient-card: linear-gradient(160deg, rgba(255,255,255,0.97) 0%, rgba(249,250,251,0.85) 100%);
  --gradient-card-hover: linear-gradient(160deg, rgba(255,255,255,1) 0%, rgba(240,253,248,0.9) 100%);
  --gradient-glass: linear-gradient(135deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.72) 100%);
  --gradient-image-ring: linear-gradient(135deg, rgba(0,168,107,0.4) 0%, rgba(0,138,89,0.1) 50%, rgba(0,168,107,0.3) 100%);

  /* Tipografia */
  --font-heading: 'Montserrat', sans-serif;
  --font-body: 'Inter', sans-serif;

  /* Espaçamento */
  --container-max: 1440px;
  --section-padding-x: 120px;
  --section-padding-top: 160px;
  --section-padding-bottom: 180px;

  /* Radius */
  --radius-sm: 18px;
  --radius-md: 24px;
  --radius-lg: 28px;

  /* Sombras */
  --shadow-xs: 0 2px 8px rgba(15, 23, 42, 0.04);
  --shadow-soft: 0 4px 24px rgba(15, 23, 42, 0.06);
  --shadow-card: 0 12px 48px rgba(15, 23, 42, 0.08);
  --shadow-float: 0 24px 64px rgba(15, 23, 42, 0.12);
  --shadow-glow: 0 0 60px rgba(0, 168, 107, 0.2);
  --shadow-btn: 0 8px 32px rgba(0, 168, 107, 0.35);

  /* Glass */
  --glass-bg: rgba(255, 255, 255, 0.72);
  --glass-border: rgba(255, 255, 255, 0.8);
  --glass-blur: blur(20px);

  /* Transições */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --transition-smooth: 0.7s var(--ease-out);
  --transition-fast: 0.35s var(--ease-out);
}

@media (max-width: 1024px) {
  :root {
    --section-padding-x: 48px;
    --section-padding-top: 100px;
    --section-padding-bottom: 120px;
  }
}

@media (max-width: 768px) {
  :root {
    --section-padding-x: 24px;
    --section-padding-top: 80px;
    --section-padding-bottom: 100px;
  }
}
