:root { --green-dark:#00BE62;
    --green-mid:#00A857;
    --green-light:#7DD957;
    --yellow:#FFDE58;
    --ink:#242724;
    --ink-soft:#5B5F5A;
    --bg:#FAFBF6;
    --bg-alt:#EFF7EA;
    --line:#E7EBE2;
    --white:#FFFFFF; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); font-family:'Manrope',system-ui,sans-serif; color:var(--ink); }
h1,h2,h3 { font-family:'Sora',system-ui,sans-serif; margin:0; letter-spacing:-0.01em; }
p { margin:0; }
a { color:var(--green-mid); text-decoration:none; }
a:hover { color:var(--green-dark); }
.nav-link { color:var(--ink); text-decoration:none; font-weight:600; font-size:15px; padding-bottom:4px; border-bottom:2px solid transparent; }
.nav-link:hover { color:var(--green-mid); }
.nav-link-active { color:var(--green-mid); border-bottom-color:var(--green-mid); }
.btn-primary { background:var(--green-dark); color:#fff; font-weight:700; padding:13px 26px; border-radius:999px; font-size:15px; white-space:nowrap; box-shadow:0 6px 16px rgba(0,190,98,0.25); display:inline-flex; align-items:center; gap:8px; }
.btn-primary:hover { background:var(--green-mid); color:#fff; }
.btn-secondary { color:var(--ink); font-weight:700; font-size:15px; display:inline-flex; align-items:center; gap:6px; }
.btn-secondary:hover { color:var(--green-mid); }
.card-hover { transition:transform .18s ease, box-shadow .18s ease; }
.card-hover:hover { transform:translateY(-4px); box-shadow:0 16px 32px rgba(36,39,36,0.08); }
.chip { display:flex; align-items:center; gap:10px; background:#fff; border-radius:14px; padding:12px 16px; box-shadow:0 10px 24px rgba(36,39,36,0.10); font-weight:700; font-size:14px; }
.step-row:hover .step-num { background:var(--green-mid); }
.field-input { width:100%; border:1.5px solid var(--line); border-radius:12px; padding:13px 16px; font-family:'Manrope',sans-serif; font-size:15px; color:var(--ink); background:var(--bg); outline:none; }
.field-input:focus { border-color:var(--green-mid); }
.field-label { font-size:13.5px; font-weight:700; color:var(--ink); margin-bottom:8px; display:block; }
