*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 "Helvetica Neue",Arial,sans-serif;color:#111;background:#fff}
a{color:inherit}h1,h2,h3{line-height:1.15;margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:clamp(1.9rem,5vw,3.6rem);font-weight:800}h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}h3{font-size:1.1rem}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}.narrow{max-width:820px}.center{text-align:center}.small{font-size:.85rem;color:#555}
.top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:2px solid #000}
.bar{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.logo{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:700;font-size:.85rem;line-height:1.1;text-transform:uppercase}
.mark{background:#000;color:#fff;padding:6px 8px;font-weight:900;letter-spacing:.05em}
nav a{margin:0 12px;text-decoration:none;font-weight:600;font-size:.95rem}nav a:hover{text-decoration:underline}
.btn{display:inline-block;background:#000;color:#fff;border:2px solid #000;padding:12px 20px;font-weight:700;text-decoration:none;cursor:pointer;font-size:1rem;text-align:center}
.btn:hover{background:#333}.btn.ghost{background:#fff;color:#000}.btn.ghost:hover{background:#eee}.btn.sm{padding:8px 14px;font-size:.9rem}.btn.full{width:100%}
.btn.inv{background:#fff;color:#000;border-color:#fff}.btn.inv2{background:transparent;color:#fff;border-color:#fff}
.hero{position:relative;background:#f4f4f4;padding:56px 0 190px;overflow:hidden;border-bottom:2px solid #000}
.herogrid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;position:relative;z-index:2}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:700;color:#555;margin:0 0 10px}
.lead{font-size:1.15rem;max-width:560px;color:#333}.ctas{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.ctas.c{justify-content:center}
.trust{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;font-weight:600}.trust li:before{content:"\2014  "}
.sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:160px;color:#000;opacity:.85;z-index:1}
.card{background:#fff;border:2px solid #000;padding:24px;box-shadow:8px 8px 0 #000}
.formtitle{font-weight:800;font-size:1.25rem;margin:0 0 12px}
.form label{display:block;font-weight:600;font-size:.9rem;margin-bottom:10px}
.form input,.form textarea{display:block;width:100%;margin-top:4px;padding:11px;border:1.5px solid #000;font:inherit;background:#fff;border-radius:0}
.form input:focus,.form textarea:focus{outline:3px solid #999;outline-offset:1px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hp{position:absolute;left:-9999px}
.thanks.err{background:#111;color:#fff;box-shadow:8px 8px 0 #888}.thanks.err a{color:#fff}
.sec{padding:80px 0}.sec.dark{background:#000;color:#fff}.sec.dark .kicker{color:#aaa}.sec.gray{background:#ececec}
.svcs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border-top:2px solid #000;border-left:2px solid #000;margin-top:30px}
.svc{padding:24px;border-right:2px solid #000;border-bottom:2px solid #000}.svc p{margin:0;color:#444}
.num{font-weight:900;font-size:2rem;display:block;margin-bottom:8px}
.steps{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:s}
.steps li{border-top:2px solid #fff;padding-top:20px;counter-increment:s}.steps li:before{content:"0" counter(s);font-size:3rem;font-weight:900;color:#777;display:block}
.steps p{color:#ccc;margin:0}
.split{display:grid;grid-template-columns:1.4fr .8fr;gap:48px;align-items:center}
.risks{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.risks div{border-left:4px solid #000;padding-left:14px}.risks p{margin:0;color:#444}
.art{border:2px solid #000;padding:30px;text-align:center}.art svg{width:100%;max-width:260px}
.lead2{max-width:760px;font-size:1.1rem}.areas{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:24px}
.tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.tags li{background:#fff;border:1.5px solid #000;padding:6px 12px;font-weight:600;font-size:.9rem}
details{border-bottom:2px solid #000;padding:6px 0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
summary::-webkit-details-marker{display:none}summary h3{margin:12px 0}summary:after{content:"+";font-size:1.6rem;font-weight:300}details[open] summary:after{content:"\2212"}
details p{margin:0 0 14px;color:#444}
.foot{background:#111;color:#ddd;padding:30px 0 90px}.foot .small{color:#aaa}
.sticky{display:none}
@media(max-width:860px){
nav{display:none}.hero{padding:20px 0 110px}.herogrid{grid-template-columns:1fr;gap:16px}
.lead{font-size:1rem;margin:0 0 4px}.trust,.hide-m{display:none}.ctas{margin:10px 0 0}.ctas .btn{flex:1;padding:10px 12px}
.card{padding:16px;box-shadow:5px 5px 0 #000}.formtitle{font-size:1.1rem;margin-bottom:8px}.form label{margin-bottom:6px}.form input,.form textarea{padding:9px}
.sky{height:100px}.sec{padding:56px 0}.steps,.split,.risks,.areas{grid-template-columns:1fr}
.eyebrow{margin-bottom:4px}h1{margin-bottom:6px}
.sticky{display:grid;grid-template-columns:1fr 1fr 1.4fr;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#000;border-top:2px solid #fff}
.sticky a{color:#fff;text-align:center;padding:14px 4px;font-weight:700;text-decoration:none;border-right:1px solid #444}.sticky a:last-child{background:#fff;color:#000}
.top .btn.sm{font-size:.8rem}}
.crumbs{padding-top:12px;padding-bottom:12px;font-size:.85rem}.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.crumbs li+li:before{content:"/";margin-right:6px;color:#777}.crumbs a{font-weight:600}
.tags.links a{text-decoration:none}.tags.links a:hover{text-decoration:underline}
.footlinks ul{list-style:none;padding:0;margin:12px 0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.9rem}.footlinks a{color:#ddd}
@media(max-width:860px){nav.crumbs,nav.footlinks{display:block}.crumbs{padding-top:8px;padding-bottom:0}}
.crumbs a,.footlinks a{margin:0}.hero.city{padding-bottom:56px}@media(max-width:860px){.hero.city{padding-bottom:28px}}
