:root{--c-primary: #00875A;--c-primary-dark: #006B47;--c-primary-light: #E0F2EA;--c-primary-lighter: #F0FAF5;--c-primary-hover: #007A52;--c-primary-glow: rgba(0, 135, 90, .2);--c-primary-gradient: linear-gradient(135deg, #00875A 0%, #006B47 50%, #004D35 100%);--c-accent: #C8553D;--c-accent-light: #FDEAE6;--c-accent-hover: #B84A34;--c-highlight: #E9C46A;--c-highlight-light: #FDF6E3;--c-bg: #FEFBF4;--c-bg-subtle: #FAF5EB;--c-card: #FFFDF8;--c-card-hover: #FFFCF5;--c-text: #1A1614;--c-text-secondary: #4A3F37;--c-text-muted: #9A8E82;--c-text-on-primary: #FEFBF4;--c-border: #E5DDD2;--c-border-light: #F0EBE3;--c-border-focus: var(--c-primary);--c-error: #C1292E;--c-error-light: #FEF0F0;--c-warning: #D4860B;--c-warning-light: #FEF7E8;--c-success: #00875A;--c-success-light: #EFFAF2;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px;--r-2xl: 24px;--r-full: 9999px;--shadow-xs: 0 1px 2px rgba(26, 22, 20, .04);--shadow-sm: 0 1px 3px rgba(26, 22, 20, .06), 0 1px 2px rgba(26, 22, 20, .04);--shadow-md: 0 4px 8px -1px rgba(26, 22, 20, .06), 0 2px 4px -2px rgba(26, 22, 20, .04);--shadow-lg: 0 10px 20px -4px rgba(26, 22, 20, .08), 0 4px 8px -4px rgba(26, 22, 20, .04);--shadow-xl: 0 20px 40px -8px rgba(26, 22, 20, .1), 0 8px 16px -6px rgba(26, 22, 20, .04);--shadow-glow: 0 0 0 3px var(--c-primary-glow);--shadow-card: 0 1px 2px rgba(26, 22, 20, .03), 0 4px 16px rgba(26, 22, 20, .05);--shadow-card-hover: 0 2px 8px rgba(26, 22, 20, .06), 0 12px 32px rgba(26, 22, 20, .08);--shadow-card-subtle: 0 1px 3px rgba(26, 22, 20, .03), 0 4px 12px rgba(26, 22, 20, .03);--shadow-warm: 0 4px 20px rgba(200, 85, 61, .12);--font-display: "DM Serif Display", Georgia, "Times New Roman", serif;--font: "Outfit", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-reveal: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--duration-reveal: .7s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);background:var(--c-bg);color:var(--c-text);line-height:1.6;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.15;letter-spacing:-.01em}img{display:block;max-width:100%}button{cursor:pointer;font-family:var(--font)}input,textarea{font-family:var(--font)}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes reveal-up{0%{opacity:0;transform:translateY(24px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes reveal-scale{0%{opacity:0;transform:scale(.92);filter:blur(2px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-glow{0%,to{opacity:.6}50%{opacity:1}}@keyframes pop-in{0%{transform:scale(0);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}to{transform:translateY(140px) rotate(720deg) scale(.5);opacity:0}}@keyframes check-draw{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes progress-stripe{0%{background-position:0 0}to{background-position:40px 0}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.stagger-1{animation-delay:.06s}.stagger-2{animation-delay:.12s}.stagger-3{animation-delay:.18s}.stagger-4{animation-delay:.24s}.stagger-5{animation-delay:.3s}
