:root{--cream:#f5efe6;--ivory:#faf6ef;--graphite:#2b2520;--graphite-soft:#6e6557;--terracotta:#c26a4a;--terracotta-deep:#a8553a;--sand:#e8dfce}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--cream);color:var(--graphite);font-family:-apple-system,BlinkMacSystemFont,Inter,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased}.page{display:grid;min-height:100vh;padding:32px 20px;place-items:center}.container{max-width:560px;text-align:center;width:100%}.brand{color:var(--terracotta);font-size:18px;font-weight:600;letter-spacing:.02em;margin-bottom:64px}.hero{font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,5vw,48px);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin-bottom:24px}.hero em{color:var(--terracotta-deep);font-style:italic}.lede{color:var(--graphite-soft);font-size:17px;line-height:1.55;margin:0 auto 36px;max-width:460px}.form{display:flex;gap:8px;margin:0 auto 16px;max-width:420px}.form input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--ivory);border:1px solid var(--sand);border-radius:999px;color:var(--graphite);flex:1;font-family:inherit;font-size:16px;height:48px;min-width:0;outline:none;padding:0 18px;transition:border-color .15s;width:100%}.form input::-moz-placeholder{color:var(--graphite-soft);opacity:.7}.form input::placeholder{color:var(--graphite-soft);opacity:.7}.form input:focus{border-color:var(--terracotta)}.form button{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--terracotta);border:none;border-radius:999px;color:var(--ivory);cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;height:48px;padding:0 22px;transition:background .15s;white-space:nowrap}.form button:hover:not(:disabled){background:var(--terracotta-deep)}.form button:disabled{cursor:not-allowed;opacity:.6}.msg{font-size:14px;margin-top:8px}.msg.ok{color:#6f7a4a}.msg.err{color:#b05439}.foot{color:var(--graphite-soft);font-size:12px;margin-top:80px;opacity:.7}@media(max-width:500px){.page{padding:24px 16px}.form{flex-direction:column;gap:10px;max-width:none;width:100%}.form button,.form input{display:block;width:100%}}
