/* Public pages (request form, opt-in, consent receipt): light, mobile-first,
   branded with the Reborn tokens but fronting the *business's* name. */
:root{--paper:#FBFAFE;--text:#1E1330;--ink:#2B1150;--accent:#7C3AED;--muted:#6B6478;--border:rgba(43,17,80,.16);--ok:#1E8E5A;--ok-bg:#E6F6EE;--warn:#B7791F;--warn-bg:#FBF3DE;--danger:#C0392B;--danger-bg:#FBEAE8;}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--text);font-family:'IBM Plex Sans',-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.55;}
.wrap{max-width:560px;margin:0 auto;padding:28px 18px 60px;}
.biz{font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 6px;}
h1{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.7rem;margin:0 0 8px;color:var(--ink);}
.lead{color:var(--muted);margin:0 0 22px;}
.card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:18px;}
label{display:block;font-size:.88rem;font-weight:600;margin:0 0 6px;}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid rgba(124,58,237,.45);outline-offset:1px;}
.field{margin-bottom:16px;}
.hint{font-size:.82rem;color:var(--muted);margin-top:5px;}
.btn{font:inherit;font-weight:600;border:0;border-radius:8px;padding:12px 20px;cursor:pointer;background:var(--accent);color:#fff;width:100%;}
.btn.secondary{background:#fff;color:var(--accent);border:1.5px solid var(--accent);}
.btn:disabled{opacity:.6;cursor:default;}
.tabs{display:flex;gap:6px;margin-bottom:18px;}
.tabs button{flex:1;font:inherit;font-weight:600;padding:10px;border-radius:8px;border:1px solid var(--border);background:#fff;cursor:pointer;color:var(--muted);}
.tabs button.on{border-color:var(--accent);color:var(--accent);background:rgba(124,58,237,.06);}
.msg{padding:12px 14px;border-radius:8px;font-size:.92rem;margin-bottom:16px;}
.msg.ok{background:var(--ok-bg);color:var(--ok);}.msg.err{background:var(--danger-bg);color:var(--danger);}.msg.info{background:var(--warn-bg);color:var(--warn);}
.ref{font-family:'Space Grotesk',monospace;font-size:1.5rem;letter-spacing:.06em;font-weight:700;color:var(--ink);margin:6px 0;}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;}
.check input{width:20px;height:20px;margin-top:3px;accent-color:var(--accent);flex-shrink:0;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
ul.timeline{list-style:none;margin:0;padding:0;}
ul.timeline li{border-left:3px solid var(--accent);padding:2px 0 14px 14px;margin-left:6px;}
ul.timeline small{color:var(--muted);display:block;}
table{width:100%;border-collapse:collapse;font-size:.88rem;}
th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border);}th{color:var(--muted);font-weight:600;}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:600;}
.pill.granted{background:var(--ok-bg);color:var(--ok);}.pill.withdrawn{background:var(--danger-bg);color:var(--danger);}
.foot{font-size:.78rem;color:var(--muted);text-align:center;margin-top:30px;}

/* ---- Legal documents ---- */
.doc{max-width:760px;margin:0 auto;padding:28px 18px 70px;}
.doc h1{font-size:2rem;}
.doc h2{font-family:'Fraunces',Georgia,serif;font-size:1.2rem;color:var(--ink);margin:30px 0 8px;}
.doc p,.doc li{line-height:1.65;}
.doc ul{padding-left:22px;}
.doc li{margin-bottom:6px;}
.doc .meta{color:var(--muted);font-size:.9rem;margin-bottom:22px;}
.doc table{width:100%;border-collapse:collapse;font-size:.92rem;margin:10px 0 16px;}
.doc th,.doc td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top;}
.doc nav{font-size:.9rem;margin-bottom:20px;}
