/* Shared styles for the policy pages (sms-opt-in, sms-terms, privacy). Mirrors index.html tokens. */
:root{--ink:#170B2E;--ink-soft:#4A4160;--mute:#7B7391;--violet:#6D28D9;--violet-lit:#8B5CF6;
  --lav:#DDD6FE;--lav-soft:#EFEBFE;--paper:#FBFAFF;--line:#E9E4F7;--green:#0E9A6C;--r-md:16px;--r-sm:10px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "Instrument Sans",system-ui,-apple-system,sans-serif}
a{color:var(--violet)}
.wrap{max-width:820px;margin:0 auto;padding:0 20px}
header{border-bottom:1px solid var(--line);background:#fff}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
header img{height:30px;width:auto;display:block}
header nav a{font-size:14px;color:var(--ink-soft);text-decoration:none;margin-left:18px}
main{padding:48px 0 72px}
h1{font:600 clamp(28px,4vw,38px)/1.15 Outfit,sans-serif;letter-spacing:-.01em;margin:0 0 8px}
h2{font:600 21px/1.3 Outfit,sans-serif;margin:40px 0 10px}
h3{font:600 16px/1.4 Outfit,sans-serif;margin:22px 0 6px}
.lede{color:var(--ink-soft);font-size:18px;margin:0 0 6px}
.meta{color:var(--mute);font-size:14px;margin:0 0 28px}
p,li{color:var(--ink-soft)}
ul,ol{padding-left:22px}
li{margin:4px 0}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;margin:18px 0}
.kw{font:500 15px "JetBrains Mono",ui-monospace,monospace;background:var(--lav-soft);color:var(--violet);
  border-radius:6px;padding:2px 8px;white-space:nowrap}
strong .kw{font-weight:700}
.big{font:600 22px/1.3 Outfit,sans-serif;color:var(--ink)}
.steps{counter-reset:s;list-style:none;padding:0}
.steps li{counter-increment:s;position:relative;padding-left:40px;margin:14px 0}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;
  background:var(--violet);color:#fff;font:600 13px/26px Outfit,sans-serif;text-align:center}
/* Phone-style conversation mock (screenshot-ready collateral) */
.phone{max-width:380px;margin:22px auto;background:#fff;border:1px solid var(--line);border-radius:28px;
  padding:18px 16px 20px;box-shadow:0 1px 2px rgba(23,11,46,.04),0 18px 40px -16px rgba(23,11,46,.18)}
.phone-top{text-align:center;font-size:13px;color:var(--mute);padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:12px}
.phone-top b{display:block;color:var(--ink);font:600 15px Outfit,sans-serif}
.msg{max-width:84%;padding:9px 13px;border-radius:18px;font-size:14px;line-height:1.45;margin:8px 0;word-wrap:break-word}
.msg.in{background:#EEEAF6;color:var(--ink);border-bottom-left-radius:6px}
.msg.out{background:var(--violet);color:#fff;margin-left:auto;border-bottom-right-radius:6px}
.tag{display:block;font-size:11px;color:var(--mute);margin:10px 0 -4px}
.tag.r{text-align:right}
table{width:100%;border-collapse:collapse;font-size:15px}
td,th{text-align:left;vertical-align:top;padding:10px 8px;border-bottom:1px solid var(--line)}
th{font:600 14px Outfit,sans-serif;color:var(--ink);width:34%}
footer{border-top:1px solid var(--line);padding:26px 0;color:var(--mute);font-size:14px}
footer a{color:var(--mute);margin-right:16px}
@media (max-width:520px){main{padding:32px 0 56px}.card{padding:18px}th{width:40%}}
