@keyframes blob{0%{transform:translate(0px, 0px) scale(1);}33%{transform:translate(30px, -50px) scale(1.1);}66%{transform:translate(-20px, 20px) scale(0.9);}100%{transform:translate(0px, 0px) scale(1);}}@keyframes slideUpFade{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}@keyframes pulse{0%, 100%{opacity:1;}50%{opacity:0.8;}}.animate-blob{animation:blob 7s infinite;}@media (max-width:768px){.animate-blob{animation-duration:10s;opacity:0.15;}}.animation-delay-2000{animation-delay:2s;}.animation-delay-4000{animation-delay:4s;}.fade-in{animation:fadeIn 0.6s ease-in;}.fade-in-delay{animation:fadeIn 0.6s ease-in 1s both;}@keyframes fadeIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}.scroll-indicator{animation:scrollIndicator 2s infinite;}.scroll-dot{animation:scrollDot 2s infinite;}@keyframes scrollIndicator{0%, 100%{transform:translateY(0);}50%{transform:translateY(10px);}}@keyframes scrollDot{0%, 100%{transform:translateY(0);}50%{transform:translateY(12px);}}.service-card{transition:all 0.3s ease;}.service-card:hover{transform:translateY(-4px);box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.15);}@keyframes float{0%, 100%{transform:translateY(0px);}50%{transform:translateY(-20px);}}@keyframes shimmer{0%{background-position:-1000px 0;}100%{background-position:1000px 0;}}.bg-gradient-to-r{background-size:200% auto;animation:shimmer 3s linear infinite;}.bg-clip-text{-webkit-background-clip:text;background-clip:text;}.text-transparent{color:transparent;}.backdrop-blur-sm{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}.backdrop-blur-md{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}.rounded-3xl{border-radius:1.5rem;}.text-8xl{font-size:6rem;line-height:1;}.text-7xl{font-size:4.5rem;line-height:1;}.text-6xl{font-size:3.75rem;line-height:1;}.text-5xl{font-size:3rem;line-height:1;}.text-4xl{font-size:2.25rem;line-height:2.5rem;}.w-96{width:24rem;}.h-96{height:24rem;}.blur-3xl{filter:blur(64px);-webkit-filter:blur(64px);}.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops));}[class*="from-white"][class*="via-blue-100"][class*="to-cyan-100"]{background-image:linear-gradient(to right, #ffffff, #dbeafe, #cffafe);}[class*="from-blue-400"][class*="via-cyan-400"][class*="to-blue-300"]{background-image:linear-gradient(to right, #60a5fa, #22d3ee, #93c5fd);}.from-white{--tw-gradient-from:#ffffff;--tw-gradient-to:rgba(255, 255, 255, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.via-blue-100{--tw-gradient-to:rgba(219, 234, 254, 0);--tw-gradient-stops:var(--tw-gradient-from), #dbeafe, var(--tw-gradient-to);}.to-cyan-100{--tw-gradient-to:#cffafe;}.from-blue-400{--tw-gradient-from:#60a5fa;--tw-gradient-to:rgba(96, 165, 250, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.via-cyan-400{--tw-gradient-to:rgba(34, 211, 238, 0);--tw-gradient-stops:var(--tw-gradient-from), #22d3ee, var(--tw-gradient-to);}.to-blue-300{--tw-gradient-to:#93c5fd;}.from-blue-600{--tw-gradient-from:#2563eb;--tw-gradient-to:rgba(37, 99, 235, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.to-cyan-600{--tw-gradient-to:#0891b2;}.from-purple-600{--tw-gradient-from:#9333ea;--tw-gradient-to:rgba(147, 51, 234, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.to-pink-600{--tw-gradient-to:#db2777;}.from-green-600{--tw-gradient-from:#16a34a;--tw-gradient-to:rgba(22, 163, 74, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.to-green-600{--tw-gradient-to:#16a34a;}.bg-gradient-to-br.from-blue-500.to-cyan-500{background-image:linear-gradient(to bottom right, #3b82f6, #06b6d4);}.bg-gradient-to-br.from-purple-500.to-pink-500{background-image:linear-gradient(to bottom right, #a855f7, #ec4899);}.bg-gradient-to-br.from-green-500.to-emerald-500{background-image:linear-gradient(to bottom right, #22c55e, #10b981);}.bg-gradient-to-br.from-orange-500.to-amber-500{background-image:linear-gradient(to bottom right, #f97316, #f59e0b);}.bg-gradient-to-br.from-gray-900.via-blue-900.to-gray-900{background-image:linear-gradient(to bottom right, #111827, #1e3a8a, #111827);}.bg-cyan-500\/10{background-color:rgba(6, 182, 212, 0.1);}.bg-cyan-500\/5{background-color:rgba(6, 182, 212, 0.05);}.bg-white\/60{background-color:rgba(255, 255, 255, 0.6);}.bg-blue-500\/20{background-color:rgba(59, 130, 246, 0.2);}.shadow-2xl{box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.25);}.shadow-blue-500\/50{box-shadow:0 25px 50px -12px rgba(59, 130, 246, 0.5);}.bg-blue-500\/10{background-color:rgba(59, 130, 246, 0.1);}.border-blue-500\/20{border-color:rgba(59, 130, 246, 0.2);}.bg-purple-500\/5{background-color:rgba(168, 85, 247, 0.05);}.bg-pink-500\/5{background-color:rgba(236, 72, 153, 0.05);}.bg-green-500\/5{background-color:rgba(34, 197, 94, 0.05);}.bg-emerald-500\/5{background-color:rgba(16, 185, 129, 0.05);}.bg-orange-500\/5{background-color:rgba(249, 115, 22, 0.05);}.bg-amber-500\/5{background-color:rgba(245, 158, 11, 0.05);}.bg-blue-500\/20{background-color:rgba(59, 130, 246, 0.2);}.bg-purple-500\/20{background-color:rgba(168, 85, 247, 0.2);}.border-white\/20{border-color:rgba(255, 255, 255, 0.2);}.border-white\/30{border-color:rgba(255, 255, 255, 0.3);}.border-white\/40{border-color:rgba(255, 255, 255, 0.4);}.bg-white\/10{background-color:rgba(255, 255, 255, 0.1);}.bg-white\/20{background-color:rgba(255, 255, 255, 0.2);}.text-blue-400{color:#60a5fa;}.text-cyan-300{color:#67e8f9;}.text-cyan-600{color:#0891b2;}.text-purple-600{color:#9333ea;}.text-green-600{color:#16a34a;}.text-pink-600{color:#db2777;}.hover\:from-blue-500:hover{--tw-gradient-from:#3b82f6;--tw-gradient-to:rgba(59, 130, 246, 0);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.hover\:to-cyan-500:hover{--tw-gradient-to:#06b6d4;}@media (min-width:768px){.md\:text-7xl{font-size:4.5rem;line-height:1;}.md\:text-6xl{font-size:3.75rem;line-height:1;}}@media (min-width:1024px){.lg\:text-8xl{font-size:6rem;line-height:1;}.lg\:text-7xl{font-size:4.5rem;line-height:1;}}html{scroll-behavior:smooth;}*{box-sizing:border-box;}html, body{margin:0;padding:0;width:100%;overflow-x:hidden;}main{width:100%;margin:0 auto;padding:0;}section{width:100%;margin:0 auto;}section > div[class*="max-w-7xl"]{margin-left:auto !important;margin-right:auto !important;}section > div[class*="max-w-7xl"] > div{display:flex;flex-direction:column;align-items:center;}section > div[class*="max-w-7xl"] > div.text-center{text-align:center;}.grid{justify-items:center;}.flex.flex-wrap.justify-center{justify-content:center;align-items:center;}header.scrolled{background-color:rgba(255, 255, 255, 0.98);backdrop-filter:blur(20px);box-shadow:0 4px 20px rgba(0, 0, 0, 0.1);border-bottom:1px solid rgba(0, 0, 0, 0.05);}header.scrolled nav a:not([class*="bg-gradient"]){color:#1f2937;}header.scrolled nav a:hover:not([class*="bg-gradient"]){color:#2563eb;}@media (max-width:767px){#mobile-menu{max-height:calc(100vh - 4rem);overflow-y:auto;}header{backdrop-filter:blur(10px);}header.scrolled{background-color:rgba(255, 255, 255, 0.95);}}@media (max-width:640px){section#home a[href="#services"]{bottom:1rem !important;}section#home{padding-bottom:4rem !important;}}@media (min-width:641px) and (max-width:768px){section#home a[href="#services"]{bottom:2rem !important;}}@media (min-width:769px){section#home a[href="#services"]{bottom:clamp(2rem, 5vh, 4rem) !important;}}@media (min-width:1024px){section#home a[href="#services"]{bottom:clamp(3rem, 6vh, 5rem) !important;}}@media (min-width:1280px){section#home a[href="#services"]{bottom:clamp(4rem, 7vh, 6rem) !important;}}@media (min-width:1920px){section#home a[href="#services"]{bottom:clamp(5rem, 8vh, 7rem) !important;}}header.scrolled nav a:not([class*="bg-gradient"]){color:#374151 !important;}header.scrolled nav a:hover:not([class*="bg-gradient"]){color:#2563eb !important;}header.scrolled #mobile-menu-btn{color:#374151 !important;}.logo-header{filter:brightness(0) invert(1);transition:filter 0.3s ease;}header.scrolled .logo-header{filter:brightness(0) invert(0);}#form-message{padding:1rem;border-radius:0.5rem;text-align:center;width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;}#contact-form{width:100%;max-width:100%;box-sizing:border-box;}#form-message.success{background-color:#f0fdf4;border:1px solid #86efac;color:#166534;}#form-message.error{background-color:#fef2f2;border:1px solid #fca5a5;color:#991b1b;}.fade-in-on-scroll{opacity:0;transform:translateY(30px);transition:opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);will-change:opacity, transform;}.fade-in-on-scroll.visible{opacity:1;transform:translateY(0);}.service-card:nth-child(1){transition-delay:0s;}.service-card:nth-child(2){transition-delay:0.1s;}.service-card:nth-child(3){transition-delay:0.2s;}.service-card:nth-child(4){transition-delay:0.3s;}.text-primary-600{color:#2563eb;}.bg-primary-50{background-color:#eff6ff;}.bg-primary-100{background-color:#dbeafe;}.bg-primary-600{background-color:#2563eb;}.bg-primary-700{background-color:#1d4ed8;}.hover\:text-primary-600:hover{color:#2563eb;}.hover\:text-primary-700:hover{color:#1d4ed8;}.border-primary-200{border-color:#bfdbfe;}.hover\:border-primary-300:hover{border-color:#93c5fd;}#consent-banner{position:fixed;bottom:0;left:0;right:0;background-color:#111827;color:#ffffff;padding:1.5rem;z-index:9999;box-shadow:0 -4px 6px -1px rgba(0, 0, 0, 0.1), 0 -2px 4px -1px rgba(0, 0, 0, 0.06);}.consent-banner-content{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:1.5rem;}@media (min-width:640px){.consent-banner-content{flex-direction:row;align-items:center;}}.consent-banner-text{flex:1;text-align:center;}@media (min-width:640px){.consent-banner-text{text-align:left;}}.consent-banner-message{font-size:0.9375rem;line-height:1.5;color:#ffffff;margin:0;font-weight:400;}.consent-banner-buttons{display:flex;gap:1rem;flex-shrink:0;}.consent-button{padding:0.75rem 1.5rem;border-radius:0.5rem;font-weight:500;font-size:0.9375rem;cursor:pointer;transition:all 0.2s ease;border:none;white-space:nowrap;}.consent-button-accept{background-color:#2563eb;color:#ffffff;}.consent-button-accept:hover{background-color:#1d4ed8;}.consent-button-refuse{background-color:#374151;color:#ffffff;}.consent-button-refuse:hover{background-color:#4b5563;}