/* ==============================================================================
   LEFYX MOTION & INTERACTIVE UI ENGINE (lefyx-motion.css)
   Enterprise Micro-Interactions, Cursor Spotlight, Magnetic Physics & Animations
   Modeled after Stripe, Linear, Maqsam & ROI Optimums
   ============================================================================== */

:root {
  --lefyx-emerald: #059669;
  --lefyx-emerald-glow: rgba(16, 185, 129, 0.16);
  --lefyx-navy: #0A192F;
  --lefyx-navy-deep: #0F172A;
}

/* 1. Global Scroll Progress Indicator */
.lefyx-scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, #059669, #10B981, #34D399);
  z-index: 99999;
  width: 0%;
  pointer-events: none;
  transition: width 0.08s ease-out;
  box-shadow: 0 0 10px rgba(16, 185, 129, 0.6);
}

/* 2. Interactive Spotlight Card */
.card-interactive {
  position: relative;
  background-color: #FFFFFF;
  border: 1px solid rgba(226, 232, 240, 0.9);
  border-radius: 1rem;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), 
              box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), 
              border-color 0.25s ease;
  overflow: visible;
}

.card-interactive:hover {
  transform: translateY(-5px);
  border-color: rgba(16, 185, 129, 0.35);
  box-shadow: 0 20px 35px -10px rgba(15, 23, 42, 0.09), 
              0 10px 15px -5px rgba(15, 23, 42, 0.04),
              0 0 0 1px rgba(16, 185, 129, 0.15);
}

/* Spotlight inner radial light following cursor */
.card-interactive::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(450px circle at var(--mx, 50%) var(--my, 50%), rgba(16, 185, 129, 0.08), transparent 70%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 1;
}

.card-interactive:hover::before {
  opacity: 1;
}

/* Dark variant for cards in dark sections */
.card-interactive-dark {
  position: relative;
  background-color: #0F172A;
  border: 1px solid rgba(51, 65, 85, 0.6);
  border-radius: 1rem;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), 
              box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), 
              border-color 0.25s ease;
  overflow: visible;
}

/* Ensure popular tier cards with floating top badges render crisp and unclipped */
.card-tier-popular,
[data-tier-popular] {
  overflow: visible !important;
  position: relative !important;
}

.card-tier-badge {
  position: absolute !important;
  top: -14px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 30 !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
  line-height: 1 !important;
}

.card-interactive-dark:hover {
  transform: translateY(-5px);
  border-color: rgba(52, 211, 153, 0.4);
  box-shadow: 0 20px 35px -10px rgba(0, 0, 0, 0.5), 
              0 0 20px rgba(16, 185, 129, 0.15);
}

.card-interactive-dark::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(450px circle at var(--mx, 50%) var(--my, 50%), rgba(16, 185, 129, 0.15), transparent 70%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 1;
}

.card-interactive-dark:hover::before {
  opacity: 1;
}

/* Icon micro-animations inside interactive cards */
.card-icon {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s ease;
}

.card-interactive:hover .card-icon,
.card-interactive-dark:hover .card-icon {
  transform: scale(1.12) rotate(-5deg);
}

/* 3. Magnetic Button Styling */
[data-magnet] {
  transition: transform 0.15s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease;
  will-change: transform;
}

