@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Outfit:wght@300;400;500;600;700;800;900&display=swap";
:root{--purple-deep:#3d1461;--purple-primary:#5b1f8e;--purple-vivid:#7b2fbe;--purple-light:#9b4fde;--magenta:#9b2fad;--magenta-light:#c94fd7;--teal:#4ecdc4;--teal-light:#7eddd7;--gold:gold;--gold-light:#ffe44d;--white:#fff;--off-white:#f8f6fb;--gray-100:#f0ecf5;--gray-200:#e0d8eb;--gray-300:#c0b3d4;--gray-400:#9a8bb0;--gray-500:#6b5b80;--gray-600:#4a3d5c;--dark:#1a0f2e;--dark-light:#2d1b4e;--gradient-hero:linear-gradient(135deg,var(--purple-deep)0%,var(--magenta)50%,var(--purple-vivid)100%);--gradient-card:linear-gradient(135deg,#5b1f8e14 0%,#9b2fad14 100%);--gradient-dark:linear-gradient(180deg,var(--dark)0%,var(--dark-light)100%);--gradient-glow:radial-gradient(ellipse at center,#4ecdc426 0%,transparent 70%);--shadow-sm:0 2px 8px #3d146114;--shadow-md:0 4px 20px #3d14611f;--shadow-lg:0 8px 40px #3d146129;--shadow-xl:0 16px 60px #3d146133;--shadow-glow:0 0 30px #4ecdc44d;--font-heading:"Outfit",sans-serif;--font-body:"Inter",sans-serif;--section-padding:100px 0;--container-width:1200px;--container-padding:0 24px;--transition-fast:.2s cubic-bezier(.4,0,.2,1);--transition-medium:.4s cubic-bezier(.4,0,.2,1);--transition-slow:.6s cubic-bezier(.4,0,.2,1);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{font-family:var(--font-body);color:var(--dark);background:var(--white);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:var(--font-body);background:0 0;border:none}input,textarea,select{font-family:var(--font-body)}.container{max-width:var(--container-width);padding:var(--container-padding);margin:0 auto}.section{padding:var(--section-padding)}.glass{-webkit-backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #ffffff26}.glass-dark{-webkit-backdrop-filter:blur(20px);background:#1a0f2e99;border:1px solid #ffffff1a}.gradient-text{background:linear-gradient(135deg,var(--purple-vivid),var(--teal));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{border-radius:var(--radius-full);letter-spacing:.3px;transition:all var(--transition-medium);z-index:1;align-items:center;gap:8px;padding:14px 32px;font-size:.95rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";border-radius:inherit;opacity:0;transition:opacity var(--transition-medium);z-index:-1;position:absolute;inset:0}.btn:hover:before{opacity:1}.btn-primary{background:var(--gradient-hero);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-primary:before{background:linear-gradient(135deg,var(--purple-vivid)0%,var(--magenta-light)100%)}.btn-teal{background:var(--teal);color:var(--dark);box-shadow:0 4px 15px #4ecdc44d}.btn-teal:hover{background:var(--teal-light);transform:translateY(-2px);box-shadow:0 6px 25px #4ecdc466}.btn-outline{border:2px solid var(--white);color:var(--white)}.btn-outline:hover{background:var(--white);color:var(--purple-primary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #4ecdc433}50%{box-shadow:0 0 40px #4ecdc466}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-in{animation:.8s forwards fadeInUp}@media (max-width:768px){:root{--section-padding:60px 0}h1{font-size:2rem!important}h2{font-size:1.75rem!important}h3{font-size:1.25rem!important}}@media (max-width:480px){:root{--section-padding:40px 0;--container-padding:0 16px}}
