:root{--navy:#09284b;--deep:#061a32;--blue:#103a65;--gold:#ffda18;--white:#fff;--muted:#ccd8e6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--deep);color:var(--white);font-family:Arial,sans-serif;letter-spacing:.025em}a{color:inherit}h1,h2,h3,p,figure{margin:0}.section-shell{max-width:1260px;margin:auto;padding-left:32px;padding-right:32px}.topbar{height:82px;background:#071d37;border-bottom:1px solid #ffffff26;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1196px)/2));gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:900 23px/.83 Impact,'Arial Narrow',sans-serif;letter-spacing:.065em;white-space:nowrap}.brand small{display:block;color:var(--gold);font-size:15px;letter-spacing:.075em;margin-top:5px}.brand-b{border:3px solid var(--gold);border-radius:50%;width:43px;height:43px;display:grid;place-items:center;color:var(--gold);font-size:28px}.top-number{font:800 25px Impact,'Arial Narrow',sans-serif;text-decoration:none;letter-spacing:.075em}.top-number:hover,.hero-phone:hover,.final-number:hover{text-decoration:underline}.hero{min-height:655px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:18px;padding-top:60px;padding-bottom:74px;position:relative}.hero:before{content:"";position:absolute;inset:0 0 0 53%;background:radial-gradient(ellipse at center,#24415a 0,transparent 65%);pointer-events:none}.hero-copy,.hero-visual{position:relative}.eyebrow,.kicker{font:800 17px Impact,'Arial Narrow',sans-serif;letter-spacing:.15em;color:var(--gold)}h1,h2,h3{font-family:Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:.085em}h1{font-weight:900;line-height:.92;margin:23px 0 29px}h1 span{display:block;font-size:clamp(42px,5vw,72px);letter-spacing:.075em}h1 strong{display:block;color:var(--gold);font-size:clamp(62px,6.8vw,101px);font-weight:900;letter-spacing:.075em;margin-top:8px}.gold-rule{width:104px;height:6px;background:var(--gold)}.hero-mobile{font:900 clamp(31px,3vw,43px) Impact,'Arial Narrow',sans-serif;color:var(--gold);margin:27px 0 8px}.cta-instruction{font:700 18px/1.35 Arial,sans-serif;max-width:510px}.action-row{display:flex;align-items:center;gap:25px;margin:25px 0 18px}.button{background:var(--gold);color:var(--deep);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:38px;padding:15px 25px;border:2px solid var(--gold);border-radius:3px;font:900 26px Impact,'Arial Narrow',sans-serif;letter-spacing:.11em;min-height:62px;transition:transform .18s,background .18s}.button:hover{transform:translateY(-3px);background:#ffe65a}.button:focus-visible,a:focus-visible{outline:3px solid white;outline-offset:4px}.hero-phone{font:800 29px Impact,'Arial Narrow',sans-serif;text-decoration:none;white-space:nowrap}.domain{font:600 16px Arial,sans-serif;color:var(--muted);overflow-wrap:anywhere}.hero-visual{overflow:hidden;display:flex;align-items:center;justify-content:center;mix-blend-mode:screen}.hero-visual img{width:120%;max-width:none;height:auto}.transformation{padding-top:80px;padding-bottom:88px;background:var(--navy)}.section-heading{text-align:center;margin-bottom:38px}.section-heading h2{font-size:clamp(38px,4.5vw,60px);line-height:1;margin:11px 0}.section-heading p{font-size:21px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison figure{border:3px solid var(--gold);border-radius:7px;overflow:hidden;background:#081b31;position:relative}.headlight-img{aspect-ratio:2.38;background-image:url('assets/before-after-reference.png');background-repeat:no-repeat;background-size:300% auto}.before{background-position:21.7% 42.5%}.after{background-position:77.8% 42.5%}.comparison figcaption{position:absolute;bottom:0;left:0;background:var(--gold);color:var(--deep);padding:4px 18px;font:900 27px Impact,'Arial Narrow',sans-serif}.illustrative{text-align:center;color:#d6e0ec;font-size:14px;font-style:italic;margin-top:13px}.service-band{background:#f4f6f8;color:var(--deep)}.service-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;padding-top:84px;padding-bottom:84px}.service-grid .kicker{color:#000}.service-grid h2{font-size:clamp(46px,5vw,70px);line-height:.96;margin-top:15px}.service-grid h2 em{font-style:normal;color:#000}.service-list{border-top:2px solid var(--deep)}.service-list>div{display:flex;gap:26px;align-items:center;padding:25px 0;border-bottom:2px solid var(--deep)}.service-num{font:900 23px Impact,'Arial Narrow',sans-serif;color:#000}.service-list h3{font-size:30px;line-height:1.05}.mobile-section{text-align:center;padding-top:95px;padding-bottom:95px}.mobile-section h2{font-size:clamp(64px,9vw,122px);line-height:.9;color:var(--gold);margin:12px 0 22px}.mobile-detail{max-width:730px;margin:auto;font-size:20px;line-height:1.5}.location-strip{margin:38px auto 0;border-top:2px solid var(--gold);border-bottom:2px solid var(--gold);padding:18px 0;font:800 clamp(19px,2.6vw,31px) Impact,'Arial Narrow',sans-serif;letter-spacing:.085em}.location-strip span,.local-inner span{color:var(--gold);padding:0 8px}.local-section{background:var(--gold);color:var(--deep);text-align:center}.local-inner{padding-top:36px;padding-bottom:38px}.local-inner p{font:800 clamp(21px,2.7vw,30px) Impact,'Arial Narrow',sans-serif;text-transform:uppercase}.local-inner p span{color:var(--deep)}.local-inner strong{display:block;font-size:17px;margin-top:9px}.final-cta{padding-top:86px;padding-bottom:88px}.final-frame{border:4px solid var(--gold);border-radius:18px;text-align:center;padding:58px 25px;background:linear-gradient(135deg,#103960,#09284b)}.final-frame h2{color:var(--gold);font-size:clamp(59px,8vw,100px);line-height:1;margin:10px 0 18px}.final-frame p{font-weight:800;font-size:clamp(18px,2.1vw,25px);max-width:720px;margin:0 auto 26px;line-height:1.25}.final-frame .button{margin-bottom:20px}.final-number{display:block;width:fit-content;margin:0 auto 7px;text-decoration:none;font:900 37px Impact,'Arial Narrow',sans-serif}.final-frame .domain{display:block}footer{text-align:center;border-top:1px solid #ffffff26;padding:26px 16px;color:#b5c5d6;font:600 14px Impact,'Arial Narrow',sans-serif;letter-spacing:.09em}@media(max-width:800px){.topbar{height:70px;padding:0 20px}.top-number{font-size:21px}.hero{grid-template-columns:1fr;text-align:center;gap:0;padding-top:50px;padding-bottom:55px}.hero:before{inset:40% 0 0}.hero-copy{z-index:1}.gold-rule{margin:auto}.cta-instruction{margin:auto}.action-row{justify-content:center}.hero-visual{margin:28px auto -20px;width:min(100%,490px)}.hero-visual img{width:100%}.service-grid{grid-template-columns:1fr;gap:35px}.service-grid h2 br{display:none}}@media(max-width:540px){.section-shell{padding-left:19px;padding-right:19px}.topbar{padding:0 16px}.brand{font-size:17px;gap:7px}.brand small{font-size:11px}.brand-b{height:35px;width:35px;font-size:22px;border-width:2px}.top-number{font-size:17px}.hero{padding-top:42px;padding-bottom:48px;min-height:auto}h1{margin:18px 0 24px}h1 span{font-size:clamp(36px,10vw,54px)}h1 strong{font-size:clamp(52px,14vw,76px)}.hero-mobile{margin-top:22px;font-size:34px}.cta-instruction{font-size:17px}.action-row{flex-direction:column;gap:12px;margin:20px 0 12px}.button{width:min(100%,310px)}.hero-phone{font-size:28px}.hero-visual{margin:23px auto -25px;width:100%}.transformation{padding-top:59px;padding-bottom:64px}.section-heading{margin-bottom:25px}.section-heading p{font-size:18px}.comparison{grid-template-columns:1fr;gap:14px}.service-grid{padding-top:60px;padding-bottom:65px}.service-grid h2{font-size:49px}.service-list h3{font-size:26px}.mobile-section{padding-top:72px;padding-bottom:72px}.mobile-section h2{font-size:70px}.mobile-detail{font-size:18px}.location-strip{font-size:22px;line-height:1.3}.location-strip span{padding:0 3px}.local-inner{padding-top:28px;padding-bottom:31px}.local-inner p{line-height:1.2}.local-inner strong{font-size:16px}.final-cta{padding-top:62px;padding-bottom:64px}.final-frame{padding:43px 17px;border-radius:12px}.final-frame h2{font-size:65px}.final-frame p{font-size:18px}.final-number{font-size:34px}}
/* Warm, old-school paper palette; original navy and gold remain as accents. */
:root{--paper:#f7f2e6;--paper-light:#fffaf0;--paper-shade:#eee5d4;--ink:#09284b}
body{background:var(--paper);color:var(--ink)}
.topbar{background:var(--paper-light);border-bottom:3px solid var(--gold)}
.brand-b{background:var(--navy);color:var(--gold)}
.brand small{color:#000}
.hero{background:var(--paper)}
.hero:before{background:radial-gradient(ellipse at center,#e8dcc3 0,transparent 67%)}
.eyebrow,.kicker{color:#000}
.hero-mobile{color:var(--navy)}
.gold-rule{background:var(--gold)}
.domain{color:#40546b}
.hero-visual{mix-blend-mode:normal;background:var(--navy);border:5px solid var(--gold);border-radius:13px;box-shadow:12px 12px 0 #d7cbb7}
.hero-visual img{width:100%}
.transformation{background:var(--paper-light);border-top:1px solid #d6c8ad;border-bottom:1px solid #d6c8ad}
.section-heading .kicker{color:#000}
.comparison figure{border-color:var(--navy)}
.illustrative{color:#576779}
.service-band{background:var(--paper-shade);color:var(--ink)}
.service-grid .kicker,.service-grid h2 em,.service-num{color:#000}
.mobile-section{background:var(--paper)}
.mobile-section h2{color:var(--navy)}
.location-strip{border-color:var(--navy)}
.location-strip span{color:#000}
.local-section{background:var(--gold)}
.final-cta{background:var(--paper-light)}
.final-frame{background:var(--paper);border-color:var(--navy);box-shadow:10px 10px 0 #e5d9c3}
.final-frame .kicker{color:#000}
.final-frame h2{color:var(--navy)}
footer{background:var(--paper);border-top:1px solid #d6c8ad;color:#40546b}
@media(max-width:800px){.hero:before{background:radial-gradient(ellipse at center,#e8dcc3 0,transparent 67%)}.hero-visual{max-width:490px}}
h1 strong{color:var(--navy)}

/* Use the supplied artwork’s original white BEFORE and AFTER labels. */
.comparison figure{border-color:var(--gold);background:var(--navy)}
.headlight-img{aspect-ratio:2.38;background-size:300% auto}
/* Stop the source image above the old caption that intruded into the inner corners. */
.headlight-img{aspect-ratio:2.5}
.before{background-position:21.7% 41.8%}
.after{background-position:77.8% 41.8%}

/* Prominent, readable domain beneath the final phone number. */
.final-frame .domain{display:block;color:var(--navy);font:800 clamp(24px,3vw,36px)/1.15 Arial,sans-serif;letter-spacing:.01em;margin-top:12px;overflow-wrap:normal}
@media(max-width:540px){.final-frame .domain{font-size:clamp(21px,5.8vw,27px);line-height:1.2}}
/* Make the local service-area line prominent and easy to read. */
.local-inner strong{font:800 clamp(27px,3.1vw,39px)/1.16 Impact,'Arial Narrow',sans-serif;letter-spacing:.045em;margin-top:15px;text-transform:none}
@media(max-width:540px){.local-inner strong{font-size:clamp(25px,6.6vw,31px);line-height:1.18;margin-top:17px}}
/* Larger phone number beside the first TEXT NOW button. */
.hero-phone{font-size:clamp(40px,4.3vw,56px);line-height:1;letter-spacing:.055em}
@media(max-width:540px){.hero-phone{font-size:clamp(36px,9vw,45px)}}

/* Prominent domain directly below the hero action row. */
.hero-copy>.domain{color:var(--navy);font:800 clamp(26px,3vw,38px)/1.15 Arial,sans-serif;letter-spacing:.005em;margin-top:16px;overflow-wrap:normal}
@media(max-width:540px){.hero-copy>.domain{font-size:clamp(22px,5.9vw,28px);line-height:1.2;margin-top:14px}}

/* Larger business name at the top; keep hero domain on one unbroken line. */
.topbar .brand{font-size:31px;line-height:.9}
.topbar .brand small{font-size:19px;margin-top:6px}
.hero .eyebrow{font-size:22px}
.hero-copy>.domain{font:800 clamp(21px,2.45vw,31px)/1.15 Impact,'Arial Narrow',sans-serif;letter-spacing:.012em;white-space:nowrap;overflow-wrap:normal}
@media(max-width:540px){.topbar .brand{font-size:20px}.topbar .brand small{font-size:12px;margin-top:4px}.hero .eyebrow{font-size:20px}.hero-copy>.domain{font-size:clamp(17px,5vw,20px);white-space:nowrap}}
/* Larger business name above the final WE COME TO YOU headline. */
.final-frame .kicker{display:block;font-size:clamp(25px,2.9vw,36px);line-height:1.1;letter-spacing:.08em}
@media(max-width:540px){.final-frame .kicker{font-size:clamp(21px,5.7vw,27px);line-height:1.15}}
/* Straightforward bold lettering for the hero domain, as requested. */
.hero-copy>.domain{font:800 clamp(20px,2.2vw,29px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:0;white-space:nowrap}
@media(max-width:540px){.hero-copy>.domain{font-size:clamp(15px,4.55vw,19px)}}

/* Full-width business-name masthead. */
.topbar{height:auto;min-height:145px;padding:21px 24px 18px;display:flex;flex-direction:column;justify-content:center;gap:9px;text-align:center}
.topbar .brand{display:block;width:100%;font-size:clamp(36px,4.8vw,70px);line-height:1;letter-spacing:.035em;white-space:normal;color:var(--navy)}
.topbar .brand-name>span{display:inline}
.topbar .top-number{font-size:26px;line-height:1;color:var(--navy)}
@media(max-width:800px){.topbar{padding:18px 16px 17px;gap:8px}.topbar .brand{font-size:clamp(32px,6vw,48px)}}
@media(max-width:540px){.topbar{min-height:137px;padding:17px 12px 15px}.topbar .brand{font-size:clamp(38px,10vw,48px);line-height:.98}.topbar .brand-name>span{display:block;font-size:clamp(25px,6.5vw,32px);margin-top:4px}.topbar .top-number{font-size:22px}}

/* Restore the compact header; enlarge only the B within its circle. */
.topbar{height:82px;min-height:0;padding:0 max(32px,calc((100vw - 1196px)/2));flex-direction:row;justify-content:space-between;gap:24px;text-align:left}
.topbar .brand{display:flex;width:auto;font-size:31px;line-height:.9;letter-spacing:.065em;white-space:nowrap}
.topbar .brand small{display:block;font-size:19px;margin-top:6px}
.topbar .brand-b{width:43px;height:43px;font-size:35px;line-height:1;flex:none}
.topbar .top-number{font-size:25px}
/* This main-page title spans both hero columns. */
.hero .hero-title{grid-column:1/-1;text-align:center;font:900 clamp(42px,5.3vw,72px)/1 Impact,'Arial Narrow',sans-serif;letter-spacing:.055em;color:var(--navy);margin:0 0 14px}
.hero .hero-title span{display:inline}
@media(max-width:800px){.topbar{height:70px;padding:0 20px;gap:16px}.topbar .top-number{font-size:21px}.hero .hero-title{font-size:clamp(37px,5.8vw,52px);margin-bottom:4px}}
@media(max-width:540px){.topbar{height:70px;padding:0 12px;gap:8px}.topbar .brand{font-size:20px;gap:7px}.topbar .brand small{font-size:11px;margin-top:4px}.topbar .brand-b{width:35px;height:35px;font-size:29px}.topbar .top-number{font-size:16px}.hero .hero-title{font-size:clamp(36px,9.5vw,49px);line-height:.98;margin-bottom:8px}.hero .hero-title span{display:block;font-size:clamp(27px,7.3vw,38px);margin-top:5px}}

/* Supplied QR code at the two main contact prompts. */
.contact-qr{width:180px;max-width:100%;margin:24px 0 0;text-align:center}
.contact-qr img{display:block;width:100%;height:auto;background:#fff;border:1px solid #d6c8ad;border-radius:4px}
.contact-qr figcaption{font:600 14px/1.4 Arial,sans-serif;color:var(--navy);margin-top:8px}
.final-frame .contact-qr{margin:28px auto 0}
a:focus-visible{outline-color:var(--navy)}
@media(max-width:800px){.hero-copy .contact-qr{margin-left:auto;margin-right:auto}}
@media(max-width:800px){.service-grid{grid-template-columns:minmax(0,1fr)}.service-grid h2 br{display:block}.service-list>div{min-width:0}.service-list h3{min-width:0}}

/* Results and customer feedback follow the existing paper, navy and gold palette. */
.results-section,.reviews-section{padding-top:76px;padding-bottom:76px}
.results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.result-card{overflow:hidden;border:3px solid var(--navy);border-radius:8px;background:var(--navy)}
.result-card img{width:100%;height:auto;display:block}
.result-card figcaption{display:grid;grid-template-columns:1fr 1fr;text-align:center;color:var(--gold);font:800 22px/1.2 Impact,'Arial Narrow',sans-serif;letter-spacing:.08em;padding:12px 0}
.service-description{font:400 18px/1.6 Arial,sans-serif;margin-top:24px;max-width:480px}
.warranty{display:inline-block;margin-top:20px;padding:10px 16px;background:var(--gold);color:var(--navy);font-weight:800;border-radius:3px}
.mobile-service-heading{font-size:26px;line-height:1.25;margin:0 auto 20px;max-width:760px}
.reviews-section{background:var(--paper-light)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.review-card{padding:25px;background:var(--paper);border:1px solid #d6c8ad;border-top:4px solid var(--gold);border-radius:6px;display:flex;flex-direction:column}
.review-stars{color:#9b7200;font-size:24px;letter-spacing:3px;margin-bottom:17px}
.review-card blockquote{margin:0 0 20px;font:400 17px/1.6 Arial,sans-serif;letter-spacing:0}
.review-card figcaption{margin-top:auto;font-weight:800;font-size:17px}
.review-card:last-child{grid-column:span 3}
.section-heading .review-disclosure{font-size:14px;line-height:1.5;color:#40546b;margin-top:16px}
@media(max-width:800px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card:last-child{grid-column:span 2}}
@media(max-width:540px){.results-section,.reviews-section{padding-top:54px;padding-bottom:54px}.results-grid,.reviews-grid{grid-template-columns:minmax(0,1fr);gap:20px}.review-card:last-child{grid-column:auto}.mobile-service-heading{font-size:23px}.review-card{padding:22px}.service-description{font-size:17px}}
.review-card:last-child{grid-column:auto}@media(min-width:801px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Separate gallery title from the business name for intentional wrapping. */
#results-title>span{display:block}
#results-title .gallery-business{font-size:clamp(21px,3.1vw,38px);line-height:1.2;letter-spacing:.04em;margin-top:12px;text-wrap:balance}
.results-section .section-heading>p{max-width:800px;margin:18px auto 0;line-height:1.5;text-wrap:balance}
