@import "tailwindcss"; /* ========================================== */ /* ROOT VARIABLES & THEME DEFINITIONS */ /* ========================================== */ :root { /* Brand Colors - consistent across themes */ --color-primary: #13AE3A; --color-primary-light: #4dc76a; --color-primary-dark: #0c8429; /* Brand Colors as HSL for better theme integration */ --primary: 135 80% 38%; --primary-light: 135 60% 85%; --primary-dark: 135 60% 18%; --color-secondary: #7e3af2; --color-secondary-light: #a78bfa; --color-secondary-dark: #5b21b6; --color-accent: #ff9800; --color-accent-light: #ffca28; --color-accent-dark: #ff8f00; /* Bright Daisy Yellow Accent - Dark Theme */ --color-accent-gold: #FFD700; /* Light Theme Yellow Accents */ --color-accent-amber: #d97706; --color-accent-mustard: #ca8a04; --color-accent-honey: #b7791f; --color-accent-light-bg: #fefce8; /* Light Theme Variables - Enhanced Modern Design */ --color-text: #0f172a; --color-text-light: #475569; --color-text-muted: #64748b; --color-bg: #ffffff; --color-bg-secondary: #f8fafc; --color-bg-tertiary: #f1f5f9; --color-bg-soft: #ffffff; --color-bg-warm: #fefefe; --color-border: #e2e8f0; --color-border-light: #f1f5f9; /* Light theme gradients */ --gradient-primary: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%); --gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); --gradient-soft: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%); --gradient-cool: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%); --gradient-hero: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%); /* Enhanced shadows */ --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05); --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); /* Typography */ --font-sans: "Inter", system-ui, sans-serif; --font-display: "Inter", system-ui, sans-serif; /* Layout */ --border-radius-sm: 0.25rem; --border-radius: 0.5rem; --border-radius-lg: 0.75rem; --border-radius-xl: 1rem; --shadow-focus: 0 0 0 3px rgba(19, 174, 58, 0.5); } /* ========================================== */ /* DARK THEME VARIABLES */ /* ========================================== */ .dark { /* Dark theme text colors */ --color-text: #f3f4f6; --color-text-light: #e5e7eb; --color-text-muted: #9ca3af; /* Dark theme backgrounds */ --color-bg: #0f172a; --color-bg-secondary: #1e293b; --color-bg-tertiary: #334155; --color-bg-soft: #1e293b; --color-bg-warm: #1e293b; /* Dark theme borders */ --color-border: #475569; --color-border-light: #374151; /* Dark theme primary colors */ --color-primary-light: #4dc76a; /* Dark theme gradients */ --gradient-primary: linear-gradient(135deg, #1e293b 0%, #334155 100%); --gradient-secondary: linear-gradient(135deg, #374151 0%, #475569 100%); --gradient-soft: linear-gradient(135deg, #1e293b 0%, #334155 100%); --gradient-cool: linear-gradient(135deg, #1e293b 0%, #374151 100%); --gradient-hero: linear-gradient(135deg, #1e293b 0%, #334155 100%); /* Dark theme shadows */ --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3); --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -1px rgba(0, 0, 0, 0.3); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -2px rgba(0, 0, 0, 0.3); --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 10px 10px -5px rgba(0, 0, 0, 0.3); } /* ========================================== */ /* HIGH CONTRAST THEMES */ /* ========================================== */ /* High Contrast Light Theme - Maximum Contrast for Low Vision */ .high-contrast-light { /* Text colors - Pure black for maximum contrast */ --color-text: #000000; --color-text-light: #000000; --color-text-muted: #333333; /* Background colors - Pure white */ --color-bg: #FFFFFF; --color-bg-secondary: #FFFFFF; --color-bg-tertiary: #F5F5F5; --color-bg-soft: #FFFFFF; --color-bg-warm: #FFFFFF; /* Border colors - Strong black borders */ --color-border: #000000; --color-border-light: #333333; /* Primary colors - Pure black for maximum contrast */ --color-primary: #000000; --color-primary-light: #000000; --color-primary-dark: #000000; /* Accent colors - Bright yellow for maximum visibility */ --color-accent-gold: #FFFF00; /* Enhanced shadows for high contrast */ --shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, 0.8); --shadow-md: 0 4px 8px -1px rgba(0, 0, 0, 0.8), 0 2px 6px -1px rgba(0, 0, 0, 0.6); --shadow-lg: 0 10px 20px -3px rgba(0, 0, 0, 0.8), 0 4px 8px -2px rgba(0, 0, 0, 0.6); --shadow-xl: 0 25px 35px -5px rgba(0, 0, 0, 0.8), 0 10px 15px -5px rgba(0, 0, 0, 0.6); } /* High Contrast Dark Theme - White on Black */ .high-contrast-dark { /* Text colors - Pure white for maximum contrast */ --color-text: #FFFFFF; --color-text-light: #FFFFFF; --color-text-muted: #CCCCCC; /* Background colors - Pure black */ --color-bg: #000000; --color-bg-secondary: #000000; --color-bg-tertiary: #1A1A1A; --color-bg-soft: #000000; --color-bg-warm: #000000; /* Border colors - Strong white borders */ --color-border: #FFFFFF; --color-border-light: #CCCCCC; /* Primary colors - Pure white for maximum contrast */ --color-primary: #FFFFFF; --color-primary-light: #FFFFFF; --color-primary-dark: #FFFFFF; /* Accent colors - Bright yellow */ --color-accent-gold: #FFFF00; /* Enhanced shadows for high contrast dark */ --shadow-sm: 0 2px 4px 0 rgba(255, 255, 255, 0.3); --shadow-md: 0 4px 8px -1px rgba(255, 255, 255, 0.3), 0 2px 6px -1px rgba(255, 255, 255, 0.2); --shadow-lg: 0 10px 20px -3px rgba(255, 255, 255, 0.3), 0 4px 8px -2px rgba(255, 255, 255, 0.2); --shadow-xl: 0 25px 35px -5px rgba(255, 255, 255, 0.3), 0 10px 15px -5px rgba(255, 255, 255, 0.2); } /* ========================================== */ /* GLOBAL FOCUS & ACCESSIBILITY */ /* ========================================== */ *:focus-visible { outline: none; box-shadow: var(--shadow-focus); } .skip-to-content { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0; } .skip-to-content:focus { position: fixed; top: 16px; left: 50%; transform: translateX(-50%); width: auto; height: auto; padding: 0.5rem 1rem; margin: 0; overflow: visible; clip: auto; white-space: normal; background-color: var(--color-primary); color: white; font-weight: medium; border-radius: var(--border-radius); z-index: 9999; } /* ========================================== */ /* BUTTON COMPONENTS */ /* ========================================== */ .btn { display: inline-flex; align-items: center; justify-content: center; border-radius: var(--border-radius); padding: 0.5rem 1rem; font-weight: 500; transition-property: background-color, border-color, color; transition-duration: 300ms; } .btn-primary { background-color: var(--color-primary); color: white; padding: 0.75rem 1.5rem; border-radius: var(--border-radius-lg); font-weight: 600; box-shadow: 0 4px 14px 0 rgba(19, 174, 58, 0.25); transition: all 0.3s ease; border: none; cursor: pointer; text-decoration: none; } .btn-primary:hover { background-color: var(--color-primary-dark); box-shadow: 0 6px 20px 0 rgba(19, 174, 58, 0.4); transform: translateY(-2px); } .btn-secondary { background-color: white; color: var(--color-primary); border: 1px solid var(--color-primary); } .btn-secondary:hover { background-color: #f9fafb; } .btn-accent { background-color: var(--color-accent); color: white; } .btn-accent:hover { background-color: var(--color-accent-dark); } .dark .btn-secondary { background-color: rgba(255, 255, 255, 0.1); border-color: var(--color-primary-light); color: var(--color-primary-light); } .dark .btn-secondary:hover { background-color: rgba(255, 255, 255, 0.2); } /* ========================================== */ /* CARD COMPONENTS */ /* ========================================== */ .card { background-color: var(--color-bg-soft); border-radius: var(--border-radius-lg); box-shadow: var(--shadow-md); overflow: hidden; border: 1px solid var(--color-border-light); transition: all 0.3s ease; } .card:hover { box-shadow: var(--shadow-lg); transform: translateY(-2px); } .dark .card { background-color: var(--color-bg-secondary); border: 1px solid var(--color-border); box-shadow: var(--shadow-md); } .dark .card:hover { background-color: var(--color-bg-tertiary); box-shadow: var(--shadow-lg); transform: translateY(-2px); } .card-image-placeholder { background-color: #f3f4f6; } .dark .card-image-placeholder { background-color: #4b5563; } .card-placeholder-text { color: #9ca3af; } .dark .card-placeholder-text { color: #d1d5db; } .card-title { color: var(--color-text); } .card-description { color: var(--color-text-light); } .card-date { color: var(--color-primary); } .dark .card-date { color: var(--color-primary-light); } .card-link { color: var(--color-primary); transition: color 0.3s ease; } .card-link:hover { color: var(--color-primary-dark); } .dark .card-link { color: var(--color-primary-light); } .dark .card-link:hover { color: #86efac; } /* ========================================== */ /* FORM COMPONENTS */ /* ========================================== */ .form-label { display: block; font-size: 0.875rem; font-weight: 500; color: #374151; margin-bottom: 0.5rem; } .dark .form-label { color: #f3f4f6; } .form-input { display: block; width: 100%; padding: 0.5rem 0.75rem; font-size: 1rem; line-height: 1.5; color: #111827; background-color: #ffffff; border: 1px solid #d1d5db; border-radius: 0.375rem; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } .form-input:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(19, 174, 58, 0.1); } .dark .form-input { color: #f9fafb; background-color: #374151; border-color: #6b7280; } .dark .form-input:focus { border-color: var(--color-primary-light); box-shadow: 0 0 0 3px rgba(19, 174, 58, 0.2); } .file-input { display: block; width: 100%; font-size: 0.875rem; color: #6b7280; } .file-input::file-selector-button { margin-right: 1rem; padding: 0.5rem 1rem; border: 0; border-radius: 0.375rem; background-color: var(--color-primary); color: white; font-size: 0.875rem; font-weight: 600; cursor: pointer; } .file-input::file-selector-button:hover { background-color: var(--color-primary-dark); } .dark .file-input { color: #d1d5db; } /* ========================================== */ /* LAYOUT & STRUCTURE */ /* ========================================== */ main { padding-top: 4rem; } .dark h2, .dark h3 { color: var(--color-text); } .section-heading { color: var(--color-text); } .section-text { color: var(--color-text-light); } /* ========================================== */ /* NAVIGATION COMPONENTS */ /* ========================================== */ .nav-bar { background-color: transparent; transition: all 0.3s ease-in-out; } .nav-bar-scrolled { background-color: var(--color-bg); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .dark .nav-bar-scrolled { box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); } .nav-logo { color: var(--color-primary); } .dark .nav-logo { color: var(--color-text); } .nav-link { color: var(--color-text); transition: all 0.2s ease; padding: 0.5rem 0.75rem; border-radius: 0.375rem; font-weight: 500; } .nav-link:hover { background-color: var(--color-bg-secondary); color: var(--color-primary); } .nav-link-active { background-color: var(--color-primary); color: white; font-weight: 700; } .nav-mobile-menu { background-color: var(--color-bg); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .dark .nav-mobile-menu { box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3); } .nav-mobile-button { color: var(--color-text); transition: all 0.2s ease; } .nav-mobile-button:hover { background-color: var(--color-bg-secondary); color: var(--color-primary); } /* ========================================== */ /* HIGH CONTRAST NAVIGATION FIXES */ /* ========================================== */ .high-contrast-light .nav-bar, .high-contrast-light .nav-bar-scrolled { background-color: #FFFFFF !important; border-bottom: 3px solid #000000 !important; } .high-contrast-light .nav-logo { color: #000000 !important; font-weight: 700 !important; } .high-contrast-light .nav-link { background-color: #FFFFFF !important; color: #000000 !important; border: 2px solid #000000 !important; font-weight: 700 !important; margin: 0 0.25rem !important; } .high-contrast-light .nav-link:hover { background-color: #000000 !important; color: #FFFFFF !important; } .high-contrast-light .nav-link-active { background-color: #000000 !important; color: #FFFFFF !important; border: 2px solid #000000 !important; } .high-contrast-dark .nav-bar, .high-contrast-dark .nav-bar-scrolled { background-color: #000000 !important; border-bottom: 3px solid #FFFFFF !important; } .high-contrast-dark .nav-logo { color: #FFFFFF !important; font-weight: 700 !important; } .high-contrast-dark .nav-link { background-color: #000000 !important; color: #FFFFFF !important; border: 2px solid #FFFFFF !important; font-weight: 700 !important; margin: 0 0.25rem !important; } .high-contrast-dark .nav-link:hover { background-color: #FFFFFF !important; color: #000000 !important; } .high-contrast-dark .nav-link-active { background-color: #FFFFFF !important; color: #000000 !important; border: 2px solid #FFFFFF !important; } .high-contrast-light .nav-mobile-button { background-color: #FFFFFF !important; color: #000000 !important; border: 2px solid #000000 !important; } .high-contrast-dark .nav-mobile-button { background-color: #000000 !important; color: #FFFFFF !important; border: 2px solid #FFFFFF !important; } .high-contrast-light .nav-mobile-menu { background-color: #FFFFFF !important; border: 3px solid #000000 !important; } .high-contrast-dark .nav-mobile-menu { background-color: #000000 !important; border: 3px solid #FFFFFF !important; } /* ========================================== */ /* HERO COMPONENTS */ /* ========================================== */ .hero-section { background-color: var(--color-bg); color: var(--color-text); } .hero-title { color: var(--color-text); } .hero-subtitle { color: var(--color-text-light); } .hero-subtitle-image { color: #e5e7eb; } .hero-button-gold-accent { border: 2px solid var(--color-accent-honey); transition: all 0.3s ease; } .hero-button-gold-accent:hover { box-shadow: 0 0 0 1px var(--color-accent-honey); } .dark .hero-button-gold-accent { border-color: var(--color-accent-gold); } .dark .hero-button-gold-accent:hover { box-shadow: 0 0 0 1px var(--color-accent-gold); } .cta-button-primary.hero-button-gold-accent { background-color: white; color: var(--color-primary); border: 2px solid var(--color-accent-honey); } .cta-button-primary.hero-button-gold-accent:hover { background-color: #f9fafb; box-shadow: 0 0 0 1px var(--color-accent-honey); } .dark .cta-button-primary.hero-button-gold-accent { background-color: rgba(255, 215, 0, 0.1); color: var(--color-text); border-color: var(--color-accent-gold); } .dark .cta-button-primary.hero-button-gold-accent:hover { background-color: rgba(255, 215, 0, 0.2); box-shadow: 0 0 0 1px var(--color-accent-gold); } /* ========================================== */ /* CTA COMPONENTS */ /* ========================================== */ .cta-section { background: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%); } .dark .cta-section { background: linear-gradient(135deg, #1e293b 0%, #334155 100%); } .cta-title { color: white; } .cta-description { color: #dcfce7; } .dark .cta-description { color: var(--color-text-light); } .cta-button-primary { background-color: white; color: var(--color-primary); transition: all 0.3s ease; } .cta-button-primary:hover { background-color: #f9fafb; } .dark .cta-button-primary { background-color: #f3f4f6; color: #1f2937; } .dark .cta-button-primary:hover { background-color: white; } .cta-button-secondary { background-color: transparent; color: white; border: 2px solid white; transition: all 0.3s ease; } .cta-button-secondary:hover { background-color: white; color: var(--color-primary); } .dark .cta-button-secondary { border-color: var(--color-text-light); color: var(--color-text-light); } .dark .cta-button-secondary:hover { background-color: var(--color-text-light); color: var(--color-bg); } /* ========================================== */ /* FOOTER COMPONENTS */ /* ========================================== */ .footer { background-color: var(--color-bg); border-top: 1px solid var(--color-border); } .footer-title { color: var(--color-primary); } .footer-text { color: var(--color-text-muted); } .footer-heading { color: var(--color-text); } .footer-link { color: var(--color-text-muted); transition: color 0.3s ease; } .footer-link:hover { color: var(--color-primary); } .footer-social-icon { color: var(--color-text-muted); transition: color 0.3s ease; } .footer-social-icon:hover { color: var(--color-primary); } .footer-copyright { color: var(--color-text-muted); border-top: 1px solid var(--color-border); } /* ========================================== */ /* VIDEO COMPONENTS */ /* ========================================== */ .video-container { background-color: var(--color-bg); } .dark .video-container { background-color: #374151; } .video-placeholder { background-color: #f3f4f6; } .dark .video-placeholder { background-color: #4b5563; } .video-placeholder-text { color: var(--color-text-light); } .video-container-gold { border: 2px solid var(--color-accent-honey); transition: all 0.3s ease; } .dark .video-container-gold { border-color: var(--color-accent-gold); } /* ========================================== */ /* MEMBERSHIP COMPONENTS */ /* ========================================== */ .benefit-card-title { color: var(--color-text); } .benefit-card-description { color: var(--color-text-light); } /* ========================================== */ /* GOLD ACCENT SYSTEM */ /* ========================================== */ /* Event Card Gold Accents */ .event-card-gold-border { border-left: 3px solid transparent; transition: all 0.3s ease; } .event-card-gold-border:hover { border-left-color: var(--color-accent-honey); } .event-card-title-gold { transition: color 0.3s ease; } .event-card-gold-border:hover .event-card-title-gold { color: var(--color-accent-honey); } .dark .event-card-gold-border:hover { border-left-color: var(--color-accent-gold); } .dark .event-card-gold-border:hover .event-card-title-gold { color: var(--color-accent-gold); } /* Light Theme Yellow Accent Classes */ .light-amber-accent { border: 2px solid transparent; transition: all 0.3s ease; } .light-amber-accent { border-color: var(--color-accent-amber); } .light-amber-border { border-left: 3px solid transparent; transition: all 0.3s ease; } .light-amber-border:hover { border-left-color: var(--color-accent-amber); } .light-amber-title { transition: color 0.3s ease; } .light-amber-border:hover .light-amber-title { color: var(--color-accent-amber); } .blue-section-yellow-accent { background: linear-gradient(135deg, #13AE3A 0%, #4dc76a 100%); color: white; } .blue-card-yellow-border { background-color: var(--color-primary); color: white; border: 2px solid var(--color-accent-gold); transition: all 0.3s ease; } .blue-card-yellow-border:hover { box-shadow: 0 0 0 2px var(--color-accent-gold); transform: translateY(-2px); } .yellow-on-blue-title { color: var(--color-accent-gold); } .yellow-tint-section { background-color: var(--color-accent-light-bg); border: 1px solid #fde047; } .yellow-tint-card { background: linear-gradient(135deg, #fefce8 0%, #fef3c7 100%); border: 1px solid #fbbf24; transition: all 0.3s ease; } .yellow-tint-card:hover { box-shadow: 0 4px 12px rgba(251, 191, 36, 0.2); transform: translateY(-2px); } .mustard-accent { border: 2px solid var(--color-accent-mustard); transition: all 0.3s ease; } .mustard-border { border-left: 3px solid transparent; transition: all 0.3s ease; } .mustard-border:hover { border-left-color: var(--color-accent-mustard); } .mustard-title { transition: color 0.3s ease; } .mustard-border:hover .mustard-title { color: var(--color-accent-mustard); } .honey-accent { border: 2px solid var(--color-accent-honey); transition: all 0.3s ease; } .honey-border { border-left: 3px solid transparent; transition: all 0.3s ease; } .honey-border:hover { border-left-color: var(--color-accent-honey); } .honey-title { transition: color 0.3s ease; } .honey-border:hover .honey-title { color: var(--color-accent-honey); } /* ========================================== */ /* DARK THEME OVERRIDES */ /* ========================================== */ .dark .light-amber-accent, .dark .light-amber-border, .dark .mustard-accent, .dark .mustard-border, .dark .honey-accent, .dark .honey-border { border-color: transparent; } .dark .light-amber-border:hover, .dark .mustard-border:hover, .dark .honey-border:hover { border-left-color: transparent; } .dark .light-amber-border:hover .light-amber-title, .dark .mustard-border:hover .mustard-title, .dark .honey-border:hover .honey-title { color: var(--color-text); } .dark .yellow-tint-section { background-color: var(--color-bg-secondary); border: 1px solid var(--color-border); } .dark .yellow-tint-card { background: var(--color-bg-secondary); border: 1px solid var(--color-border); } .dark .blue-section-yellow-accent { background: linear-gradient(135deg, #0c3318 0%, #134d24 100%); } /* ========================================== */ /* UTILITY CLASSES */ /* ========================================== */ .bg-color-bg { background-color: var(--color-bg); } .bg-color-bg-secondary { background-color: var(--color-bg-secondary); } /* ========================================== */ /* FEATURED BADGE COMPONENT */ /* ========================================== */ .featured-badge { background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); color: white; font-weight: 600; letter-spacing: 0.025em; box-shadow: 0 2px 8px rgba(19, 174, 58, 0.25); border: 1px solid rgba(255, 255, 255, 0.2); transition: all 0.3s ease; text-transform: uppercase; font-size: 0.75rem; } .featured-badge:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(19, 174, 58, 0.35); } .dark .featured-badge { background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%); box-shadow: 0 2px 8px rgba(19, 174, 58, 0.25); } .dark .featured-badge:hover { box-shadow: 0 4px 12px rgba(19, 174, 58, 0.35); } /* ========================================== */ /* HIGH CONTRAST COMPONENT ENHANCEMENTS */ /* ========================================== */ .high-contrast-light .card, .high-contrast-dark .card { border: 3px solid var(--color-border); font-weight: 600; } .high-contrast-light .btn-primary, .high-contrast-dark .btn-primary { border: 3px solid var(--color-border); font-weight: 700; font-size: 1.1rem; } .high-contrast-light .card-title, .high-contrast-dark .card-title { font-weight: 700; font-size: 1.3rem; } .high-contrast-light *:focus-visible, .high-contrast-dark *:focus-visible { outline: 4px solid var(--color-accent-gold); outline-offset: 2px; box-shadow: 0 0 0 2px var(--color-bg), 0 0 0 6px var(--color-accent-gold); } .high-contrast-light .form-label { color: #000000 !important; font-weight: 700 !important; } .high-contrast-dark .form-label { color: #FFFFFF !important; font-weight: 700 !important; } .high-contrast-light input[type="checkbox"] { border: 3px solid #000000 !important; background-color: #FFFFFF !important; } .high-contrast-dark input[type="checkbox"] { border: 3px solid #FFFFFF !important; background-color: #000000 !important; accent-color: #FFFFFF !important; } /* ========================================== */ /* HIGH CONTRAST BUTTON VISIBILITY FIXES */ /* ========================================== */ /* High Contrast Dark Mode Button Fixes */ .high-contrast-dark .btn-primary { background-color: #FFFFFF !important; color: #000000 !important; border: 3px solid #FFFFFF !important; } .high-contrast-dark .btn-primary:hover { background-color: #CCCCCC !important; color: #000000 !important; } .high-contrast-dark .cta-button-primary { background-color: #FFFFFF !important; color: #000000 !important; border: 3px solid #FFFFFF !important; } .high-contrast-dark .cta-button-primary:hover { background-color: #CCCCCC !important; color: #000000 !important; } .high-contrast-dark .btn-secondary { background-color: #000000 !important; color: #FFFFFF !important; border: 3px solid #FFFFFF !important; } .high-contrast-dark .btn-secondary:hover { background-color: #1A1A1A !important; color: #FFFFFF !important; } .high-contrast-dark .cta-button-secondary { background-color: #000000 !important; color: #FFFFFF !important; border: 3px solid #FFFFFF !important; } .high-contrast-dark .cta-button-secondary:hover { background-color: #1A1A1A !important; color: #FFFFFF !important; } /* High Contrast Light Mode Button Fixes */ .high-contrast-light .btn-primary { background-color: #000000 !important; color: #FFFFFF !important; border: 3px solid #000000 !important; } .high-contrast-light .btn-primary:hover { background-color: #333333 !important; color: #FFFFFF !important; } .high-contrast-light .cta-button-primary { background-color: #000000 !important; color: #FFFFFF !important; border: 3px solid #000000 !important; } .high-contrast-light .cta-button-primary:hover { background-color: #333333 !important; color: #FFFFFF !important; } .high-contrast-light .btn-secondary { background-color: #FFFFFF !important; color: #000000 !important; border: 3px solid #000000 !important; } .high-contrast-light .btn-secondary:hover { background-color: #F5F5F5 !important; color: #000000 !important; } .high-contrast-light .cta-button-secondary { background-color: #FFFFFF !important; color: #000000 !important; border: 3px solid #000000 !important; } .high-contrast-light .cta-button-secondary:hover { background-color: #F5F5F5 !important; color: #000000 !important; } /* ========================================== */ /* HIGH CONTRAST CTA SECTION FIXES */ /* ========================================== */ /* High Contrast Light Mode CTA Sections */ .high-contrast-light .cta-section { background: #FFFFFF !important; color: #000000 !important; border: 3px solid #000000 !important; } .high-contrast-light .cta-title { color: #000000 !important; } .high-contrast-light .cta-description { color: #000000 !important; } /* High Contrast Dark Mode CTA Sections */ .high-contrast-dark .cta-section { background: #000000 !important; color: #FFFFFF !important; border: 3px solid #FFFFFF !important; } .high-contrast-dark .cta-title { color: #FFFFFF !important; } .high-contrast-dark .cta-description { color: #FFFFFF !important; } /* High Contrast Blue Section Overrides */ .high-contrast-light .blue-section-yellow-accent { background: #FFFFFF !important; color: #000000 !important; border: 3px solid #000000 !important; } .high-contrast-dark .blue-section-yellow-accent { background: #000000 !important; color: #FFFFFF !important; border: 3px solid #FFFFFF !important; } /* ========================================== */ /* NAVIGATION THEME SELECTOR VISIBILITY */ /* ========================================== */ /* Main navigation theme selector button visibility */ .nav-bar button[aria-label*="Theme"], .nav-bar #theme-selector-button { color: var(--color-text) !important; background-color: rgba(0, 0, 0, 0.1) !important; border: 1px solid var(--color-border) !important; border-radius: 0.5rem !important; } .nav-bar button[aria-label*="Theme"]:hover, .nav-bar #theme-selector-button:hover { background-color: var(--color-bg-secondary) !important; color: var(--color-primary) !important; } /* Scrolled navigation theme selector */ .nav-bar-scrolled button[aria-label*="Theme"], .nav-bar-scrolled #theme-selector-button { background-color: rgba(0, 0, 0, 0.05) !important; border: 1px solid var(--color-border) !important; } /* Dark theme navigation theme selector */ .dark .nav-bar button[aria-label*="Theme"], .dark .nav-bar #theme-selector-button { background-color: rgba(255, 255, 255, 0.15) !important; color: var(--color-text) !important; } .dark .nav-bar button[aria-label*="Theme"]:hover, .dark .nav-bar #theme-selector-button:hover { background-color: var(--color-bg-secondary) !important; } /* High contrast theme selectors in navigation */ .high-contrast-light .nav-bar button[aria-label*="Theme"], .high-contrast-light .nav-bar #theme-selector-button { background-color: #000000 !important; color: #FFFFFF !important; border: 3px solid #000000 !important; } .high-contrast-dark .nav-bar button[aria-label*="Theme"], .high-contrast-dark .nav-bar #theme-selector-button { background-color: #FFFFFF !important; color: #000000 !important; border: 3px solid #FFFFFF !important; }