:root{--red:#c92f3a;--red2:#a9232d;--gold:#ffd78a;--night:#080d17;--panel:#0e1623;--line:#293343;--muted:#b8c0cc;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:18px}.skip{position:fixed;left:10px;top:-60px;z-index:100;padding:12px;background:#fff;color:#000}.skip:focus{top:10px}.header{position:fixed;z-index:20;inset:0 0 auto;display:flex;align-items:center;gap:30px;height:86px;padding:0 max(22px,calc((100% - var(--max))/2));background:rgba(5,12,25,.84);border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(16px)}.brand{position:relative;display:block;width:150px;line-height:0}.brand img{width:150px;filter:brightness(0) invert(1)}.brand:before,.brand:after{content:"";position:absolute;top:0;width:7px;height:7px;border-radius:50%}.brand:before{left:37px;background:#ee2b35}.brand:after{left:106px;background:#36a936}.header nav{display:flex;gap:26px;margin-left:auto}.header a{color:#fff;text-decoration:none;font-size:15px;font-weight:650}.menu{display:none}.cta{border:1px solid var(--red);border-radius:999px;padding:15px 22px;background:var(--red);color:#fff;font:700 15px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer}.cta:hover{background:var(--red2);border-color:var(--red2)}.cta:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.hero{min-height:820px;display:grid;align-items:center;background:linear-gradient(90deg,rgba(3,7,15,.95),rgba(3,7,15,.58) 60%,rgba(3,7,15,.18)),var(--hero-image,url('/assets/hero.webp')) center/cover}.hero-inner{width:min(var(--max),calc(100% - 44px));margin:auto;padding-top:80px}.eyebrow{margin:0;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}h1{max-width:900px;margin:16px 0 20px;font-size:clamp(46px,5.4vw,78px);font-weight:500;line-height:1.03;letter-spacing:-.055em}.lead{max-width:710px;color:#edf1f6;font-size:18px;line-height:1.7}.zip-start{width:min(600px,100%);margin-top:28px;padding:12px;border:1px solid rgba(255,255,255,.24);border-radius:24px;background:rgba(8,15,27,.82);backdrop-filter:blur(16px)}.zip-start label{display:block;padding:4px 12px 10px;font-size:13px;font-weight:700}.zip-start>div{display:flex;gap:8px}.zip-start input{min-width:0;flex:1;border:1px solid #364153;border-radius:999px;padding:16px 20px;background:#101827;color:#fff;font:600 16px inherit}.zip-start small{display:block;padding:9px 12px 2px;color:var(--muted)}.trust{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:22px;color:#d7dce5;font-size:12px}.intro{max-width:820px;margin:auto;padding:120px 24px 76px;text-align:center}.intro h2,.process h2,.proof h2,.areas h2,.closing h2{margin:13px 0 18px;font-size:clamp(36px,4.5vw,60px);line-height:1.08;letter-spacing:-.045em}.intro>p:last-child{color:var(--muted);font-size:18px;line-height:1.75}.services{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:min(var(--max),calc(100% - 44px));margin:0 auto 120px}.services article{overflow:hidden;border:1px solid #232e3e;background:#0d1420}.services img{display:block;width:100%;height:380px;object-fit:cover}.services article div{padding:32px}.services span{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.services h3{margin:9px 0 12px;font-size:31px}.services p,.process li span,.areas p{color:var(--muted);line-height:1.7}.services a,.areas a{color:#fff;font-weight:750;text-decoration:none}.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding:110px max(22px,calc((100% - var(--max))/2));background:var(--panel)}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:22px;padding:23px 0;border-bottom:1px solid var(--line)}.process li b{color:var(--gold)}.process li span{display:flex;flex-direction:column;gap:5px}.process li strong{color:#fff;font-size:19px}.proof{padding:120px max(22px,calc((100% - var(--max))/2))}.proof>h2{max-width:800px}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:24px}.quotes blockquote{margin:20px 0 0;padding:34px;border:1px solid var(--line);font-size:20px;line-height:1.6}.quotes cite{display:block;margin-top:20px;color:var(--gold);font-size:12px;font-style:normal}.areas{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:100px max(22px,calc((100% - var(--max))/2));background:#101b2c}.areas .zip-start{margin:0}.closing{padding:130px 24px;text-align:center}.closing h2{max-width:800px;margin-left:auto;margin-right:auto}.closing>a{display:block;margin-top:22px;color:#fff}footer{display:grid;grid-template-columns:1fr auto;gap:18px;padding:55px max(22px,calc((100% - var(--max))/2));border-top:1px solid var(--line);color:var(--muted)}footer img{width:130px;filter:brightness(0) invert(1)}footer p{grid-column:1}footer nav{grid-column:2;grid-row:1/3;display:flex;gap:20px}footer a{color:#fff;text-decoration:none}footer small{grid-column:1}.funnel{width:min(680px,calc(100% - 24px));border:1px solid #3a4557;border-radius:22px;padding:0;background:#0d1522;color:#fff;box-shadow:0 25px 100px #000}.funnel::backdrop{background:rgba(0,5,13,.8);backdrop-filter:blur(8px)}.funnel-close{position:absolute;right:17px;top:13px;border:0;background:none;color:#fff;font-size:30px;cursor:pointer}.progress{height:4px;background:#263142}.progress span{display:block;height:100%;background:var(--red);transition:width .25s}.step{display:none;padding:52px}.step.active{display:block}.step h2{margin:12px 0;font-size:36px;line-height:1.15}.step>p:not(.eyebrow){color:var(--muted)}.step label{display:grid;gap:8px;margin:18px 0;font-size:15px;font-weight:700}.step input,.step textarea{width:100%;border:1px solid #3a4557;border-radius:12px;padding:15px;background:#111c2c;color:#fff;font:inherit}.choices{display:grid;gap:12px;margin-top:25px}.choices button{display:grid;gap:8px;border:1px solid #3a4557;border-radius:14px;padding:20px;background:#121d2d;color:#fff;font:700 17px inherit;text-align:left;cursor:pointer}.choices button small{display:block;margin:0;color:#a8b0bd;font-size:12px;font-weight:500;line-height:1.45}.choices button:hover{border-color:var(--red);background:#182537}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent{grid-template-columns:auto 1fr!important;align-items:start;color:var(--muted);font-weight:500!important;line-height:1.5}.consent input{width:auto}.form-error{color:#ff8d96!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:850px){.header{height:74px;padding:0 18px;gap:14px}.brand,.brand img{width:110px}.brand:before,.brand:after{width:5px;height:5px}.brand:before{left:27px}.brand:after{left:78px}.header nav{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;padding:22px;background:#09111f}.header nav.open{display:flex}.menu{display:block;margin-left:auto;border:0;background:none;color:#fff}.header>.cta{padding:11px 13px;font-size:10px;white-space:nowrap}.hero{min-height:780px}.hero-inner{padding-top:100px}.zip-start>div{flex-direction:column}.zip-start .cta{min-height:50px}h1{font-size:42px}.services,.process,.areas,.quotes{grid-template-columns:1fr}.services img{height:270px}.process{gap:30px}.areas .zip-start{margin-top:15px}.two{grid-template-columns:1fr}.step{padding:46px 24px 30px}.step h2{font-size:29px}footer{grid-template-columns:1fr}footer nav{grid-column:1;grid-row:auto;flex-wrap:wrap}}
@media(max-width:360px){.brand,.brand img{width:92px}.brand:before{left:23px}.brand:after{left:65px}.header>.cta{margin-left:auto;font-size:9px;padding:10px}.hero-inner{width:calc(100% - 30px)}h1{font-size:38px}}
.brand img,footer img{height:auto}
.mobile-cta-bar{display:none}
@media(max-width:850px){body{padding-bottom:88px}.desktop-header-cta{display:none}.menu{width:48px;height:48px;margin-left:auto;padding:11px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:transparent}.menu span{display:block;width:24px;height:2px;margin:5px auto;border-radius:2px;background:#fff;transition:transform .2s,opacity .2s}.menu[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu[aria-expanded="true"] span:nth-child(2){opacity:0}.menu[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}.mobile-cta-bar{position:fixed;z-index:19;right:0;bottom:0;left:0;display:block;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.14);background:rgba(5,12,25,.94);box-shadow:0 -10px 35px rgba(0,0,0,.35);backdrop-filter:blur(16px)}.mobile-cta-bar .cta{width:100%;min-height:56px;font-size:16px}.funnel[open]~.mobile-cta-bar{display:none}}
.nav-group{position:relative}.nav-group summary{cursor:pointer;list-style:none;color:#fff;font-size:15px;font-weight:650}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:'⌄';display:inline-block;margin-left:7px;color:var(--muted);font-size:13px;transition:transform .2s}.nav-group[open] summary:after{transform:rotate(180deg)}.nav-group>div{position:absolute;top:calc(100% + 17px);left:50%;display:none;min-width:190px;padding:9px;border:1px solid var(--line);border-radius:14px;background:#0d1624;box-shadow:0 18px 50px rgba(0,0,0,.35);transform:translateX(-50%)}.nav-group[open]>div,.nav-group:hover>div{display:grid}.nav-group>div a{padding:12px 14px;border-radius:8px;white-space:nowrap}.nav-group>div a:hover,.nav-group>div a:focus-visible{background:#172335}.header{height:96px}.brand,.brand img{width:165px}.brand:before{left:41px}.brand:after{left:117px}.breadcrumbs{top:114px}
.nav-group summary:after{content:none}
@media(max-width:850px){.header{height:82px}.brand,.brand img{width:125px}.brand:before{left:31px}.brand:after{left:88px}.breadcrumbs{top:98px}.header nav{top:82px;gap:10px;padding:18px}.header nav>a,.nav-group summary{min-height:48px;padding:13px 4px;font-size:17px}.nav-group>div{position:static;display:none;min-width:0;margin:2px 0 8px;padding:4px 0 4px 16px;border:0;border-left:2px solid var(--red);border-radius:0;background:transparent;box-shadow:none;transform:none}.nav-group[open]>div{display:grid}.nav-group:hover:not([open])>div{display:none}.nav-group>div a{padding:12px 10px;font-size:16px}}
.page-hero{min-height:590px;display:grid;align-items:end;padding:150px max(22px,calc((100% - var(--max))/2)) 90px;background:linear-gradient(90deg,rgba(3,7,15,.96),rgba(3,7,15,.62)),var(--hero-image,url('/assets/hero.webp')) center/cover}.page-hero>div{max-width:860px}.page-hero h1{font-size:clamp(42px,5vw,68px)}.page-hero>div>p:not(.eyebrow){max-width:700px;color:#edf1f6;font-size:20px;line-height:1.7}.content-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;padding:100px max(22px,calc((100% - var(--max))/2))}.content-grid article{font-size:17px;line-height:1.75}.content-grid h2,.directory h2{font-size:34px;line-height:1.2}.content-grid article p{color:var(--muted)}.local-card{align-self:start;padding:30px;border:1px solid var(--line);background:var(--panel)}.local-card h2{margin-top:0;font-size:25px}.local-card p{color:var(--muted);line-height:1.6}.related{display:flex;flex-wrap:wrap;gap:14px;padding:0 max(22px,calc((100% - var(--max))/2)) 100px}.related a{padding:15px 18px;border:1px solid var(--line);color:#fff;text-decoration:none}.directory{padding:100px max(22px,calc((100% - var(--max))/2))}.directory>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.directory a{padding:16px;border:1px solid var(--line);color:#fff;text-decoration:none;background:var(--panel)}@media(max-width:850px){.content-grid{grid-template-columns:1fr;gap:25px}.directory>div{grid-template-columns:1fr}.page-hero{min-height:540px;padding-bottom:65px}}
/* Header/footer logo is pre-colored so its dots scale with the native artwork. */
.brand img,footer img{filter:none}
.brand:before,.brand:after{display:none}
.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}

/* One interaction language: gold underline for text links, and a stronger
   border/background state for link tiles. */
.header nav>a,.nav-group summary{position:relative;transition:color .18s ease}
.header nav>a:after,.nav-group summary:before{content:"";position:absolute;right:0;bottom:-9px;left:0;height:2px;border-radius:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.header nav>a:hover,.header nav>a:focus-visible,.nav-group summary:hover,.nav-group summary:focus-visible,.nav-group[open] summary{color:var(--gold)}
.nav-group summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px;border-radius:4px}
.header nav>a:hover:after,.header nav>a:focus-visible:after,.nav-group summary:hover:before,.nav-group summary:focus-visible:before,.nav-group[open] summary:before{transform:scaleX(1)}
.nav-group summary:after{display:none!important;content:none!important}
.nav-group>div a{transition:color .18s ease,background-color .18s ease,transform .18s ease}
.nav-group>div a:hover,.nav-group>div a:focus-visible{color:var(--gold);transform:translateX(3px)}
.nav-group>div:before{content:"";position:absolute;right:0;bottom:100%;left:0;height:18px}
.services a,.areas a,.content-grid article a,.local-card a,footer a{text-decoration:underline;text-decoration-color:rgba(255,215,138,.7);text-decoration-thickness:2px;text-underline-offset:5px;transition:color .18s ease,text-decoration-color .18s ease}
.services a:hover,.areas a:hover,.content-grid article a:hover,.local-card a:hover,footer a:hover{color:var(--gold);text-decoration-color:var(--gold)}
.related a,.directory a{transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease}
.related a:hover,.related a:focus-visible,.directory a:hover,.directory a:focus-visible{border-color:var(--gold);background:#172335;color:var(--gold);transform:translateY(-2px)}
@media(max-width:850px){.header nav>a:after,.nav-group summary:before{bottom:6px}.nav-group>div:before{display:none}.nav-group>div a:hover,.nav-group>div a:focus-visible{transform:none}}

/* Reusable action styles keep linked CTAs and secondary links consistent. */
.cta{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;text-align:center;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}
.cta:hover{color:#fff;text-decoration:none;transform:translateY(-1px)}
.text-link{color:#fff;font-weight:700;text-decoration:underline;text-decoration-color:rgba(255,215,138,.75);text-decoration-thickness:2px;text-underline-offset:5px;transition:color .18s ease,text-decoration-color .18s ease}
.text-link:hover,.text-link:focus-visible{color:var(--gold);text-decoration-color:var(--gold)}
.page-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:28px}
@media(max-width:480px){.page-actions{align-items:stretch;flex-direction:column}.page-actions .cta{width:100%;min-height:56px}.page-actions .text-link{align-self:flex-start;padding:10px 2px}}

/* Preserve the publisher-provided Lights Local badge dimensions. */
footer>a[title="Featured on Lights Local"]{grid-column:1;justify-self:start;line-height:0}
footer>a[title="Featured on Lights Local"] img{display:block;width:220px;height:60px;max-width:none;filter:none;object-fit:contain}