/* 4. Scroll Reveal Animations */
[data-rv] {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.65s cubic-bezier(0.16, 1, 0.3, 1), transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

[data-rv].in {
  opacity: 1;
  transform: translateY(0);
}

/* 5. Glowing Pulsing Dots & Badges */
.pulse-indicator {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.pulse-indicator::after {
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: 9999px;
  background-color: currentColor;
  opacity: 0.4;
  animation: pulse-ring 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse-ring {
  0% { transform: scale(0.9); opacity: 0.6; }
  50% { transform: scale(1.6); opacity: 0; }
  100% { transform: scale(1.6); opacity: 0; }
}

/* 6. Shimmer effect on featured cards / buttons */
.shimmer-btn {
  position: relative;
  overflow: hidden;
}

.shimmer-btn::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 30%,
    rgba(255, 255, 255, 0.18) 50%,
    transparent 70%
  );
  transform: rotate(25deg) translateY(-100%);
  animation: shimmer-sweep 4s infinite ease-in-out;
  pointer-events: none;
}

@keyframes shimmer-sweep {
  0% { transform: rotate(25deg) translateY(-100%); }
  25% { transform: rotate(25deg) translateY(100%); }
  100% { transform: rotate(25deg) translateY(100%); }
}

/* 7. Audio Waveform Animation */
.waveform-bar {
  transition: height 0.15s ease;
}

.waveform-active .waveform-bar:nth-child(2n) {
  animation: wave-bounce-1 0.7s infinite alternate ease-in-out;
}
.waveform-active .waveform-bar:nth-child(2n+1) {
  animation: wave-bounce-2 0.85s infinite alternate ease-in-out;
}
.waveform-active .waveform-bar:nth-child(3n) {
  animation: wave-bounce-3 0.6s infinite alternate ease-in-out;
}

@keyframes wave-bounce-1 { 0% { height: 6px; } 100% { height: 26px; } }
@keyframes wave-bounce-2 { 0% { height: 12px; } 100% { height: 32px; } }
@keyframes wave-bounce-3 { 0% { height: 8px; } 100% { height: 20px; } }

/* 8. Interactive Tab Indicators */
.interactive-tab-btn.active {
  background-color: #0F172A;
  color: #FFFFFF;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
}

.interactive-tab-btn {
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}


/* ============================================================================== */
/* 9. High-Contrast Typography & Eye-Comfort Surface Styling                     */
/* ============================================================================== */

/* Improve base text legibility across all light themes */
body {
  color: #1E293B; /* Deep Slate-800 for maximum readability */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Prevent faint low-contrast text on pure light backgrounds only (never inside dark containers) */
section.bg-white > *:not([class*="bg-corporate"]):not([class*="bg-slate-9"]):not(.card-interactive-dark) p:not([class*="text-slate-1"]):not([class*="text-slate-2"]):not([class*="text-slate-3"]):not([class*="text-white"]):not([class*="text-emerald-"]),
section.bg-slate-50 > *:not([class*="bg-corporate"]):not([class*="bg-slate-9"]):not(.card-interactive-dark) p:not([class*="text-slate-1"]):not([class*="text-slate-2"]):not([class*="text-slate-3"]):not([class*="text-white"]):not([class*="text-emerald-"]) {
  color: #334155;
}

/* Soften harsh pure white backgrounds with soothing, eye-protecting slate tint */
section.bg-white {
  background-color: #F8FAFC !important; /* Soothing Slate-50 */
}

/* Cards on light sections */
.bg-white .card-interactive,
.bg-slate-50 .card-interactive {
  background-color: #FFFFFF !important;
  border-color: #CBD5E1 !important; /* Defined Slate-300 border */
  box-shadow: 0 1px 3px 0 rgba(15, 23, 42, 0.05), 0 1px 2px -1px rgba(15, 23, 42, 0.05);
}

/* Deep high-contrast headings */
h1, h2, h3, h4, h5, h6 {
  letter-spacing: -0.02em;
}

/* Ensure links in footers are distinct and high-contrast */
footer a {
  transition: color 0.15s ease;
}
footer a:hover {
  color: #34D399 !important; /* Emerald-400 */
}


/* ==========================================================================
   BULLETPROOF EYE-COMFORT & INSTITUTIONAL COLOR INVARIANTS
   ========================================================================== */
body {
  background-color: #f8fafc;
  color: #1e293b;
}

.bg-corporate-950 {
  background-color: #0a192f !important;
  color: #cbd5e1; /* Guaranteed light baseline for all dark corporate surfaces */
}

.bg-corporate-900 {
  background-color: #0f172a !important;
  color: #cbd5e1;
}

.card-interactive-dark {
  background-color: #0f172a;
  color: #cbd5e1;
}

footer.bg-corporate-950,
footer {
  color: #cbd5e1;
}

.border-corporate-800 {
  border-color: #1e293b !important;
}

.border-corporate-200 {
  border-color: #e2e8f0 !important;
}

.text-corporate-900 {
  color: #0f172a;
}

.text-corporate-800 {
  color: #1e293b;
}

.text-corporate-700 {
  color: #334155;
}

.text-corporate-600 {
  color: #475569;
}

.text-corporate-500 {
  color: #64748b;
}

/* ==============================================================================
   HIGH-CONTRAST INVARIANTS FOR ALL DARK SURFACES & SECTIONS (WCAG AAA)
   Guarantees all text on dark backgrounds is crisp, clear, and never washed out
   ============================================================================== */

/* Paragraphs on dark backgrounds (excluding nested white cards/modals) */
.bg-corporate-950 p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
.bg-corporate-900 p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
.bg-corporate-800 p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
.bg-slate-950 p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
.bg-slate-900 p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
.card-interactive-dark p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *),
footer p:not(.bg-white *):not(.bg-slate-50 *):not([class*="bg-white"] *) {
  color: #CBD5E1 !important; /* Crisp Slate-300 baseline (contrast > 9:1 against #0A192F / #0F172A) */
}

/* Explicit text color utilities in dark containers */
.bg-corporate-950 .text-white,
.bg-corporate-900 .text-white,
.bg-corporate-800 .text-white,
.bg-slate-950 .text-white,
.bg-slate-900 .text-white,
.card-interactive-dark .text-white,
footer .text-white,
.text-white {
  color: #FFFFFF !important;
}

.bg-corporate-950 .text-slate-100,
.bg-corporate-900 .text-slate-100,
.card-interactive-dark .text-slate-100,
footer .text-slate-100,
.text-slate-100 {
  color: #F1F5F9 !important;
}

.bg-corporate-950 .text-slate-200,
.bg-corporate-900 .text-slate-200,
.card-interactive-dark .text-slate-200,
footer .text-slate-200,
.text-slate-200 {
  color: #E2E8F0 !important;
}

.bg-corporate-950 .text-slate-300,
.bg-corporate-900 .text-slate-300,
.card-interactive-dark .text-slate-300,
footer .text-slate-300,
.text-slate-300 {
  color: #CBD5E1 !important;
}

/* Secondary muted text in dark containers: NEVER darker than Slate-400 (#94A3B8) */
.bg-corporate-950 .text-slate-400:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 .text-slate-400:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark .text-slate-400:not(.bg-white *):not([class*="bg-white"] *),
footer .text-slate-400:not(.bg-white *):not([class*="bg-white"] *),
.text-slate-400:not(.bg-white *):not([class*="bg-white"] *) {
  color: #94A3B8 !important;
}

/* Upgrade dark text classes if placed in dark containers */
.bg-corporate-950 .text-slate-500:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 .text-slate-500:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark .text-slate-500:not(.bg-white *):not([class*="bg-white"] *),
footer .text-slate-500:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 .text-corporate-500:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 .text-corporate-500:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark .text-corporate-500:not(.bg-white *):not([class*="bg-white"] *),
footer .text-corporate-500:not(.bg-white *):not([class*="bg-white"] *) {
  color: #94A3B8 !important; /* Promoted to readable Slate-400 */
}

.bg-corporate-950 .text-slate-600:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 .text-slate-600:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark .text-slate-600:not(.bg-white *):not([class*="bg-white"] *),
footer .text-slate-600:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 .text-corporate-600:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 .text-corporate-600:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark .text-corporate-600:not(.bg-white *):not([class*="bg-white"] *),
footer .text-corporate-600:not(.bg-white *):not([class*="bg-white"] *) {
  color: #CBD5E1 !important; /* Promoted to readable Slate-300 */
}

/* Headings in dark containers */
.bg-corporate-950 h1:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 h2:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 h3:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 h4:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 h5:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-950 h6:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h1:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h2:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h3:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h4:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h5:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 h6:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h1:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h2:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h3:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h4:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h5:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark h6:not(.bg-white *):not([class*="bg-white"] *),
footer h1, footer h2, footer h3, footer h4, footer h5, footer h6 {
  color: #FFFFFF !important;
}

/* Lists and list items in dark containers */
.bg-corporate-950 li:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 li:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark li:not(.bg-white *):not([class*="bg-white"] *),
footer li {
  color: #E2E8F0;
}

/* Inline code in dark containers */
.bg-corporate-950 code:not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 code:not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark code:not(.bg-white *):not([class*="bg-white"] *),
footer code {
  color: #34D399 !important; /* Emerald-400 */
  background-color: rgba(16, 185, 129, 0.12) !important;
  border: 1px solid rgba(52, 211, 153, 0.25) !important;
  padding: 0.1rem 0.35rem;
  border-radius: 0.25rem;
}

/* Spans with no explicit color in dark containers default to high contrast */
.bg-corporate-950 span:not([class*="text-"]):not(.bg-white *):not([class*="bg-white"] *),
.bg-corporate-900 span:not([class*="text-"]):not(.bg-white *):not([class*="bg-white"] *),
.card-interactive-dark span:not([class*="text-"]):not(.bg-white *):not([class*="bg-white"] *),
footer span:not([class*="text-"]):not(.bg-white *):not([class*="bg-white"] *) {
  color: #CBD5E1;
}

/* ==========================================================================
   BUTTON HOVER & INTERACTION CONTRAST FIXES
   Guarantees text never matches background and remains 100% visible & readable
   ========================================================================== */
.tier-btn-outline,
a.tier-btn-outline,
button.tier-btn-outline {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.875rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid #cbd5e1;
  background-color: #ffffff !important;
  color: #0f172a !important;
  font-weight: 700;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  text-decoration: none !important;
  position: relative;
  z-index: 10;
}

.tier-btn-outline:hover,
a.tier-btn-outline:hover,
button.tier-btn-outline:hover {
  background-color: #0f172a !important;
  border-color: #0f172a !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px -4px rgba(15, 23, 42, 0.3) !important;
  transform: translateY(-2px);
}

/* Global hover text contrast enforcers */
.hover\:text-white:hover,
a.hover\:text-white:hover,
button.hover\:text-white:hover {
  color: #ffffff !important;
}

.hover\:bg-corporate-900:hover,
a.hover\:bg-corporate-900:hover,
button.hover\:bg-corporate-900:hover {
  background-color: #0f172a !important;
  color: #ffffff !important;
  border-color: #0f172a !important;
}

/* Confidentiality & Masking Utility */
.data-blur-mask {
  filter: blur(4px);
  user-select: none;
  display: inline-block;
  transition: filter 0.2s ease;
}

.data-redaction-pill {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  background-color: #0f172a;
  color: #34d399;
  padding: 2px 6px;
  border-radius: 4px;
  border: 1px solid #1e293b;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}


/* Active Footer Link Glowing Accent */
.footer-active-link,
footer a.footer-active-link {
  color: #34d399 !important;
  font-weight: 700 !important;
  text-shadow: 0 0 10px rgba(52, 211, 153, 0.7), 0 0 20px rgba(16, 185, 129, 0.4) !important;
}

.footer-active-dot {
  display: inline-block;
  vertical-align: middle;
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background-color: #34d399 !important;
  box-shadow: 0 0 8px #34d399, 0 0 14px #10b981 !important;
  margin-right: 6px;
}

.footer-active-dot {
  display: inline-block;
  vertical-align: middle;
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background-color: #34d399;
  box-shadow: 0 0 8px #34d399, 0 0 4px #10b981;
  margin-right: 6px;
}


/* ==============================================================================
   10. HAIRLINE INTERACTIVE LINE FIGURES (@lucasmarkes/hairline)
   ============================================================================== */
.hairline-wrapper {
  position: relative;
  width: 100%;
  border-radius: 0.875rem;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), 
              box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1),
              border-color 0.25s ease;
}

