:root{--color-bg: #F9FAFB;--color-surface: #FFFFFF;--color-primary: #20B2AA;--color-primary-dark: #178a84;--color-accent: #FDE047;--color-text: #1F2937;--color-text-light: #6B7280;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-lg: 1rem;--radius-md: .75rem}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;background-image:radial-gradient(#20B2AA .5px,transparent .5px);background-size:24px 24px;background-position:0 0;background-attachment:fixed}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:9999px;font-weight:600;transition:all .2s;cursor:pointer;border:none;font-size:1rem}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.section{padding:5rem 0}.text-center{text-align:center}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}h1,h2,h3{line-height:1.2;font-weight:800;letter-spacing:-.025em}h1{font-size:3.5rem;margin-bottom:1.5rem}h2{font-size:2.5rem;margin-bottom:1rem}h3{font-size:1.5rem;margin-bottom:.5rem}@media(max-width:768px){h1{font-size:2.5rem}h2{font-size:2rem}}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md);border:1px solid rgba(0,0,0,.05);transition:transform .2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}@media(max-width:768px){.grid-2{grid-template-columns:1fr}}.highlight{position:relative;z-index:1}.highlight:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:30%;background-color:var(--color-accent);z-index:-1;opacity:.6;transform:skew(-10deg)}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:float 6s ease-in-out infinite}@media(max-width:768px){.section{padding:3rem 0}.container{padding:0 1rem}h1{font-size:2.5rem}h2{font-size:2rem}.grid-2{gap:2rem}}@media(max-width:480px){h1{font-size:2rem}h2{font-size:1.75rem}.btn{width:100%}.grid-4{grid-template-columns:1fr}}.mobile-stack{display:flex;gap:1rem}@media(max-width:480px){.mobile-stack{flex-direction:column}}.celebration-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.success-card-enter{background:#fff;padding:3rem 4rem;border-radius:24px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;text-align:center;max-width:500px;width:90%;position:relative;z-index:10001;animation:popIn .6s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes popIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.balloon-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:10000;pointer-events:none}.balloon{position:absolute;bottom:-100px;width:50px;height:65px;border-radius:50%;animation:floatUp 6s ease-in infinite;opacity:.9}.balloon:before{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:2px;height:10px;background:currentColor}.balloon:after{content:"";position:absolute;bottom:-25px;left:50%;transform:translate(-50%);width:1px;height:20px;background:#0003}@keyframes floatUp{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-120vh) rotate(20deg);opacity:0}}
