@tailwind base;@tailwind components;@tailwind utilities;@media (prefers-reduced-motion:no-preference){*{scroll-behavior:smooth}}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px}:root{--foreground-rgb:0,0,0;--background-start-rgb:214,219,220;--background-end-rgb:255,255,255}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:0,0,0;--background-end-rgb:0,0,0}}@layer base{:root{--background:0 0% 100%;--foreground:222 47% 11%;--card:0 0% 100%;--card-foreground:222 47% 11%;--popover:0 0% 100%;--popover-foreground:222 47% 11%;--primary:340 85% 46%;--primary-foreground:210 40% 98%;--secondary:340 40% 96.1%;--secondary-foreground:222 47% 11%;--muted:340 40% 96.1%;--muted-foreground:215 16% 47%;--accent:340 40% 96.1%;--accent-foreground:222 47% 11%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 40% 98%;--border:340 32% 91%;--input:340 32% 91%;--ring:340 85% 46%;--chart-1:340 76% 61%;--chart-2:315 58% 39%;--chart-3:290 37% 24%;--chart-4:350 74% 66%;--chart-5:325 87% 67%;--radius:0.5rem}.dark{--background:222 47% 11%;--foreground:210 40% 98%;--card:222 47% 11%;--card-foreground:210 40% 98%;--popover:222 47% 11%;--popover-foreground:210 40% 98%;--primary:340 91% 60%;--primary-foreground:210 40% 98%;--secondary:340 32% 17%;--secondary-foreground:210 40% 98%;--muted:340 32% 17%;--muted-foreground:215 20% 65%;--accent:340 32% 17%;--accent-foreground:210 40% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 40% 98%;--border:340 32% 17%;--input:340 32% 17%;--ring:340 76% 48%;--chart-1:340 70% 50%;--chart-2:315 60% 45%;--chart-3:290 80% 55%;--chart-4:350 65% 60%;--chart-5:325 75% 55%}*{@apply border-border}html{scroll-behavior:smooth}body{@apply bg-background text-foreground;font-feature-settings:"rlig" 1,"calt" 1;background-image:radial-gradient(circle at top left,hsl(var(--primary)/.03),transparent 40%),radial-gradient(circle at bottom right,hsl(var(--primary)/.03),transparent 40%);background-attachment:fixed}h1,h2,h3,h4,h5,h6{@apply font-poppins}}.glass-card{@apply backdrop-blur-md bg-background/80 border border-white/10}.gradient-border{position:relative;border-radius:var(--radius)}.gradient-border:before{content:"";position:absolute;inset:-2px;border-radius:calc(var(--radius) + 2px);background:linear-gradient(45deg,hsl(var(--primary)),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInBottom{0%{opacity:0;transform:translateY(100%) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.animate-shimmer{background:linear-gradient(90deg,transparent,hsl(var(--primary)/.1),transparent);background-size:200% 100%;animation:shimmer 3s infinite}.animate-on-scroll{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) forwards}.animate-from-left,.animate-on-scroll{opacity:0;will-change:transform,opacity}.animate-from-left{animation:fadeInLeft .8s cubic-bezier(.4,0,.2,1) forwards}.animate-from-right{animation:fadeInRight .8s cubic-bezier(.4,0,.2,1) forwards}.animate-from-right,.animate-scale{opacity:0;will-change:transform,opacity}.animate-scale{animation:scaleIn .8s cubic-bezier(.4,0,.2,1) forwards}.animate-slide-up{opacity:0;animation:slideInBottom .8s cubic-bezier(.4,0,.2,1) forwards;will-change:transform,opacity}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.page-transition{opacity:0;transform:translateY(20px);animation:pageEnter .6s cubic-bezier(.4,0,.2,1) forwards}@keyframes pageEnter{to{opacity:1;transform:translateY(0)}}.font-poppins{font-family:var(--font-poppins),sans-serif}.font-sans{font-family:var(--font-poppins),ui-sans-serif,system-ui,sans-serif}.container,.prose,.prose h2,.prose p{@apply mx-auto px-4 sm:px-6 lg:px-8 max-w-7xl}.premium-card{@apply relative overflow-hidden;background:linear-gradient(135deg,hsl(var(--card)/.8),hsl(var(--card)/.4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsl(var(--primary)/.1)}.premium-card:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent,hsl(var(--primary)/.1),transparent);transform:translateX(-100%);animation:shimmer 2s infinite}.hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-2px)}.button-premium{@apply relative overflow-hidden;background:linear-gradient(45deg,hsl(var(--primary)),hsl(var(--primary-foreground)))}.button-premium:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,hsl(var(--primary)),transparent,hsl(var(--primary)));animation:rotate 4s linear infinite}@keyframes slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.animate-slide-in{animation:slide-in .3s ease-out forwards}.animation-delay-75{animation-delay:75ms}.animation-delay-150{animation-delay:.15s}.animation-delay-300{animation-delay:.3s}.animation-delay-500{animation-delay:.5s}.animation-delay-700{animation-delay:.7s}.animation-delay-900{animation-delay:.9s}@keyframes reverse-spin{0%{transform:rotate(1turn)}to{transform:rotate(0deg)}}.animate-reverse-spin{animation:reverse-spin 1s linear infinite}@keyframes smooth-pulse{0%,to{transform:translateX(-100%)}50%{transform:translateX(100%)}}.animate-progress-flow{animation:smooth-pulse 2s ease-in-out infinite}.border-3{border-width:3px}