:root{--red:#c51d27;--red-dark:#a5101a;--black:#151515;--muted:#5c5c60;--line:#dedee0;--soft:#f3f3f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--black);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',sans-serif;line-height:.98}h2{font-size:clamp(2.7rem,4.5vw,4rem);font-weight:800;letter-spacing:-.01em}h3{font-size:2.3rem;font-weight:700;line-height:1.03}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #f49c2b;outline-offset:5px}.wrap{max-width:1200px;width:calc(100% - 80px);margin-inline:auto}.topbar{background:var(--black);color:#f4f4f4;font-size:.75rem}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.topbar span{font-weight:600;letter-spacing:.06em}.topbar b{color:#fa7680;margin:0 12px}.topbar a{color:#d3d3d6}header{background:#fff;border-bottom:1px solid var(--line)}.nav{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:23px 0}.brand{display:flex;flex-direction:column;gap:3px;flex-shrink:0}.wordmark{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-style:italic;font-size:2.65rem;line-height:.95;color:var(--red);letter-spacing:-.02em}.brand-sub{font-size:.67rem;font-weight:800;letter-spacing:.065em}.nav nav{display:flex;gap:29px;font-size:.9rem;font-weight:600}.nav nav a:hover{color:var(--red)}.nav-phone{display:block;line-height:1.2;padding-left:27px;border-left:1px solid var(--line)}.nav-phone small{font-size:.65rem;font-weight:700;letter-spacing:.1em;color:var(--muted)}.nav-phone strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:1.9rem;margin-top:3px}.hero{background:#fff;overflow:hidden;position:relative}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding:57px 0 65px}.hero-art{position:relative;align-self:center;display:flex;flex-direction:column;align-items:center}.hero-art img{height:440px;object-fit:contain}.art-signature{font-family:'Barlow Condensed',sans-serif;font-size:.9rem;letter-spacing:.16em;color:#6c6c70;text-align:center;margin-top:15px;border-top:3px solid var(--red);padding-top:13px;width:80%}.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.095em;font-weight:700;margin-bottom:18px;color:var(--red)}.hero .eyebrow{display:flex;gap:10px;align-items:center;color:#555}.line{width:28px;height:3px;background:var(--red);flex-shrink:0}h1{font-size:clamp(4.3rem,6.3vw,5.85rem);font-weight:800;letter-spacing:-.015em;line-height:.96}h1 em{color:var(--red);font-size:1.31em;font-style:italic;letter-spacing:-.025em;line-height:1.05}.hero-subtitle{font-family:'Barlow Condensed',sans-serif;font-size:1.95rem;font-weight:600;line-height:1.1;margin-top:20px}.intro{font-size:1rem;max-width:445px;color:var(--muted);margin-top:17px;line-height:1.7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.button{display:inline-flex;justify-content:center;align-items:center;padding:15px 25px;min-height:53px;font-weight:700;font-size:.86rem;letter-spacing:.015em;border:1px solid transparent;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.red{background:var(--red);color:white}.red:hover{background:var(--red-dark)}.outline{border-color:var(--black);background:white;color:var(--black)}.outline:hover{background:#f0f0f0}.hero-note{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:.75rem;margin-top:20px;color:#67676a}.hero-note span{font-weight:700;color:var(--red)}.hero-note b{color:#a3a3a5}.champ-band{background:var(--red);color:white;position:relative}.champ-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:19px;font-family:'Barlow Condensed',sans-serif;font-size:1.45rem;font-weight:700;font-style:italic;letter-spacing:.025em}.champ-band b{font-size:1rem;opacity:.75}.services-section{background:var(--black);color:white;padding-block:76px 84px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:40px}.section-heading>p{max-width:340px;color:var(--muted);font-size:.95rem}.services-section .eyebrow{color:#ff747d}.services-section .section-heading>p{color:#bcbcc2}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service-grid article{border-top:1px solid #555;padding-top:24px}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.service-number{font-family:'Barlow Condensed',sans-serif;color:#ff747d;font-size:2.8rem;font-weight:600;line-height:1}.service-tag{font-size:.72rem;letter-spacing:.14em;color:#b8b8be}.service-grid p{color:#bcbcc2;font-size:.94rem;line-height:1.75;margin-block:20px 24px;max-width:315px}.service-grid a{font-size:.86rem;font-weight:600;display:inline-block;padding-bottom:4px;border-bottom:2px solid #ed4853}.work-section{padding-block:80px}.work-section .eyebrow{margin-bottom:10px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project{padding:0;background:#fff;border:0;color:var(--black);text-align:left;cursor:pointer}.project img{height:280px;transition:filter .2s}.project:hover img{filter:brightness(.88)}.project>span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid var(--line)}.project strong{font-family:'Barlow Condensed',sans-serif;font-size:1.22rem;font-weight:600}.project small{font-size:.7rem;white-space:nowrap;color:var(--red);font-weight:700}.neighbors-section{padding-block:65px;background:var(--soft)}.neighbor-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.neighbor-intro{font-size:1rem;color:var(--muted);margin:22px 0;max-width:420px}.text-link{font-size:.87rem;text-decoration:underline;text-underline-offset:6px;font-weight:600}.text-link:hover{color:var(--red)}.quote-card{border-left:3px solid var(--red);padding-left:35px}.quote-mark{font-family:Georgia,serif;font-size:5.5rem;color:var(--red);display:block;height:52px;line-height:1}.quote-card blockquote{font-family:'Barlow Condensed',sans-serif;font-size:2.8rem;font-weight:600;line-height:1.13;margin:16px 0 27px}.quote-footer{display:flex;gap:13px;align-items:center}.avatar{border-radius:50%;background:white;border:1px solid #ccc;display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;font-size:.8rem}.quote-footer strong{font-size:.84rem}.quote-footer div>span{display:block;color:var(--muted);font-size:.75rem}.contact-section{background:var(--red);color:white;padding-block:74px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.contact-section .eyebrow{color:white;opacity:.85}.contact-section h2{font-size:5rem;font-weight:800;line-height:.94}.contact-section h2 em{font-style:italic}.contact-section p{font-size:1rem;color:#ffe6e8;max-width:400px;margin-top:24px}.contact-card{padding-left:45px;border-left:1px solid #ffffff66}.contact-label{font-size:.7rem;letter-spacing:.09em}.big-phone{font-family:'Barlow Condensed',sans-serif;display:block;font-size:3.8rem;font-weight:700;line-height:1.1;margin-top:14px;white-space:nowrap}.white{background:white;color:var(--red)}.white:hover{background:#f2e3e4}.light-outline{border-color:white;color:white}.light-outline:hover{background:#ffffff15}.contact-detail{display:grid;grid-template-columns:65px 1fr;gap:20px;border-top:1px solid #ffffff45;padding-top:20px;margin-top:24px;font-size:.88rem}.contact-detail>span{color:#ffdde0}.contact-detail p{margin:0;color:white;font-size:.9rem}.contact-detail small{font-size:.75rem;display:block;margin-top:4px;color:#ffe0e3}.faq{padding-block:75px;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.faq h2{font-size:3rem}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq details:first-child{border-top:1px solid var(--line)}summary{font-size:.94rem;font-weight:600;list-style:none;cursor:pointer;padding-right:30px;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:1.2rem;color:var(--red)}details[open] summary:after{content:'−'}details p{padding-top:14px;font-size:.93rem;color:var(--muted)}details p a{text-decoration:underline}footer{background:var(--black);color:white}.footer-main{padding-block:40px;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-main .wordmark{color:#ff5b65}.footer-main p{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-style:italic;font-size:1.7rem}.footer-main>a:last-child{font-size:.86rem;color:#dedee2;text-decoration:underline;text-underline-offset:5px}.footer-bottom{padding-block:20px;border-top:1px solid #48484b;color:#aaaab1;display:flex;justify-content:space-between;gap:20px;font-size:.75rem}.mobile-contact{display:none}.skip{position:absolute;top:-100px;z-index:50;background:white;padding:10px}.skip:focus{top:0}dialog{width:min(1000px,92vw);max-height:92vh;padding:16px;border:0;background:white;color:var(--black)}dialog::backdrop{background:#000d}dialog img{max-height:75vh;object-fit:contain;background:var(--soft)}dialog p{padding:10px 40px 0 4px;font-weight:600}.close-dialog{position:absolute;right:23px;top:23px;background:var(--red);color:white;border:1px solid white;font-size:1.8rem;width:44px;height:44px;cursor:pointer;border-radius:50%}
@media(min-width:1500px){.hero-grid{padding-block:70px 80px}.hero-art img{height:480px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:20px}.nav nav{gap:19px}.hero-grid{gap:30px}.hero-art img{height:400px}h1{font-size:4.5rem}.hero .button{padding-inline:17px;font-size:.8rem}.hero-subtitle{font-size:1.8rem}.hero-note{font-size:.7rem;gap:7px}.contact-grid{gap:55px}.contact-card{padding-left:30px}.big-phone{font-size:3.3rem}.neighbor-grid{gap:50px}.project img{height:240px}.gallery{gap:18px}.project strong{font-size:1.1rem}.champ-band .wrap{font-size:1.2rem}.faq{gap:50px}}@media(max-width:800px){.nav nav{display:none}.nav-phone{border:0;padding:0}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero-art img{height:330px}.hero .eyebrow{font-size:.62rem;letter-spacing:.035em}.hero .line{width:15px}h1{font-size:3.65rem}.intro{font-size:.92rem}.hero-subtitle{font-size:1.55rem}.hero .actions{gap:8px}.hero .button{padding-inline:14px;font-size:.74rem}.art-signature{font-size:.7rem}.hero-note{font-size:.66rem}.gallery{grid-template-columns:1fr}.project img{height:370px}.project>span{padding:15px 0}.project strong{font-size:1.4rem}.project small{font-size:.8rem}.service-grid{gap:23px}.service-grid h3{font-size:2rem}.service-grid p{font-size:.87rem}.neighbor-grid{gap:36px}.quote-card{padding-left:25px}.quote-card blockquote{font-size:2.5rem}.contact-grid{gap:35px}.contact-card{padding-left:25px}.big-phone{font-size:2.8rem}.contact-card .button{padding-inline:15px;font-size:.8rem}.contact-detail{grid-template-columns:1fr;gap:4px}.faq{grid-template-columns:1fr;gap:28px}}@media(max-width:600px){.wrap{width:calc(100% - 36px)}.topbar .wrap{justify-content:center;padding:8px 0}.topbar span{font-size:.63rem}.topbar b{margin:0 8px}.topbar a{display:none}.nav{padding:20px 0;gap:10px}.wordmark{font-size:2.15rem}.brand-sub{font-size:.54rem}.nav-phone small{font-size:.58rem}.nav-phone strong{font-size:1.55rem}.hero-grid{display:flex;flex-direction:column-reverse;gap:20px;padding:33px 0 27px;text-align:center}.hero-copy{width:100%}.hero .eyebrow{justify-content:center;font-size:.68rem;margin-bottom:12px}.hero .line{width:22px}h1{font-size:clamp(3.7rem,13.5vw,5.5rem)}h1 em{font-size:1.3em}.hero-subtitle{font-size:1.7rem;margin-top:16px}.hero-subtitle br{display:none}.intro{max-width:370px;font-size:.94rem;margin:13px auto 0}.hero .actions{justify-content:center;margin-top:22px;gap:10px}.hero .button{padding:14px 19px;font-size:.78rem;min-height:50px}.hero-note{justify-content:center;font-size:.71rem;margin-top:16px}.hero-art{width:100%;max-width:390px}.hero-art img{height:300px}.art-signature{display:none}.champ-band .wrap{padding:16px 0;gap:10px;flex-wrap:wrap;justify-content:center;font-size:.95rem;line-height:1.1}.champ-band b{font-size:.6rem}.champ-band span:nth-of-type(2){white-space:nowrap}.champ-band span:last-child{display:block}.services-section{padding-block:48px 55px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;max-width:100%;font-size:.94rem}.eyebrow{font-size:.66rem;margin-bottom:14px}.service-grid{grid-template-columns:1fr;gap:28px}.service-grid article{padding-top:22px}.service-top{margin-bottom:14px}.service-number{font-size:2.4rem}.service-tag{font-size:.7rem}.service-grid h3{font-size:2.1rem}.service-grid h3 br{display:none}.service-grid p{font-size:.93rem;max-width:100%;margin:14px 0 17px}.work-section{padding-block:50px}.project img{height:260px}.gallery{gap:24px}.project strong{font-size:1.2rem}.project small{font-size:.7rem}.neighbors-section{padding-block:50px}.neighbor-grid{grid-template-columns:1fr;gap:35px}.neighbor-intro{font-size:.95rem;margin:18px 0}.text-link{font-size:.82rem}.quote-card{padding-left:23px}.quote-card blockquote{font-size:2.5rem;margin-top:10px}.quote-footer strong{font-size:.78rem}.quote-footer div>span{font-size:.69rem}.contact-section{padding-block:50px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-section h2{font-size:4.5rem}.contact-section h2 br{display:none}.contact-section p{font-size:.94rem}.contact-card{border-left:0;border-top:1px solid #ffffff66;padding:25px 0 0}.big-phone{font-size:3.5rem}.contact-label{font-size:.64rem}.contact-card .actions{margin-top:23px}.contact-card .button{padding-inline:23px;font-size:.85rem}.contact-detail{grid-template-columns:65px 1fr;gap:17px}.faq{padding-block:50px;gap:24px}.faq h2{font-size:2.7rem}.faq summary{font-size:.9rem}.footer-main{flex-wrap:wrap;gap:28px;padding-block:32px}.footer-main p{font-size:1.3rem}.footer-bottom{flex-direction:column;gap:7px;padding-bottom:100px;font-size:.68rem}.mobile-contact{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -2px 15px #0002;gap:10px}.mobile-contact a{background:var(--red);color:white;flex:1;text-align:center;font-size:.8rem;font-weight:700;padding:12px 6px}.mobile-contact a+a{background:var(--black)}}@media(max-width:350px){.hero .button{padding-inline:12px;font-size:.73rem}.nav-phone strong{font-size:1.4rem}.wordmark{font-size:1.9rem}.brand-sub{font-size:.48rem}.hero-note{gap:6px;font-size:.66rem}.big-phone{font-size:3rem}.contact-section h2{font-size:4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Customer recommendations */
.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:44px;margin-bottom:34px}.reviews-heading h2{font-size:3.5rem;line-height:1}.reviews-heading h2 span{font-size:.64em;display:inline-block;margin-top:8px;color:var(--red)}.reviews-heading>p{max-width:330px;color:var(--muted);font-size:.94rem;line-height:1.65}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.neighbor-review{background:white;border:1px solid #e2e2e4;border-top:3px solid var(--red);padding:28px;display:flex;flex-direction:column;position:relative}.review-featured{grid-column:span 2;background:var(--black);color:white;border-color:var(--black);border-top-color:var(--red)}.review-quote-mark{font-family:Georgia,serif;font-size:4rem;line-height:.75;color:var(--red);height:40px}.neighbor-review blockquote{font-family:'Barlow Condensed',sans-serif;font-size:2rem;font-weight:600;line-height:1.12;margin:14px 0 18px}.review-featured blockquote{font-size:2.7rem;max-width:540px}.review-summary{font-size:.86rem;line-height:1.65;color:var(--muted);margin:0 0 25px;max-width:570px}.review-summary>span{display:block;font-size:.59rem;letter-spacing:.1em;font-weight:700;margin-bottom:5px}.review-featured .review-summary{color:#d2d2d5}.review-person{display:flex;align-items:center;gap:12px;margin-top:auto}.review-avatar{width:40px;height:40px;display:grid;place-items:center;background:var(--soft);color:var(--black);font-size:.75rem;font-weight:700;border-radius:50%;flex-shrink:0}.review-person strong{display:block;font-size:.86rem}.review-person div>span{font-size:.75rem;color:var(--muted)}.review-featured .review-person div>span{color:#d2d2d5}.review-source{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:20px;font-size:.76rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}.review-source:hover{color:var(--red)}.review-featured .review-source{border-color:#48484b}.review-featured .review-source:hover{color:#ff8188}.reviews-note{font-size:.73rem;line-height:1.6;color:var(--muted);margin-top:20px;max-width:700px}@media(max-width:900px){.reviews-heading{align-items:start;flex-direction:column;gap:18px}.reviews-heading>p{max-width:580px}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-featured{grid-column:span 2}}@media(max-width:600px){.reviews-heading h2{font-size:2.65rem}.reviews-heading h2 span{font-size:.58em}.reviews-heading{margin-bottom:26px}.review-grid{grid-template-columns:1fr;gap:16px}.review-featured{grid-column:auto}.neighbor-review{padding:25px}.review-featured blockquote{font-size:2.2rem}.neighbor-review blockquote{margin-top:10px}.reviews-note{font-size:.7rem}}

.site-credit{color:#dedee2;font-size:.875rem;white-space:nowrap}.site-credit span{text-decoration:underline;text-underline-offset:3px}.site-credit:hover{color:#fff}
