:root{--color-primary:#2563eb;--color-primary-dark:#1e40af;--color-primary-light:#3b82f6;--color-secondary:#10b981;--color-accent:#f59e0b;--color-text:#1f2937;--color-text-light:#6b7280;--color-text-inverse:#ffffff;--color-bg:#ffffff;--color-bg-light:#f9fafb;--color-bg-dark:#111827;--color-border:#e5e7eb;--color-border-dark:#d1d5db;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1);--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-heading:"Bebas Neue","Arial Black","Arial Bold",sans-serif;--font-body:"Poppins",sans-serif;--font-sans:"Poppins",sans-serif;--font-handwritten:"Caveat",cursive;--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;--transition-fast:150ms;--transition-base:300ms;--transition-slow:500ms}@font-face{font-family:Bebas Neue;src:url(/fonts/BebasNeueCyrillic.woff2) format("woff2"),url(/fonts/BebasNeueCyrillic.woff) format("woff"),url(/fonts/BebasNeueCyrillic.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd,u+04??,u+0500-052f,u+2de0-2dff,u+a640-a69f}*{box-sizing:border-box;padding:0;margin:0}html{scroll-behavior:smooth}body,html{max-width:100vw;overflow-x:hidden;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--color-text);background:var(--color-bg);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;letter-spacing:.1em}h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:800}h2{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700}h3{font-size:clamp(1.5rem,3vw,2.25rem)}h3,h4{font-weight:600}h4{font-size:clamp(1.25rem,2.5vw,1.875rem)}h5{font-size:clamp(1.125rem,2vw,1.5rem)}h5,h6{font-weight:600}h6{font-size:clamp(1rem,1.5vw,1.25rem)}p{font-family:var(--font-body);font-weight:400}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-in-right{animation:slideInRight .6s ease-out forwards}.animation-delay-100{animation-delay:.1s;opacity:0}.animation-delay-200{animation-delay:.2s;opacity:0}.animation-delay-300{animation-delay:.3s;opacity:0}.animation-delay-400{animation-delay:.4s;opacity:0}.scrollProgress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#1e76aa,#459bcd);z-index:9999;transition:width .1s ease-out;box-shadow:0 0 10px rgba(30,118,170,.5)}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradientText{background:linear-gradient(135deg,#1e76aa,#459bcd 50%,#1e76aa);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite}.magneticButton{transition:transform .3s cubic-bezier(.23,1,.32,1)}.magneticButton:hover{transform:scale(1.05)}.staggerItem{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.staggerItem.visible{opacity:1;transform:translateY(0)}.parallaxContainer{will-change:transform}:focus-visible{outline:2px solid #1e76aa;outline-offset:2px;border-radius:4px}a,button{transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0,#e0e0e0 50%,#f0f0f0);background-size:1000px 100%;animation:shimmer 2s infinite}