/* ============================================
   MEFEMA Systems Construções - ESTILOS GLOBAIS
   ============================================ */

/* CSS Variables - Cores */
:root {
    /* Cores Primárias */
    --color-primary: #1B8B6F;
    --color-primary-dark: #0D5F4F;
    --color-blue: #1E40AF;
    --color-blue-dark: #1E3A8A;
    --color-accent: #CCFF00;
    
    /* Cores Neutras - Light Mode */
    --color-bg: #FFFFFF;
    --color-bg-secondary: #F5F5F5;
    --color-text: #333333;
    --color-text-secondary: #666666;
    --color-border: #E0E0E0;
    
    /* Cores Dark Mode */
    --color-bg-dark: #1a1a1a;
    --color-bg-secondary-dark: #2a2a2a;
    --color-text-dark: #f0f0f0;
    --color-text-secondary-dark: #b0b0b0;
    --color-border-dark: #404040;
    
    /* Espaçamento */
    --spacing-xs: 0.5rem;
    --spacing-sm: 1rem;
    --spacing-md: 1.5rem;
    --spacing-lg: 2rem;
    --spacing-xl: 3rem;
    --spacing-2xl: 4rem;
    
    /* Border Radius */
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    
    /* Sombras */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    
    /* Transições */
    --transition-fast: 150ms ease-in-out;
    --transition-base: 300ms ease-in-out;
    --transition-slow: 500ms ease-in-out;
}

/* Dark Mode */
body.dark-mode {
    --color-bg: var(--color-bg-dark);
    --color-bg-secondary: var(--color-bg-secondary-dark);
    --color-text: var(--color-text-dark);
    --color-text-secondary: var(--color-text-secondary-dark);
    --color-border: var(--color-border-dark);
}

/* ============================================
   RESET E ESTILOS BASE
   ============================================ */

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

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text);
    background-color: var(--color-bg);
    transition: background-color var(--transition-base), color var(--transition-base);
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: var(--spacing-md);
}

h1 { font-size: 3rem; }
h2 { font-size: 2.25rem; }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }

p { margin-bottom: var(--spacing-md); }

a {
    color: var(--color-blue);
    text-decoration: none;
    transition: color var(--transition-fast);
}

a:hover {
    color: var(--color-blue-dark);
}

/* Custom Classes */
.hero-gradient {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-blue) 100%);
}

.text-brand-blue { color: var(--color-blue); }
.bg-brand-blue { background-color: var(--color-blue); }
.hover\:text-brand-blue:hover { color: var(--color-blue); }

/* Card Hover Effect */
.card-hover {
    transition: all var(--transition-base);
}
.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-xl);
}

/* Glass Navigation */
.glass-nav {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--color-border);
}
body.dark-mode .glass-nav {
    background: rgba(26, 26, 26, 0.8);
    border-bottom: 1px solid var(--color-border-dark);
}