.hairline-wrapper:hover {
  box-shadow: 0 14px 32px -10px rgba(5, 150, 105, 0.22), 0 0 24px -4px rgba(16, 185, 129, 0.16);
  border-color: rgba(16, 185, 129, 0.45) !important;
}

[data-hairline-figure] {
  width: 100%;
  max-width: 100%;
  cursor: grab;
}

[data-hairline-figure]:active {
  cursor: grabbing;
}

/* 11. Scrolled Navbar Frosted Glass & Dynamic High-Contrast Inversion */
header.navbar-scrolled {
  background: rgba(10, 25, 47, 0.95) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 4px 24px -2px rgba(0, 0, 0, 0.5) !important;
  transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

/* Invert brand text to pure crisp white */
header.navbar-scrolled a span.text-corporate-900,
header.navbar-scrolled .text-corporate-900:not(.group div *):not(#mobile-menu *) {
  color: #FFFFFF !important;
}

/* Scrolled Brand LLC Badge */
header.navbar-scrolled .bg-emerald-50 {
  background-color: rgba(16, 185, 129, 0.2) !important;
  color: #6EE7B7 !important;
  border-color: rgba(52, 211, 153, 0.4) !important;
}

/* Invert desktop nav links to high-contrast crisp slate/white */
header.navbar-scrolled nav.text-corporate-600,
header.navbar-scrolled nav a:not(.group div *),
header.navbar-scrolled nav button:not(.group div *) {
  color: #F1F5F9 !important;
}

header.navbar-scrolled nav a:not(.group div *):hover,
header.navbar-scrolled nav button:not(.group div *):hover {
  color: #34D399 !important;
}

header.navbar-scrolled nav button svg {
  color: #CBD5E1 !important;
}

header.navbar-scrolled nav button:hover svg {
  color: #34D399 !important;
}

/* Invert mobile hamburger icon */
header.navbar-scrolled #mobile-toggle {
  color: #FFFFFF !important;
}

