/* =========================================================================
   ClaimFair — Design System  ·  Bold advocate
   ========================================================================= */
:root{
  --ink:#0A0F1E;--ink-2:#111834;--ink-3:#1B234A;--ink-soft:#19213F;--slate:#5A6285;
  --paper:#FFFFFF;--paper-2:#F6F7FB;--paper-3:#EDEFF6;--line:#E2E6F0;--line-dk:#28304F;
  --text:#0A0F1E;--text-muted:#51597A;--text-dim:#8A91AD;--text-on-dk:#EEF1F8;--text-on-dk-muted:#A9B1CE;
  --amber:#FFC233;--amber-600:#F5A623;--amber-700:#D98A12;--amber-soft:#FFF3D2;
  --win:#16A34A;--win-soft:#E5F6EC;--lowball:#EF4444;--lowball-soft:#FDE8E8;--info:#3B82F6;
  --radius:14px;--radius-lg:22px;--radius-sm:9px;
  --shadow-sm:0 1px 2px rgba(10,15,30,.06),0 1px 3px rgba(10,15,30,.10);
  --shadow:0 10px 30px -12px rgba(10,15,30,.25);--shadow-lg:0 30px 60px -20px rgba(10,15,30,.35);
  --ring:0 0 0 4px rgba(245,166,35,.35);
  --font-display:"Space Grotesk","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --maxw:1180px;--maxw-narrow:780px;--nav-h:70px;
}
*,*::before,*::after{box-sizing:border-box}*{margin:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);color:var(--text);background:var(--paper);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}ul{list-style:none;padding:0}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.08;letter-spacing:-.02em}
h1{font-size:clamp(2.6rem,6vw,4.4rem)}h2{font-size:clamp(2rem,4.2vw,3rem);letter-spacing:-.025em}
h3{font-size:clamp(1.35rem,2.4vw,1.7rem)}h4{font-size:1.1rem}p{color:var(--text-muted)}strong{color:inherit;font-weight:700}
.eyebrow{font-family:var(--font-display);font-weight:700;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amber-700)}
.eyebrow.on-dk{color:var(--amber)}.lead{font-size:1.25rem;color:var(--text-muted)}.on-dk .lead,.lead.on-dk{color:var(--text-on-dk-muted)}
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px}.narrow{max-width:var(--maxw-narrow)}
section{padding-block:clamp(64px,9vw,120px)}.section-dark{background:var(--ink);color:var(--text-on-dk)}.section-dark p{color:var(--text-on-dk-muted)}
.section-tint{background:var(--paper-2)}.center{text-align:center}.stack>*+*{margin-top:1rem}
.grid{display:grid;gap:28px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
.btn{--btn-bg:var(--amber);--btn-fg:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:14px 26px;background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-display);font-weight:700;font-size:1rem;border:none;border-radius:999px;cursor:pointer;transition:transform .15s,box-shadow .2s,filter .2s;box-shadow:0 6px 20px -8px rgba(245,166,35,.7);white-space:nowrap}
.btn:hover{transform:translateY(-2px);filter:brightness(1.03);box-shadow:0 12px 26px -10px rgba(245,166,35,.85)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:none;box-shadow:var(--ring)}
.btn-lg{padding:17px 34px;font-size:1.08rem}.btn-block{display:flex;width:100%}
.btn-ink{--btn-bg:var(--ink);--btn-fg:#fff;box-shadow:var(--shadow)}.btn-ink:hover{box-shadow:var(--shadow-lg)}
.btn-ghost{--btn-bg:transparent;--btn-fg:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.on-dk .btn-ghost,.btn-ghost.on-dk{--btn-fg:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--ink);transform:translateY(-2px)}.on-dk .btn-ghost:hover,.btn-ghost.on-dk:hover{box-shadow:inset 0 0 0 1.5px #fff}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.nav{position:sticky;top:0;z-index:50;height:var(--nav-h);background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--line)}
.nav.nav-dark{background:rgba(10,15,30,.72);border-bottom-color:var(--line-dk)}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.28rem;letter-spacing:-.02em;color:var(--ink)}
.nav-dark .brand{color:#fff}.brand .logo-mark{width:30px;height:30px;flex:0 0 auto}
.nav-links{display:flex;align-items:center;gap:30px}.nav-links a{font-weight:600;font-size:.97rem;color:var(--text-muted);transition:color .15s}.nav-links a:hover{color:var(--ink)}
.nav-dark .nav-links a{color:var(--text-on-dk-muted)}.nav-dark .nav-links a:hover{color:#fff}
.nav-cta{display:flex;align-items:center;gap:14px}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:.25s;border-radius:2px}.nav-dark .nav-toggle span{background:#fff}
@media(max-width:880px){.nav-links,.nav-cta .hide-mobile{display:none}.nav-toggle{display:block}.nav-links.open{display:flex;flex-direction:column;align-items:flex-start;gap:18px;position:absolute;top:var(--nav-h);left:0;right:0;background:#fff;padding:24px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav-dark .nav-links.open{background:var(--ink-2)}}
.hero{position:relative;overflow:hidden;background:var(--ink);color:var(--text-on-dk);padding-block:clamp(72px,11vw,150px)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 480px at 78% -10%,rgba(245,166,35,.2),transparent 60%),radial-gradient(700px 500px at 8% 110%,rgba(59,130,246,.14),transparent 55%);pointer-events:none}
.hero .container{position:relative}.hero h1{color:#fff;max-width:16ch}.hero h1 .hl{color:var(--amber)}
.hero-sub{font-size:1.28rem;color:var(--text-on-dk-muted);max-width:54ch;margin-top:22px}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-trust{display:flex;flex-wrap:wrap;gap:24px 34px;margin-top:42px;color:var(--text-on-dk-muted);font-size:.92rem}
.hero-trust .ht{display:flex;align-items:center;gap:9px}.hero-trust svg{color:var(--amber);flex:0 0 auto}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;font-size:.82rem;font-weight:600;background:var(--amber-soft);color:var(--amber-700)}
.badge.on-dk{background:rgba(245,166,35,.14);color:var(--amber)}.badge-win{background:var(--win-soft);color:var(--win)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s,border-color .2s}
.card.hoverable:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d6dcec}
.card-dark{background:var(--ink-2);border-color:var(--line-dk);color:var(--text-on-dk)}.card-dark p{color:var(--text-on-dk-muted)}
.card .ico{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;background:var(--amber-soft);color:var(--amber-700);margin-bottom:18px}
.card-dark .ico{background:rgba(245,166,35,.14);color:var(--amber)}
.step-num{font-family:var(--font-display);font-weight:700;font-size:.85rem;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--amber);margin-bottom:16px}
.gap-wrap{display:grid;gap:14px}.gap-label{display:flex;justify-content:space-between;font-size:.9rem;font-weight:600;margin-bottom:7px}
.gap-bar{height:30px;border-radius:8px;background:var(--paper-3);overflow:hidden}.gap-fill{height:100%;border-radius:8px;transition:width 1s cubic-bezier(.2,.7,.2,1)}
.gap-fill.lowball{background:linear-gradient(90deg,#f87171,#ef4444)}.gap-fill.fair{background:linear-gradient(90deg,#22c55e,#16a34a)}
.gap-amount{font-family:var(--font-display);font-weight:700}
.stat .num{font-family:var(--font-display);font-weight:700;font-size:clamp(2.2rem,4vw,3.2rem);line-height:1;color:var(--ink);letter-spacing:-.03em}
.section-dark .stat .num,.stat .num.on-dk{color:#fff}.stat .lbl{color:var(--text-muted);margin-top:10px;font-size:.96rem}.section-dark .stat .lbl{color:var(--text-on-dk-muted)}
.field{margin-bottom:18px}.field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:7px}.field .hint{font-weight:400;color:var(--text-dim);font-size:.84rem}
.input,.select,.textarea{width:100%;padding:13px 15px;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-sm);font-size:1rem;transition:border-color .15s,box-shadow .15s}
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--amber-600);box-shadow:0 0 0 4px rgba(245,166,35,.18)}
.textarea{min-height:120px;resize:vertical;line-height:1.5}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.field-row{grid-template-columns:1fr}}
.check{display:flex;gap:11px;align-items:flex-start;font-size:.92rem;color:var(--text-muted)}.check input{margin-top:3px;width:17px;height:17px;accent-color:var(--amber-600);flex:0 0 auto}
.input-prefix{position:relative}.input-prefix span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-dim);font-weight:600}.input-prefix .input{padding-left:30px}
.auth-wrap{min-height:calc(100vh - var(--nav-h));display:grid;grid-template-columns:1fr 1fr}@media(max-width:900px){.auth-wrap{grid-template-columns:1fr}.auth-aside{display:none}}
.auth-aside{background:var(--ink);color:#fff;padding:56px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.auth-aside::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 360px at 80% 0%,rgba(245,166,35,.18),transparent 60%)}.auth-aside>*{position:relative}
.auth-main{padding:56px;display:flex;flex-direction:column;justify-content:center}.auth-card{width:100%;max-width:420px;margin-inline:auto}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}@media(max-width:900px){.price-grid{grid-template-columns:1fr;max-width:460px;margin-inline:auto}}
.price-card{position:relative;display:flex;flex-direction:column;height:100%}.price-card.featured{border-color:var(--amber);box-shadow:0 24px 50px -22px rgba(245,166,35,.5)}
.price-card.featured::after{content:"MOST POPULAR";position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--amber);color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:.72rem;letter-spacing:.1em;padding:6px 14px;border-radius:999px;white-space:nowrap}
.price-amt{font-family:var(--font-display);font-weight:700;font-size:3rem;letter-spacing:-.03em}.price-amt .per{font-size:1rem;color:var(--text-dim);font-weight:600}
.price-feats{margin:22px 0;display:grid;gap:12px}.price-feats li{display:flex;gap:11px;align-items:flex-start;font-size:.96rem;color:var(--text-muted)}.price-feats svg{color:var(--win);flex:0 0 auto;margin-top:3px}.price-card .btn{margin-top:auto}
.app-shell{min-height:100vh;background:var(--paper-2)}.app-bar{background:var(--ink);color:#fff}.app-bar .nav-inner{height:64px}
.app-bar .nav-links a{color:var(--text-on-dk-muted)}.app-bar .nav-links a:hover,.app-bar .nav-links a.active{color:#fff}
.app-main{max-width:1080px;margin-inline:auto;padding:34px 24px 90px}
.stepper{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.stepper button{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:999px;background:#fff;border:1.5px solid var(--line);cursor:pointer;font-weight:600;font-size:.9rem;color:var(--text-muted);transition:.15s}
.stepper button .s-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--paper-3);color:var(--text-muted);font-size:.78rem;font-family:var(--font-display);font-weight:700}
.stepper button.active{border-color:var(--ink);color:var(--ink);box-shadow:var(--shadow-sm)}.stepper button.active .s-n{background:var(--ink);color:var(--amber)}
.stepper button.done .s-n{background:var(--win);color:#fff}.stepper button:hover{border-color:#c8cfe2}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-sm)}.panel+.panel{margin-top:22px}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.panel-head h2{font-size:1.5rem}
.muted{color:var(--text-muted)}.dim{color:var(--text-dim)}
.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:8px}@media(max-width:640px){.kpi-row{grid-template-columns:1fr}}
.kpi{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.kpi .k-lbl{font-size:.82rem;color:var(--text-dim);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.kpi .k-val{font-family:var(--font-display);font-weight:700;font-size:1.7rem;margin-top:6px;letter-spacing:-.02em}.kpi.win .k-val{color:var(--win)}.kpi.lowball .k-val{color:var(--lowball)}
table.tbl{width:100%;border-collapse:collapse;font-size:.94rem}table.tbl th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:10px 12px;border-bottom:1px solid var(--line)}
table.tbl td{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}table.tbl tr:last-child td{border-bottom:none}table.tbl td.num,table.tbl th.num{text-align:right;font-variant-numeric:tabular-nums}
.icon-btn{background:none;border:none;cursor:pointer;color:var(--text-dim);padding:6px;border-radius:6px}.icon-btn:hover{color:var(--lowball);background:var(--lowball-soft)}
.flag{display:flex;gap:11px;padding:13px 15px;border-radius:var(--radius-sm);font-size:.92rem;align-items:flex-start}.flag svg{flex:0 0 auto;margin-top:2px}
.flag-warn{background:#FFF7E6;color:#8a5a00}.flag-info{background:#EAF1FE;color:#1d4ed8}.flag-win{background:var(--win-soft);color:#0f7a37}.flag-list{display:grid;gap:10px}
.letter-preview{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;font-family:"Georgia","Times New Roman",serif;font-size:.96rem;line-height:1.7;color:#1a2036;white-space:pre-wrap;box-shadow:var(--shadow-sm);max-height:520px;overflow:auto}
.empty{text-align:center;padding:46px 20px;color:var(--text-dim);border:2px dashed var(--line);border-radius:var(--radius)}
.footer{background:var(--ink);color:var(--text-on-dk-muted);padding-block:60px 34px}.footer a{color:var(--text-on-dk-muted)}.footer a:hover{color:#fff}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}@media(max-width:760px){.footer-top{grid-template-columns:1fr 1fr}}@media(max-width:460px){.footer-top{grid-template-columns:1fr}}
.footer h5{font-family:var(--font-display);color:#fff;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.footer .brand{color:#fff;margin-bottom:14px}
.footer-links{display:grid;gap:11px;font-size:.94rem}.footer-bottom{margin-top:44px;padding-top:24px;border-top:1px solid var(--line-dk);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.84rem}
.legal-note{font-size:.8rem;color:var(--text-dim);max-width:62ch;margin-top:14px;line-height:1.6}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
.divider{height:1px;background:var(--line);margin-block:28px}.divider-dk{background:var(--line-dk)}
.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-0{margin-bottom:0}.row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.row-between{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.tag{display:inline-block;padding:3px 9px;border-radius:6px;background:var(--paper-3);font-size:.78rem;font-weight:600;color:var(--text-muted)}
.hidden{display:none!important}.text-amber{color:var(--amber-700)}.text-win{color:var(--win)}.text-lowball{color:var(--lowball)}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(120%);background:var(--ink);color:#fff;padding:14px 22px;border-radius:999px;box-shadow:var(--shadow-lg);font-weight:600;font-size:.94rem;z-index:200;transition:transform .35s cubic-bezier(.2,.8,.2,1);display:flex;gap:10px;align-items:center}
.toast.show{transform:translateX(-50%) translateY(0)}.toast svg{color:var(--amber)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important;transition:none}.gap-fill{transition:none}.btn:hover,.card.hoverable:hover{transform:none}}
@media print{.nav,.app-bar,.stepper,.footer,.no-print{display:none!important}body{background:#fff}.letter-preview{border:none;box-shadow:none;max-height:none;padding:0}.app-main{padding:0}}
