:root{--primary-50: #fbf7ff;--primary-100: #f3e8ff;--primary-200: #e9d5ff;--primary-300: #d8b4fe;--primary-400: #c084fc;--primary-500: #a855f7;--primary-600: #9333ea;--primary-700: #7e22ce;--primary-800: #6b21a8;--primary-900: #581c87;--secondary-50: #fff1f2;--secondary-100: #ffe4e6;--secondary-200: #fecdd3;--secondary-500: #f43f5e;--secondary-600: #e11d48;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--white: #ffffff;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--color-bg-app: transparent;--color-bg-card: rgba(255, 255, 255, .85);--color-bg-subtle: var(--primary-50);--color-text-primary: var(--gray-900);--color-text-secondary: var(--gray-600);--color-text-accent: var(--primary-600);--color-border: var(--primary-200);--color-border-hover: var(--primary-300);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display: "Outfit", var(--font-sans);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(147, 51, 234, .05);--shadow-md: 0 4px 6px -1px rgba(147, 51, 234, .1), 0 2px 4px -1px rgba(147, 51, 234, .06);--shadow-lg: 0 10px 15px -3px rgba(147, 51, 234, .1), 0 4px 6px -2px rgba(147, 51, 234, .05);--shadow-xl: 0 20px 25px -5px rgba(147, 51, 234, .1), 0 10px 10px -5px rgba(147, 51, 234, .04);--shadow-colored: 0 10px 30px -5px rgba(147, 51, 234, .4);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}input,textarea,select{color:var(--gray-900)!important;background-color:var(--white)}body{font-family:var(--font-sans);background:var(--color-bg-app);background-image:radial-gradient(circle at 15% 50%,rgba(216,180,254,.15),transparent 25%),radial-gradient(circle at 85% 30%,rgba(244,63,94,.1),transparent 25%);background-attachment:fixed;color:var(--color-text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--gray-900);font-weight:800;letter-spacing:-.03em}h1{background:linear-gradient(135deg,var(--primary-700),var(--primary-500));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--primary-700)}@supports (-webkit-background-clip: text){h1{color:transparent}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--primary-200);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--primary-300)}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.glass-panel{background:#ffffffb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.6);box-shadow:0 4px 30px #0000000d}.glass-panel-dark{background:#1e293bb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);color:#fff}.text-gradient{background:linear-gradient(135deg,var(--primary-600),var(--secondary-500));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-purple{background:linear-gradient(135deg,var(--primary-700),var(--primary-400));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.fade-in{animation:fadeIn .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pulse-animation{animation:pulse 3s infinite ease-in-out}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.float-animation{animation:float 6s ease-in-out infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-drift{animation:drift 20s infinite linear}.animate-drift-slow{animation:drift 30s infinite linear}.animate-drift-reverse{animation:driftReverse 25s infinite linear}@keyframes drift{0%{transform:translate(0) rotate(0)}25%{transform:translate(10px,-10px) rotate(5deg)}50%{transform:translate(20px) rotate(0)}75%{transform:translate(10px,10px) rotate(-5deg)}to{transform:translate(0) rotate(0)}}@keyframes driftReverse{0%{transform:translate(0) rotate(0)}50%{transform:translate(-20px,-15px) rotate(-10deg)}to{transform:translate(0) rotate(0)}}.animate-slide-up-fade{opacity:0;animation:slideUpFade .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-scale-in{opacity:0;animation:scaleIn .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.reveal-on-scroll{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1)}.reveal-on-scroll.visible{opacity:1;transform:translateY(0)}.paw-print{font-size:2rem;opacity:.1;position:absolute;pointer-events:none;animation:pawWalk 15s infinite linear}@keyframes pawWalk{0%{transform:translateY(100vh) rotate(0);opacity:0}10%{opacity:.15}90%{opacity:.15}to{transform:translateY(-20vh) rotate(20deg);opacity:0}}.card-hover{transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-colored)}.btn-primary{background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;border:none;font-weight:600;padding:.75rem 1.5rem;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 6px -1px #7c3aed4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #7c3aed66}@media(max-width:768px){:root{--space-8: 1.5rem;--space-12: 2rem}h1{font-size:2rem!important}.hide-on-mobile{display:none!important}}@media(min-width:769px){.show-on-mobile{display:none!important}}input,textarea,select{font-size:16px!important}.skeleton-pulse{background:linear-gradient(90deg,var(--gray-100) 25%,var(--primary-50) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:768px){.stack-on-mobile{flex-direction:column!important}}
