/* October 4 quality lift: purposeful content, brighter architecture and composed materials. */
.home-page .home-service-photo{height:690px}.home-page .home-service-links .service-card{padding:22px 0}.home-page .home-service-links .service-card h3{font-size:29px}.home-page .home-service-links .service-card p{font-size:15px;max-width:39ch}
.home-process{max-width:none;background:#e8dfcd;display:grid;grid-template-columns:.75fr 1.2fr;gap:45px 7%;padding-top:75px;padding-bottom:75px;position:relative;border-block:1px solid #bfa77675;align-items:center}.process-intro h2{font-size:clamp(34px,3.3vw,52px);max-width:17ch}.process-intro>p:not(.eyebrow){max-width:35ch;line-height:1.8}.process-material{padding:10px;background:#fbf6e9;box-shadow:0 18px 36px #4a382322;clip-path:polygon(0 0,100% 1%,99.7% 30%,100% 70%,99.3% 100%,0 99.5%)}.process-material img{aspect-ratio:5/3;object-fit:cover}.process-sequence{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:6%;padding-top:5px}.process-sequence article{border-top:1px solid #ac9365;padding-top:25px}.process-sequence article>span{font:27px 'Libre Baskerville',Georgia;color:#927033}.process-sequence h3{font-size:27px;max-width:20ch;margin-top:22px}.process-sequence p{font-size:15px;max-width:39ch;margin-bottom:0;color:#53594d}.home-proof{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;padding-top:75px;padding-bottom:75px;background:#f6f0e3;max-width:none;border-bottom:1px solid #c6b589}.home-proof h2{font-size:clamp(32px,2.7vw,42px);max-width:18ch}.home-proof blockquote{margin:0;border-left:2px solid #bd994b;padding-left:45px}.home-proof blockquote p{font:clamp(24px,2.1vw,33px)/1.55 'Libre Baskerville',Georgia;margin-bottom:25px}.home-proof cite{font:14px Manrope,Arial;font-style:normal;color:#79612d}.home-page .areas{padding-top:65px;padding-bottom:65px}
.quality-custom-hero{display:grid;grid-template-columns:37% 63%;position:relative;isolation:isolate;align-items:center;padding:55px 4% 0;background:radial-gradient(ellipse at 5% 0,#62563b3d,transparent 65%),#222b25;color:#faf6ec;overflow:hidden}.quality-custom-hero:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#d9ccb309 1px,transparent 1px),linear-gradient(90deg,#d9ccb309 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 70%)}.custom-intro{padding:15px 35px 30px 0;animation:page-enter 1s ease-out both;z-index:1}.custom-intro .eyebrow{color:#dfbd66;font-size:11px;letter-spacing:.13em}.custom-intro h1{font-size:clamp(36px,3.1vw,57px);line-height:1.16;margin-bottom:25px;letter-spacing:-.025em}.custom-intro .keep-phrase{white-space:normal}.custom-intro>p:not(.eyebrow){max-width:33ch;font-size:17px;color:#e0e1d4;line-height:1.8}.custom-intro .button{font-size:18px;padding:14px 19px;gap:25px}.quality-custom-hero figure{margin:0;position:relative;padding:10px;background:#e3d8be;box-shadow:0 20px 50px #0003;clip-path:polygon(.4% 0,100% .3%,99.8% 28%,100% 60%,99.6% 100%,0 99.8%,.3% 78%,0 35%);animation:page-enter 1.2s ease-out both}.quality-custom-hero figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}.custom-hero-note{grid-column:1/-1;display:flex;justify-content:space-between;gap:25px;padding:28px 0;color:#d5c28d;font-size:12px;letter-spacing:.04em}.custom-hero-note span{position:relative;padding-left:20px}.custom-hero-note span:before{content:'+';position:absolute;left:0;color:#e6c16a}.page-customhome .home-build-feature{padding-top:70px}.page-customhome .build-chapters{background-color:#ede2cd;color:#252d26;border:0;outline:none;padding:25px 32px;background-image:none;box-shadow:inset 0 0 0 1px #c8b185}.page-customhome .build-chapters b{color:#2b332b}.page-customhome .build-chapters>span{color:#8c6a2c;border-color:#b29a6b70}
@media(min-width:1700px){.quality-custom-hero{grid-template-columns:36% 64%;padding-top:60px}.custom-intro{padding-right:45px}.quality-custom-hero figure{max-width:1180px;justify-self:end;width:100%}.custom-intro h1{max-width:16ch}}
@media(max-width:1100px){.custom-intro h1{font-size:36px}.custom-intro{padding-right:25px}.quality-custom-hero{grid-template-columns:40% 60%;padding-top:35px}.custom-intro .button{font-size:16px;padding:13px 15px;gap:15px}.custom-intro>p:not(.eyebrow){font-size:16px}.home-page .home-service-links .service-card h3{font-size:25px}.home-page .home-service-photo{height:700px}.process-sequence h3{font-size:24px}.home-proof{gap:6%}.home-proof blockquote{padding-left:30px}}
@media(max-width:850px){.quality-custom-hero{grid-template-columns:1fr;padding:35px 6% 0}.custom-intro{padding:0 0 25px;max-width:620px}.custom-intro h1{font-size:42px;max-width:24ch}.custom-intro .keep-phrase{white-space:nowrap}.custom-intro>p:not(.eyebrow){max-width:50ch}.quality-custom-hero figure{width:100%;max-width:760px}.custom-hero-note{font-size:11px;flex-wrap:wrap;gap:10px 25px;padding:24px 0}.home-process{gap:35px 5%}.process-intro h2{font-size:34px}.process-intro>p:not(.eyebrow){font-size:15px}.process-material img{aspect-ratio:1.2}.process-sequence{gap:4%}.process-sequence h3{font-size:22px}.home-proof h2{font-size:32px}.home-proof blockquote p{font-size:25px}}
@media(max-width:600px){.quality-custom-hero{padding:30px 6% 0;display:flex;flex-direction:column;align-items:stretch}.custom-intro h1{font-size:31px;line-height:1.2}.custom-intro .headline-lead{display:block;max-width:17ch;text-wrap:balance}.custom-intro{padding-bottom:28px}.custom-intro .eyebrow{font-size:10px}.custom-intro>p:not(.eyebrow){font-size:16px;line-height:1.65}.custom-intro .button{font-size:17px;min-height:52px}.quality-custom-hero figure{padding:6px;margin:0 -3%;width:106%}.custom-hero-note{display:grid;gap:10px;padding:23px 0}.home-page .home-service-photo{height:380px}.home-page .home-service-links .service-card{padding:23px 0}.home-page .home-service-links .service-card h3{font-size:28px}.home-process{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px;gap:28px}.process-intro h2{font-size:34px;max-width:18ch}.process-intro>p:not(.eyebrow){max-width:none}.process-material{padding:7px}.process-material img{aspect-ratio:5/3}.process-sequence{grid-template-columns:1fr;gap:27px;padding-top:5px}.process-sequence article{padding-top:20px;display:grid;grid-template-columns:35px 1fr;column-gap:15px}.process-sequence article>span{font-size:22px;margin-top:5px}.process-sequence h3{font-size:25px;max-width:none;margin:0 0 15px}.process-sequence p{grid-column:2;max-width:none;font-size:15px}.home-proof{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:45px}.home-proof h2{font-size:32px;max-width:19ch}.home-proof blockquote{padding-left:25px}.home-proof blockquote p{font-size:23px}.home-page .areas{padding-top:55px;padding-bottom:55px}}
@media(max-width:360px){.custom-intro h1{font-size:28px}.home-page .home-service-links .service-card h3{font-size:25px}}
.custom-intro .keep-phrase{white-space:nowrap}
/* The house is part of the composition, not a framed inset. */
.quality-custom-hero{padding:0;grid-template-columns:38% 62%;align-items:stretch;overflow:hidden;background:radial-gradient(ellipse at 0 0,#86714b2b,transparent 70%),#222b25}
.custom-intro{padding:55px 30px 45px 5vw;display:flex;flex-direction:column;justify-content:center}.custom-intro h1{font-size:clamp(36px,3vw,55px)}.custom-intro .button{align-self:start}.quality-custom-hero figure{max-width:none!important;width:100%;margin:0;padding:0;background:none;box-shadow:none;aspect-ratio:4/3;clip-path:polygon(1% 0,100% 0,100% 100%,0 100%,.6% 97%,.2% 94%,.9% 91%,.4% 87%,1% 84%,.3% 80%,.8% 76%,.2% 72%,.7% 67%,.3% 62%,1% 57%,.5% 51%,1.2% 46%,.6% 41%,1.1% 36%,.7% 30%,1.3% 25%,.8% 20%,1.4% 15%,.9% 10%,1.4% 5%)}.quality-custom-hero figure img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.quality-custom-hero figure:before{content:'';position:absolute;z-index:1;inset:0 auto 0 0;width:15px;background:#e4d6b850;pointer-events:none}.custom-hero-note{padding:25px 5%;background:#e6dbc2;color:#6b562b;border-bottom:1px solid #bba577}.custom-hero-note span:before{color:#8c6b2e}.page-customhome .home-build-feature{grid-template-columns:.8fr 1.2fr;gap:9%;align-items:start}.page-customhome .custom-build-summary{border-top:1px solid #b49a67;padding-top:25px}.page-customhome .home-build-feature>div:last-child{padding-top:22px}.page-customhome .custom-build-summary h2{font-size:clamp(31px,2.6vw,43px)}
@media(max-width:1200px) and (min-width:851px){.custom-intro{padding:40px 22px 35px 4vw}.custom-intro h1{font-size:32px}.custom-intro .keep-phrase{white-space:normal}.custom-intro>p:not(.eyebrow){font-size:15px}}
@media(max-width:850px){.quality-custom-hero{display:flex;flex-direction:column;padding:0}.quality-custom-hero figure{order:-1;aspect-ratio:4/3;clip-path:none}.quality-custom-hero figure img{height:auto}.quality-custom-hero figure:before{display:none}.custom-intro{padding:36px 6% 40px;max-width:none;border-top:4px solid #d8c69d}.custom-intro h1{font-size:42px;max-width:24ch}.custom-intro .keep-phrase{white-space:nowrap}.custom-hero-note{padding:22px 6%;display:flex;flex-wrap:wrap;gap:15px 25px}.page-customhome .home-build-feature{gap:6%}}
@media(max-width:600px){.custom-intro{padding:30px 6% 35px}.custom-intro h1{font-size:31px}.custom-intro .headline-lead{display:block;max-width:17ch;text-wrap:balance}.custom-intro .keep-phrase{white-space:nowrap}.custom-hero-note{display:grid;gap:11px;padding:20px 6%}.page-customhome .home-build-feature{display:block;padding-top:40px;padding-bottom:45px}.page-customhome .home-build-feature>div:last-child{padding-top:0}.page-customhome .custom-build-summary{padding-top:20px}.page-customhome .custom-build-summary h2{font-size:31px}}
@media(max-width:360px){.custom-intro h1{font-size:28px}}
/* Page-specific photographic spreads, with the original art direction as their common thread. */
.quality-services-hero{display:grid;grid-template-columns:42% 58%;align-items:stretch;background:linear-gradient(120deg,#f6f0e3,#e9ddc4);border-bottom:1px solid #bfa776}.quality-services-hero>div{padding:55px 6vw 50px;animation:page-enter .9s ease-out both}.quality-services-hero h1{font-size:clamp(36px,3.05vw,56px);line-height:1.14;max-width:19ch}.quality-services-hero>div>p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:36ch}.quality-services-hero figure{margin:0;min-width:0;overflow:hidden;position:relative;background:#cddae0}.quality-services-hero figure img{width:100%;height:100%;object-fit:cover;object-position:52% center;animation:photo-settle 1.6s ease-out both}.quality-services-hero figure:after{content:'';position:absolute;bottom:0;left:0;right:0;height:5px;background:#bc994e}.quality-services-hero nav{margin-top:30px;border-top:1px solid #b5a17b}.quality-services-hero nav a{display:flex;align-items:center;gap:15px;border-bottom:1px solid #b5a17b;padding:13px 0;text-decoration:none;font-size:11px;color:#8a6d32;min-height:48px}.quality-services-hero nav a>span:first-child{font:17px 'Libre Baskerville',Georgia;color:#283025;flex:1}.quality-services-hero nav a>span:last-child{font-size:18px}.page-services .service-index{background:linear-gradient(115deg,#faf7ee,#eee4d1);max-width:none;padding-left:max(6%,calc((100% - 1260px)/2));padding-right:max(6%,calc((100% - 1260px)/2))}.page-services .service-index>article>div{border:0;padding-left:15px}.page-services .service-index article[id=additions] .client-review{background:#283129;color:#f5efde;border-left:2px solid #d0ad5f;padding:30px}.page-services .service-index .client-review .eyebrow{color:#dfbd66}.page-services .service-index article[id=windows]{padding-bottom:15px}
.quality-remodel-hero{display:grid;grid-template-columns:55% 45%;background:linear-gradient(135deg,#f4eddf,#e5d6b8);min-height:690px;position:relative}.quality-remodel-hero figure{margin:0;min-width:0;position:relative;overflow:hidden}.quality-remodel-hero figure img{width:100%;height:100%;max-height:850px;object-fit:cover;object-position:center 55%;animation:photo-settle 1.6s ease-out both}.quality-remodel-hero>div{align-self:center;padding:70px 6vw 75px 5vw;animation:page-enter 1s ease-out both;border-top:1px solid #bda16a;border-bottom:1px solid #bda16a;margin-left:-22px;background:linear-gradient(110deg,#efe6d1,#efe5d200);z-index:1}.quality-remodel-hero h1{font-size:clamp(37px,3.35vw,61px);line-height:1.15;max-width:17ch}.quality-remodel-hero>div>p:not(.eyebrow){font-size:18px;line-height:1.75;max-width:33ch}.quality-remodel-hero .text-link{display:block;width:fit-content;margin-top:28px}.quality-remodel-hero .button{font-size:18px;gap:20px}.page-remodeling .remodel-intro{outline:0;background:#253027;color:#f7f1e2;border:0;padding:40px;position:relative}.page-remodeling .remodel-intro p:not(.eyebrow){color:#d7dccc}.page-remodeling .remodel-intro .eyebrow{color:#dfbd66}.page-remodeling .remodel-options article>img{padding:0;box-shadow:13px 13px 0 #d9c7a255;height:430px}.page-remodeling .review-section{padding-top:20px}.page-remodeling .review-section .client-review{background:#f7f2e6;border-top:1px solid #c1a972;border-bottom:1px solid #c1a972;border-left:0}
.page-about .about-hero{background:linear-gradient(110deg,#253027,#313c30);height:620px}.page-about .about-hero>img{right:0;top:0;width:54%;height:100%;padding:0;object-position:center 43%;box-shadow:none;filter:brightness(1.05)}.page-about .about-hero>div{width:46%;padding-right:4%}.page-about .about-hero h1{font-size:clamp(35px,3.15vw,57px)}.page-about .about-story{grid-template-columns:.7fr 1.3fr;gap:10%;padding-top:75px;padding-bottom:75px}.about-owner-heading{border-top:1px solid #b39a65;padding-top:25px}.page-about .about-owner-heading h2{font-size:clamp(36px,3.2vw,50px);max-width:15ch}.page-about .about-story>div:last-child{padding-top:25px;font-size:17px;line-height:1.85}.about-next{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:linear-gradient(135deg,#dcd0b7,#f3eada);border-top:1px solid #b49a67;border-bottom:1px solid #b49a67;align-items:start}.about-next h2{max-width:20ch}.about-next>div:last-child{padding-top:5px}.about-next p:not(.eyebrow){max-width:45ch}
.page-faq .faq-hero{height:570px;background:linear-gradient(115deg,#f6efdf,#e7d9bd);color:#293027;border-bottom:1px solid #bfa36c}.page-faq .faq-hero:before,.page-faq .faq-hero:after{display:none}.page-faq .faq-hero>img{width:46%;right:0;height:100%;object-position:center 28%;filter:brightness(1.05)}.page-faq .faq-hero>div{width:54%;padding:55px 6%;max-width:none}.page-faq .faq-hero h1{font-size:clamp(38px,3.5vw,61px);max-width:18ch}.page-faq .faq-hero .eyebrow{color:#85642c}.page-faq .faq-hero>div>p:last-child{color:#4e5747;font-size:18px}.page-faq .faq-layout{grid-template-columns:.65fr 1.35fr;gap:7%;padding-top:70px}.page-faq .faq-layout aside{background:#263128;color:#f2edde;outline:none;border:0;border-top:3px solid #c7a65a;padding:30px}.page-faq .faq-layout aside .eyebrow,.page-faq .faq-layout aside .contact-phone{color:#dfbd66}.page-faq .faq-layout aside h2{font-size:29px}.page-faq .faq details{padding:25px 0}.page-faq .faq details[open]{background:#eee2cb;padding:25px;border-top:1px solid #c1a66d}.page-faq .faq details[open] p{color:#414b3d}.page-faq .faq summary{font-size:22px}
.page-getstarted .contact{background:radial-gradient(ellipse at 2% 0,#8b784441,transparent 65%),#253027;padding-top:60px;padding-bottom:70px;grid-template-columns:1fr 1.05fr;gap:7%}.page-getstarted .contact .contact-project-image{max-height:none;height:430px;padding:0;background:none;margin-top:32px;object-position:center;filter:brightness(1.06);box-shadow:0 15px 40px #0002;clip-path:polygon(0 .5%,100% 0,99.7% 40%,100% 78%,99.4% 100%,.2% 99.5%,0 63%,.5% 25%)}.page-getstarted .project-form{outline:none;border:1px solid #d3bd82;border-top:4px solid #d3b46a;padding:40px;box-shadow:0 18px 45px #0003;background:linear-gradient(130deg,#fffaf0,#eee1c7)}.page-getstarted .contact h1{font-size:clamp(37px,3.5vw,60px);max-width:17ch}.page-getstarted .contact>div>p:not(.eyebrow){max-width:46ch}
.quality-work-cover{display:grid;grid-template-columns:1fr .9fr;gap:7%;align-items:center;padding:65px 6%;background:linear-gradient(110deg,#f6efdf,#e3d4b4);border-bottom:1px solid #ba9e62}.quality-work-cover h1{font-size:clamp(39px,3.6vw,63px);line-height:1.16;max-width:20ch}.quality-work-cover>div>p:not(.eyebrow){font-size:18px;line-height:1.75;max-width:43ch}.quality-work-cover .full-gallery{display:block}.quality-work-cover .full-gallery figure{max-width:540px;padding:0;background:none;box-shadow:15px 15px 0 #c6b18765}.quality-work-cover .full-gallery figure:first-child img{height:auto;aspect-ratio:4/3;object-fit:cover}.page-our-work .work-section{max-width:none;background:#253028;padding:65px 8%;color:#f5efde}.page-our-work .work-section .full-gallery{grid-template-columns:1fr 1fr;gap:45px;max-width:1250px;margin:auto}.page-our-work .work-section .full-gallery figure{padding:0;background:none;box-shadow:none;max-width:none;width:100%;margin:0}.page-our-work .work-section .full-gallery figure:first-child{grid-column:1/-1;max-width:1000px;justify-self:center}.page-our-work .work-section .full-gallery figure:first-child img{height:500px;object-position:center 48%}.page-our-work .work-section .full-gallery figure:not(:first-child) img{height:520px;object-position:center}.page-our-work .work-services{max-width:1250px;margin:45px auto 0;border-color:#a38b57}.page-our-work .work-services a{border-color:#baa269}.page-our-work .cta{border-top:0;background:#202a23}
.page-privacy .legal-page,.page-terms .legal-page{background:linear-gradient(110deg,#eee3cb,#faf6eb);max-width:none;padding-left:6%;padding-right:6%}.page-privacy .legal-intro,.page-terms .legal-intro{background:#29332a;outline:none;border:0;border-top:3px solid #bd9c53;box-shadow:0 15px 35px #3e31101a}.page-privacy .legal-sections,.page-terms .legal-sections{border-top:1px solid #bda56f;border-bottom:1px solid #bda56f;box-shadow:none;background:#fffcf4}
@media(min-width:1700px){.quality-services-hero>div{padding-top:75px;padding-bottom:70px}.quality-services-hero figure img{object-position:center 50%}.quality-remodel-hero{min-height:850px}.quality-remodel-hero figure img{max-height:950px}.page-about .about-hero{height:720px}.page-faq .faq-hero{height:650px}}
@media(max-width:1100px){.quality-services-hero>div{padding:40px 4vw}.quality-services-hero h1{font-size:35px}.quality-services-hero nav a>span:first-child{font-size:15px}.quality-remodel-hero{min-height:590px}.quality-remodel-hero h1{font-size:38px}.quality-remodel-hero>div{padding:45px 4vw}.quality-remodel-hero .button{font-size:16px;padding:13px 17px}.quality-remodel-hero .text-link{white-space:normal}.page-about .about-hero{height:560px}.page-about .about-hero h1{font-size:36px}.page-getstarted .project-form{padding:28px}.page-getstarted .contact{gap:5%}.page-getstarted .contact .contact-project-image{height:390px}.page-faq .faq-layout aside{padding:25px}.page-faq .faq-layout aside h2{font-size:26px}.quality-work-cover{gap:5%}.page-our-work .work-section .full-gallery figure:not(:first-child) img{height:430px}}
@media(max-width:850px){.quality-services-hero{grid-template-columns:1fr 1fr}.quality-services-hero>div{padding:35px 5vw}.quality-services-hero h1{font-size:32px}.quality-services-hero figure img{object-position:54% center}.quality-remodel-hero{grid-template-columns:1fr 1fr;min-height:590px}.quality-remodel-hero>div{padding:40px 4vw}.quality-remodel-hero h1{font-size:34px}.quality-remodel-hero>div>p:not(.eyebrow){font-size:16px}.quality-remodel-hero .button{font-size:16px;gap:14px}.page-about .about-hero h1{font-size:32px}.page-about .about-story{gap:7%}.page-about .about-story>div:last-child{font-size:16px}.page-faq .faq-hero{height:490px}.page-faq .faq-hero h1{font-size:37px}.page-faq .faq-layout{grid-template-columns:.7fr 1.3fr;gap:5%}.page-faq .faq-layout aside .button{font-size:16px;padding:12px 15px}.page-faq .faq-layout aside .contact-phone{font-size:24px}.page-faq .faq summary{font-size:19px}.page-getstarted .contact h1{font-size:37px}.page-getstarted .project-form{padding:25px}.quality-work-cover h1{font-size:36px}.quality-work-cover>div>p:not(.eyebrow){font-size:16px}.page-our-work .work-section .full-gallery figure:first-child img{height:380px}.page-our-work .work-section .full-gallery figure:not(:first-child) img{height:380px}}
@media(max-width:600px){.quality-services-hero{display:flex;flex-direction:column}.quality-services-hero figure{order:-1;height:auto}.quality-services-hero figure img{height:auto;aspect-ratio:4/3;object-fit:contain}.quality-services-hero>div{padding:35px 6%}.quality-services-hero h1{font-size:34px;max-width:19ch}.quality-services-hero>div>p:not(.eyebrow){font-size:16px}.quality-services-hero nav{margin-top:25px}.quality-services-hero nav a{padding:14px 0}.quality-services-hero nav a>span:first-child{font-size:17px}.quality-remodel-hero{display:flex;flex-direction:column;min-height:0}.quality-remodel-hero figure{height:410px}.quality-remodel-hero figure img{height:100%;object-position:center 53%}.quality-remodel-hero>div{margin:0;padding:35px 6% 40px;background:none;border-top:4px solid #cdb277;border-bottom:0}.quality-remodel-hero h1{font-size:34px;max-width:19ch}.quality-remodel-hero>div>p:not(.eyebrow){font-size:16px}.quality-remodel-hero .button{font-size:17px}.quality-remodel-hero .text-link{margin-top:23px}.page-remodeling .remodel-intro{padding:28px}.page-remodeling .remodel-options article>img{height:350px;box-shadow:7px 7px 0 #d9c7a255}.page-remodeling .review-section{padding-top:10px}.page-about .about-hero{height:auto;background:#29352a}.page-about .about-hero>img{width:100%;height:360px;position:relative;inset:auto}.page-about .about-hero>div{width:100%;padding:33px 6% 38px;border:0}.page-about .about-hero>div:before{display:none}.page-about .about-hero h1{font-size:34px}.page-about .about-story{display:block;padding-top:40px;padding-bottom:45px}.page-about .about-story>div:last-child{padding-top:25px}.page-about .about-owner-heading h2{font-size:34px}.about-next{grid-template-columns:1fr;gap:5px;padding-top:40px;padding-bottom:45px}.about-next h2{font-size:31px}.page-faq .faq-hero{height:auto}.page-faq .faq-hero>img{width:100%;height:300px;position:relative;inset:auto;object-position:center 28%}.page-faq .faq-hero>div{width:100%;padding:33px 6% 38px;border:0}.page-faq .faq-hero>div:before{display:none}.page-faq .faq-hero h1{font-size:34px}.page-faq .faq-hero>div>p:last-child{font-size:16px}.page-faq .faq-layout{display:flex;flex-direction:column;padding-top:40px;gap:35px}.page-faq .faq-layout aside{order:2;padding:28px;width:100%}.page-faq .faq{width:100%}.page-faq .faq details[open]{padding:22px}.page-faq .faq summary{font-size:20px}.page-faq .faq-layout aside h2{font-size:29px}.page-faq .faq-layout aside .contact-phone{font-size:28px}.page-getstarted .contact{display:block;padding-top:40px;padding-bottom:45px}.page-getstarted .contact h1{font-size:36px}.page-getstarted .contact .contact-project-image{height:320px;margin-top:28px}.page-getstarted .project-form{margin-top:40px;padding:28px 20px}.quality-work-cover{grid-template-columns:1fr;gap:35px;padding:40px 6% 45px}.quality-work-cover h1{font-size:34px}.quality-work-cover>div>p:not(.eyebrow){font-size:16px}.quality-work-cover .full-gallery figure{box-shadow:8px 8px 0 #c6b18765}.quality-work-cover .full-gallery figure:first-child img{height:auto;aspect-ratio:4/3}.page-our-work .work-section{padding:40px 6%}.page-our-work .work-section .full-gallery{grid-template-columns:1fr;gap:28px}.page-our-work .work-section .full-gallery figure:first-child{grid-column:auto}.page-our-work .work-section .full-gallery figure:first-child img{height:auto;aspect-ratio:4/3}.page-our-work .work-section .full-gallery figure:not(:first-child) img{height:430px}.page-our-work .work-services{margin-top:30px}.page-privacy .legal-page,.page-terms .legal-page{row-gap:40px}}
@media(max-width:360px){.quality-services-hero h1,.quality-remodel-hero h1,.page-faq .faq-hero h1,.page-about .about-hero h1,.quality-work-cover h1{font-size:30px}.page-getstarted .contact h1{font-size:32px}}

@media(min-width:851px){.quality-custom-hero figure{clip-path:polygon(100% 0,100% 100%,0.27% 100%,0.19% 99%,0.31% 98%,0.22% 97%,0.16% 96%,0.26% 95%,0.34% 94%,0.21% 93%,0.29% 92%,0.18% 91%,0.25% 90%,0.27% 89%,0.19% 88%,0.31% 87%,0.22% 86%,0.16% 85%,0.26% 84%,0.34% 83%,0.21% 82%,0.29% 81%,0.18% 80%,0.25% 79%,0.27% 78%,0.19% 77%,0.31% 76%,0.22% 75%,0.16% 74%,0.26% 73%,0.34% 72%,0.21% 71%,0.29% 70%,0.18% 69%,0.25% 68%,0.27% 67%,0.19% 66%,0.31% 65%,0.22% 64%,0.16% 63%,0.26% 62%,0.34% 61%,0.21% 60%,0.29% 59%,0.18% 58%,0.25% 57%,0.27% 56%,0.19% 55%,0.31% 54%,0.22% 53%,0.16% 52%,0.26% 51%,0.34% 50%,0.21% 49%,0.29% 48%,0.18% 47%,0.25% 46%,0.27% 45%,0.19% 44%,0.31% 43%,0.22% 42%,0.16% 41%,0.26% 40%,0.34% 39%,0.21% 38%,0.29% 37%,0.18% 36%,0.25% 35%,0.27% 34%,0.19% 33%,0.31% 32%,0.22% 31%,0.16% 30%,0.26% 29%,0.34% 28%,0.21% 27%,0.29% 26%,0.18% 25%,0.25% 24%,0.27% 23%,0.19% 22%,0.31% 21%,0.22% 20%,0.16% 19%,0.26% 18%,0.34% 17%,0.21% 16%,0.29% 15%,0.18% 14%,0.25% 13%,0.27% 12%,0.19% 11%,0.31% 10%,0.22% 9%,0.16% 8%,0.26% 7%,0.34% 6%,0.21% 5%,0.29% 4%,0.18% 3%,0.25% 2%,0.27% 1%,0.19% 0%)}.quality-custom-hero figure:before{width:4px;background:#ddcfaf}}
.page-faq .faq-hero>img{object-position:center top;filter:none}.page-about .about-hero>img{filter:none}
@media(max-width:600px){.page-faq .faq-hero>img{height:80vw;max-height:320px;object-position:center top}}
/* Keep native project choices readable when the side-by-side contact layout narrows. */
@media(max-width:1360px){.page-getstarted .form-grid{grid-template-columns:minmax(0,1fr)}}
.custom-intro .headline-lead .keep-phrase{white-space:nowrap;display:inline}
/* Additional authentic project views reuse the client-approved source photographs. */
.page-our-work .additional-work{margin-top:32px}
.page-our-work .additional-work .full-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.page-our-work .additional-work .full-gallery figure:first-child{grid-column:auto}
.page-our-work .additional-work .full-gallery figure img,.page-our-work .additional-work .full-gallery figure:first-child img,.page-our-work .additional-work .full-gallery figure:not(:first-child) img{height:430px;aspect-ratio:auto;object-fit:cover}
.page-our-work .additional-work .full-gallery figure:nth-child(1) img,.page-our-work .additional-work .full-gallery figure:nth-child(4) img{object-fit:contain;background:#222a24}
.page-remodeling .quality-remodel-hero figure img{object-position:center top}
@media(max-width:1100px){.page-our-work .additional-work .full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.page-our-work .additional-work .full-gallery figure:last-child{grid-column:1/-1;max-width:550px;width:100%;justify-self:center}}
@media(max-width:600px){.page-our-work .additional-work{margin-top:28px}.page-our-work .additional-work .full-gallery{grid-template-columns:1fr;gap:28px}.page-our-work .additional-work .full-gallery figure img,.page-our-work .additional-work .full-gallery figure:first-child img,.page-our-work .additional-work .full-gallery figure:not(:first-child) img{height:auto;max-height:540px;object-fit:contain}.page-our-work .additional-work .full-gallery figure:last-child{grid-column:auto}}

/* Composed motion: visible from first paint, no ambient loops or moving cards. */
@keyframes composed-ink{from{opacity:.82;transform:translateY(var(--ink-offset,18px))}to{opacity:1;transform:translateY(0)}}
@keyframes composed-scene{from{transform:scale(1.045);filter:brightness(.88)}to{transform:scale(1);filter:brightness(1)}}
@keyframes control-enter{from{opacity:.92;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes answer-enter{from{opacity:.92;transform:translateY(6px)}to{opacity:1;transform:none}}
.home-page .concept-hero .hero-copy,.photo-hero>div,.quality-custom-hero .custom-intro,.quality-services-hero>div,.quality-remodel-hero>div,.text-hero>div,.contact>div:first-child,.legal-sections{animation:none}
.hero-copy>.eyebrow,.photo-hero>div>.eyebrow,.custom-intro>.eyebrow,.quality-services-hero>div>.eyebrow,.quality-remodel-hero>div>.eyebrow,.inner-heading>.eyebrow,.contact>div:first-child>.eyebrow{--ink-offset:12px;animation:composed-ink 1000ms cubic-bezier(.22,.61,.36,1) both}
.hero-copy>h1,.photo-hero h1,.custom-intro h1,.quality-services-hero h1,.quality-remodel-hero h1,.inner-heading h1,.contact h1,.legal-intro h1{--ink-offset:22px;animation:composed-ink 1100ms cubic-bezier(.22,.61,.36,1) 70ms both}
.hero-copy>p:not(.eyebrow),.photo-hero>div>p:not(.eyebrow),.custom-intro>p:not(.eyebrow),.quality-services-hero>div>p:not(.eyebrow),.quality-remodel-hero>div>p:not(.eyebrow),.inner-heading>p:not(.eyebrow){animation:composed-ink 1100ms cubic-bezier(.22,.61,.36,1) 140ms both}
.home-page .concept-hero>.hero-image,.interior-page .photo-hero>img,.interior-page .services-hero>.garage-picture>img,.quality-services-hero figure img,.quality-remodel-hero figure img{animation:composed-scene 1900ms cubic-bezier(.16,1,.3,1) both}
/* Match the text entrance first frame before the observer runs: no settled-to-start rewind.
   Text stays readable without JavaScript; reduced motion retains full opacity. */
@media(prefers-reduced-motion:no-preference){:where(.section-heading h2,.section-heading>p,.service-card h3,.service-card p,.story-copy h2,.story-copy>p,.steps article h3,.steps article p,.cta h2,.cta p,.build-chapters>span,.client-review blockquote,.about-story h2,.about-story p,.remodel-options h3,.remodel-options p,.service-index h2,.service-index article>div>p,.process-intro h2,.process-intro>p,.process-sequence h3,.process-sequence p,.home-proof h2,.home-proof blockquote,.areas h2,.areas p,.about-next h2,.about-next p,.work-services a,.legal-sections h2,.legal-sections p,.faq-layout aside h2){opacity:.82;transform:translateY(var(--ink-offset,18px))}}
.motion-arrived{animation:composed-ink 1000ms cubic-bezier(.22,.61,.36,1) var(--motion-delay,0ms) both}
/* Once reduced motion cancels an arrival, restoring motion must not restart it. */
.motion-complete{animation:none!important;opacity:1!important;transform:none!important}
.reveal{animation:none;clip-path:none}
.story:after,.cta:after{animation:none;background-size:100% 100%}
.service-card,.service-card:hover,.service-card:active,.button,.button:hover,.button:active{transform:none}
.button{transition:filter 220ms ease,box-shadow 220ms ease,background-color 220ms ease}
.button span,.text-link span,.service-card h3 span,.quality-services-hero nav a>span:last-child{display:inline-block;transition:transform 280ms cubic-bezier(.16,1,.3,1)}
.header nav a,.services-toggle,.text-link,.service-card h3{transition:color 220ms ease,border-color 220ms ease}
.button:active{box-shadow:inset 0 0 0 2px #ffffff45;filter:brightness(.93)}
.button:active span,.text-link:active span,.service-card:active h3 span{transform:translate(2px,-2px)}
.services-links:not([hidden]){animation:control-enter 280ms cubic-bezier(.16,1,.3,1) both}
.faq details[open]>p{animation:answer-enter 320ms ease-out both}
input,select,textarea{transition:border-color 220ms ease,box-shadow 220ms ease}
input:focus,select:focus,textarea:focus{border-color:#a58237;box-shadow:0 0 0 2px #c49c3b22}
@media(hover:hover) and (pointer:fine){
 .button:hover{box-shadow:0 4px 16px #00000016}
 .button:hover span,.text-link:hover span,.service-card:hover h3 span,.quality-services-hero nav a:hover>span:last-child{transform:translate(4px,-3px)}
 .home-service-photo:hover img{transform:rotate(-1deg) scale(1.04)}
 .image-open:hover img{transform:scale(1.025)}
}
@media(max-width:850px){.header nav.open{animation:control-enter 320ms cubic-bezier(.16,1,.3,1) both}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .motion-arrived{transform:none!important;opacity:1!important}
 .home-service-photo img,.home-service-photo:hover img{transform:rotate(-1deg) scale(1.025)!important}
 .image-open:hover img,.button span,.text-link span,.service-card h3 span,.quality-services-hero nav a>span:last-child{transform:none!important}
}
