/* Listing Mammoth brand system: A1 "Quiet Survey" (2026-10-22, design/a1-rollout). Snow ground, charcoal ink, one orange accent.
   Bright orange (#E8780C) is for primary buttons, the climb's dots and flag only; orange ink (#A84F00) is the only orange used for text.
   Display: Bricolage Grotesque 800 (static, width 88). Body: Manrope (variable 200-800). Self-hosted, OFL (assets/fonts/OFL.txt). */
@font-face{font-family:'Bricolage Grotesque';font-weight:800;font-style:normal;font-display:swap;src:url(/assets/fonts/bricolage-grotesque-800.woff2) format('woff2')}
@font-face{font-family:Manrope;font-weight:200 800;font-style:normal;font-display:swap;src:url(/assets/fonts/manrope-var.woff2) format('woff2')}
:root{
  /* A1 tokens (the same values as /workspace/lm-team/design/a1-tokens/tokens.css) */
  --a1-snow:#F5F8FA;--a1-paper:#FFFFFF;--a1-ice:#E6EDF2;--a1-line:#D5DFE6;--a1-slate:#53616D;--a1-charcoal:#1E2329;
  --a1-orange:#E8780C;--a1-orange-d:#D46A00;--a1-orange-ink:#A84F00;--a1-wash:#FFF2E5;--a1-green:#1F7A4D;--a1-red:#B42318;
  --a1-display:'Bricolage Grotesque',system-ui,sans-serif;--a1-body:Manrope,system-ui,-apple-system,'Segoe UI',sans-serif;
  /* legacy names, kept so the older component rules resolve to A1 values (no blue left). Retired: --ice-blue, --glacier-d.
     New rules should use the --a1-* names; these can be renamed in a later sweep. */
  --glacier:var(--a1-charcoal);--ink:var(--a1-charcoal);--slate:var(--a1-slate);--white:var(--a1-paper);--frost:var(--a1-ice);--ice:var(--a1-line);--rime:var(--a1-line);
  --line:#7D8994;--ember:var(--a1-orange);--ember-d:var(--a1-orange-d);--teal:var(--a1-green);--amber:var(--a1-orange-ink);--red:var(--a1-red);
  --head:var(--a1-display);--body:var(--a1-body);--r:16px;--pad:20px;--max:1080px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--a1-snow);color:var(--ink);font:400 17px/26px var(--body);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
::selection{background:#FFD9B3;color:var(--a1-charcoal)}
img,svg{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--head);font-weight:800;margin:0;letter-spacing:-.02em;text-wrap:balance}
p{text-wrap:pretty}
h1{font-size:28px;line-height:34px}h2{font-size:22px;line-height:28px}h3{font-size:18px;line-height:22px}
p{margin:0}
a{color:var(--a1-charcoal);text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}
a:hover{color:var(--a1-orange-ink);text-decoration-color:currentColor}
:focus-visible{outline:3px solid var(--a1-orange);outline-offset:2px;border-radius:4px}
/* Impeccable: no shouty eyebrows. Existing eyebrow labels stay in the markup but read as a quiet slate label. */
.eyebrow{display:block;font:700 14px/20px var(--body);letter-spacing:0;text-transform:none;color:var(--a1-slate)}
.help,.hint{font-size:15px;line-height:22px;color:var(--slate)}
.small{font:700 13px/18px var(--body);color:var(--slate)}
.num{font-variant-numeric:tabular-nums}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.narrow{max-width:560px;margin:0 auto}
.stack>*+*{margin-top:12px}.stack-lg>*+*{margin-top:24px}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}

