/* UNFAIR — styles partagés (tokens + composants communs) */
:root{
  --ink:#111111;--ink2:#333333;--grey:#888888;--grey-l:#cccccc;--grey-ll:#e8e5df;
  --cream:#f7f5f1;--cream2:#edeae4;--white:#ffffff;--accent:#1a1aff;--accent-d:#0000dd;--accent-l:#eeeeff;
  --red:#d63b3b;--amber:#d97706;--green:#16a34a;
  --red-l:#fef2f2;--green-l:#f0fdf4;--amber-l:#fffbeb;--blue-l:#eef0ff;--purple-l:#f5f3ff;
  --r-btn:100px;--r-card:14px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}

.serif{font-family:'DM Serif Display',serif;font-weight:400;}
.eyebrow{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:2.5px;text-transform:uppercase;}
.brand{font-family:'DM Serif Display',serif;font-style:italic;font-size:22px;display:flex;align-items:center;gap:11px;}
.brand b{font-family:'DM Sans',sans-serif;font-style:normal;font-weight:700;font-size:9px;color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;border-left:1px solid var(--grey-ll);padding-left:11px;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:14px;border-radius:var(--r-btn);padding:12px 24px;cursor:pointer;border:1px solid transparent;transition:transform .15s,background .15s,box-shadow .2s,border-color .15s;white-space:nowrap;}
.btn-p{background:var(--accent);color:#fff;box-shadow:0 8px 24px rgba(26,26,255,.2);}
.btn-p:hover{background:var(--accent-d);transform:translateY(-1px);}
.btn-s{background:var(--white);color:var(--ink);border-color:var(--grey-ll);}
.btn-s:hover{border-color:var(--accent);color:var(--accent);}
.btn-sm{padding:8px 15px;font-size:13px;}
.btn:disabled{opacity:.5;cursor:not-allowed;}

label{display:block;font-size:11px;font-weight:700;color:var(--grey);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;}
.field{width:100%;padding:12px 14px;border:1px solid var(--grey-ll);border-radius:10px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink);background:var(--white);outline:none;transition:border-color .15s;}
.field:focus{border-color:var(--accent);}
.field::placeholder{color:var(--grey-l);}

.card{background:var(--white);border:1px solid var(--grey-ll);border-radius:var(--r-card);padding:20px;}
.topline{height:3px;background:var(--accent);}
