:root {
    /* Design Tokens - StarGas Airy Shared */
    --bg: #FFFFFF;
    --bg-soft: #F7FAFF;
    --surface: #FFFFFF;
    --surface-2: #F9FBFF;
    --text: #0B1220;
    --text-2: #334155;
    --muted: #64748B;
    --border: rgba(15, 23, 42, 0.08);
    --shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
    --shadow-soft: 0 8px 20px rgba(15, 23, 42, 0.06);
    --primary: #0D5B8C;
    --accent: #F4A41B;
    --primary-gradient: linear-gradient(90deg, rgba(13,91,140,0.90), rgba(13,91,140,0.65));
    --cta-gradient: linear-gradient(90deg, rgba(244,164,27,1), rgba(244,164,27,0.65));
    --blue-tint-bg: rgba(13, 91, 140, 0.08);
}

.dark {
    --bg: #071018;
    --bg-soft: #0A1621;
    --surface: rgba(255, 255, 255, 0.06);
    --surface-2: rgba(255, 255, 255, 0.04);
    --text: #EAF2FF;
    --text-2: rgba(234, 242, 255, 0.82);
    --muted: rgba(234, 242, 255, 0.62);
    --border: rgba(234, 242, 255, 0.10);
    --shadow: 0 14px 36px rgba(0, 0, 0, 0.45);
    --shadow-soft: 0 10px 24px rgba(0, 0, 0, 0.35);
    --primary: #4BA3D8;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { 
    background-color: var(--bg); 
    color: var(--text); 
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

/* Layout Core */
.container-airy { max-width: 1120px; margin: 0 auto; padding: 0 24px; }
.section-padding { padding: clamp(64px, 8vw, 96px) 0; }
section[id] { scroll-margin-top: 100px; }

/* Typography */
h1 { font-size: clamp(32px, 5vw, 56px); font-weight: 700; line-height: 1.1; }
h2 { font-size: clamp(24px, 4vw, 36px); font-weight: 700; line-height: 1.2; }
[x-cloak] { display: none !important; }

/* Transitions */
body {
    transition: background-color 0.4s ease, color 0.4s ease;
}

a, button, .card-saas, input, select {
    transition: all 0.2s ease;
}

/* Theme Helpers */
.dark-block { display: none; }
.dark .dark-block { display: block !important; }
.dark .dark-none { display: none !important; }

/* Safe Area Filler para iOS */
.safe-area-top {
    padding-top: env(safe-area-inset-top);
}

/* Textura de Ruído Premium */
/* Scroll Reveal Animation Classes */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

.dark .bg-white { background-color: var(--surface) !important; }
.dark .text-dark, .dark .fw-bold { color: var(--text) !important; }
.dark .text-muted { color: var(--muted) !important; }
.dark .border { border-color: var(--border) !important; }
.dark .btn-light { background-color: var(--surface-2) !important; color: var(--text) !important; }
.dark svg { stroke: currentColor; }

/* Menu hambúrguer no modo escuro */
.dark .navbar-toggler-icon {
    filter: invert(1) brightness(100%) contrast(100%);
}

/* Fix para Dropdowns em Dark Mode */
.dark select option {
    background-color: #071018; /* Cor --bg sólida */
    color: #EAF2FF; /* Cor --text */
}

/* Custom Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: var(--primary); }