*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--ink:#0d0d0d;--ink-soft:#3a3a3a;--ink-muted:#888;--cream:#f7f4ef;--cream-dark:#ede9e1;--gold:#c9993a;--gold-light:#e8c97a;--blue:#1a3a5c;--blue-mid:#2d6a9f;--blue-light:#ebf3fa;--green:#2d8a3e;--red:#c0392b;--orange:#c70;--white:#fff;--shadow-sm:0 2px 8px rgba(0,0,0,.06);--shadow-md:0 8px 32px rgba(0,0,0,.1);--shadow-lg:0 20px 60px rgba(0,0,0,.14);--radius:12px;--radius-lg:20px}html{scroll-behavior:smooth}body{font-family:DM Sans,sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;min-height:100vh}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-ring{0%{transform:scale(1);opacity:.6}50%{transform:scale(1.08);opacity:.3}to{transform:scale(1);opacity:.6}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes progress-fill{0%{width:0}to{width:var(--target-w)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-up{animation:fadeUp .6s ease both}.animate-fade-in{animation:fadeIn .4s ease both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--cream-dark);border-radius:3px}