*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;line-height:1.6;padding-bottom:calc(58px + env(safe-area-inset-bottom))}
img,svg,iframe{max-width:100%}
h1,h2,h3,h4{margin:0 0 .5em;line-height:1.08;text-wrap:balance}
p{margin:0 0 1em}
a{color:inherit}
ul,ol{margin:0;padding:0;list-style:none}
address{font-style:normal}
blockquote,figure,dl,dd{margin:0}
.wrap{width:min(100% - 2.5rem,1180px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;z-index:300;background:#fff;color:#000;padding:.6rem 1rem}
.skip:focus{left:1rem;top:1rem}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.ic{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.hdr{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.3rem 1rem}
.brand{text-decoration:none}
.site-nav{order:3;width:100%;display:flex;gap:1.3rem;overflow-x:auto;white-space:nowrap;scrollbar-width:none;padding-block:.35rem}
.site-nav::-webkit-scrollbar{display:none}
.site-nav a{text-decoration:none}
.hdr-call{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:50px;padding:.8rem 1.3rem;font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;border:2px solid transparent}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
details>summary .ic{transition:transform .2s}
details[open]>summary .ic{transform:rotate(45deg)}
.map{display:block;width:100%;height:100%;min-height:320px;border:0}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:1fr;padding-bottom:env(safe-area-inset-bottom)}
.mbar a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:58px;font-weight:800;text-decoration:none}
.prose>*+*{margin-top:1rem}
.prose ul{list-style:disc;padding-left:1.25rem}
.prose ol{list-style:decimal;padding-left:1.25rem}
.prose h3{margin-top:1.4rem}
.ft-grid{display:grid;gap:1.8rem}
.ft-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 1.5rem}
.ft-legal nav{display:flex;flex-wrap:wrap;gap:1.2rem}
.ft-col li{margin:.35rem 0}
.ft-phone{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;font-weight:800}
.site-footer a{text-decoration:none}
.site-footer a:hover{text-decoration:underline}
@media(min-width:700px){.ft-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.ft-grid{grid-template-columns:1.4fr repeat(4,1fr)}}
@media(min-width:900px){body{padding-bottom:0}.mbar{display:none}.site-nav{order:0;width:auto;overflow:visible}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

:root{--blue:#1f3bff;--blue2:#1329c9;--ink:#0a0b10;--pale:#e6eaff;--pale2:#b9c4ff;--mute:#40455e;--focus:#0a0b10;
--fh:"Anybody","Arial Black",system-ui,sans-serif;--fb:"Albert Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
body{font-family:var(--fb);background:#fff;color:var(--ink);font-size:1.0625rem}
h1,h2,h3{font-family:var(--fh);font-weight:850;font-stretch:112%;letter-spacing:-.01em;line-height:1.05}
h1{font-size:clamp(2.1rem,5.6vw,4rem)}
h2{font-size:clamp(1.8rem,3.8vw,2.8rem)}
h3{font-size:1.2rem;font-stretch:100%}
:focus-visible{outline:3px solid #fff;box-shadow:0 0 0 6px var(--ink)}
.sec{padding:4rem 0}
.sec-pale{background:var(--pale)}
.sec-blue{background:var(--blue);color:#fff}
.sec-head{margin-bottom:2rem;max-width:44rem}
.sec-head p{margin:.7rem 0 0;color:var(--mute)}
.sec-blue .sec-head p{color:#dfe4ff}
.btn{border:3px solid var(--ink);border-radius:0;box-shadow:5px 5px 0 var(--ink);transition:transform .12s,box-shadow .12s;font-weight:800}
.btn:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}
.btn-call{background:var(--blue);color:#fff}
.btn-row{display:flex;flex-wrap:wrap;gap:1rem}
/* header */
.site-header{background:#fff;border-bottom:4px solid var(--ink)}
.hdr{padding-block:.7rem}
.brand{font-family:var(--fh);font-weight:900;font-stretch:115%;font-size:1.15rem}
.site-nav a{font-weight:700;font-size:.95rem;padding:.3rem 0;border-bottom:3px solid transparent}
.site-nav a:hover{border-color:var(--blue)}
.hdr-call{background:var(--blue);color:#fff;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:.4rem .9rem;font-weight:800}
@media(min-width:900px){.site-nav{gap:1.8rem}}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--blue);color:#fff;padding:2.8rem 0 3.8rem}
.hero::before{content:"";position:absolute;right:-7rem;top:-7rem;width:24rem;height:24rem;border:4px solid rgba(255,255,255,.3);border-radius:50%}
.hero::after{content:"";position:absolute;left:-2rem;bottom:-3.5rem;width:9rem;height:9rem;background:var(--ink);transform:rotate(14deg)}
.hero .wrap{position:relative;z-index:1}
.hero-g{display:grid;gap:2.4rem;align-items:center}
.crumbs{font-size:.92rem;margin-bottom:1rem;color:#dfe4ff}
.crumbs a{text-decoration:none;border-bottom:2px solid #fff}
.lede{font-size:1.15rem;max-width:34rem;margin:1.1rem 0 0;color:#eef0ff}
.slab{position:relative;background:#fff;color:var(--ink);border:4px solid var(--ink);box-shadow:10px 10px 0 var(--ink);padding:1.5rem 1.2rem 1.4rem}
.slab-l{font-weight:700;margin:0 0 .3rem}
.slab-n{display:block;font-family:var(--fh);font-weight:900;font-stretch:108%;font-size:clamp(1.7rem,7.6vw,2.9rem);line-height:1.05;letter-spacing:-.02em;text-decoration:none;white-space:nowrap;color:var(--ink);margin-bottom:1.1rem}
.slab-n:hover{color:var(--blue)}
.slab .btn-row{gap:.7rem}
.sticker{position:absolute;right:-.6rem;top:-1.5rem;transform:rotate(7deg);display:inline-flex;align-items:center;gap:.4rem;background:var(--ink);color:#fff;border:3px solid #fff;padding:.4rem .8rem;font-weight:800}
.hero-actions{margin-top:1.6rem}
@media(min-width:900px){.hero{padding:3.6rem 0 4.8rem}.hero-g{grid-template-columns:1.1fr .9fr;gap:4rem}.slab{padding:1.8rem 1.8rem 1.7rem}}
/* trust tape */
.tape{background:var(--ink);color:#fff}
.tape ul{display:grid;grid-template-columns:1fr 1fr}
.tape li{display:grid;grid-template-columns:auto 1fr;gap:.6rem;padding:1rem .9rem;font-size:.9rem;line-height:1.3;border-left:4px solid var(--blue)}
.tape strong{display:block;font-size:1rem}
.tape .ic{width:1.6rem;height:1.6rem;margin-top:.1rem;color:var(--pale2)}
@media(min-width:900px){.tape ul{grid-template-columns:repeat(4,1fr)}.tape li{padding:1.3rem 1.3rem}}
/* bento */
.bento{display:grid;gap:1.1rem}
.bento>li{display:flex}
.bt{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:.8rem;min-height:10.5rem;padding:1.1rem;border:3px solid var(--ink);background:var(--pale);text-decoration:none;box-shadow:5px 5px 0 var(--ink);transition:transform .12s,box-shadow .12s,background .12s;color:var(--ink)}
.bt:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink);background:#fff}
.bt .sq{display:grid;place-items:center;width:2.6rem;height:2.6rem;background:var(--ink);color:#fff}
.bt h3{margin:.7rem 0 .25rem;font-size:1.08rem}
.bt p{margin:0;font-size:.9rem;color:var(--mute);line-height:1.4}
.bt .go{align-self:flex-end;color:var(--blue)}
.bento>li.big .bt{background:var(--blue);color:#fff;min-height:14rem}
.bento>li.big .bt:hover{background:var(--blue2)}
.bento>li.big .sq{background:#fff;color:var(--blue)}
.bento>li.big h3{font-size:1.7rem}
.bento>li.big p{color:#e4e8ff;font-size:1rem}
.bento>li.big .go{color:#fff}
@media(min-width:640px){.bento{grid-template-columns:repeat(2,1fr)}.bento>li.big{grid-column:span 2}}
@media(min-width:980px){.bento{grid-template-columns:repeat(4,1fr);grid-auto-flow:dense}.bento>li.big{grid-column:span 2;grid-row:span 2}.bento-4{grid-template-columns:repeat(4,1fr)}}
.bento-4>li.big{grid-column:auto;grid-row:auto}
/* stairs */
.stairs{display:grid;gap:1.3rem}
.stair{position:relative;display:grid;align-content:end;gap:.35rem;padding:1.2rem;border:3px solid var(--ink);background:#fff;box-shadow:6px 6px 0 var(--ink)}
.stair:nth-child(2){background:var(--pale)}
.stair:nth-child(3){background:var(--pale2)}
.stair:nth-child(4){background:var(--blue);color:#fff}
.stair .n{font-family:var(--fh);font-weight:900;font-size:2.6rem;line-height:1}
.stair .ic{position:absolute;right:1rem;top:1rem;width:2rem;height:2rem}
.stair h3{font-size:1.4rem;margin:0}
.stair p{margin:0;font-size:.96rem}
@media(min-width:900px){.stairs{grid-template-columns:repeat(4,1fr);align-items:end}.stair:nth-child(1){min-height:13rem}.stair:nth-child(2){min-height:16rem}.stair:nth-child(3){min-height:19rem}.stair:nth-child(4){min-height:22rem}}
/* stickers */
.stickers{display:grid;gap:1.4rem}
.sticker-c{padding:1.2rem;background:#fff;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);transform:rotate(-1.4deg)}
.sticker-c:nth-child(even){transform:rotate(1.2deg);background:var(--pale)}
.sticker-c .ring{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--blue);color:#fff;border:3px solid var(--ink);margin-bottom:.7rem}
.sticker-c h3{margin-bottom:.25rem}
.sticker-c p{margin:0;font-size:.95rem;color:var(--mute)}
.sign-cta{margin-top:2.4rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.sign-cta p{margin:0;font-family:var(--fh);font-weight:850;font-stretch:108%;font-size:1.4rem}
@media(min-width:640px){.stickers{grid-template-columns:repeat(2,1fr)}}
@media(min-width:980px){.stickers{grid-template-columns:repeat(3,1fr)}}
/* coverage */
.cover{display:grid;gap:2rem}
.cover-map{border:4px solid var(--ink);box-shadow:10px 10px 0 var(--ink);background:#fff;min-height:340px}
.zips{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}
.zips span{background:var(--ink);color:#fff;padding:.3rem .7rem;font-weight:700;border:2px solid #fff}
.pills{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.8rem}
.pills a{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .95rem;background:#fff;color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font-weight:800;text-decoration:none}
.pills a:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.cover h3{margin-top:1.5rem}
@media(min-width:900px){.cover{grid-template-columns:1.1fr 1fr;align-items:center;gap:4rem}}
/* faq */
.faq-wrap{display:grid;gap:1.6rem}
.faq{display:grid;gap:.9rem}
.faq details{border:3px solid var(--ink);background:#fff}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;font-weight:800}
.faq summary .ic{color:var(--blue);width:1.5rem;height:1.5rem}
.faq details[open]{box-shadow:6px 6px 0 var(--blue);background:var(--pale)}
.faq p{padding:0 1.1rem 1.1rem;margin:0}
@media(min-width:960px){.faq-wrap{grid-template-columns:.7fr 1.3fr;gap:4rem}.faq-wrap>div:first-child{position:sticky;top:1.5rem;align-self:start}}
.proof-grid{display:grid;gap:1.2rem;margin-top:1.5rem}
.proof-grid figure{padding:1.3rem;background:#fff;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink)}
.proof-grid figcaption{margin-top:.6rem;font-weight:800}
@media(min-width:800px){.proof-grid{grid-template-columns:repeat(2,1fr)}}
/* cta */
.cta{background:var(--ink);color:#fff;padding:3.6rem 0}
.cta-in{display:grid;gap:1.6rem;align-items:center}
.cta h2{font-size:clamp(1.8rem,4vw,3rem)}
.cta-num{display:block;font-family:var(--fh);font-weight:900;font-stretch:108%;font-size:clamp(1.8rem,8vw,4.4rem);line-height:1.05;letter-spacing:-.02em;text-decoration:none;white-space:nowrap;color:#fff;margin:.5rem 0 1.2rem}
.cta-num:hover{color:var(--pale2)}
.cta .btn{border-color:#fff;box-shadow:5px 5px 0 var(--blue)}
.cta .btn-call{background:var(--blue)}
/* inner */
.cols{display:grid;gap:2.4rem}
.chunk+.chunk{margin-top:2.4rem}
.chunk h2{display:flex;align-items:center;gap:.9rem;font-size:clamp(1.5rem,3vw,2.1rem)}
.chunk h2 .ic{width:2.9rem;height:2.9rem;padding:.6rem;background:var(--blue);color:#fff;border:3px solid var(--ink);flex:none}
.pull{margin:2.2rem 0;padding:1.6rem;background:var(--ink);color:#fff;font-family:var(--fh);font-weight:850;font-stretch:108%;font-size:clamp(1.4rem,3vw,2rem);line-height:1.15;box-shadow:10px 10px 0 var(--blue)}
.aside{display:grid;gap:1.4rem;align-content:start}
.note{background:var(--pale);border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:1.3rem}
.note h3{margin-bottom:.6rem}
.note ul{list-style:disc;padding-left:1.2rem;margin-bottom:1rem}
.note .cta-num{color:var(--ink);font-size:clamp(1.5rem,6.2vw,1.9rem);margin:.2rem 0 1rem}
.benefits{display:grid;gap:1.3rem}
.benefits li{padding:1.3rem;border:3px solid var(--ink);background:#fff;box-shadow:6px 6px 0 var(--ink)}
.benefits li:nth-child(2){background:var(--pale)}
.benefits li:nth-child(3){background:var(--blue);color:#fff}
.benefits .ic{width:2rem;height:2rem;margin-bottom:.5rem}
.benefits p{margin:0;font-size:.96rem}
.landmark{background:var(--blue);color:#fff;padding:2.6rem 0;border-block:4px solid var(--ink)}
.landmark .wrap{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:start}
.landmark .ic{width:3rem;height:3rem}
.landmark p{margin:0;max-width:44rem}
.narrow{max-width:46rem}
@media(min-width:800px){.benefits{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.cols{grid-template-columns:minmax(0,1fr) 22rem;gap:3.5rem}.aside{position:sticky;top:1.5rem;align-self:start;max-height:calc(100vh - 3rem);overflow-y:auto}.cta-in{grid-template-columns:1.1fr 1fr}}
/* footer */
.site-footer{background:var(--ink);color:#cfd3ee;padding:3rem 0 1.2rem;font-size:.95rem;border-top:6px solid var(--blue)}
.ft-name{font-family:var(--fh);font-weight:900;font-stretch:112%;font-size:1.3rem;color:#fff;margin-bottom:.4rem}
.site-footer h3{font-family:var(--fb);font-stretch:100%;font-size:1rem;color:#fff}
.ft-phone{color:#fff}
.ft-legal{border-top:1px solid #2b2e45;margin-top:2rem;padding-top:1rem;font-size:.86rem}
.mbar{border-top:4px solid var(--ink);box-shadow:0 -4px 18px rgba(0,0,0,.35)}
.mbar-call{background:var(--blue);color:#fff}
/* --- site8 additions on top of the Cobalt Slab design system --- */

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* tables inside prose content (service/location/blog pages) */
.table-wrap{overflow-x:auto;margin:1.4rem 0;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:#fff}
.table-wrap table{width:100%;border-collapse:collapse;font-size:.94rem}
.table-wrap th,.table-wrap td{padding:.7rem .9rem;text-align:left;border-bottom:2px solid var(--pale)}
.table-wrap thead th{background:var(--ink);color:#fff;font-family:var(--fh);font-weight:800}
.table-wrap tr:last-child td{border-bottom:0}

/* mid-content CTA strip */
.sign-cta-mid{margin:2.2rem 0;background:var(--pale);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:1.2rem 1.3rem;display:grid;gap:.9rem;align-items:center;font-weight:700}
.sign-cta-mid p{margin:0;font-size:1.05rem}
.sign-cta-mid .btn-call{align-self:start}
@media(min-width:700px){.sign-cta-mid{grid-template-columns:1fr auto}}

/* location-page coverage-summary ticket, top of main column */
.ticket{background:#fff;border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:1.4rem;margin-bottom:1.8rem}
.ticket-title{font-family:var(--fh);font-weight:800;margin:0 0 .8rem;font-size:1.05rem}
.ticket dl{margin:0 0 1rem;display:grid;gap:.5rem}
.ticket dl>div{display:flex;justify-content:space-between;gap:.8rem;border-bottom:2px dotted var(--pale2);padding-bottom:.4rem;font-size:.92rem}
.ticket dt{color:var(--mute);font-weight:700}
.ticket dd{margin:0;font-weight:800;text-align:right}
.ticket-call{display:block;text-align:center;background:var(--blue);color:#fff;font-weight:800;padding:.8rem 1rem;text-decoration:none;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}
.ticket-call:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}

/* zip chip row under the location/neighborhood hero */
.zip-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.zip-chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--ink);color:#fff;border:2px solid #fff;padding:.4rem .9rem;font-weight:700;font-size:.9rem}
.zip-chip .ic{width:1rem;height:1rem}

/* nearby-areas grid on location pages (auto-generated, not hand linked) */
.nearby-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.nearby-grid a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.8rem .9rem;background:#fff;color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);text-decoration:none;font-weight:700;line-height:1.25}
.nearby-grid a:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.nearby-grid em{font-style:normal;opacity:.75;font-weight:600;font-size:.85rem}

/* sources / citations component */
.sources{background:var(--pale);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:1.4rem 1.5rem;margin-top:2.4rem}
.sources h2{display:flex;align-items:center;gap:.8rem;font-size:1.3rem}
.sources h2 .ic{width:2.4rem;height:2.4rem;padding:.5rem;background:var(--ink);color:#fff;flex:none}
.sources ul{list-style:disc;padding-left:1.3rem;margin-top:.8rem}
.sources li{margin:.35rem 0;font-size:.92rem;color:var(--mute)}
.sources a{font-weight:800;text-decoration:underline;color:var(--ink)}

/* areas index table/list */
.areas-list{display:grid;gap:.6rem;margin-top:1.6rem}
.areas-list .arow{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:.6rem;align-items:center;background:#fff;border:3px solid var(--ink);padding:.7rem .9rem;text-decoration:none;color:var(--ink);font-size:.9rem}
.areas-list .arow:hover{background:var(--pale)}
.areas-list .arow strong{font-family:var(--fh);font-size:1rem}
.areas-list .ahead{display:none;background:transparent;border:0}
.areas-list .ahead strong{color:inherit}
@media(min-width:700px){.areas-list .ahead{display:grid;font-weight:800;color:var(--mute);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;padding:0 .9rem}}

/* landmark card used inline within body content (distinct from the full-width .landmark band) */
.landmark-inline{background:var(--pale);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);color:var(--ink);padding:1.4rem;display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start;margin:1.6rem 0}
.landmark-inline .ic{width:2.2rem;height:2.2rem;color:var(--blue);flex:none}
.landmark-inline p{margin:0;color:var(--mute)}

.chunk-lede{margin-bottom:2.4rem}

/* emergency-intent flag badge, above H1 in the hero */
.flag{display:inline-flex;align-items:center;gap:.5rem;border:3px solid #fff;background:var(--ink);color:#fff;padding:.4rem .9rem;font-weight:800;font-size:.85rem;letter-spacing:.01em;margin:0 0 1.1rem}
.flag .ic{width:1.05rem;height:1.05rem;flex:none;color:var(--pale2)}

.ft-brand{grid-column:1/-1}
.ft-areas p{margin:0}
@media(min-width:1000px){.ft-brand{grid-column:auto}}

.pg-index,.pg-service,.pg-services,.pg-location,.pg-hood,.pg-areas,.pg-blog,.pg-post,.pg-plain{min-height:100%}

/* outline button used in the blue hero band (All services link) */
.btn-outline{background:transparent;color:#fff;border-color:#fff}
.btn-outline:hover{background:rgba(255,255,255,.15)}
