:root{--teal:#1b3c37;--gold:#a97c2f;--fire:#c94b3f;--fire-bg:#fbeae5;--fire-line:#e7b7ac;--paper:#f6f4ec;--ink:#26251f;--muted:#8a8778;--line:#e2ddcc}*{box-sizing:border-box}body{margin:0;background:#e9e5d8;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font-family:inherit}.page{min-height:100vh;display:flex;justify-content:center;padding:24px 12px}.card{width:100%;max-width:420px;background:var(--paper);border-radius:18px;box-shadow:0 12px 40px rgba(38,37,31,.14);border:1px solid var(--line);overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease}.card.fire-active{border-color:var(--fire);box-shadow:0 12px 40px rgba(201,75,63,.22)}.wordmark{font-size:26px;font-weight:700;letter-spacing:-.5px}.claim{font-size:12px;font-style:italic;color:var(--muted);margin-top:4px}.btn{border:none;border-radius:20px;padding:10px 16px;background:var(--teal);color:#fff;font-weight:600;cursor:pointer}.btn:disabled{opacity:.6;cursor:not-allowed}.input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:9px 12px;font-size:14px;background:#fff;color:var(--ink)}.error-banner{font-size:12.5px;color:#b5443a;background:#f7ece9;border-radius:8px;padding:8px 10px;margin:10px 0}.landing{min-height:100vh;padding:56px 20px 48px;gap:44px}.hero,.landing{display:flex;flex-direction:column;align-items:center}.hero{max-width:480px;width:100%;text-align:center}.hero .wordmark{font-size:38px}.hero .claim{font-size:13px;margin-bottom:30px}.hero-headline{font-size:27px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.hero-subheadline{font-size:15px;font-style:italic;color:var(--gold);margin:0 0 26px}.hero-lines{display:flex;flex-direction:column;gap:12px;margin:0 0 26px}.hero-line-muted{font-size:13px;color:var(--muted);margin:0;line-height:1.5}.hero-line-strong{font-size:14.5px;font-weight:500;color:var(--ink);margin:0;line-height:1.5}.hero-tagline{font-size:16px;font-weight:700;color:var(--teal);padding-top:22px;border-top:1px solid var(--line);width:100%}.login-card{width:100%;max-width:380px}