/* buttons */
.cta,.btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:0 22px;border:0;border-radius:12px;background:var(--ember);color:var(--a1-charcoal);font:700 17px/22px var(--body);text-decoration:none;cursor:pointer;width:100%;transition:background .15s,transform .1s}
.cta:hover,.btn:hover{background:var(--ember-d);color:var(--a1-charcoal)}.cta:active,.btn:active{transform:scale(.99)}
.cta:disabled,.btn:disabled{background:#E7ECF0;color:#6B7883;cursor:default}
.sec,.btn.secondary{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 20px;border:1.5px solid var(--a1-charcoal);border-radius:12px;background:transparent;color:var(--a1-charcoal);font:700 16px/20px var(--body);text-decoration:none;cursor:pointer;width:100%}
.sec:hover,.btn.secondary:hover{background:var(--a1-charcoal);color:#fff}
.btn.small,.sec.small{min-height:40px;font-size:14px;padding:0 14px;width:auto;border-radius:10px}
.link{background:none;border:0;padding:6px 0;color:var(--a1-charcoal);font:700 15px var(--body);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media (min-width:720px){.cta,.btn,.sec,.btn.secondary{width:auto}}

/* forms */
label{display:block;font:700 15px/20px var(--body);margin:0 0 6px}
input[type=text],input[type=url],input[type=email],input:not([type]),textarea{width:100%;min-height:52px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font:400 17px/24px var(--body);color:var(--ink);background:#fff}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{color:#6B7883}
input:focus,textarea:focus{outline:3px solid var(--a1-orange);outline-offset:1px;border-color:var(--a1-orange)}
.err{color:var(--red);font:700 15px/22px var(--body)}

/* header / footer */
.site-h{position:sticky;top:0;z-index:20;background:rgba(245,248,250,.94);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--rime)}
.site-h .wrap{display:flex;align-items:center;gap:16px;height:60px}
.logo{display:flex;align-items:center;flex:none}.logo img{height:40px;width:auto;margin-left:-6px}
.logo .badge-m{display:none}
.site-h nav{display:none;gap:22px;margin-left:auto}
.site-h nav a{font:600 15px var(--body);color:var(--a1-charcoal);text-decoration:none}.site-h nav a:hover,.site-h nav a[aria-current]{color:var(--a1-charcoal);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--a1-orange)}
.site-h .hcta{margin-left:auto;min-height:40px;width:auto;font:700 14px/20px var(--body);padding:0 16px;border-radius:999px;white-space:nowrap;flex:none}
.site-h .logo img{max-width:200px;height:auto}
@media (min-width:860px){.site-h nav{display:flex}.site-h .hcta{margin-left:8px}}
.site-f{background:var(--a1-charcoal);color:#C9D0D6;padding:44px 0 36px;margin-top:0;font-size:15px;line-height:22px}
.site-f a{color:#FFFFFF}.site-f a:hover{color:#FFD9B3}
.site-f .cols{display:grid;gap:28px;grid-template-columns:1fr}
.site-f h4{font:700 14px var(--body);letter-spacing:0;text-transform:none;color:#fff;margin-bottom:10px}
.site-f ul{list-style:none;margin:0;padding:0}.site-f li{margin:6px 0}
.site-f .fine{margin-top:28px;padding-top:18px;border-top:1px solid #353C44;font-size:13px;line-height:19px;color:#A7B0B8}
.site-f img{height:40px;width:auto;margin:-6px 0 10px -6px}
@media (min-width:720px){.site-f .cols{grid-template-columns:1.4fr 1fr 1fr 1fr}}

/* sections */
.sec-band{padding:48px 0}.sec-band.frost{background:var(--a1-paper);border-block:1px solid var(--a1-line)}.sec-band.ink{background:var(--a1-charcoal);color:#fff}
.sec-band h2{margin-bottom:10px}.sec-band .lead{color:var(--slate);max-width:640px}
@media (min-width:860px){h1{font-size:48px;line-height:1.05}h2{font-size:34px;line-height:1.1}body{font-size:18px;line-height:28px}.sec-band{padding:80px 0}}
.panel{border:1px solid var(--rime);border-radius:var(--r);padding:18px 20px;background:#fff}
.panel.frost{background:var(--frost);border-color:transparent}
.panel.next{border:1.5px solid var(--a1-charcoal)}
.grid2{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:720px){.grid2{grid-template-columns:1fr 1fr}.grid3{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}}
.ticks{list-style:none;margin:0;padding:0}.ticks li{position:relative;padding-left:28px;margin:8px 0}
.ticks li::before{content:"";position:absolute;left:2px;top:7px;width:14px;height:8px;border-left:3px solid var(--teal);border-bottom:3px solid var(--teal);transform:rotate(-45deg)}
.steps-list{counter-reset:s;list-style:none;margin:0;padding:0;display:grid;gap:14px}
.steps-list li{counter-increment:s;position:relative;padding:16px 18px 16px 62px;border:1px solid var(--rime);border-radius:var(--r)}
.steps-list li{background:var(--a1-paper)}
.steps-list li::before{content:counter(s);position:absolute;left:18px;top:14px;width:30px;height:30px;border-radius:50%;background:var(--a1-ice);color:var(--a1-charcoal);font:800 16px/30px var(--head);text-align:center}
.steps-list b{font-family:var(--head);font-weight:800}

/* chips & bars */
.chip{display:inline-flex;align-items:center;border:2px solid currentColor;border-radius:999px;padding:2px 10px;font:800 12px/18px var(--body);letter-spacing:.06em;text-transform:uppercase}
.chip.strong{color:var(--teal)}.chip.needs_work{color:var(--amber)}.chip.at_risk{color:var(--red)}.chip.muted{color:var(--slate)}
.cbar{height:6px;background:var(--a1-ice);border-radius:4px;overflow:hidden}.cbar i{display:block;height:100%;border-radius:4px;background:var(--a1-charcoal)}
.cbar i.strong{background:var(--teal)}.cbar i.needs_work{background:var(--amber)}.cbar i.at_risk{background:var(--red)}

/* FAQ */
.faq details{border-bottom:1px solid var(--rime);padding:14px 0}
.faq summary{cursor:pointer;font:800 17px/24px var(--head);list-style:none;display:flex;justify-content:space-between;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--a1-charcoal);font-size:22px;line-height:24px;flex:none}
.faq details[open] summary::after{content:"−"}
.faq details>div{margin-top:8px;color:var(--slate)}

/* prose (legal, blog, how-we-score) */
.prose{max-width:68ch}
.prose h1{margin-bottom:14px}.prose h2{margin:34px 0 10px}.prose h3{margin:24px 0 8px}
.prose p,.prose ul,.prose ol{margin:0 0 14px}.prose li{margin:4px 0}
.prose table{border-collapse:collapse;width:100%;font-size:15px;line-height:22px;margin:0 0 18px}
.prose th,.prose td{border-bottom:1px solid var(--rime);padding:8px 6px;text-align:left;vertical-align:top}
.prose th{font:800 13px var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--slate)}
.rulebox{border-left:3px solid var(--a1-charcoal);background:var(--a1-ice);border-radius:0 12px 12px 0;padding:14px 16px;margin:18px 0}
.rulebox .eyebrow{margin-bottom:4px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
