*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--teal-50:#f0fdfa;--teal-100:#ccfbf1;--teal-200:#99f6e4;--teal-300:#5eead4;--teal-400:#2dd4bf;--teal-500:#14b8a6;--teal-600:#0d9488;--teal-700:#0f766e;--teal-800:#115e59;--teal-900:#134e4a;--cyan-500:#06b6d4;--cyan-600:#0891b2;--rose-50:#fff1f2;--rose-100:#ffe4e6;--rose-400:#fb7185;--rose-500:#f43f5e;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--white:#fff;--gradient-brand:linear-gradient(135deg, var(--teal-600), var(--cyan-600));--gradient-warm:linear-gradient(135deg, var(--rose-400), var(--teal-400));--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Playfair Display", Georgia, serif}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--slate-800);background:var(--white);line-height:1.6}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img{max-width:100%;display:block}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section-sm{padding:3rem 0}.btn{font-family:var(--font-sans);border-radius:var(--radius-lg);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:.5rem;padding:.75rem 1.75rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--gradient-brand);color:var(--white);box-shadow:0 4px 14px #0d948859}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0d948873}.btn-secondary{background:var(--white);color:var(--teal-700);border:2px solid var(--teal-200)}.btn-secondary:hover{background:var(--teal-50);border-color:var(--teal-400)}.btn-ghost{color:var(--teal-700);background:0 0;padding:.5rem 1rem}.btn-ghost:hover{background:var(--teal-50)}.btn-lg{padding:1rem 2.25rem;font-size:1.125rem}.badge{background:var(--teal-50);color:var(--teal-700);border:1px solid var(--teal-200);border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .875rem;font-size:.875rem;font-weight:500;display:inline-flex}.text-gradient{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.heading-xl{font-family:var(--font-display);color:var(--slate-900);font-size:clamp(2.5rem,5vw,3.75rem);font-weight:700;line-height:1.15}.heading-lg{font-family:var(--font-display);color:var(--slate-900);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.2}.heading-md{font-family:var(--font-display);color:var(--slate-900);font-size:clamp(1.5rem,3vw,2rem);font-weight:600;line-height:1.3}.heading-sm{color:var(--slate-900);font-size:1.25rem;font-weight:600;line-height:1.4}.text-lg{color:var(--slate-600);font-size:1.125rem;line-height:1.7}.text-md{color:var(--slate-600);font-size:1rem;line-height:1.6}.text-sm{color:var(--slate-500);font-size:.875rem;line-height:1.5}.text-center{text-align:center}.section-header{text-align:center;max-width:700px;margin:0 auto 3.5rem}.section-header .badge,.section-header h2{margin-bottom:1rem}.section-header p{color:var(--slate-500);font-size:1.125rem}.card{background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-xl);padding:2rem;transition:all .25s}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-icon{border-radius:var(--radius-lg);background:var(--teal-50);width:3rem;height:3rem;color:var(--teal-600);justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.grid-2{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.section{padding:3.5rem 0}}
