@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@400..700&display=swap";
:root{--white-100:#fff;--white-200:#fafafa;--white-300:#f4f4f5;--gray-100:#e4e4e7;--gray-300:#d4d4d8;--gray-500:#71717a;--gray-700:#3f3f46;--gray-900:#18181b;--blue-900:#0c1e38;--blue-600:#2563eb;--blue-100:#dbeafe;--surface-base:var(--white-100);--surface-raised:var(--white-200);--surface-overlay:#ffffffd9;--on-surface:var(--blue-900);--on-surface-medium:var(--gray-700);--on-surface-low:var(--gray-500);--accent:var(--blue-600);--accent-vibrant:#1d4ed8;--accent-muted:var(--blue-100);--accent-border:var(--gray-100);--border-subtle:var(--gray-100);--border-moderate:var(--gray-300);--font-display:"Playfair Display",Georgia,serif;--font-body:"Inter",system-ui,sans-serif;--step--1:clamp(.875rem,1.2vw,1rem);--step-0:clamp(1rem,1.5vw,1.125rem);--step-1:clamp(1.25rem,2.5vw,1.5rem);--step-2:clamp(1.5rem,3vw,2rem);--step-3:clamp(2rem,4.5vw,3rem);--step-4:clamp(3rem,6.5vw,4.5rem);--step-5:clamp(4rem,9vw,6.5rem);--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:6rem;--space-2xl:10rem;--radius-sm:8px;--radius-md:16px;--radius-lg:32px;--radius-full:100px;--ease-out-expo:cubic-bezier(.16,1,.3,1);--duration-fast:.2s;--duration-base:.4s;--duration-slow:.8s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--surface-base);color:var(--on-surface);font-family:var(--font-body);-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-size:16px;line-height:1.5;overflow-x:hidden}body{background:var(--surface-base)}h1,h2,h3,h4{font-family:var(--font-display);color:var(--on-surface);letter-spacing:-.03em;font-weight:500;line-height:1.05}a{color:inherit;text-decoration:none}button,input{font-family:var(--font-body)}img{max-width:100%;display:block}.container{max-width:1200px;margin-inline:auto;padding-inline:clamp(1.25rem,5vw,4rem)}@keyframes floatUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes floatSlight{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