/* Scrolled Client Portal Button */
header.navbar-scrolled a[href="portal.html"].bg-brand-50 {
  background-color: rgba(16, 185, 129, 0.15) !important;
  border-color: rgba(52, 211, 153, 0.45) !important;
  color: #6EE7B7 !important;
}

header.navbar-scrolled a[href="portal.html"].bg-brand-50:hover {
  background-color: rgba(16, 185, 129, 0.28) !important;
  color: #A7F3D0 !important;
}

/* Scrolled Book Strategy Call Button */
header.navbar-scrolled a[href="contact.html"].bg-corporate-900 {
  background-color: #059669 !important;
  border: 1px solid #10B981 !important;
  color: #FFFFFF !important;
}

header.navbar-scrolled a[href="contact.html"].bg-corporate-900:hover {
  background-color: #047857 !important;
}

/* Dropdown Mega-Menu: Ensure pristine white background with crisp dark slate text */
header.navbar-scrolled .group > div {
  background-color: #FFFFFF !important;
  border-color: #E2E8F0 !important;
  box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.4) !important;
}

header.navbar-scrolled .group > div .text-corporate-900 {
  color: #0F172A !important;
}

header.navbar-scrolled .group > div .text-corporate-700 {
  color: #334155 !important;
}

header.navbar-scrolled .group > div .text-corporate-600 {
  color: #475569 !important;
}

