*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #FAF7F2;--surface: #FFFFFF;--ink: #1C1A17;--muted: #6B6860;--border: #E8E4DC;--accent: #C8A96E;--accent-soft: #F5EFE4;--danger: #C0392B;--success: #2E7D32;--radius: 4px;--radius-lg: 8px}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:Manrope,sans-serif;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:Fraunces,serif;font-weight:400;line-height:1.2}a{color:inherit;text-decoration:none}button{font-family:Manrope,sans-serif;cursor:pointer;border:none;background:none}input,select,textarea{font-family:Manrope,sans-serif;font-size:14px}.btn-primary{display:block;width:100%;padding:13px 24px;background:var(--ink);color:var(--bg);font-size:13px;font-weight:500;letter-spacing:.04em;border-radius:var(--radius);transition:opacity .15s;text-align:center}.btn-primary:hover{opacity:.85}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-outline{display:block;width:100%;padding:12px 24px;background:transparent;color:var(--ink);font-size:13px;font-weight:500;letter-spacing:.04em;border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s;text-align:center}.btn-outline:hover{border-color:var(--ink)}.field-group{display:flex;flex-direction:column;gap:6px}.field-group label{font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.field-input{padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-size:14px;outline:none;transition:border-color .15s}.field-input:focus{border-color:var(--ink)}.field-input.error{border-color:var(--danger)}.error-msg{font-size:12px;color:var(--danger);margin-top:4px}.success-msg{font-size:12px;color:var(--success);margin-top:4px}
