/**
 * EmpowerTech Consulting LLC - Brand Color System
 * Based on the official brand color scheme
 * 
 * Color Meanings:
 * - Security (Navy): Trust, reliability, professionalism
 * - Trust (Teal): Healthcare, innovation, clarity  
 * - Strength (Black): Authority, sophistication, power
 * - Balance (Gray): Stability, neutrality, balance
 * - Quality (Gold): Excellence, premium service, success
 * - Growth (Green): Progress, health, growth
 */

:root {
    /* Primary Brand Colors */
    --brand-security: #05123D;     /* Deep Navy - Primary brand color */
    --brand-trust: #006699;        /* Teal - Secondary brand color */
    --brand-strength: #000000;     /* Black - Authority color */
    --brand-balance: #4D4D4D;      /* Gray - Neutral color */
    --brand-quality: #CB9915;      /* Gold - Accent color */
    --brand-growth: #117537;       /* Green - Success color */
    
    /* Color Variants - Lighter/Darker versions for UI elements */
    --brand-security-light: #0A1B4D;
    --brand-security-lighter: #1A2B5D;
    --brand-security-dark: #030B28;
    
    --brand-trust-light: #0077AA;
    --brand-trust-lighter: #0088BB;
    --brand-trust-dark: #005588;
    
    --brand-balance-light: #666666;
    --brand-balance-lighter: #808080;
    --brand-balance-dark: #333333;
    
    --brand-quality-light: #D4A925;
    --brand-quality-lighter: #DDB935;
    --brand-quality-dark: #B38910;
    
    --brand-growth-light: #1A8542;
    --brand-growth-lighter: #22954D;
    --brand-growth-dark: #0E5F2A;
    
    /* Semantic Color Assignments */
    --primary-color: var(--brand-security);
    --primary-dark: var(--brand-security-dark);
    --primary-light: var(--brand-security-light);
    
    --secondary-color: var(--brand-trust);
    --secondary-dark: var(--brand-trust-dark);
    --secondary-light: var(--brand-trust-light);
    
    --accent-color: var(--brand-quality);
    --accent-dark: var(--brand-quality-dark);
    --accent-light: var(--brand-quality-light);
    
    --success-color: var(--brand-growth);
    --success-dark: var(--brand-growth-dark);
    --success-light: var(--brand-growth-light);
    
    --neutral-color: var(--brand-balance);
    --neutral-dark: var(--brand-balance-dark);
    --neutral-light: var(--brand-balance-light);
    
    /* Text Colors */
    --text-primary: var(--brand-security);
    --text-secondary: var(--brand-balance);
    --text-light: var(--brand-balance-lighter);
    --text-white: #FFFFFF;
    --text-accent: var(--brand-quality);
    
    /* Background Colors */
    --background-primary: #FFFFFF;
    --background-secondary: #F8F9FA;
    --background-light: #FCFCFC;
    --background-dark: var(--brand-security);
    --background-accent: var(--brand-trust);
    --background-neutral: #F5F5F5;
    
    /* Border Colors */
    --border-primary: var(--brand-balance-lighter);
    --border-secondary: #E0E0E0;
    --border-accent: var(--brand-trust-light);
    --border-light: #F0F0F0;
    
    /* Shadow Colors using brand colors */
    --shadow-primary: rgba(5, 18, 61, 0.1);
    --shadow-secondary: rgba(0, 102, 153, 0.1);
    --shadow-neutral: rgba(77, 77, 77, 0.1);
    
    /* Button Colors */
    --btn-primary-bg: var(--brand-security);
    --btn-primary-hover: var(--brand-security-light);
    --btn-primary-text: var(--text-white);
    
    --btn-secondary-bg: var(--brand-trust);
    --btn-secondary-hover: var(--brand-trust-light);
    --btn-secondary-text: var(--text-white);
    
    --btn-accent-bg: var(--brand-quality);
    --btn-accent-hover: var(--brand-quality-light);
    --btn-accent-text: var(--brand-security);
    
    /* Form Colors */
    --form-border: var(--border-primary);
    --form-border-focus: var(--brand-trust);
    --form-border-error: #DC3545;
    --form-border-success: var(--brand-growth);
    --form-background: var(--background-primary);
    
    /* Alert Colors */
    --alert-success-bg: rgba(17, 117, 55, 0.1);
    --alert-success-border: var(--brand-growth);
    --alert-success-text: var(--brand-growth-dark);
    
    --alert-error-bg: rgba(220, 53, 69, 0.1);
    --alert-error-border: #DC3545;
    --alert-error-text: #721C24;
    
    --alert-info-bg: rgba(0, 102, 153, 0.1);
    --alert-info-border: var(--brand-trust);
    --alert-info-text: var(--brand-trust-dark);
    
    /* Navigation Colors */
    --nav-bg: var(--background-primary);
    --nav-text: var(--text-primary);
    --nav-text-hover: var(--brand-trust);
    --nav-text-active: var(--brand-security);
    --nav-border: var(--border-light);
    
    /* Card Colors */
    --card-bg: var(--background-primary);
    --card-border: var(--border-secondary);
    --card-shadow: var(--shadow-neutral);
    --card-hover-shadow: var(--shadow-primary);
    
    /* Gradient Definitions */
    --gradient-primary: linear-gradient(135deg, var(--brand-security) 0%, var(--brand-security-light) 100%);
    --gradient-secondary: linear-gradient(135deg, var(--brand-trust) 0%, var(--brand-trust-light) 100%);
    --gradient-accent: linear-gradient(135deg, var(--brand-quality) 0%, var(--brand-quality-light) 100%);
    --gradient-hero: linear-gradient(135deg, var(--brand-security) 0%, var(--brand-trust) 100%);
    
    /* Common shadows using brand colors */
    --shadow-sm: 0 2px 4px var(--shadow-neutral);
    --shadow: 0 4px 6px -1px var(--shadow-primary), 0 2px 4px -1px var(--shadow-neutral);
    --shadow-md: 0 10px 15px -3px var(--shadow-primary), 0 4px 6px -2px var(--shadow-neutral);
    --shadow-lg: 0 20px 25px -5px var(--shadow-primary), 0 10px 10px -5px var(--shadow-neutral);
    --shadow-xl: 0 25px 50px -12px var(--shadow-primary);
    
    /* Border radius */
    --radius-sm: 4px;
    --radius: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 9999px;
    
    /* Spacing system */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing: 16px;
    --spacing-md: 24px;
    --spacing-lg: 32px;
    --spacing-xl: 48px;
    --spacing-2xl: 64px;
    --spacing-3xl: 96px;
    
    /* Typography scales */
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.875rem;
    --font-size-base: 1rem;
    --font-size-lg: 1.125rem;
    --font-size-xl: 1.25rem;
    --font-size-2xl: 1.5rem;
    --font-size-3xl: 1.875rem;
    --font-size-4xl: 2.25rem;
    --font-size-5xl: 3rem;
    
    /* Font weights */
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
}

/* Dark mode support (optional - can be enabled later) */
@media (prefers-color-scheme: dark) {
    :root {
        --background-primary: var(--brand-security);
        --background-secondary: var(--brand-security-light);
        --text-primary: var(--text-white);
        --text-secondary: var(--brand-balance-lighter);
        --card-bg: var(--brand-security-light);
        --nav-bg: var(--brand-security);
    }
}

/* High contrast mode support for accessibility */
@media (prefers-contrast: high) {
    :root {
        --brand-balance: #404040;
        --brand-balance-lighter: #606060;
        --text-secondary: #404040;
        --border-primary: #404040;
    }
}