@font-face{font-family:"Zilla Slab";font-weight:700;font-display:swap;src:url(/fonts/zilla-slab-700.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:400 700;font-display:swap;src:url(/fonts/public-sans.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}
:root{--rr:#A84B24;--rrd:#D9774A;--ju:#3F5B4A;--ba:#2B211C;--sa:#F4ECE0;--oc:#E3A44B;--st:#6E5F55;--cr:#FBF7F0;--line:#E4D8C6}
*{box-sizing:border-box}body{margin:0;font:18px/1.6 "Public Sans",system-ui,sans-serif;color:var(--ba);background:var(--sa)}
h1,h2,h3{font-family:"Zilla Slab",Georgia,serif;font-weight:700;line-height:1.12;margin:0 0 .5em}h1{font-size:clamp(34px,6vw,56px)}h2{font-size:clamp(26px,4vw,36px)}h3{font-size:22px}
a{color:var(--rr)}main,footer .in{max-width:1080px;margin:auto;padding:0 20px}section{padding:44px 0;border-bottom:1px solid var(--line)}
.eyebrow,.mono{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ju);font-weight:500}
.small{color:var(--st);font-size:16px}.rr{color:var(--rr)}
.btn{display:inline-block;background:var(--rr);color:#fff;padding:13px 22px;border-radius:8px;font-weight:700;text-decoration:none;border:0;font:700 17px "Public Sans",sans-serif;cursor:pointer}.btn:hover{background:#8f3f1e}
.btn2{display:inline-block;border:2px solid var(--ju);color:var(--ju);padding:11px 20px;border-radius:8px;font-weight:700;text-decoration:none}.btn2:hover{background:#e6ede8}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 8px}
.site-header{background:var(--cr);border-bottom:1px solid var(--line)}.hdr-in{max-width:1180px;margin:auto;padding:12px 20px;display:flex;align-items:center;gap:12px}
.logo{display:block;margin-right:auto;line-height:0}.logo img{height:34px;width:auto}
.nav-list{list-style:none;padding:8px 0;margin:0;display:grid;gap:2px}.nav-list a{display:block;padding:10px 6px;color:var(--ba);text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap}
.nav-list a[aria-current=page]{color:var(--rr);text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
.nav-featured,.nav-list a.nav-featured{color:var(--ju);background:#E3ECE5;border:1px solid rgba(63,91,74,.4);border-radius:8px;padding:7px 12px;font:500 13px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.nav-featured:hover{background:#d3e2d8}.nav-cta{display:flex;gap:14px;align-items:center;padding:8px 0}.tel{color:var(--ba);font-weight:700;text-decoration:none;white-space:nowrap}
.btn-sm{background:var(--rr);color:#fff;padding:9px 14px;border-radius:7px;font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap}
.menu summary{list-style:none;cursor:pointer;font-weight:700;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.menu summary::-webkit-details-marker{display:none}
.menu[open]{flex-basis:100%}.desk{display:none}.hdr-in{flex-wrap:wrap}
@media(max-width:1179px){.mob-only{font-size:11px;padding:6px 8px}.logo img{height:28px}}
@media(min-width:1180px){.hdr-in{flex-wrap:nowrap}.mob-only,.menu{display:none}.desk{display:flex;flex:1 1 auto}.desk nav{display:flex;align-items:center;gap:14px;flex:1}.nav-list{display:flex;align-items:center;margin:0 auto;padding:0}.nav-cta{padding:0}}
.hero{display:grid;gap:28px;align-items:center;padding:56px 0}@media(min-width:900px){.hero{grid-template-columns:1.6fr 1fr}}
.scorecard{background:var(--ju);color:#fff;border-radius:14px;padding:22px 24px}.scorecard .mono{color:#cfe0d4}.scorecard .num{font:700 60px "Public Sans",sans-serif}.scorecard s{color:var(--oc);font:500 22px "IBM Plex Mono",monospace;margin-right:10px}
.tags{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.tags li{background:#fff;border:1px solid var(--line);padding:6px 12px;border-radius:20px;font-size:16px}.tags li.loc{background:#E3ECE5;border-color:rgba(63,91,74,.3);color:var(--ju);font-weight:600}
.steps,.tiers,.grid{display:grid;gap:16px;padding:0;list-style:none}@media(min-width:760px){.steps{grid-template-columns:repeat(4,1fr)}.tiers{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:repeat(2,1fr)}}
.steps li,.tier,.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.tier.hl{border:2px solid var(--ju)}
.price{font:700 30px "Zilla Slab",serif;margin:0}.price span{display:block;font:500 13px "IBM Plex Mono",monospace;color:var(--st);letter-spacing:.06em}
.badge{display:inline-block;background:var(--ju);color:#fff;font:500 12px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:12px;margin:0 0 6px}
.dark{background:var(--ba);color:var(--cr);border-radius:14px;padding:28px;margin:8px 0}.dark h2{color:var(--cr)}.dark a{color:var(--oc)}
table{width:100%;border-collapse:collapse}td,th{padding:8px;border-bottom:1px solid var(--line);text-align:left}th{font:500 13px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ju)}
td:last-child{font-family:"IBM Plex Mono",monospace}
details{padding:12px 0;border-bottom:1px solid var(--line)}summary{font-weight:700;cursor:pointer}
.lead{display:grid;gap:12px;max-width:480px}label{display:grid;font-weight:600}input{font:inherit;padding:10px;border:1px solid #c9b9a5;border-radius:6px;background:#fff}
.card{padding:0;overflow:hidden;display:block;color:inherit;text-decoration:none}.card img{width:100%;height:auto;display:block;border-bottom:1px solid var(--line)}.card .body,.card span{display:block;padding:18px}.teaser{max-width:560px}
.checks{padding-left:20px}.checks li{margin:6px 0}
.chip{display:inline-block;font:500 13px "IBM Plex Mono",monospace;padding:2px 8px;border-radius:6px;margin-right:6px}.pass{background:#E3ECE5;color:var(--ju)}.fail{background:#F8E7CC;color:#7a4a0e}
.res{list-style:none;padding:0}.res li{margin:8px 0}.score{font:700 56px "Public Sans",sans-serif;color:var(--ju)}
footer{background:var(--ba);color:#d8cdbf;padding:32px 0;font-size:16px}footer a{color:var(--oc)}footer .in{display:flex;gap:20px;align-items:center;flex-wrap:wrap}footer img{width:64px;height:64px}
@media(max-width:1179px){.hdr-in{gap:8px;padding:10px 12px}.logo img{height:24px}.mob-only{letter-spacing:.03em}.menu summary{padding:5px 10px;font-size:15px}}
.menu{border:0;padding:0}
.scorecard s{font-size:24px;font-weight:700}
.ts{min-height:0}

.flow{position:relative;overflow:hidden}.flow-steps{list-style:none;padding:0;margin:24px 0;display:grid;gap:16px;counter-reset:none}
.fs{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;position:relative}.fs h3{margin:8px 0 6px;font-family:"Zilla Slab",Georgia,serif}
.fs .fi{color:var(--ju);display:block;margin-top:6px}.fs-pick{border-color:var(--rr);border-width:2px}.fs-pick .fi{color:var(--rr)}
.fn{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ju)}
.bubble{background:var(--sa);border-left:4px solid var(--oc);padding:10px 14px;border-radius:8px;font-weight:600;color:var(--ba)}
.fl{padding-left:18px;margin:0}.fl li{margin:6px 0}.rule{background:var(--ju);color:#fff;border-radius:10px;padding:12px 14px}.rule .mono{display:block;font-size:28px;font-weight:700;color:#fff}
.flow-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;position:relative;z-index:1}.mesa{display:block;width:100%;height:60px;margin-top:8px}
@media(min-width:900px){.flow-steps{grid-template-columns:1fr 1.25fr 1fr}.flow-steps{column-gap:44px}.fs:not(:last-child)::after{content:"→";position:absolute;right:-37px;top:34px;width:30px;text-align:center;font-size:30px;line-height:1;color:var(--rr);font-weight:700}}
@media(prefers-reduced-motion:no-preference){.fs{transition:transform .2s}.fs:hover{transform:translateY(-2px)}}
.mesa-wrap{position:relative}.sun{position:absolute;left:80%;bottom:14px;width:44px;height:44px;border-radius:50%;background:#E3A44B;opacity:.55}