header.navbar-scrolled .group > div .text-corporate-500 {
  color: #64748B !important;
}

header.navbar-scrolled .group > div .text-corporate-400 {
  color: #94A3B8 !important;
}

/* Scrolled Mobile Menu */
header.navbar-scrolled #mobile-menu {
  background-color: #0A192F !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

header.navbar-scrolled #mobile-menu .text-corporate-700 {
  color: #E2E8F0 !important;
}

header.navbar-scrolled #mobile-menu .text-corporate-700:hover {
  color: #34D399 !important;
}

header.navbar-scrolled #mobile-menu .text-corporate-400 {
  color: #94A3B8 !important;
}

/* 12. Shimmer Sweep on Primary CTAs */
.shimmer-sweep {
  position: relative;
  overflow: hidden;
}

.shimmer-sweep::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 20%,
    rgba(255, 255, 255, 0.18) 50%,
    transparent 80%
  );
  transform: translateX(-100%);
  animation: shimmerSweep 4.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
  pointer-events: none;
}

@keyframes shimmerSweep {
  0% { transform: translateX(-100%); }
  35% { transform: translateX(100%); }
  100% { transform: translateX(100%); }
}

/* Tactile Click Feedback */
button:active, 
a.btn-primary:active, 
.tier-btn-outline:active,
.division-choice-btn:active,
.tier-card:active {
  transform: scale(0.978) !important;
  transition: transform 0.08s ease-out !important;
}

