*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--ink:#1a1a1a;--paper:#faf8f5;--cream:#f3efe8;--accent:#c45a3c;--accent-light:#e8a490;--teal:#2a6f6f;--teal-light:#d0e8e4;--slate:#5a6670;--border:#e0dbd3;--gold:#b8943e;--white-true:#fff;--white:#faf8f5;--teal-50:#d0e8e4;--teal-100:#d0e8e4;--teal-200:#d0e8e4;--teal-300:#2a6f6f;--teal-400:#2a6f6f;--teal-500:#2a6f6f;--teal-600:#2a6f6f;--teal-700:#2a6f6f;--teal-800:#2a6f6f;--teal-900:#2a6f6f;--cyan-500:#2a6f6f;--cyan-600:#2a6f6f;--rose-50:#f3efe8;--rose-100:#e8a490;--rose-400:#c45a3c;--rose-500:#c45a3c;--slate-50:#faf8f5;--slate-100:#f3efe8;--slate-200:#e0dbd3;--slate-300:#e0dbd3;--slate-400:#5a6670;--slate-500:#5a6670;--slate-600:#5a6670;--slate-700:#1a1a1a;--slate-800:#1a1a1a;--slate-900:#1a1a1a;--gradient-brand:var(--accent);--gradient-warm:var(--accent-light);--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;--radius-sm:2px;--radius-md:2px;--radius-lg:2px;--radius-xl:2px;--radius-2xl:2px;--font-sans:"DM Sans", system-ui, sans-serif;--font-display:"DM Serif Display", Georgia, serif;--font-mono:"JetBrains Mono", monospace}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--ink);background:var(--paper);font-size:15px;line-height:1.65}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);cursor:pointer;white-space:nowrap;border:none;border-radius:2px;align-items:center;gap:.5rem;padding:.75rem 1.75rem;font-size:1rem;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--paper)}.btn-primary:hover{background:#a94b30}.btn-secondary{background:var(--paper);color:var(--ink);border:1px solid var(--border)}.btn-secondary:hover{background:var(--cream)}.btn-ghost{color:var(--teal);background:0 0;padding:.5rem 1rem}.btn-ghost:hover{background:var(--cream)}.btn-lg{padding:1rem 2.25rem;font-size:1.125rem}.badge{background:var(--cream);color:var(--accent);border:1px solid var(--border);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:2px;border-radius:2px;align-items:center;gap:.375rem;padding:.375rem .875rem;font-size:.75rem;font-weight:500;display:inline-flex}.text-gradient{color:var(--accent);background:0 0;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset}.heading-xl{font-family:var(--font-display);color:var(--ink);font-size:clamp(2.5rem,5vw,3.75rem);font-weight:400;line-height:1.15}.heading-lg{font-family:var(--font-display);color:var(--ink);font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.2}.heading-md{font-family:var(--font-display);color:var(--ink);font-size:clamp(1.5rem,3vw,2rem);font-weight:400;line-height:1.3}.heading-sm{color:var(--ink);font-size:1.25rem;font-weight:600;line-height:1.4}.text-lg{color:var(--slate);font-size:1.125rem;line-height:1.7}.text-md{color:var(--slate);font-size:1rem;line-height:1.6}.text-sm{color:var(--slate);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);font-size:1.125rem}.card{background:var(--paper);border:1px solid var(--border);border-radius:2px;padding:2rem;transition:border-color .15s}.card:hover{border-color:var(--accent)}.card-icon{background:var(--cream);width:3rem;height:3rem;color:var(--teal);border-radius:2px;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}}
