/* Tryline brand: navy carries the page, green stays scarce (one rule per page, key numbers).
   Red and blue belong to the DESPERATE / NOT wordmark only. Hex values are estimates from tryline-brand.md. */
@font-face{font-family:Montserrat;font-weight:700;font-display:swap;src:url(fonts/montserrat-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:900;font-display:swap;src:url(fonts/montserrat-latin-900-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2")}
:root{--navy:#0B2152;--deep:#0B1B3B;--green:#0BA36B;--ink:#1A2233;--mist:#F3F5F8;--muted:#5b6475;--line:#dfe3ea;--red:#d40000;--orange:#e8710a;--blue:#1450e6;--bad:#b91c1c;
  --head:Montserrat,"Arial Black",Arial,sans-serif;--body:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.6 var(--body)}
header,main,footer{max-width:780px;margin:0 auto;padding:0 20px}
header{padding-top:26px;padding-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.brand{font:900 26px/1 var(--head);color:var(--navy);text-decoration:none;letter-spacing:-.02em;white-space:nowrap}
.brand em{font:400 16px var(--body);font-style:normal;color:var(--muted);letter-spacing:0;text-transform:lowercase;margin:0 2px}
.d{color:var(--red);font-weight:900}.n{color:var(--blue);font-weight:900}
h1 .d,h1 .n{font-weight:900}
.by{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--muted)}
.by a{color:var(--muted)}
/* TRYLINE wordmark approximation: bold navy caps with the green line through the lower part of the letters */
.tryline{position:relative;display:inline-block;font:700 20px/1 var(--head);color:var(--navy);letter-spacing:.03em;padding:0 5px;margin-left:4px;vertical-align:-3px;text-decoration:none}
.tryline:after{content:"";position:absolute;left:0;right:0;top:66%;height:2px;background:var(--green)}
footer{padding:44px 20px 56px;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
footer img{height:22px;width:auto}
a{color:var(--navy)}
h1{font:700 34px/1.15 var(--head);color:var(--navy);margin:30px 0 0;letter-spacing:-.02em}
h1:after{content:"";display:block;width:72px;height:3px;background:var(--green);margin:16px 0 14px}
h2{font:700 12.5px var(--head);color:var(--navy);text-transform:uppercase;letter-spacing:.09em;margin:32px 0 10px}
h3{font:700 18px var(--head);color:var(--navy);margin:26px 0 6px}
p.lede{font-size:18px;color:var(--muted);margin-top:0}
.card{background:#fff;border:1px solid var(--line);padding:22px;margin:18px 0}
.card.mist{background:var(--mist);border-color:var(--mist)}
label{display:block;font-weight:600;font-size:14px;margin:14px 0 4px;color:var(--navy)}
input[type=text],input[type=email],select{width:100%;padding:10px;border:1px solid #c4cad6;font:16px var(--body);background:#fff;color:var(--ink);border-radius:0}
input:focus,select:focus{outline:2px solid var(--navy);outline-offset:1px}
.drop{position:relative;border:2px dashed #c4cad6;background:var(--mist);padding:34px 16px;text-align:center;transition:border-color .15s,background .15s}
.drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.drop-text b{display:block;font:700 17px var(--head);color:var(--navy);overflow-wrap:anywhere}
.drop-text span{display:block;color:var(--muted);font-size:14px;margin-top:4px}
.drop.over{border-color:var(--navy);background:#e8ecf4}
.drop.has-file{border-style:solid;border-color:var(--navy);background:#fff}
.drop:focus-within{outline:2px solid var(--navy);outline-offset:2px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45;font-weight:400;color:var(--ink);margin:12px 0}
.check input{margin-top:4px;flex:none;accent-color:var(--navy)}
button,.btn{display:inline-block;background:var(--navy);color:#fff;border:0;padding:13px 22px;font:700 15px var(--head);cursor:pointer;text-decoration:none;margin-top:14px;border-radius:0}
button:hover,.btn:hover{background:var(--deep)}
button.quiet,.btn.quiet{background:#fff;color:var(--navy);border:1px solid #c4cad6;font:600 14px var(--body);padding:8px 12px}
.error{background:#fef2f2;border:1px solid #fecaca;color:var(--bad);padding:10px 14px;font-size:15px}
.note{color:var(--muted);font-size:14px;line-height:1.5}
.facts{padding:0;margin:8px 0;list-style:none;font-size:15px;line-height:1.5}
.facts li{padding:8px 0 8px 20px;border-top:1px solid var(--line);position:relative}
.facts li:first-child{border-top:0}
.facts li:before{content:"";position:absolute;left:0;top:17px;width:7px;height:7px;background:var(--navy)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
blockquote{margin:6px 0;padding:6px 12px;border-left:3px solid var(--line);color:#3a4354;font-size:15px}
.score{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.score .num{font:900 92px/1 var(--head);color:var(--navy);letter-spacing:-.04em}
/* Score bands: 50 and under, 51-79, 80 and up */
.num.band-not,.verdict.band-not{color:var(--blue)}
.num.band-kinda,.verdict.band-kinda{color:var(--orange)}
.num.band-very,.verdict.band-very{color:var(--red)}
.bar i.band-not{background:var(--blue)}
.bar i.band-kinda{background:var(--orange)}
.bar i.band-very{background:var(--red)}
.verdict{font:900 26px/1.1 var(--head);text-transform:uppercase;letter-spacing:-.01em;margin-bottom:10px}
.preview{position:relative;padding-top:44px}
.preview .tag{position:absolute;top:0;left:0;background:var(--navy);color:#fff;font:700 11px var(--head);letter-spacing:.08em;text-transform:uppercase;padding:6px 12px}
.preview .score .num{font-size:72px}
.preview .groups{padding:14px;margin:18px 0 6px}
.groups.mist{background:var(--mist)}
.small-print h2{font-size:11.5px;margin-top:28px}
.small-print .facts{font-size:13px;color:var(--muted)}
.small-print .facts li{padding:6px 0 6px 18px}
.small-print .facts li:before{top:13px;width:5px;height:5px;background:var(--muted)}
.score .num small{font:600 20px var(--body);color:var(--muted);letter-spacing:0}
.bar{height:8px;background:var(--mist)}
.bar i{display:block;height:100%;background:var(--navy)}
.groups{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;font-size:14px;color:var(--muted)}
.groups b{display:block;font:700 24px var(--head);color:var(--navy)}
.item{border-top:1px solid var(--line);padding:12px 0}
.item .row{display:flex;justify-content:space-between;gap:12px;font-size:15px}
.item .pts{white-space:nowrap;font-weight:600;color:var(--navy)}
.item.zero,.item.zero .pts{color:#9aa2b1;font-weight:400}
.item.minus .pts{color:var(--bad)}
.item .who{font-size:13px;color:var(--muted)}
.cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--deep);border-color:var(--deep);color:#fff}
.cta h3{color:#fff;margin:0 0 6px}
.cta p{margin:0;color:#c9d2e3;max-width:460px}
.cta .btn{background:var(--green);color:#fff;margin-top:0;white-space:nowrap}
.cta .btn:hover{background:#098a5b}
.scroll{overflow-x:auto}
.banner{background:var(--mist);border-left:3px solid var(--navy);padding:10px 14px;font-size:14px}
table{width:100%;border-collapse:collapse;font-size:14px}
th{font:700 11.5px var(--head);text-transform:uppercase;letter-spacing:.08em;color:var(--navy);background:var(--mist)}
th,td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.spin{width:34px;height:34px;border:4px solid var(--mist);border-top-color:var(--navy);border-radius:50%;animation:s 1s linear infinite;margin:10px 0}
@keyframes s{to{transform:rotate(360deg)}}
.policy p,.policy li{font-size:16px}
@media(max-width:560px){.grid,.groups{grid-template-columns:1fr}h1{font-size:27px}.score .num{font-size:70px}.brand{font-size:21px}}
