*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--grove-dark: #0D1F0F;--grove-deep: #132B15;--grove-mid: #1B6B3A;--grove-light: #2D9E57;--mango-gold: #F59E0B;--mango-amber: #D97706;--cream: #FDFAF3;--cream-dim: rgba(253,250,243,.6);--cream-mute: rgba(253,250,243,.35);--cream-ghost: rgba(253,250,243,.08);--error: #EF4444;--success: #10B981;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 32px;--ease: cubic-bezier(.4,0,.2,1);--font-display: "Cormorant Garamond", serif;--font-body: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--grove-dark);color:var(--cream);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}input,textarea,select,button{font-family:var(--font-body)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--grove-dark)}::-webkit-scrollbar-thumb{background:var(--grove-mid);border-radius:3px}@keyframes fadeDown{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes panelIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.2)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%,to{opacity:.35}50%{opacity:.7}}@keyframes successPop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes bump{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes badgeBlink{0%,49%{background:#f59e0b2e;box-shadow:0 0 16px #f59e0b26}50%,to{background:#f59e0b4d;box-shadow:0 0 28px #f59e0b52}}@media (max-width: 600px){.panel-header{padding:24px 20px 20px!important}.panel-body{padding:24px 20px!important}.panel-footer{padding:0 20px 24px!important}.error-banner{margin-left:20px!important;margin-right:20px!important}.steps-nav .step-connector{width:28px!important}.steps-nav .step-circle{width:28px!important;height:28px!important;font-size:11px!important}.steps-nav .step-label{font-size:9px!important}.app-container{padding:0 12px 48px!important}.hero{padding:40px 0 32px!important}.hero h1{font-size:clamp(36px,10vw,52px)!important}.hero-badge{font-size:11px!important;padding:8px 16px!important}.form-card{border-radius:var(--radius-md)!important}}
