/* Visual direction: supplied IMG_8471 mockup — paint, charcoal, chrome and red. */
:root{--red:#e31318;--black:#050505;--panel:#0a0a0a;--paint:url('/assets/paint-grunge.png')}
body{background:#050505;color:#f5f5f3}
p{color:#ccc}
.topline{background:#030303}.topline b{color:#ef2424}
header{background:#050505f5;height:78px;border-bottom:1px solid #666;box-shadow:0 2px 10px #0008}
header .logo{font-size:47px;font-style:normal;font-weight:500;letter-spacing:-4px}
.logo span{color:#f5f5f5;text-shadow:2px 2px #bd1015}
nav a{padding:25px 0}.header-phone{border:1px solid #b7181d;border-radius:24px;padding:6px 12px}
.button{background:linear-gradient(#ef2026,#a8070b);border:1px solid #ef5b5b;border-radius:3px;box-shadow:inset 0 0 0 2px #ff6a6a19,0 3px 10px #0005;letter-spacing:.3px}
.button:hover{background:#d91a20}.button.outline{border:1px solid #bbb;box-shadow:inset 0 0 0 1px #fff2;background:#050505a8}
.eyebrow{color:#f52b30;letter-spacing:1.2px}.section{padding-top:52px;padding-bottom:52px}
/* Full-bleed paint behind the live, selectable hero content. */
.hero.wrap{max-width:none;width:100%;padding:24px max(56px,calc((100vw - 1240px)/2)) 20px;grid-template-columns:1.05fr 1fr;min-height:450px;background:var(--paint) center 46%/cover;isolation:isolate}
.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#0006 16%,#0002 64%,transparent);z-index:-1}
.hero-copy{padding:15px 0}.hero-copy>.eyebrow{color:#ccc;font-size:13px;letter-spacing:1.4px;margin-bottom:6px}
.hero-wordmark{font-family:Arial,sans-serif;font-weight:500;line-height:.98;font-size:clamp(100px,13vw,186px);letter-spacing:-13px;color:#f6f6f6;text-shadow:1px 1px #999,2px 3px #858585,4px 5px #2a2a2a,7px 7px #970a11;margin-left:-8px;margin-bottom:18px;white-space:nowrap}
.hero-wordmark span{font-size:.85em;vertical-align:8px;margin-left:5px}
.hero h1{font-size:clamp(22px,2.2vw,32px);line-height:1.1;letter-spacing:0;margin-bottom:17px;white-space:nowrap}
.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.5;max-width:505px}.hero .actions{margin-top:24px}.hero .button{padding:13px 20px;font-size:17px}
.hero-art{height:405px;overflow:visible;background:none;margin:0}
.house-art{width:430px;height:362px;top:25px;left:43%;transform:translateX(-50%) scale(1.05);background-image:url('/assets/brand-house.png');background-position:-25px -760px;background-size:943px 2048px;mix-blend-mode:lighten;mask-image:radial-gradient(ellipse at 50% 55%,black 44%,#000e 59%,transparent 74%)}
.art-caption{top:8px;right:-12px;bottom:auto;transform:rotate(-9deg);text-align:center;font-style:italic;z-index:1;filter:drop-shadow(3px 3px 1px #000)}
.art-caption span{font-size:28px}.art-caption strong{border:0;font-size:35px;padding:0;font-weight:800;line-height:1.05}.art-caption b{display:block;font-size:63px;line-height:.95;letter-spacing:-2px;border-bottom:5px solid #dc141b;padding-bottom:7px}
.trust{background:#050505d9;padding:16px;border-top:1px solid #888;border-bottom:1px solid #888;gap:65px}.trust span{font-family:var(--heading);font-size:14px;letter-spacing:.3px}.trust b{color:white}
/* The mockup's six circular service illustrations. */
.quick-services{position:relative;padding:27px 0 15px;border-bottom:1px solid #999;isolation:isolate;overflow:hidden}
.quick-services:before,.projects-section:before{content:'';position:absolute;inset:0;background:var(--paint) center/cover;filter:grayscale(1);opacity:.4;z-index:-1}
.quick-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0}
.quick-service{position:relative;text-align:center;padding:0 17px;transition:transform .2s}.quick-service+.quick-service:before{content:'';height:80%;position:absolute;left:0;top:15%;width:1px;background:linear-gradient(transparent,#a71015,#ed2b30,transparent)}
.quick-service:hover{transform:translateY(-4px)}.icon-medallion{display:grid;place-items:center;border-radius:50%;width:91px;height:91px;margin:0 auto 15px;color:#eee;border:2px solid #ddd;outline:2px solid #9e171b;outline-offset:3px;background:radial-gradient(ellipse,#202020,#030303 70%);box-shadow:0 0 0 7px #060606,3px 5px 8px #000}
.icon-medallion svg{width:62px;height:62px;filter:drop-shadow(1px 1px #999)}
.quick-service h2{font-size:23px;text-transform:uppercase;line-height:1.05;margin-bottom:8px}.quick-service p{font-size:13px;line-height:1.3}.all-services-link{display:block;width:max-content;margin:21px auto 0;text-transform:uppercase;font:500 14px var(--heading);color:#ddd;letter-spacing:1px}.all-services-link:hover{color:#ff3338}
/* Continuous textured surfaces in place of flat charcoal panels. */
.projects-section{position:relative;background:#030303;isolation:isolate;border-color:#777;overflow:hidden}.projects-section:before{background-position:center bottom;opacity:.55}
.projects-section>.wrap{position:relative}.projects-section .section-heading h2 em{color:#f5f5f3}.project-image{border:1px solid #555}.project-card:hover .project-image{border-color:#df292f}.project-meta h3{font-size:25px;text-transform:uppercase}.project-meta{padding-top:14px}.project-meta .eyebrow{color:#ff383c}.photo-count{border-left:2px solid #dd1c22}.circle-arrow{border-color:#aaa}.home-projects .section{padding-top:35px;padding-bottom:35px}.home-projects .section-heading{margin-bottom:25px}.home-projects h2{font-size:44px}.home-projects .project-image{aspect-ratio:1.65}.home-projects .section-heading .eyebrow{margin-bottom:10px}
/* White paper, charcoal marks, and a feathered project photo. */
.why-section{position:relative;background:#eeede9;color:#121212;isolation:isolate;overflow:hidden}
.why-section:before{content:'';position:absolute;inset:0;background:var(--paint) center/cover;filter:grayscale(1) invert(1);opacity:.25;z-index:-1}
.why{grid-template-columns:1fr 1.15fr 1.1fr;gap:35px;padding-top:35px;padding-bottom:35px;width:calc(100% - 112px)}
.why .eyebrow{color:#171717;margin-bottom:17px;font-size:12px}.why p{color:#292929}.why .values article{padding:9px 0;border:0;gap:18px}.why .values h3{font-size:23px;margin-bottom:5px}.why .values p{font-size:13px}.why .values article>span{color:#ba181e;font-size:34px;line-height:1;width:30px;text-align:center}.local-promise{border-left:2px solid #c53134;padding-left:30px}.local-promise h2{font-size:30px;line-height:1.1}.local-promise>p:not(.eyebrow){font-size:14px;margin:17px 0}.local-promise .text-link{font-size:14px;color:#1c1c1c}
.property-promise{position:relative;min-height:225px;margin:-35px -30px -35px 0;isolation:isolate;overflow:hidden}.property-promise img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2;mask-image:linear-gradient(90deg,transparent,black 20%)}.property-promise:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#000b);z-index:-1}.property-promise p{position:absolute;bottom:27px;right:10px;color:white;font:700 italic 32px/.95 var(--heading);transform:rotate(-7deg);text-align:right;text-shadow:2px 2px #111}.property-promise em{display:block;margin-top:7px;color:#ff3036;font-size:38px;border-bottom:3px solid #de2228;padding-bottom:6px}
/* Red painted footer and matching texture throughout the inner pages. */
.contact-banner{position:relative;background:#97090e var(--paint) center 73%/cover;isolation:isolate;padding-top:34px;padding-bottom:34px;border-top:1px solid #e43838}
.contact-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#dc151bcc,#900b1188,#62030688);z-index:-1}.contact-banner h2{font-style:italic;font-size:57px;text-shadow:2px 2px #420000}.contact-banner em{color:white}.contact-banner .eyebrow{font:600 italic 22px var(--heading);color:white;letter-spacing:.5px;margin-bottom:5px}.contact-banner .white{background:linear-gradient(#ef2429,#ad0a0e);border-color:#ed6569;color:white}.footer-grid{padding-top:34px;padding-bottom:30px}
.page-intro{position:relative;isolation:isolate;padding-top:30px;padding-bottom:60px}.page-intro:before{content:'';position:absolute;inset:0 calc((min(1240px,100vw - 112px) - 100vw)/2);background:var(--paint) center/cover;z-index:-1;opacity:.75}
.service-grid{gap:25px}.service-card{background:linear-gradient(135deg,#111b,#000e),var(--paint) center/cover;border:0;border-bottom:1px solid #777;padding:27px}.service-card:hover{background:linear-gradient(135deg,#5a1111a8,#000e),var(--paint) center/cover}.service-icon{border-radius:50%;border:2px solid #ddd;outline:2px solid #a91c23;outline-offset:3px;width:63px;height:63px;display:grid;place-items:center;color:white;background:#050505}.seasonal{background:linear-gradient(90deg,#0009,#0009),var(--paint) center/cover;border-color:#888}.renovation-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--paint) left center/cover;opacity:.5;mask-image:linear-gradient(90deg,black,transparent 64%)}.renovation-hero .wrap{position:relative;z-index:1}.renovation-intro,.process{position:relative}.process:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--paint) center/cover;filter:grayscale(1);opacity:.3}
@media(min-width:1151px){.home-projects>.wrap{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:center}.home-projects .section-heading{display:block;margin:0}.home-projects .section-heading .button{font-size:15px;margin-top:20px;padding:12px 14px;gap:15px}.home-projects .project-grid{gap:18px}.home-projects .project-image{aspect-ratio:1.2}.home-projects .project-meta h3{font-size:23px}.home-projects .circle-arrow{display:none}}
@media(max-width:1150px){.hero.wrap{padding-left:32px;padding-right:32px}.hero-wordmark{font-size:140px;letter-spacing:-10px}.hero h1{font-size:24px;white-space:normal;max-width:400px}.hero-art{height:380px}.house-art{left:46%;transform:translateX(-50%) scale(.91)}.art-caption{right:0;top:0}.art-caption span{font-size:23px}.art-caption strong{font-size:29px}.art-caption b{font-size:52px}.quick-service{padding:0 12px}.quick-service h2{font-size:20px}.quick-service p{font-size:12px}.icon-medallion{width:80px;height:80px}.why{width:calc(100% - 64px);gap:22px}.local-promise{padding-left:22px}.property-promise p{font-size:26px}.property-promise em{font-size:30px}.page-intro:before{inset:0 -32px}}
@media(max-width:800px){header{height:76px}header .logo{font-size:37px}nav a{padding:13px}.hero.wrap{padding:30px 22px 10px;grid-template-columns:1fr;background-position:38% top}.hero-copy{padding:0}.hero-copy>.eyebrow{font-size:10px}.hero-wordmark{font-size:clamp(110px,26vw,165px);letter-spacing:-9px;margin-left:-4px;margin-bottom:14px}.hero h1{font-size:25px;max-width:450px;white-space:normal}.hero-copy>p:not(.eyebrow){font-size:15px;max-width:440px}.hero .actions{margin-top:20px}.hero .button{padding:13px 15px;font-size:16px;gap:15px}.hero-art{height:315px;max-width:480px;width:100%;margin:10px auto 0}.house-art{top:-20px;left:46%;transform:translateX(-50%) scale(.8)}.art-caption{top:7px;right:0}.art-caption span{font-size:22px}.art-caption strong{font-size:28px}.art-caption b{font-size:49px}.trust{gap:12px;padding:13px 10px}.trust span{font-size:11px}.trust b{font-size:20px}.quick-grid{grid-template-columns:repeat(3,1fr);gap:27px 0}.quick-service:nth-child(4):before{display:none}.quick-service{padding:0 10px}.quick-service h2{font-size:20px}.quick-service p{font-size:12px}.icon-medallion{width:73px;height:73px;margin-bottom:13px}.icon-medallion svg{width:51px;height:51px}.quick-services{padding-top:28px}.quick-grid.wrap{width:calc(100% - 26px)}.all-services-link{margin-top:24px}.home-projects .section-heading{display:flex;align-items:end;gap:20px}.home-projects .section-heading .button{font-size:14px;gap:12px;padding:12px;max-width:165px}.home-projects h2{font-size:36px}.home-projects .project-image{aspect-ratio:1.65}.home-projects .featured{grid-template-columns:1fr}.why{width:calc(100% - 44px);grid-template-columns:1fr 1fr;gap:25px}.local-promise{padding-left:20px}.local-promise h2{font-size:25px}.local-promise>p:not(.eyebrow){font-size:13px}.why .values h3{font-size:20px}.why .values article{gap:10px}.why .values p{font-size:12px}.property-promise{grid-column:1 / -1;min-height:240px;margin:0 -22px -35px}.property-promise img{mask-image:linear-gradient(180deg,transparent,black 20%)}.property-promise p{font-size:35px;right:30px;bottom:35px}.property-promise em{font-size:44px}.contact-banner h2{font-size:48px}.contact-banner .eyebrow{font-size:20px}.section{padding-top:40px;padding-bottom:40px}.page-intro:before{inset:0 -22px}.page-intro h1{font-size:49px}.renovation-hero:before{opacity:.55}.service-card{padding:25px}.service-grid{gap:20px}}
@media(max-width:420px){.hero h1{font-size:22px}.hero .button{font-size:15px;padding:13px 12px;gap:11px}.hero-art{height:295px}.house-art{top:-30px;left:43%;transform:translateX(-50%) scale(.72)}.art-caption{top:12px;right:1px}.art-caption span{font-size:20px}.art-caption strong{font-size:25px}.art-caption b{font-size:44px}.trust span{font-size:10px}.quick-service{padding:0 8px}.quick-service h2{font-size:18px}.quick-service p{font-size:11px}.icon-medallion{width:67px;height:67px}.home-projects .section-heading{align-items:center}.home-projects .section-heading .eyebrow{font-size:9px}.why{grid-template-columns:1fr}.local-promise{border-left:0;border-top:1px solid #bb3030;padding:22px 0 0}.why .values h3{font-size:23px}.why .values p{font-size:14px}.local-promise h2{font-size:31px}.local-promise>p:not(.eyebrow){font-size:15px}}

.service-icon svg{width:43px;height:43px}
