:root{--color-white:#fff;--color-black:#000;--color-text-primary:#111827;--color-text-secondary:#4b5563;--color-text-tertiary:#9ca3af;--color-text-quaternary:#e5e7eb;--color-bg-primary:#fefefe;--color-bg-secondary:#fafafa;--color-bg-tertiary:#f3f4f6;--color-bg-card:#fff;--color-bg-elevated:#fff;--color-accent:#dc2626;--color-accent-hover:#b91c1c;--color-accent-light:#fef2f2;--color-accent-subtle:#dc262614;--color-success:#059669;--color-success-light:#ecfdf5;--color-info:#6366f1;--color-warning:#ea580c;--color-gold:#eab308;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-border-medium:#d1d5db;--color-border-solid:#9ca3af;--gradient-primary:linear-gradient(135deg,#dc2626 0%,#ef4444 100%);--gradient-success:linear-gradient(135deg,#059669 0%,#10b981 100%);--gradient-background:linear-gradient(to bottom,#fefefe 0%,#fafafa 100%);--gradient-card:linear-gradient(145deg,#fff 0%,#fafbfc 100%);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-lg:1.0625rem;--font-size-xl:1.1875rem;--font-size-2xl:1.375rem;--font-size-3xl:1.75rem;--font-size-4xl:2.25rem;--font-size-5xl:2.75rem;--font-size-6xl:3.25rem;--font-size-7xl:3.75rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--line-height-none:1;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:1.75;--letter-spacing-tighter:-.03em;--letter-spacing-tight:-.015em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--container-max:1000px;--container-wide:1200px;--container-narrow:680px;--section-padding-x-mobile:16px;--section-padding-x-desktop:24px;--section-padding-y-mobile:24px;--section-padding-y-desktop:40px;--header-padding-top-mobile:20px;--header-padding-top-desktop:32px;--header-padding-bottom:16px;--card-padding-mobile:14px;--card-padding-desktop:20px;--card-padding-compact-mobile:12px;--card-padding-compact-desktop:16px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-3xl:32px;--radius-full:9999px;--border-width-thin:1px;--border-width-medium:2px;--border-width-thick:3px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012,0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000026;--shadow-inner:inset 0 2px 4px #0000000a;--shadow-inner-lg:inset 0 4px 8px #0000000f;--shadow-glow-accent:0 0 20px #dc262626,0 0 40px #dc26261a;--shadow-glow-success:0 0 20px #05966926;--ring-width:3px;--ring-offset:2px;--ring-color:#6366f166;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-spring:.4s cubic-bezier(.16,1,.3,1);--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-tooltip:1000}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;line-height:var(--line-height-normal);touch-action:manipulation;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-weight:var(--font-weight-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);background-image:linear-gradient(to bottom,var(--color-bg-primary),var(--color-bg-secondary));min-height:100vh;letter-spacing:var(--letter-spacing-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight);color:var(--color-text-primary)}a{color:inherit;transition:var(--transition-normal);cursor:pointer;text-decoration:none}button{cursor:pointer;transition:var(--transition-normal);background:0 0;border:none;font-family:inherit}img{max-width:100%;height:auto;display:block}:focus-visible{outline:var(--ring-width)solid var(--ring-color);outline-offset:var(--ring-offset)}.text-hero{font-family:var(--font-display);font-size:clamp(var(--font-size-5xl),7vw,var(--font-size-7xl));font-weight:var(--font-weight-black);letter-spacing:var(--letter-spacing-tighter);line-height:var(--line-height-none);color:var(--color-text-primary)}.text-display{font-family:var(--font-display);font-size:clamp(var(--font-size-4xl),5vw,var(--font-size-6xl));font-weight:var(--font-weight-black);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight);color:var(--color-text-primary)}.text-heading-1{font-family:var(--font-display);font-size:clamp(var(--font-size-3xl),4vw,var(--font-size-5xl));font-weight:var(--font-weight-black);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight);color:var(--color-text-primary)}.text-heading-2{font-family:var(--font-display);font-size:clamp(var(--font-size-2xl),2.5vw,var(--font-size-3xl));font-weight:var(--font-weight-extrabold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-snug);color:var(--color-text-primary)}.text-heading-3{font-family:var(--font-display);font-size:clamp(var(--font-size-lg),2vw,var(--font-size-2xl));font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-normal);line-height:var(--line-height-snug);color:var(--color-text-primary)}.text-heading-4{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-normal);line-height:var(--line-height-snug);color:var(--color-text-primary)}.text-lead{font-size:clamp(var(--font-size-lg),2vw,var(--font-size-xl));font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.text-body-large{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.text-body{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary)}.text-body-small{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-secondary)}.text-caption{font-family:var(--font-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;line-height:var(--line-height-normal);color:var(--color-text-tertiary)}.text-overline{font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;line-height:var(--line-height-normal);color:var(--color-accent)}.container{max-width:var(--container-max);padding:0 var(--space-5);margin:0 auto}.section-container{max-width:var(--container-max);padding:0 var(--section-padding-x-desktop)var(--section-padding-y-desktop);margin:0 auto}@media (max-width:768px){.container{padding:0 var(--space-4)}.section-container{padding:0 var(--section-padding-x-mobile)var(--section-padding-y-mobile)}}.card{background:var(--color-bg-card);border:var(--border-width-thin)solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);transition:var(--transition-normal)}.card-elevated{box-shadow:var(--shadow-sm)}.card-hoverable{cursor:pointer}.card-hoverable:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-medium);transform:translateY(-2px)}.card-floating{box-shadow:var(--shadow-lg);border-color:#0000}.card-padding{padding:var(--card-padding-desktop)}@media (max-width:768px){.card-padding{padding:var(--card-padding-mobile)}}.divider{height:var(--border-width-thin);background:var(--color-border);margin:var(--space-6)0;border:none}.divider-light{background:var(--color-border-light)}.divider-vertical{width:var(--border-width-thin);background:var(--color-border);height:100%}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-5);border-radius:var(--radius-md);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-normal);transition:var(--transition-normal);cursor:pointer;border:var(--border-width-thin)solid transparent;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);color:var(--color-white);box-shadow:0 1px 2px #dc262633,0 1px 3px #dc26261a}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 8px #dc262640,0 2px 4px #dc262626}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 2px #dc262633}.btn-secondary{background:var(--color-white);color:var(--color-text-primary);border-color:var(--color-border);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-border-medium);box-shadow:var(--shadow-sm)}.btn-secondary:active{background:var(--color-bg-tertiary);box-shadow:var(--shadow-inner)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.nav-link{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding:var(--space-2)0;padding-bottom:calc(var(--space-2) + 2px);color:var(--color-text-secondary);transition:var(--transition-fast);position:relative}.nav-link:after{content:"";height:2px;transition:var(--transition-fast);background:0 0;border-radius:1px;position:absolute;bottom:0;left:0;right:0}.nav-link:hover{color:var(--color-text-primary)}.nav-link.active{color:var(--color-accent)}.nav-link.active:after{background:var(--color-accent)}.badge{border-radius:var(--radius-md);font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;align-items:center;padding:4px 10px;display:inline-flex}.badge-accent{background:var(--color-accent-light);color:var(--color-accent)}.stat-card{padding:var(--space-6);border-radius:var(--radius-lg);background:var(--color-bg-secondary);border:var(--border-width-thin)solid var(--color-border-light);text-align:center;transition:var(--transition-normal)}.stat-card:hover{background:var(--color-white);border-color:var(--color-border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat-card-value{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.surface-base{background:var(--color-bg-card);border:var(--border-width-thin)solid var(--color-border);border-radius:var(--radius-xl)}.surface-raised{background:var(--color-bg-card);border:var(--border-width-thin)solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.surface-floating{background:var(--color-bg-elevated);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg)}.surface-overlay{background:var(--color-bg-elevated);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl)}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-accent{color:var(--color-accent)}.link-accent{color:var(--color-accent);text-underline-offset:2px;font-weight:var(--font-weight-medium);transition:var(--transition-fast);text-decoration:underline}.link-accent:hover{color:var(--color-accent-hover);text-decoration-thickness:2px}.text-success{color:var(--color-success)}.text-muted{color:var(--color-text-tertiary)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-inner{box-shadow:var(--shadow-inner)}.shadow-glow{box-shadow:var(--shadow-glow-accent)}.border{border:var(--border-width-thin)solid var(--color-border)}.border-light{border-color:var(--color-border-light)}.border-medium{border-color:var(--color-border-medium)}.border-accent{border-color:var(--color-accent)}.border-none{border:none}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.ring{outline:var(--ring-width)solid var(--ring-color);outline-offset:var(--ring-offset)}.ring-accent{outline:var(--ring-width)solid #dc262666;outline-offset:var(--ring-offset)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-carousel-scroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}.animate-fade-in{animation:fadeIn .5s var(--transition-spring)forwards}.animate-slide-up{animation:fadeIn .6s var(--transition-spring)forwards}.logo-carousel-track{align-items:center;gap:var(--space-12);will-change:transform;backface-visibility:hidden;contain:layout style;width:max-content;animation:30s linear infinite logo-carousel-scroll;display:flex;transform:translate(0,0)}.logo-carousel-container:hover .logo-carousel-track{animation-play-state:paused}.logo-carousel-container:before,.logo-carousel-container:after{content:"";pointer-events:none;z-index:1;width:48px;position:absolute;top:0;bottom:0}.logo-carousel-container:before{background:linear-gradient(90deg,var(--color-bg-primary)0%,transparent 100%);left:0}.logo-carousel-container:after{background:linear-gradient(270deg,var(--color-bg-primary)0%,transparent 100%);right:0}@media (prefers-reduced-motion:reduce){.logo-carousel-track{animation:none}}.logo-carousel-track a{flex-shrink:0}.logo-carousel-track img{opacity:.5;filter:grayscale();pointer-events:none;transition:opacity .15s ease-out,filter .15s ease-out}.logo-carousel-track a:hover img{opacity:1;filter:grayscale(0%)}@media (max-width:768px){.chart-controls{display:none!important}.recharts-responsive-container{overflow:visible!important}}@media print{body{color:#000;background:#fff}.no-print{display:none}}
