:root{--background: #ffffff;--foreground: #0e1220;--primary: #0055ff;--primary-foreground: #ffffff;--secondary: #f2f5fb;--secondary-foreground: #0e1220;--accent: #0055ff;--accent-foreground: #ffffff;--muted: #eaf0fb;--muted-foreground: #5a6172;--card: #ffffff;--card-foreground: #0e1220;--border: #e3e8f2;--input: #e3e8f2;--ring: #0055ff;--radius: .75rem}.dark{--background: #0a0b12;--foreground: #eef1f8;--primary: #3d7bff;--accent: #3d7bff;--ring: #3d7bff;--secondary: #12141d;--secondary-foreground: #eef1f8;--muted: #1c2130;--muted-foreground: #98a0b2;--card: #11131c;--card-foreground: #eef1f8;--border: #232838;--input: #232838}*{border-color:var(--border)}html{scroll-behavior:smooth}body{background-color:var(--background);color:var(--foreground);font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,p{margin:0}.text-hero-xl{font-size:clamp(2.5rem,6vw,60px);line-height:1.05;letter-spacing:-.03em}.text-section-title{font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1.15;letter-spacing:-.025em}.grid-bg{background-image:linear-gradient(to right,rgba(14,18,32,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(14,18,32,.045) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(80% 60% at 50% 22%,#000 0%,transparent 80%);mask-image:radial-gradient(80% 60% at 50% 22%,#000 0%,transparent 80%)}.dark .grid-bg{background-image:linear-gradient(to right,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.04) 1px,transparent 1px)}.bg-card{box-shadow:0 1px 2px #060c220d,0 16px 34px -22px #060c2238}.dark .bg-card{box-shadow:none}.blob-blue{background:radial-gradient(ellipse at center,rgba(0,85,255,.16) 0%,transparent 70%);filter:blur(60px)}.blob-blue-sm{background:radial-gradient(ellipse at center,rgba(0,85,255,.12) 0%,transparent 70%);filter:blur(40px)}.blue-glow{box-shadow:0 0 40px #0055ff38,0 0 80px #0055ff14}.blue-glow-sm{box-shadow:0 0 20px #0055ff2e}.gradient-text{background:linear-gradient(135deg,#338bff,#05f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-border{position:relative}.gradient-border:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#0055ff73,#0055ff14,#0055ff05);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.grain-overlay:after{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.02}.shimmer-text{background:linear-gradient(90deg,var(--foreground) 0%,#0055ff 40%,var(--foreground) 60%,#0055ff 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite}.js .reveal{opacity:0}.js .reveal.is-visible{animation:fadeUp .7s cubic-bezier(.25,1,.5,1) forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.animate-float{animation:floatY 4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.js .reveal,.js .reveal.is-visible,.animate-float,.shimmer-text{animation:none!important;opacity:1!important}}.card-grid{background-image:linear-gradient(to right,rgba(255,255,255,.17) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.17) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.35) 45%,transparent 68%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.35) 45%,transparent 68%)}
