/* Global Dynamic Theme Palette Mappings */
    :root[data-theme="teal"] {
      --primary: #0d9488;
      --primary-hover: #0f766e;
      --primary-light: #f0fdf4;
      --primary-dark: #042f2e;
      --accent: #f59e0b;
      --accent-hover: #d97706;
      --bg-hero: linear-gradient(135deg, #020617 0%, #0f172a 50%, #042f2e 100%);
      --text-accent: #2dd4bf;
    }

    /* Apply CSS Theme Variable Utility Classes */
    .theme-primary-bg { background-color: var(--primary) !important; }
    .theme-primary-hover:hover { background-color: var(--primary-hover) !important; }
    .theme-primary-text { color: var(--primary) !important; }
    .theme-primary-border { border-color: var(--primary) !important; }
    .theme-primary-light-bg { background-color: var(--primary-light) !important; }
    .theme-accent-text { color: var(--text-accent) !important; }
    
    /* Dynamic Theme Transitions */
    body, section, nav, div, button, h1, h2, h3, span {
      transition: background-color 0.4s ease, border-color 0.4s ease, color 0.4s ease;
    }

    #preloader {
      transition: opacity 0.6s ease-out, visibility 0.6s ease-out;
    }

    /* Scroll Reveal Engine */
    .reveal {
      opacity: 0;
      transform: translateY(40px) scale(0.97);
      transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
      will-change: opacity, transform;
    }
    .reveal.active {
      opacity: 1;
      transform: translateY(0) scale(1);
    }

    .delay-100 { transition-delay: 100ms; }
    .delay-200 { transition-delay: 200ms; }
    .delay-300 { transition-delay: 300ms; }
    .delay-400 { transition-delay: 400ms; }

    /* Shimmer Effect */
    @keyframes shimmer {
      100% { transform: translateX(100%); }
    }
    .shimmer-btn {
      position: relative;
      overflow: hidden;
    }
    .shimmer-btn::after {
      position: absolute;
      top: 0; right: 0; bottom: 0; left: 0;
      transform: translateX(-100%);
      background-image: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0,
        rgba(255, 255, 255, 0.25) 20%,
        rgba(255, 255, 255, 0.5) 60%,
        rgba(255, 255, 255, 0)
      );
      animation: shimmer 3s infinite;
      content: '';
    }

    /* Float Keyframes */
    @keyframes floatSlow {
      0%, 100% { transform: translateY(0px) rotate(0deg); }
      50% { transform: translateY(-8px) rotate(0.5deg); }
    }
    .animate-float { animation: floatSlow 5s ease-in-out infinite; }

    /* Glassmorphism Surfaces */
    .glass-card {
      background: rgba(255, 255, 255, 0.88);
      backdrop-filter: blur(12px);
      border: 1px solid rgba(255, 255, 255, 0.4);
    }
    .glass-card-dark {
      background: rgba(15, 23, 42, 0.85);
      backdrop-filter: blur(16px);
      border: 1px solid rgba(255, 255, 255, 0.1);
    }

    /* 3D Dynamic Card Elevation */
    .card-3d-hover {
      transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .card-3d-hover:hover {
      transform: translateY(-8px) scale(1.01);
      box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.12), 0 10px 15px -5px rgba(0, 0, 0, 0.04);
    }

    /* Ticker Keyframes */
    @keyframes ticker {
      0% { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }
    .animate-ticker {
      display: flex;
      width: 200%;
      animation: ticker 25s linear infinite;
    }
    .animate-ticker:hover { animation-play-state: paused; }

    /* Flat Google Map Container */
    .map-3d-container { perspective: none; }
    .map-3d-card {
      transform: none;
      transition: box-shadow 0.6s ease;
    }
    .map-3d-container:hover .map-3d-card { transform: none; }

    /* Light Bulb Switch Animation */
    .bulb-switch-glow {
      box-shadow: 0 0 15px var(--primary);
    }
    .bulb-pull-anim {
      animation: pullString 0.3s ease-in-out;
    }
    @keyframes pullString {
      0% { transform: translateY(0); }
      50% { transform: translateY(6px); }
      100% { transform: translateY(0); }
    }

    /* Stunning Recovery Inspiration Image Slider */
    .inspiration-slider {
      position: relative;
      isolation: isolate;
    }
    .inspiration-slide {
      position: absolute;
      inset: 0;
      opacity: 0;
      visibility: hidden;
      transform: scale(1.035);
      transition: opacity 0.9s ease, transform 6s ease, visibility 0.9s ease;
    }
    .inspiration-slide.active {
      opacity: 1;
      visibility: visible;
      transform: scale(1);
    }
    .inspiration-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .inspiration-slider::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      pointer-events: none;
      background:
        linear-gradient(90deg, rgba(2, 6, 23, 0.72) 0%, rgba(2, 6, 23, 0.22) 48%, rgba(2, 6, 23, 0.42) 100%),
        linear-gradient(0deg, rgba(2, 6, 23, 0.62) 0%, rgba(2, 6, 23, 0) 48%);
    }
    .inspiration-content {
      position: relative;
      z-index: 2;
    }
    .inspiration-progress {
      position: absolute;
      left: 0;
      bottom: 0;
      height: 4px;
      width: 0;
      z-index: 4;
      background: var(--accent);
      box-shadow: 0 0 18px rgba(245, 158, 11, 0.7);
    }
    .inspiration-dot.active {
      width: 2rem;
      background: white;
    }
    @media (prefers-reduced-motion: reduce) {
      .inspiration-slide {
        transition: opacity 0.4s ease;
        transform: none;
      }
    }