/* 13. Ambient Live Glow Pulse */
.ambient-pulse {
  animation: lefyxAmbientPulse 3s ease-in-out infinite;
}

@keyframes lefyxAmbientPulse {
  0%, 100% { opacity: 0.85; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.05); filter: drop-shadow(0 0 8px rgba(16, 185, 129, 0.6)); }
}

/* 14. Audio Waveform Equalizer Bars */
.equalizer-bar {
  display: inline-block;
  width: 3px;
  border-radius: 9999px;
  background: #10B981;
  animation: eqPulse 1.2s ease-in-out infinite alternate;
}
.equalizer-bar:nth-child(2) { animation-delay: 0.2s; height: 18px; }
.equalizer-bar:nth-child(3) { animation-delay: 0.4s; height: 12px; }
.equalizer-bar:nth-child(4) { animation-delay: 0.1s; height: 22px; }
.equalizer-bar:nth-child(5) { animation-delay: 0.3s; height: 15px; }

@keyframes eqPulse {
  0% { height: 6px; }
  100% { height: 22px; }
}


/* ==============================================================================
   15. ULTRA-MODERN ENTERPRISE DROPDOWNS & SELECT MENUS (Stripe & Linear Quality)
   ============================================================================== */
select,
.select-modern {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: #FFFFFF !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='2.2' stroke='%23475569'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 0.85rem center !important;
  background-size: 1.05rem 1.05rem !important;
  padding-right: 2.75rem !important;
  padding-left: 0.875rem !important;
  padding-top: 0.55rem !important;
  padding-bottom: 0.55rem !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0.75rem !important; /* rounded-xl */
  font-family: inherit !important;
  font-size: 0.8125rem !important; /* 13px */
  font-weight: 600 !important;
  color: #0F172A !important;
  line-height: 1.4 !important;
  box-shadow: 0 1px 2px 0 rgba(15, 23, 42, 0.04) !important;
  transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease !important;
  cursor: pointer !important;
}

select:hover,
.select-modern:hover {
  border-color: #CBD5E1 !important;
  background-color: #F8FAFC !important;
  box-shadow: 0 2px 6px 0 rgba(15, 23, 42, 0.06) !important;
}

select:focus,
.select-modern:focus {
  outline: none !important;
  border-color: #059669 !important; /* Lefyx emerald */
  background-color: #FFFFFF !important;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.18), 0 1px 3px 0 rgba(15, 23, 42, 0.06) !important;
}

select:disabled {
  background-color: #F1F5F9 !important;
  color: #94A3B8 !important;
  cursor: not-allowed !important;
  opacity: 0.75 !important;
}

select option {
  background-color: #FFFFFF !important;
  color: #0F172A !important;
  font-weight: 500 !important;
  padding: 10px 14px !important;
}

/* RTL adjustment for Arabic dropdowns */
[dir="rtl"] select,
select[dir="rtl"] {
  background-position: left 0.85rem center !important;
  padding-right: 0.875rem !important;
  padding-left: 2.75rem !important;
}
